Linux应用环境实战05:在Ubuntu 14.10中借用Windows的字体 (转)
在前一篇随笔中,我详细讨论了字体的分类及用途,也以Fedora 20为例,展示了字体配置的思路和方法。我在配置Fedora 20系统字体的时候,采用的是一种釜底抽薪的方法,完全抛开了系统原有的配置文件,所有的配置从头开始。事实上,任何一个Linux发行版本身已经做了很多的字体配置工作,完全将系统默认的配置弃之不用并不是最好的办法。配置系统字体还可以采用锦上添花的方式,也就是保持系统原有的配置文件不变,只针对我们自己的需求补充几个配置文件即可。
在这里,我准备将我新安装的Ubuntu 14.10系统的字体进行一点美化。考虑到很多人在使用Linux系统的时候喜欢和Windows系统进行对比,所以我决定借用Windows中的字体,将Ubuntu配置为和Windows相同的显示效果。基本思路如下:
1.在Ubuntu的界面中使用Tahoma字体搭配微软雅黑字体,英文为Tahoma字体,中文为微软雅黑;
2.控制台和编程的时候使用Consolas字体搭配微软雅黑字体,英文为Consolas,中文为微软雅黑;
3.借用Windows中常用的六套中文字体:宋体、仿宋、黑体、楷书、隶书、幼圆,这样在Ubuntu中进行排版工作的时候,可以达到和在Windows中排版一样的效果;
4.英文的Serif字体搭配中文的宋体,Sans-Serif字体搭配中文的微软雅黑;
5.对于小字号的宋体开启点阵,其它字体不需要开启点阵。
目标一旦确定,具体的配置工作就比较好进行了。下面开始具体的配置过程。
设置系统字体
设置系统字体需要一个工具,那就是Unity Tweak Tool。在Ubuntu系统下,该工具比Gnome Tweak Tool好用。安装该工具后,就可以使用它对系统字体进行配置。从下图可以看出,系统中用到字体的地方可以分为四类,其中默认字体和窗口标题字体我都将之设置为Ubuntu字体,大小为11pt。这里Ubuntu字体就是UI字体,经常用在程序的对话框、菜单栏等地方,Windows中与之对应的是Tahoma。文档字体我设置为11pt的Sans,等宽字体我设置为12pt的Monospace,Sans和Monospace都只能算是字体分类,具体对应什么字体就看我们的配置了。 
安装微软的英文字体
微软是一个很不错的公司,它将其系统中使用的几套英文字体如Arial、Verdena等开放了,可以供大家免费使用。当然,这些开放的字体中不包含Tahoma和Consolas。在Ubuntu中,可以直接从软件源中安装ttf-mscorefonts-installer,该软件安装的时候会自动下载安装微软提供的几套英文字体。如下图: 
查看系统的配置文件
系统的配置文件,除了/etc/fonts.conf外,其余的配置文件都在/etc/fonts/conf.d目录中。进入该目录ls一下,可以看到配置文件还真不少,其中每一个文件前面都有一个编号。如下图: 
这些编号有什么用呢?或者说Ubuntu对字体的配置采取的是一个什么样的思路呢?这个问题很好回答,看一下README就可以了。如下图: 
从上图可以看出,编号00到09的配置文件主要用来设置存放字体的目录,编号10到19的配置文件用来设置系统中的全局属性,比如hinting啊、antialias啊什么的,而编号20到29的配置文件用来设置某些字体的显示属性,30到39就是针对特定的字体进行替换,如果系统中有某些著名的字体没有安装的话,可以把它替换成其它与之相似的字体,40到49是对字体进行分类,50到59是载入其它的配置文件,60到69则是针对分类选择具体的字体,后面的懒得讲了。可以看出,这里的字体配置思路和我前面一篇随笔中使用的思路是一模一样的。呵呵,其实是我借鉴了它。
同时,通过50-user.conf文件可以看到,我们完全可以把自己的配置文件放到~/.fonts.conf.d目录中。在后面的配置过程中,我的配置文件将遵守同样的编号原则。
借用Windows的字体
微软只公开了几个英文字体,而Tahoma和Consolas以及所有的中文字体我们只有亲自动手去Windows系统下copy了。将借用的字体放到~/.fonts目录下,如下图: 
编写配置文件
最后,进入~/.fonts.conf.d目录,编写相应的配置文件。
第一步,设置dpi为96,因为这是一个全局设置,所以我取的文件名是10-dpi.conf。该配置文件内容很简单,如下图: 
第二步,设置宋体在12px、13px、14px、15px、16px和18px的时候使用点阵,由于这是针对某个特定字体的配置,所以我取的文件名是26-simsun-render.conf。如下图: 
第三步,设置等宽字体为consolas搭配微软雅黑,该配置内容也很简单,由于是为某个类别指定字体,所以我取的文件名是66-monospace.conf。如下图: 
第四步,设置Sans-Serif为Verdana搭配微软雅黑,文件名为67-sans.conf。如果不想使用点阵就不用安装文泉驿点阵正黑,如果不喜欢微软雅黑就把Droid Sans Fallback放到微软雅黑的前面。如下图: 
第五步,设置Serif的中文字体为宋体,文件名为68-serif.conf,如下图: 
第六步,设置界面字体,将Ubuntu替换成Tahoma搭配微软雅黑,文件名为69-ui.conf,内容如下图: 
配置完成后,fc-cache一下,就可以发现控制台中的字体从Dejavu Sans Mono变成Consolas了,中文为微软雅黑。打开网页看我之前编写的字体测试,发现显示效果也很不错哦。如下图: 
和之前的那一篇随笔相比,这里使用的配置方法要简洁明了得多。可以说,只要掌握的字体配置的原理,在Linux系统下配置字体将再也不是什么难事。
http://www.cnblogs.com/youxia/p/linux005.html
Linux应用环境实战05:在Ubuntu 14.10中借用Windows的字体 (转)的更多相关文章
- 在 Ubuntu 14.10 中借用 Windows 的字体
在前一篇随笔中,我详细讨论了字体的分类及用途,也以 Fedora 20 为例,展示了字体配置的思路和方法.我在配置 Fedora 20 系统字体的时候,采用的是一种釜底抽薪的方法,完全抛开了系统原有的 ...
- ubuntu 14.10 lts 64-bits环境下使用Android Studio
距离google发布android studio 1.0正式版已经两个月左右了.由于一直习惯使用eclipse+ADT的模式,而且曾在windows下试用一次Android Studio预览版,感觉卡 ...
- VMware Tools的简易安装---解决Ubuntu 14.10不能满屏显示问题
由于使用的VMware WorkStation是中文破解版,安装时又是简易安装,因此VMware Tools并没有安装上,导致Ubuntu 14.10在VMware中装上之后,并不能满屏显示,如图1所 ...
- Ubuntu 14.10 下安装java反编译工具 jd-gui
系统环境,Ubuntu 14.10 ,64位 1 下载JD-GUI,网址http://221.3.153.126/1Q2W3E4R5T6Y7U8I9O0P1Z2X3C4V5B/jd.benow.ca/ ...
- Ubuntu 14.10安装SecureCRT 7.3
Ubuntu 14.10下安装SecureCRT 7.3 1.软件准备 Ubuntu14.10 x64 SecureCRT7.3的版本:scrt-7.3.0-657.ubuntu13-64.x86_6 ...
- 如何在Ubuntu 14.10 上安装WordPress?
http://codex.wordpress.org/zh-cn:安装WordPress 介绍 如果你想快捷.简单.免费的创建个人网站的话,WordPress 是你最佳的选择. WordPress 是 ...
- Ubuntu 14.10 -- 异次元软件世界
Ubuntu 14.10 中文桌面版/服务器正式版下载 - 华丽免费易于入门的 Linux 操作系统 [ 系统工具 - Linux // 2014-10-25 ] 一说到 Linux,就不得不 ...
- 在 Ubuntu 14.10 Server 上安装 Jetty
Jetty提供了一个Web服务器和javax.servlet容器,为SPDY.WebSocket.OSGi.JMX.JNDI.JAAS以及许多其它集成套件添加了支持.这些组件都是开源的,也可用于商业用 ...
- 修复 VirtualBox 下 Ubuntu 14.10 屏幕分辨率问题
在 Windows 7 下使用 VirtualBox 安装了一个 Ubuntu 14.10 后,碰到了一个 640×480 屏幕分辨率的问题. 在 ‘Display Settings' 设置界面的 ‘ ...
随机推荐
- 多校 4686 Arc of Dream hdu 矩阵解
构造矩阵如下: Ai*bi AX*BX AX*BY AY*BX AY*BY 0 a(i-1)*b(i-1) Ai 0 AX 0 AY 0 a(i-1) Bi 0 0 BX BY 0 b(i-1) 1 ...
- hdu 4455 Substrings (DP 预处理思路)
Substrings Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...
- Swift编程语言学习3.1排列
Swift 语言提供经典的数组和字典两种集合类型来存储集合数据.数组用来按顺序存储同样类型的数据.字典尽管无序存储同样类型数据值可是须要由独有的标识符引用和寻址(就是键值对). Swift 语言里的数 ...
- paip.odbc DSN的存储与读取
paip.odbc DSN的存储与读取 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.net/atti ...
- HDU 4166 & BNU 32715 Robot Navigation (记忆化bfs)
题意:给一个二维地图,每个点为障碍或者空地,有一个机器人有三种操作:1.向前走:2.左转90度:3.右转90度.现给定起点和终点,问到达终点最短路的条数. 思路:一般的题目只是求最短路的长度,但本题还 ...
- MySQL内存表(MEMORY)说明 | 一个PHP程序员的备忘录
MySQL内存表(MEMORY)说明 | 一个PHP程序员的备忘录 MySQL内存表(MEMORY)说明
- 出现异常 child->m_pParent == 0
在cocos2d-x中,能够用CCNode类 自己new一个节点(或是用CCnode::node().create()),当将它作为其它若干item(如button项.sprite项.image项)的 ...
- 百度搜索结果页url参数详解
在百度首页输入任意关键词搜索之后,我们跳转到搜索结果页面,在浏览器的网址栏我们可以看到很长的一串url地址.那么,你真的了解这一串url的含义吗? s?:搜索 百度搜索结果页使用了重定向,因此我们看到 ...
- 从WinMain开始
一.抽象渗漏法则 根据Joel的抽象渗漏法则,所有重大的抽象机制在某种程度上都是有漏洞的.Joel举过一个例子: C++字符串类型应该能让你假装字符串是个基本类型,它们尝试“字串很难处理”这个事实抽象 ...
- Js实现select联动,option从数据库中读取
待要实现的功能:页面有两个select下拉列表,从第一个select中选择后,在第二个select中出现对应的列表选择,再从第二个select中选择后,在一个text中显示对应的信息.两个select ...