如何在Qt for Embedded Linux中查找和使用字体?

冷冻的泰山

这个问题可能与这个问题有关:QT在哪里寻找字体?

我正在使用Ubuntu 14.04和Qt for Embedded 4.8,希望在全球范围内更改应用程序的字体,但只能使用已安装字体中的一小部分。

我的应用程序的样式是从我写的CSS文件中加载的:

QWidget {
   font-family: "DejaVu Sans"; /*or any other font*/
}

问题是Qt似乎无法找到我安装的字体。根据为嵌入式Linux应用程序部署Qt的文档 Qt应用程序会在lib / fonts /目录中查找字体,尤其是在名为fontdir的文件中查找字体我不知道这个文件是关于什么的,我也找不到它。我的字体(用于调试版本)的完整路径是:/usr/local/Trolltech/QtEmbedded-4.8.6-x86-dbg/lib/fonts

我使用可以在Qt 4.8文档中找到的QFontDatabase打印我所有可用的字体。不幸的是,输出为:

DejaVu Sans: Normal (11)
fixed: Normal (7 12)
helvetica: Normal (8 10 12 14 18 24) Italic (8 10 12 14 18 24) Bold (8 10 12 14 18 24) Bold Italic (8 10 12 14 18 24)
japanese: Normal (23)
micro: Normal (4)
unifont: Normal (16)

但是我有更多的字体安装方式。例如DejaVu Sans也粗体和其他类型存在,但仅找到“ Normal”。这只是位于我的fonts文件夹中的一小部分字体(这些字体也位于Qt文件夹中,以供发布和调试):

couri.pfa
cour.pfa
cursor.pfa
dejavu_sans_11_50.qpf2
DejaVuSans-BoldOblique.ttf
DejaVuSans-Bold.ttf
DejaVuSansMono-BoldOblique.ttf
DejaVuSansMono-Bold.ttf
DejaVuSansMono-Oblique.ttf
DejaVuSansMono.ttf
DejaVuSans-Oblique.ttf
DejaVuSans.ttf
DejaVuSerif-BoldOblique.ttf
VeraMono.ttf
VeraSeBd.ttf
VeraSe.ttf
Vera.ttf
  1. fontdir文件的用途是什么?我需要它吗?如何创建它?

  2. 我该怎么做才能让Qt找到我所有已安装的字体?

  3. 有没有一种方法可以简单地使用我感兴趣的字体的副本,然后将其放入应用程序的子目录中,以将其像图标一样对待,这样我就不必弄乱所有系统位置了吗?

编辑:根据该主题,我认为我也不支持TTF字体。我查看了我的字体,似乎发现了所有* .qpf和* .qpf2字体。因此,我将尝试将我的TTF转换为QPF。

冷冻的泰山

fontdir文件的用途是什么?我需要它吗?如何创建它?

仅当应使用QPF字体(Qt特定的“轻量级”格式)时才需要此文件。Qt工具makeqpf使用该文件(据我了解)。

我该怎么做才能让Qt找到我所有已安装的字体?

如果Qt是使用-no-freetype编译的,则不能使用任何TTF字体,因此QFontDatabase找不到要启用TTF支持,必须在没有此编译配置标志的情况下编译Qt。我已经重新编译它,并且找到了/usr/local/Trolltech/QtEmbedded-4.8.6-x86-dbg/lib/fonts中的所有字体

有没有一种方法可以简单地使用我感兴趣的字体的副本,然后将其放入应用程序的子目录中,以将其像图标一样对待,这样我就不必弄乱所有系统位置了吗?

是的。可以简单地使用QFontDatabase :: addApplicationFont,对于支持的字体格式,它应该不会失败。

请注意,我决定重新编译Qt,因为我不想弄乱Qt的makeqpf工具,该工具可用于将TTF字体转换为QPF格式。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Qt for Embedded Linux中查找和使用字体?

来自分类Dev

如何在Hibernate中查询Embedded类?

来自分类Dev

如何在Hibernate中查询Embedded类?

来自分类Dev

如何在Delphi 2007中安装Delphi Chromium Embedded?

