我的应用程序在macOS上静态链接libfontconfig.a
,但没有附带任何fontconfig配置文件。静态链接fontconfig:禁用`fonts.conf`文件
每次应用程序启动时,都会发出有关fonts.conf
未找到的警告。之后,它恢复默认的fontconfig设置,一切都很好。有没有办法建立或配置fontconfig
永不使用fonts.conf
,而是始终使用默认设置?
我的应用程序在macOS上静态链接libfontconfig.a
,但没有附带任何fontconfig配置文件。静态链接fontconfig:禁用`fonts.conf`文件
每次应用程序启动时,都会发出有关fonts.conf
未找到的警告。之后,它恢复默认的fontconfig设置,一切都很好。有没有办法建立或配置fontconfig
永不使用fonts.conf
,而是始终使用默认设置?
我想,这个问题本身实际上是要找出这个缺失的文件。
目前应用程序的细节还不清楚,如目标平台的Mac OS X或iOS(所以这个答案可能会被更新,如果OP提供更多信息),但我认为你不小心删除fonts.conf
和:
根据到man fonts-conf
或online manual的简介。对于Linux fonts.conf
通常位于:
/etc/fonts/fonts.conf
/etc/fonts/fonts.dtd
/etc/fonts/conf.d
$XDG_CONFIG_HOME/fontconfig/conf.d
$XDG_CONFIG_HOME/fontconfig/fonts.conf
~/.fonts.conf.d
~/.fonts.conf
但在你的情况下,该文件必须与应用程序一起出货,因为Mac OS X和iOS应用程序不依赖于依赖。于是,我就发现我的MacBook上一个fonts.conf
文件有:
sudo /usr/libexec/locate.updatedb
locate fonts.conf
顺便说一句,我发现它在GIMP:
/Applications/GIMP.app/Contents/Resources/etc/fonts/fonts.conf
后来我决定寻找它在GitHub上,我发现它在这些知识库: 1 | https://github.com/EricssonResearch/cerbero/blob/master/data/xcode/templates/ios/GStreamer%20Base.xctemplate/fontconfig/fonts.conf 2 | https://github.com/xil3f/podofo_iOS_sample/blob/cd0be2d225d0bdfbe3c0ec163fb4cce67534825f/fonts/fonts.conf
这些文件几乎完全相同。
对于跨平台的Linux发起的Mac OS X应用程序它位于:./Contents/Resources/etc/fonts/fonts.conf
对于iOS示例应用程序它位于:./fontconfig/fonts.conf
或./fonts/fonts.conf
所以这些地方可以给你哪里的想法将fonts.conf
文件放在您的项目上。
您可以尝试把上述必要的位置(一个或多个)这些fonts.conf
文件,也可以使用此sample configuration file苹果开源的OS X提供:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<dir>/System/Library/Fonts</dir>
<dir>/Library/Fonts</dir>
<dir>~/Library/Fonts</dir>
</fontconfig>
附:请OP留下评论,以便我们一起改进答案。