Dec 12

转自:http://bbs.chinatex.org/forum.php?mod=viewthread&tid=61

对于使用LaTeX+CJK的入门者来说,如何在生成的pdf中见到漂亮的type1字体,经常是令人困扰的事情。我也曾经在这里问过如何才能让自己的pdf不再使用点阵汉字这样的问题。所以整理了一份。faint. 忙了半夜,不会说话了。

用到的gbkfonts在这里就有啦。另外,在 cn.groups.yahoo.com/group/latexapplication 中也有一份。

gbkfonts是一个利用TrueType字体来生成Type1字体,以供TeX/LaTeX使用的应用程序。使用时先在gbkfonts.ini中定义生成字体的名称等参数,比如要用Windows下的宋体ttf字体来生成宋体的Type1字体,可在gbkfonts.ini中加入下面一行:(实际上在gbkfonts.ini中已经预定义了多种常用的中文字体如宋体,黑体,楷体,仿宋等。)

song songsl GB-Song 8000

然后用如下命令:

gbkfonts -c -gbk c:windowsfontssimsun.ttf song

程序运行完后,会在当前目录下生成dvips,fonts,dvipdfm和tex四个目录。

(简明说明见下面增补意见2)
其中,fonts目录下是生成的pfb,afm,tfm字体,可将他们移到你的Local TeXMF目录下(MikTeX一般是c:localtexmf,fpTeX则为c:textexmf.local)。同样,也可把dvips目录(包扩字体映射文件和让pdftex/pdflatex使用ttf字体的一些enc文件)和dvipdfm(让dvipdfm使用中文Type1字体的字体映射文件)和tex(生成的相应的.fd文件以供CJK使用)目录也放到Local TeXMF下面。并将当前目录下cjk.map中的内容追加到你原来的cjk.map中(如没有,就可直接将cjk.map拷贝到Local TeXMF下dvipschinese下面。

欢迎提出宝贵意见。
Email: [email protected]
[email protected]

增补意见:
1.需要修改的部分文件
.代表MikTeX的安装目录

(1).miktexconfigmiktex.ini
TTFPath=.;%Rfontstruetype//
改为:
TTFPath=.;%Rfontstruetype//;C:WindowsFonts//
(2).dvipsconfigconfig.ps
中加入:(如果在这个目录中没有CJK.map,将生成的拷贝一份进来)
p +cjk.map
p +gbksong.map
p +gbkhei.map
p +gbkkai.map
(3).pdftexconfigpdftex.cfg
中加入:(如果在这个目录中没有CJK.map,将生成的拷贝一份进来)
map +cjk.map
(4).ttf2tfmbasettfonts.map
中加入:
gbkhei@UGBK@ simhei.ttf Pid = 3 Eid = 1
gbkkai@UGBK@ simkai.ttf Pid = 3 Eid = 1
gbksong@UGBK@ simsun.ttc Pid = 3 Eid = 1
gbkheisl@UGBK@ simhei.ttf Slant=0.167 Pid = 3 Eid = 1
gbksongsl@UGBK@ simsun.ttc Slant=0.167 Pid = 3 Eid = 1
gbkkaisl@UGBK@ simkai.ttf Slant=0.167 Pid = 3 Eid = 1

如果加入的字体与上面加入的不同,参照修改(2)、(4)即可。

2.gbkfonts生成文件的处理

程序运行完后,会在当前目录下生成dvips,fonts,dvipdfm和tex 四个目录。其中, fonts 目录下是生成的pfb,afm,tfm字体; dvips 目录包括字体映射文件和让pdftex/pdflatex使用ttf字体的enc文件; dvipdfm 目录包括让dvipdfm使用中文Type1字体的字体映射文件 ; tex 目录包括了中文字体的定义文件 ; 最简单的处理就是把以上的目录,原封不动地拷贝到安装时选定的Local TeXMF目录下。gbkfonts还生成了一个CJK.map文件,将这个文件分别拷贝到Local TeXMF下dvipschinese和上面提到的两个目录下面。

3.CJK.map文件
如果你的系统中原来没有这个文件,自然无话可说。但是如果有,而且你不确定的话, 就将生成的CJK.map中的内容追加到原来的文件中,但要保持以上有这个文件的各个目录中文件的一致性。

以上安装方法虽然有些冗余,但是最大限度地避免了在重新安装系统后的劳作。当然最重要的就是要保护好你的Local TeXMF目录,另外将修改的文件按照目录结构作一个备份,
重新安装系统后,将备份直接覆盖安装文件即可。前提是,安装的MikTeX版本没有发生太大的变化。

反正我看着以上的过程不麻烦,第一次当然麻烦,^_^ 如果有意见或疑问, EMail: [email protected].

Leave a Reply