来自分类Dev

如何在Windows Embedded Standard中拍摄桌面屏幕截图?

来自分类Dev

如何在 Embedded-Cassandra 中获取特定版本的 Cassandra

来自分类Dev

如何在Qt中更改QMessageBox的字体?

来自分类Dev

如何在Qt中更改QMessageBox的字体?

来自分类常见问题

如何在Rails 4中使用字体

来自分类Dev

如何使用字体修饰符?SwiftUI中的大写字母和字体大小

来自分类Dev

如何查找、导入和使用特定字体?

来自分类Dev

如何在Spring Boot Embedded Tomcat中为外部静态HTML文件提供服务?

来自分类Dev

当rebel.load_embedded_plugins设置为false时,如何在JRebel中热部署.jsp?

来自分类Dev

再次如何在Delphi Chromium Embedded中按名称获取元素?

来自分类Dev

如何在ng-admin中隐藏Embedded_list字段的“删除”按钮?

来自分类Dev

如何在Qt应用程序中使用Windows字体

来自分类Dev

如何在Linux上打印Qt:HANDLE?(Qt5)

来自分类Dev

如何在Qt Designer中使用Qt的示例Borderlayout?

来自分类Dev

如何在Qt Designer中使用Qt的示例Borderlayout?

来自分类Dev

如何在Qt的工作线程中睡眠?

来自分类Dev

如何在Qt Designer中管理QSplitter

来自分类Dev

如何在Nim中创建Qt应用

来自分类Dev

如何在Qt中获取硬件ID

来自分类Dev

如何在Qt中覆盖QApplication :: notify

来自分类Dev

如何在Qt中停止分离的进程?

来自分类Dev

如何在Qt Creator中删除项目?

来自分类Dev

如何在Qt中抓取视频帧?

来自分类Dev

Qt:如何在QTableWidgetItem中显示QComboBox?

来自分类Dev

如何在Qt Creator中安装插件?

Related 相关文章

  1. 1

    如何在Qt for Embedded Linux中查找和使用字体?

  2. 2

    如何在Hibernate中查询Embedded类?

  3. 3

    如何在Hibernate中查询Embedded类?

  4. 4

    如何在Delphi 2007中安装Delphi Chromium Embedded?

  5. 5

    如何在Windows Embedded Standard中拍摄桌面屏幕截图?

  6. 6

    如何在 Embedded-Cassandra 中获取特定版本的 Cassandra

  7. 7

    如何在Qt中更改QMessageBox的字体?

  8. 8

    如何在Qt中更改QMessageBox的字体?

  9. 9

    如何在Rails 4中使用字体

  10. 10

    如何使用字体修饰符?SwiftUI中的大写字母和字体大小

  11. 11

    如何查找、导入和使用特定字体?

  12. 12

    如何在Spring Boot Embedded Tomcat中为外部静态HTML文件提供服务?

  13. 13

    当rebel.load_embedded_plugins设置为false时,如何在JRebel中热部署.jsp?

  14. 14

    再次如何在Delphi Chromium Embedded中按名称获取元素?

  15. 15

    如何在ng-admin中隐藏Embedded_list字段的“删除”按钮?

  16. 16

    如何在Qt应用程序中使用Windows字体

  17. 17

    如何在Linux上打印Qt:HANDLE?(Qt5)

  18. 18

    如何在Qt Designer中使用Qt的示例Borderlayout?

  19. 19

    如何在Qt Designer中使用Qt的示例Borderlayout?

  20. 20

    如何在Qt的工作线程中睡眠?

  21. 21

    如何在Qt Designer中管理QSplitter

  22. 22

    如何在Nim中创建Qt应用

  23. 23

    如何在Qt中获取硬件ID

  24. 24

    如何在Qt中覆盖QApplication :: notify

  25. 25

    如何在Qt中停止分离的进程?

  26. 26

    如何在Qt Creator中删除项目?

  27. 27

    如何在Qt中抓取视频帧?

  28. 28

    Qt:如何在QTableWidgetItem中显示QComboBox?

  29. 29

    如何在Qt Creator中安装插件?

热门标签

归档