修复 Fontconfig Error

Posted hawlee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修复 Fontconfig Error相关的知识,希望对你有一定的参考价值。

系统环境: ubuntu12.04

问题:

当使用 xdg-open 打开 *.ps (postscript)文件时,报这个错误; 或者其他某些调用字体的地方也会出现这个错误

xdg-open *.ps

错误提示如下:

Fontconfig error: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
Fontconfig error: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
Fontconfig warning: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 78: saw unknown, expected number

解决办法:

打开文件:10-scale-bitmap-fonts.conf,跳转至错误行附近,如下:

 57 <match target="font">
 58   <test name="scalable" compare="eq">
 59     <bool>false</bool>
 60   </test>
 61   <test name="pixelsizefixupfactor" compare="not_eq">
 62     <double>1.0</double>
 63   </test>
 64   <edit name="matrix" mode="assign">
 65     <times>
 66       <name>matrix</name>
 67       <matrix>
 68         <name>pixelsizefixupfactor</name> <double>0</double>
 69         <double>0</double> <name>pixelsizefixupfactor</name>
 70        </matrix>
 71     </times>
 72   </edit>
 73   <edit name="size" mode="assign">
 74     <divide>
 75       <name>size</name>
 76       <name>pixelsizefixupfactor</name>
 77     </divide>
 78   </edit>
 79 </match>

 可以看出,70行处的matrix标签中包含 <name>pixelsizefixupfactor</name>,其数值在此处标出,

 

 61   <test name="pixelsizefixupfactor" compare="not_eq">
 62     <double>1.0</double>
 63   </test>

 

 大致意思为满足not_eq条件的情况下设置为1.0;

如果满足条件,那么下面的代码中的<name>pixelsizefixupfactor</name>应当被替换为<double>1.0</double>

索性将所有的项替换。错误就消失.

 使用以下命令检查,发现没有之前的提示了。

fc-cache -v |grep -i err

 

注:字体配置的具体原理,有待进一步研究,还请自行查找。

 

参考:https://unix.stackexchange.com/questions/140852/how-to-fix-fontconfig-error

 


以上是关于修复 Fontconfig Error的主要内容,如果未能解决你的问题,请参考以下文章

yocto编译时报错"fontconfig-2.12.1/src/fcmatch.c:324:63: error: ‘PRI_CHAR_WIDTH_STRONG' undeclar

Fontconfig error: Cannot load config file "infinality/conf.d"

如何在 fontconfig 中设置每个 Unicode 范围/代码点的字体?

如何修复“代码应明确检查权限是不是可用”错误

如何修复重叠的片段

如何修复空白片段?