如何用latex编辑中文?

-

\documentclass{article}

\使用包{CJK}

\ begin { CJK } { UTF8 } {宋}

与中国人打交道,CJK是最无奈的选择。这个法律现在已经过时了,不建议大家使用。

\ end { CJK } { UTF8 } {宋}

\end{document}

-

这种方法制作的pdf文件质量不好。而且因为所有用中文的地方都用CJK宏包,不够方便。

在用xelatex之前,我也是用的ctexlive-2005 for linux。

如果有这个iso文件,用法很简单,就是用artutf8替换article。而且也不用担心中文断行,中英文混排的问题。

它实际上是CJK宏包的一个包。更详细的解释请参考相关文档。

-

\documentclass{artutf8}

\ begin {文档}

如果不想用xelatex,ctexlive 2005还是挺好的。

\end{document}

-

Xelatex一般用于处理中文tex文件。

Xetex支持Unicode编码。因此,它自然支持多种语言。

tex、latex、xetex和xelatex之间的关系如下:

Tex是排版引擎,latex是宏包。

Xetex也是一个排版引擎,也算是tex的升级版(增加了对国际代码的支持,可以直接使用系统的字体,默认不再生成dvi文件)。用了latex宏包之后就是xelatex了。

关于dvi,tex系统在pdf格式诞生之前就已经产生了。当时人们排版生成设备无关文件(dvi),然后生成设备相关文件,再提交给相应的打印机进行打印。

Pdf现在已经被广泛使用了。所以xetex的这次升级。顺便省略生成dvi的过程。dvi的优点是生成快,超小,适合预览;缺点是不能嵌入字体,windows下没有广泛使用的浏览器,不适合发布。几乎没有人把dvi文件直接发布到网络上(直接发布源文件比那个好)。

在linux操作系统下使用emacs编辑latex源文件非常方便。编辑后用xelatex编译。将生成Pdf文档。与使用CJK宏包生成的pdf文档相比,这种方式生成的pdf文档体积小、字体美观、质量高,并且在一些原本需要特殊处理的地方可以不经处理直接显示中文,应该是未来应用的主流。

因为latex是为欧洲语言设计的。另一方面,欧洲语言依靠空格来分隔单词,这与东亚语言不同。所以只使用xelatex是不够的,还要使用xeCJK这个宏包,让latex正确处理中文换行符和中英文混合排版。

我现在用linux下的emacs来编辑latex文件。系统输入法封闭,使用叶的eim五笔输入法。通过设置,可以在进入latex的数字模式时自动关闭中文输入法,在离开数学模式时自动开启中文输入。这样做的另一个好处是可以用Ctrl+space来标记。您还可以编辑。Xresource文件并设置use-xim = off。这样也能达到目的。

下面是一个简单的xelatex模板文件。

-

\documentclass〔12pt,dvipdfm]{article}

\usepackage{xeCJK}%根据自己的需要加载宏包。

\setmainfont{您系统中安装的字体}%

\ begin {文档}

使用xelatex,对付中文不再困难。只是编译起来有点慢。

\end{document}

-