热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Linux中用xft方式增加字库

Linux中用xft方式增加字库--Linux通用技术-Linux技术与应用信息,下面是详情阅读。
  我已不知道在2008年春节这七天间是第多少次重装我的红旗Llinux了(先是5.0,再6.0,再至6.0sp1,最后返加6.0),单是RF6.0就被我实验崩溃了N次了。不过折腾来折腾去,总还是有些心得的。以后我会慢慢记之。

  中文Linux使用时都牵扯到一个最显眼的问题,就是字体的美化,西文就没太多必要看这篇文章了。中文字体的美化,大家常用的微软W indows系统做的非常好了,所以很多从Windows转向Linux的用户都对Linux本身的中文字体很是头痛,优其是在Windows下写好的办公文档,在Linux下用OpenOffice打开后,真是惨不忍睹,天哪,那还是我已写好的办公文档吗?呵。。呵。。。别急,那是因为有很多字体在Linux下都没有的缘故。

  言规正传,下面我们开讲如何将Windows常用的中文字体转移到Linux下。

  在 Linux的X window下的字体设置是比较复杂的,这是因为在X windows下有两套字体系统,分别是核心字体X11字体系统与xft字体系统。核心 X11字体系统是应用最广泛的一套字体系统,所有的X系统都支持。Xft字体系统是一个新的字体技术,只能用在基于XFree86系统的X系统上,但该套字体系统配置简单,容易使用,将是未来发展的方向。红旗Linux上两种字体系统都用。下面我们就先讲讲如何用xft来把微软的TrueType字库移植到Linux下,不再使你的办公文档惨不忍睹。

  要只是说操作,很简单就两步:

  1)先将微软Windows系统下的英文TrueType字体(.ttf或.ttc字体文件)拷贝到RF-Linux下的/usr/share/fonts/en/TrueType目录下,将微软Windows系统下的中文TrueType字体(如simsun.ttc、simkai.ttf、simhei.ttf及simfang.ttf等)拷贝到/usr/share/fonts/zh_CN/TrueType目录下。

  2)在shell终端下执行fc-cache -fv命令,然后用Ctrl+Alt+BackSpace组合键快速重启X Windows即可。

  经过上述两个步骤,在OpenOffice里已能够使你的办公文档很好的展现了。在系统的其他应用程序里也能够正常使用微软Windows的字体了。其中的原理我就引用一位网友写的字体配置片断,因为他说的已经很好了。

  以下是该网友文章的节选:

  Xft是一个library,它没有自已的配置机制,它依靠fontconfig库来配置和定制字体,Xft负责字体的显示。也就是说, fontconfig是一种让X系统可以找到某种字体的库,而Xft是负责在X系统中把fontconfig库找到的字体如何显示出来的库。所以讨论 Xft字体配置其实就是讨论fontconfig。fontconfig包含在XFree86发布版中。

  fontconfig的作用:自动搜索字体路径,发现新拷贝的字体;当需显示的字体不存在时,会自动选择其它字体代替显示。这也就是我们在美化字体时为什么要调整字体的排列顺序的原因;配合Xft等X系统的渲染引擎,实现质量的字体输出。

  fontconfig 的配置文件有三个,一个是系统级的配置文件,位于/etc/fonts/fonts.conf,该目录下还有一个 local.conf,一般我们只修改local.conf文件,fonts.conf一般不建议去修改,不过fontconfig2.3以上版本已经取消掉了local.conf,系统级的配置全部是fonts.conf文件,并且2.3版的fontconfig已经进入Sarge。第三个配置文件是用户主目录下的 ~/.fonts.conf,它是用户级的字体配置文件,只对当前用户有效。这三个文件的格式是一样的,都是一个XML格式的文件。该XML文件的语法规则在fonts.dtd里定义。详细的配置介绍请参考中国Linux公社中的“Linux高质量字体研究”论坛。

  在Xft字体系统中安装新的字体是很简单的,只需把字体文件拷贝到fonts.conf中指定的字体文件目录即可,fontconfig会自动感知新字体。默认的字体目录有四个,分别是:

  /usr/share/fonts
  /usr/X11R6/lib/X11/fonts/Type1
  /usr/local/share/fonts
  ~/.fonts

  当然也能增加其他目录,只要手动修改/etc/X11/fs/config文件,给其中catalogue那一行最后加上你的字体路径就可以了。

  把新字体文件拷贝到字体目录后,我们就可用fc-list命令列出新安装的字体,如果没有,可用fc-cache命令手动更新系统字体配置。这样,再运行 fc-list就应该可以看到新安装的字体了。使用Xft字体系统是不用配置/etc/X11/XF86config-4的,也不用重启X服务器使配置生效。Xft字体系统比起传统的X11核心字体系统来说真的是方便很多。所以它是未来的发展方向。
推荐阅读
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
author-avatar
郑谊099_448
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有