自学内容网 自学内容网

字体字体字体字体字体

查看系统上已安装的字体

fc-list

修改目录的权限

chmod -R 755 /usr/share/fonts/chinese

修改字体配置文件

vi /etc/fonts/fonts.conf

<dir>/usr/share/fonts/chinese</dir>

扫描字体目录并生成字体信息的缓存,然后应用程序就可以立即使用这些新安装的字体。

fc-cache

fc-cache -f -v

其中 -f 选项强制更新字体缓存,-v 选项显示详细输出

如果您将字体文件复制到新的字体目录,还需要使用以下命令更新字体缓存:

sudo mkfontscale

sudo mkfontdir

word转pdf后,pdf的字体不对,不正确
修改了 libreoffice/share/fonts/truetype/fc_local.conf  文件,将字体中文名映射为英文
例子:


<alias binding="same">
    <family>仿宋_GB2312</family>
    <accept>
    <family>FangSong_GB2312</family>
    </accept>
  </alias>
 
  <alias binding="same">
    <family>宋体</family>
    <accept>
    <family>SimSun</family>
    </accept>
  </alias>
 
  <alias binding="same">
    <family>华文中宋</family>
    <accept>
    <family>STZhongsong</family>
    </accept>
  </alias>

修改/etc/fonts/fonts.conf的字体渲染顺序

中文字体显示优化

按照上面的方法配置好以后,宋体能够显示了,但是字体有些发虚,那么一种简单的方法就是在系统->首选项->字体(system->preference->font) 中选择单色(Monochrome),但是这样所有的字体包括英文字体都会有一点点的小锯齿,那么替代的方法就是通过修改fonts.conf,去掉宋体的反锯齿,并且用黑体替代宋体的粗体。在fonts.conf中添加:

<!– 用黑体替代宋体的粗体 –>
<match target=”pattern”>
<test name=”family”><string>SimSun</string></test>
<test name=”weight” compare=”more_eq”><const>bold</const></test>
<edit name=”family” mode=”assign”><string>SimHei</string></edit>
</match>
<!– 关闭宋体的AA –>
<match target=”font”>
<test qual=”any” name=”family”><string>SimSun</string></test>
<edit name=”antialias” mode=”assign”><bool>false</bool></edit>
</match>
<!– 解决不能识别中文字体名称的问题 –>
<match target=”pattern”>
<test name=”family”><string>宋体</string></test>
<edit name=”family” mode=”assign”><string>SimSun</string></edit>
</match>
<match target=”pattern”>
<test name=”family”><string>新宋体</string></test>
<edit name=”family” mode=”assign”><string>SimSun</string></edit>
</match>
<match target=”pattern”>
<test name=”family”><string>仿宋_GB2312</string></test>
<edit name=”family” mode=”assign”><string>FangSong_GB2312</string></edit>
</match>
<match target=”pattern”>
<test name=”family”><string>楷体_GB2312</string></test>
<edit name=”family” mode=”assign”><string>KaiTi_GB2312</string></edit>
</match>
<match target=”pattern”>
<test name=”family”><string>黑体</string></test>
<edit name=”family” mode=”assign”><string>SimHei</string></edit>
</match>

为什么要用黑体替代宋体的粗体呢,因为宋体字体其实是不含粗体的,windows下也是,只是windows采用了更高级一些的方法来间接实现了宋体的粗体而已。


原文地址:https://blog.csdn.net/weixin_41986096/article/details/142449264

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!