office_tools 版 (精华区)
发信人: hitwdh (一潭死水※痛并快乐着), 信区: office_tools
标 题: [CJK] 中文字库问题 (zz)
发信站: 哈工大紫丁香 (2004年04月03日20:12:53 星期六), 站内信件
http://www.ctex.org/forums/index.php?showtopic=1200&hl=
背景知识 by aloft
1. 点阵字库
我们都只知道,各种字符在电脑屏幕上都是以一些点来表示的,因此也叫点阵。最早的字
库就是直接把这些点存储起来,就是点阵字库。常见的汉字点阵字库有 16x16, 24x24 等
。点阵字库也有很多种,主要区别在于其中存储编码的方式不同。点阵字库的最大缺点就
是它是固定分辨率的,也就是每种字库都有固定的大小尺寸,在原始尺寸下使用,效果很
好,但如果将其放大或缩小使用,效果就很糟糕了,就会出现我们通常说的锯齿现象。因
为需要的字体大小组合有无数种,我们也不可能为每种大小都定义一个点阵字库。于是就
出现了矢量字库。
2. 矢量字库
矢量字库是把每个字符的笔划分解成各种直线和曲线,然后记下这些直线和曲线的参数,
在显示的时候,再根据具体的尺寸大小,画出这些线条,就还原了原来的字符。它的好处
就是可以随意放大缩小而不失真。而且所需存储量和字符大小无关。矢量字库有很多种,
区别在于他们采用的不同数学模型来描述组成字符的线条。常见的矢量字库有Type1字库和
Truetype字库。
在 TeX 中使用 Type1 和 Truetype 字库
在TeX中,Type1字库和Truetype字库都能产生很好效果的输出,但有许多细微的差别。以
中文来说,这两种字库都可以配合CJK使用,输出结果同时取决于所用的工具。下面我按输
出文件类型来比较他们的差异。
1. 生成 PS 文件 (dvips)
Type1 - dvips可以直接使用Type1字库,生成的ps文件中包含了字符的矢量描述,具有很
好的缩放效果。
Truetype - dvipd不能直接使用Truetype字库,因此必须先生成中间的pk字库,这是一种
点阵字库,所以生成的ps文件在原始大小下还不错,但缩放以后就比较难看了。
2. 生成 PDF 文件 (dvipdfm)
dvipdfm和dvips差不多,也是可以直接使用Type1字库,不能直接使用Truetype字库。
3. 生成 PDF 文件 (pdftex/pdflatex)
可以直接使用两种字库,因此都可以产生效果很好的输出。
4. 生成可以拷贝粘贴中文的 PDF 文件
目前只有 dvipdfmx (dvipdfm-cjk) 可以做到,它直接使用 Truetype 字库
常见问题
1. 两种矢量字库,即type1与trurtype,会不会发生冲突?
不会,每个工具都有自己的config和map文件来决定使用哪种字库,而且按一定的顺序查询
有哪些字库可以使用
2. dvips怎么知道去使用哪种字库呢?
如果没有在 config.ps 中加入一行类似:
p +cjk.map
指出中文Type字库的相关信息,则 dvips 缺省使用 pk 字体(由ttf2pk 或 gsftopk 得到
)。也可以将上面的一行存为一个文件 config.cjk 放在 texmf/dvips/config 目录下,
使用 dvips -Pcjk 来调用 dvips 使之使用 Type1 字体。
CTeX 2.2.2 中的字库问题
总体来说,目前使用Type1字库的效果要好过Truetype。那为什么CTeX 2.2.2中没有包含中
文Type1字库呢?
因为Type1字库,比较大,考虑到大家下载和安装的方便,把Type1单独组成了CTeX-Fonts
安装包。而Truetype字库,CTeX中并没有包含,因为大家使用的中文windows中都有这些字
库。是否需要安装中文Type1字库,则看你需要什么格式的输出文件,以及你所要求的字体
效果要达到什么程度。
--
【hitwdh】:欢迎光顾office_tools(文档表格处理)这个小店!
【网 友】:你这疙瘩都经营些啥呀?
【hitwdh】:主要是MS Office, WPS Office等系列软件,及其与之关联的图文处理软件
的使用,PDF文档的编辑处理等美味佳肴,特别推荐Word、Excel,PDF等精
华大餐!新引进有趣、实用、美观的套餐TeX and LaTeX,欢迎有意者品尝!
最后祝愿你在本店得到你所需要的! :-)
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.237.5]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.796毫秒