让 dvips 找到中文字体

来源:互联网 发布:淘宝小号哪儿有卖 编辑:程序博客网 时间:2024/06/06 09:06

http://jjmmma.blog.com.cn/archives/2006/812558.shtml

 

不知道怎么捣鼓的,在寝室里瞎弄一下,就成功的补缺中文地能dvi转化成pdf文件。
后来把硬盘里所有东西倒到新的硬盘放到实验室就发现不能生成中文。错误信息如下:


 $ dvips -Ppdf -G0 main.dvi

 This is dvips(k) 5.95b Copyright 2005 Radical Eye Software

 (www.radicaleye.com)

 ' TeX output 2006.05.08:1021' -> main.ps

 kpathsea: Running mktexpk --mfmode ljfour --bdpi 8000 --mag 2+3904/(2*4000)

 --dpi 19904 gbksong37

 mktexpk: don't know how to create bitmap font for gbksong37.

 kpathsea: Appending font creation commands to missfont.log.

 dvips: Font gbksong37 not found, characters will be left blank.

 kpathsea: Running mktexpk --mfmode ljfour --bdpi 8000 --mag 2+3904/(2*4000)

 --dpi 19904 gbksong47

 mktexpk: don't know how to create bitmap font for gbksong47.

 dvips: Font gbksong47 not found, characters will be left blank.

 ……………………………………………………

 


其实问题的关键是没有让设置cjk.map的路径给dvips。因为在寝室里的时候用户目录下的一个配置文件中有路径,而实验室没有。
该文件是:


 ~/.texmf-config/web2c/updmap.cfg

 


所要做的事情就是创建目录~/.texmf-config/web2c/


 $ cp /etc/texmf/web2c/updmap.cfg ~/.texmf-config/web2c/

 


在~/.texmf-config/web2c/updmap.cfg最后添加一行:


 Map /usr/local/share/texmf/dvips/cjk.map

 


然后root用户执行:


 # texhash

 


普通用户执行:


 $ updmap

 


这时候就可以很舒服的得到正确显示中文的pdf文件了:


 $  dvips -Ppdf -G0 main.dvi

 This is dvips(k) 5.95b Copyright 2005 Radical Eye Software (www.radicaleye.com)

 ' TeX output 2006.05.09:1935' -> main.ps

 <8r.enc>.