qt不使用fontconfig

qt不使用fontconfig,第1张

P.S .:我尝试使用QFont :: insertSubstitution,但如果系统上未安装FontA,则可以使用它,因此对我的情况无济于事。

P.P.S .:将这些字体合并为一个字体是不可能的,因为它们是专有字体。

相关讨论

您可以在运行时组合字体并将其传递到addApplicationFontFromData中吗,这样您就不会分发组合字体(IANAL)

您检查了fontconfig手册吗? AFAIK,当找不到字体中的特定字形时,您应该能够配置系统范围的(或每个用户)回退。

该功能在Qt中称为"字体后备",如果您使用fontconfig,该功能应该可以使用。 (虽然不知道配置详细信息)。 Qt中有用于非fontconfig情况的代码,但目前似乎已损坏(从Qt 5.1 / 5.2开始)

我认为您错过了重点。我不需要"字体后备",我需要"字形后备"。 Fontconfig支持字体回退,但字形回退必须在应用程序级别进行处理。

@ratchetfreak我认为这不是那么简单的方法。我必须解析每个字体文件并将它们合并为一个ttf格式的数据,然后将其传递给Qt,我认为这是很多工作。

另外,在QtEmbedded上不支持fontconfig

QtEmbedded上支持FontConfig:doc.qt.io/qt-5/qt-embedded-fonts.html

下载Qt Framework。进入网址http://qt.nokia.com/downloads,选择中间的标签LGPL,然后下载Qt libraries 4.7.0 for linux/x11(199MB)

更新:找不到的话可以直接到http://qt-project.org/downloads,在页面中间的Qt Library里选最新的Qt libraries 4.8.3 for Linux/X11 (223 MB)

2

解压文件。进到存放下载文件的目录下执行tar -zxvf qt-everywhere-opensource-src-4.7.0.tar.gz

其中qt-everywhere-opensource-src-4.7.0.tar.gz是刚下载文件的文件名

3

默认情况下系统是没有g++编译环境的。需要手动安装。执行sudo apt-get install build-essential。如果提示找不到包可以更新一下源。方法为sudo gedit /etc/apt/sources.list编辑源列表。然后执行sudo apt-get update

4

执行sudo apt-get install libx11-dev libfreetype6-dev libavahi-gobject-dev libSM-dev libXrender-dev libfontconfig-dev libXext-dev

5

把解压后的文件夹拷贝到英文目录(非tmp)下,进入该文件夹执行./configure,然后选择o(开源),接着选择yes(同意)。运行结束后提示Just run 'make'等信息后表示这步成功了。

6

make。执行make,这步需要很长时间(我用了4个小时T_T)

7

安装qt。执行sudo make install,这步较快,文件安装在/usr/local/Trolltech/Qt-4.7.0

8

设置环境变量。执行vi ~/.bashrc 添加如下内容:

QTDIR=/usr/local/Trolltech/Qt-4.7.0/

PATH=$QTDIR/bin:$PATH

MANPATH=$QTDIR/doc/man:$MANPATH

LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

export QTDIR PATH MANPATH LD_LIBRARY_PATH

之后重启。如果不会用vi可以执行vi语句后输入:$回车,然后输入o进入输入模式,将上面的字段拷贝后按esc,然后输入大写的ZZ即可。

9

接下来就可以按照

qmake -project

qmake

make

的步骤执行qt程序了,不过有可能会遇到qmake找不到的情况,这时候输入 sudo apt-get indtall qt4-dev-tools重启就可以了,这步是安装designer/assistant,还是很有用的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11426478.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存