http://www.dcs.shef.ac.uk/~wei/latex4chinese.htm
众所周知Latex是非常牛的typesetting文档排版系统,西方绝大多专业科学文章书籍都是用各种版本的latex编译出来的. 在linux操作系统上latex是标准配置,可是让latex支持中文却不是一件容易事,Google了很多文章,这样那样的教程,Linux的, windows的,下载这样那样package的,到最后还是无法生成一篇简单的中文pdf文件,最近在高手的指点下,终于成功在Linux (Ubuntu 7.04) 和 Windows下MiKteX2.6 下成功编译中文tex文档,生成了漂亮的pdf文件.为了造福后人,也给自己一个记录,下面将详细说明每一步的步骤.
声明一下大部分的下载和说明都是来自 How to make LaTeX (teTeX) handle unicode and CJK in MacOSX 的,十分感谢该作者.
在操作前,首先确认你的系统安装了适合的TeX系统,我是在Ubuntu 7.04的TexLive 2005, 以及Windows下的MiKTeX2.6 试验成功的.其他版本不保证哦
第一步: 下载 UCS package
在此下载UCS包:http://www.unruh.de/DniQ/latex/unicode/unicode.tgz
把解压后得到ucs目录放在你的TeX相应目录下,
我系统的texmf目录为:/usr/share/texmf/, 那么就放在/usr/share/texmf/tex/latex 下.
我的windows MiKTeX目录为 E:MiKTeX, 对应就放在E:MiKTeXtexlatex 下.
(注,在ubuntu下你可能需要用 sudo 命令来创建目录,比如 sudo mkdir /usr/share/texmf/tex/latex/ucs )
第二步: 下载 CJK package
下载CJK包: http://cjk.ffii.org/cjk-4.7.0.tar.gz
把解压后的整个目录放在相应目录下,比如 /usr/share/texmf/tex/latex/cjk/下, MiKTeX在 E:MiKTeXtexlatex 下.
第三步: 下载 Unicode TureType font (cyberbit).
1.下载cyberbit.zip
把解压后的cyberbit.ttf放在相应目录下,比如 /usr/share/texmf/fonts/truetype/下, MiKTeX在 E:MiKTeXfonts 下.
注意如果你下载的是Cyberbit.ttf,要把大写的Cyberbit.ttf改成全小写的cyberbit.ttf
2.下载 .tfm 文件和 .enc 文件
然后把所有的".tfm"文件放在相应目录下,比如 /usr/share/texmf/fonts/tfm/cyberbit/, MiKTex比如在E:MiKTeX 2.6fontstfmcyberbit下.
把所有的".enc"文件放在相应目录下,比如 /usr/share/texmf/fonts/enc/, MiKTex比如在 E:MiKTeX 2.6fontsenc下.
3.安装 "cyberbit.map"文件: http://delloye.free.fr/cyberbit.map
放置在相应目录下,比如 /var/lib/texmf/fonts/map/pdftex/updmap/, MiKTeX比如在 E:MiKTeX 2.6pdftexconfig下.
4.安装 "c70cyberbit.fd"文件: http://delloye.free.fr/c70cyberbit.fd
将该文件放在相应目录下,比如 /usr/share/texmf/misc/ , MiKTeX比如在 E:MiKTeX 2.6texmisc 下 (没有该目录请自行创建)
第四步: 给pdfTeX声名新字体
1.修改(别忘了用sudo) updmap.cfg 文件,(/var/lib/texmf/web2c/updmap.cfg, MiKTeX: E:MiKTeX 2.6miktexconfig)
在文件尾部追加下面一行
Map cyberbit.map
保存后,运行updmap
sudo updmap
最后,更新FNDB, 对于Windows下的MiKTeX,更新FNDB请点击settings工具下面的"Refresh FNDB"按钮.对于Ubuntu:
sudo mktexlsr
第五步: 定义latex的preamble
经过1-4,准备工作都好了,现在只需要为你的latex文档添加新的preamble,就可以使用中文啦!
usepackage[encapsulated]{CJK}
usepackage{ucs}
usepackage[utf8x]{inputenc}
newcommand{cntext}[1]{begin{CJK}{UTF8}{cyberbit}#1end{CJK}}
然后在你latex文档中需要用中文的地方用cntext{} 包围你的中文:
cntext{中文latex文档}
或者下载这个例子文档编译 test.tex
October 1, 2007
W.Liu
https://blog.sciencenet.cn/blog-5691-11665.html
上一篇:
计算汉字二字词语拼音"冗余度"