LaTeX 编译中文文档
介绍
pdfLaTeX 编译引擎不支持中文,而 XeLaTeX 编译引擎原生支持中文,但由于默认字体是英文字体,因此无法显示中文,需要设置中文字体之后才能正常显示中文。
- 其中
CJK
是最古老的,其对中文字体的支持比较麻烦,不推荐使用。 xeCJK
以及luatexja
宏包在CJK
基础上封装了对汉字排版细节的处理功能。CTEX
宏包和文档类进一步封装了CJK
、xeCJK
、luatexja
等宏包,使得用户在排版中文时不再考虑排版引擎等细节。
使用 CTEX 文档类
如果你要撰写一篇纯中文的文档,那么你可以直接使用 CTEX 文档类:
\documentclass[fontset=founder]{ctexart}
使用 ctex 宏包或者 xeCJK 宏包(常用)
很多情况下,我们希望利用某些英文 LaTeX 模板来撰写中文文章,这时候就不能使用 CTEX 文档类了。这种情况下,可以通过引入 ctex
宏包或者 xeCJK
宏包来支持中文。
xeCJK
对中文的支持更朴素一点,也就是它除了支持你插入中文以外不会改变文档其他地方。而 ctex
则会将文档类中的一些英文环境也翻译成中文。
-
使用 xeCJK 宏包:
\documentclass{article} \usepackage{xeCJK} % 加载 xeCJK 宏包 \setCJKmainfont{SimSun} % 设置默认中文字体 \setCJKsansfont{SimHei} % 设置中文无衬线字体 \setCJKmonofont{SimFang} % 设置中文等宽字体 \begin{document} 你好,\LaTeX \end{document}
-
使用 ctex 宏包:
\documentclass{article} \usepackage[fontset=founder]{ctex} % 加载 ctex 宏包,使用方正字体 \begin{document} 你好,\LaTeX \end{document}
ctex
预定义的中文字库:字体选项 描述 支持pdfLATEX adobe
使用 Adobe 公司的四款中文字体 不支持 fandol
使用 Fandol 中文字体 不支持 founder
使用方正公司的中文字体 支持 mac
使用 macOS 系统下的字体,分为 macnew
和macold
两种不支持 macnew
使用 El Capitan 或之后的多字重华文字体和苹方字体 支持 macold
使用 Yosemite 或之前的华文字体 支持 ubuntu
使用 Ubuntu 系统下的思源宋体、思源黑体和文鼎楷体 不支持 windows
使用 Windows 系统下的中易字体和微软雅黑字体 特定条件下支持(见描述) ctex
中定义的字体命令:\songti
:宋体,CJK 等价命令\CJKfamily{zhsong}
。\heiti
:黑体,CJK 等价命令\CJKfamily{zhhei}
。\fangsong
:仿宋,CJK 等价命令\CJKfamily{zhfs}
。\kaishu
:楷书,CJK 等价命令\CJKfamily{zhkai}
。
在 XeLaTeX 中直接使用中文
XeLaTeX 引擎原生支持 Unicode 字符,因此我们实际上可以直接使用中文书写 LaTeX 文档。不过前提是设置一下中文字体,因为虽然 XeLaTeX 引擎原生支持中文字符,但是其使用的默认字体是英文字体,不包括中文字符。
\documentclass{article}
\usepackage{fontspec} % 使用 fontspec 包配置字体
\setmainfont{SimSun} % 设置宋体为主要字体
\begin{document}
你好,\LaTeX
\end{document}
参考: