一、安装TexLive+Latex+CJK:
打开终端,执行下述命令安装TexLive和常用的一些Latex宏包(可以根据自己的需要增改):
1 | $ sudo apt-get install texlive texlive-math-extra texlive-latex-base texlive-latex-extra texlive-latex-recommended texlive-pictures texlive-science texlive-bibtex-extra texlive-common latex-beamer |
如果硬盘充裕的话,直接完整安装也可以:
1 | $ sudo apt-get install texlive-full latex-beamer |
安装完后,就可以安装CJK的相关软件包了,如果只需要获得中文支持,那么执行:
1 | $ sudo apt-get install latex-cjk-chinese ttf-arphic-* hbf-* |
否则,建议安装latex-cjk-all以获取完整支持。
二、生成中文字体包
安装好TexLive+CJK以后,还需要安装一个软件──fontforge用于生成字体:
1 | $ sudo apt-get install fontforge |
好了,前面所做的,都是标准的Debian式安装,假如哪天你不需要了,直接remove安装即可。
生成字体前,请自己准备你需要生成的字体文件:simsun.ttc,simhei.ttf等,这里以simsun.ttc(宋体)为例。
准备好后下载下面这个包,解压到一个地方,如自己的主目录~/font:
font.tar.bz2
然后把simsun.ttc也复制到~/font里去,执行下面的命令生成字体地图:
1 2 | $ cd ~/font $ fontforge -script subfonts.pe simsun.ttc song Unicode.sfd |
字体生成好了,再建立一个描述文件吧。
在~/font下,建立一个makemap文件,内容如下:
for i in *.tfm
do
cat >> song.map << EOF
${i%.tfm} ${i%.tfm} < ${i%.tfm}.pfb
EOF
done
然后在终端下执行:chmod +x makemap让文件加上执行权限,最后执行:
1 | $ ./makemap |
再建立一个一个c70song.fd文件:
% This is c70song.fd for CJK package.
% created by Edward G.J. Lee
% modify by Yue Wang
\ProvidesFile{c70song.fd}
\DeclareFontFamily{C70}{song}{\hyphenchar \font\m@ne}
\DeclareFontShape{C70}{song}{m}{n}{<-> CJK * song}{}
\DeclareFontShape{C70}{song}{bx}{n}{<-> CJKb * song}{\CJKbold}
\endinput
好的,相关文件都已生成,开始复制字体使其生效。
执行下面的命令,在你的主目录下生成隐藏的个人Tex配置,如果你哪天不需要了,也可以删除:
1 2 3 4 | mkdir -p ~/.texmf-var/fonts/map/dvips/CJK mkdir -p ~/.texmf-var/fonts/tfm/CJK/song mkdir -p ~/.texmf-var/fonts/type1/CJK/song mkdir -p ~/.texmf-var/tex/latex/CJK/UTF8 |
建立完这层层叠叠的目录以后,就把刚刚生成的字体复制进去吧。
1 2 3 4 | $ cp ~/font/song.map ~/.texmf-var/fonts/map/dvips/CJK $ cp ~/font/*.tfm ~/.texmf-var/fonts/tfm/CJK/song $ cp ~/font/*.pfb ~/.texmf-var/fonts/type1/CJK/song $ cp ~/font/c70song.fd ~/.texmf-var/tex/latex/CJK/UTF8 |
复制完后就执行命令刷新缓存,让它生效:
1 2 | $ sudo texhash $ updmap --enable Map song.map |
三、测试LaTex
假如一切顺序的话, 就测试一下我们安装的song体是否能用吧。
在任意位置编辑这个文件,然后保存为test.tex,支持UTF-8格式:
\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{song}
你好!这里是Ubuntu下的TexLive+CJK环境!
\end{CJK}
\end{document}
执行分别生成pdf文档和用evince来查看文档:
1 2 | $ pdflatex test.tex $ evince test.pdf |
看看你的过程顺不顺利,生成的PDF档也是下面这样吗?

texlive.png

texlive-2.png
用同样的方法搞定hei和kai等常用中文标准字体,开始享受你的Tex吧!
四、参考资料
Fedora上配置Tex UTF-8 中文系统
TeXLive 2007 CJK Chinese Howto
ubuntu 7.10下搞定Latex + CJK
你好!除了代码,此处没有多少原创之物,皆为本人搜集、整理、总结之记录与心得,欢迎转载分享!转载时请尽量注明出处,将不胜感激。祝你健康、快乐!
what spcial work can they do ?
世界上最好的出版社发行的最“美观”的书以及大部分科技论文都是用这个东西做的。
hi,谢谢你的分享。
我试了您所写的内容,simsun和simhei都成功了,非常漂亮!
但是日文字体都失败了,比如msmincho。
在第一步fontforge的时候出了segmentation fault。实验了好几个日文字体都失败了。
不知道您是否知道原因。
我是debian testing(wheezy)
抱歉,没用过日文字体:-)
anyway, thank you.