本文所使用命令大部分需要root权限
安装与使用xeCJK宏包实现
apt-get install texlive apt-get install texlive-xetex
即安装texlive后还需安装texlive-xetex,或者直接安装整个texlive-full包(比较大,但包和模板完整)。
要编写中文文档时需在在tex文件导言区加入:\usepackage{xeCJK}\setCJKmainfont{字体名}
即使用xeCJK宏包,至于可用的字体名可用命令:fc-list :lang=zh
查询,查询结果类似于:
/usr/share/fonts/winfont/simsun.ttc: 宋体,SimSun:style=Regular/usr/share/fonts/winfont/simsun.ttc: 新宋体,NSimSun:style=Regular/usr/share/fonts/truetype/arphic/ukai.ttc: AR PL UKai TW MBE:style=Book/usr/share/fonts/truetype/arphic/uming.ttc: AR PL UMing TW:style=Light/usr/share/fonts/truetype/arphic/uming.ttc: AR PL UMing CN:style=Light/usr/share/fonts/truetype/arphic/uming.ttc: AR PL UMing HK:style=Light
其中诸如“SimSun”、“NSimSun”、“AR PL UMing TW”等为字体名。Ubuntu下自带的中文字体较少,可从windows下复制字体文件,一般是在C:/Windows/Fonts文件夹下;在/usr/share/fonts下新建一个文件夹存放这些字体文件,如/usr/share/fonts/winfont,更改权限并更新字体库:
chmod 644 /usr/share/fonts/winfont/*mkfontscalemkfontdirfc-cache -fsv
就能编译成功了。<br/>
注意:使用xeCJK宏包后需要用
xelatex
来编译。
使用ctex宏包实现
中文支持也可直接使用ctex宏包来实现:
导言区加上\usepackage{ctex}
,或者直接修改文档类别,对应的三种基本文档为ctexart、ctexrep和ctexbook,如\documentclass{ctexart}
。 ctex宏包还定义一些命令,有兴趣的可以到查下帮助文档。 不过使用ctex宏包还需要更改/usr/share/texlive/texmf-dist/tex/latex/ctex/fontset下的ctex-xecjk-winfonts.def文件(文件路径对于不同版本的TeX Live可能不一样,我的版本是TeX 3.1415926 (TeX Live 2013/Debian)),因为里面的字体名有误,将其改成上文用fc-list :lang=zh
命令查询到的字体名,注意,原文件中"[SIMKAI.TTF]"的中括号需要删除,楷体的字体名为“KaiTi”,至于“.TTF”的后缀名好像删除了也不会有影响。修改后文件部分内容类似于: \setCJKmainfont[BoldFont={SimHei},ItalicFont={KaiTi}]{SimSun}\setCJKsansfont{SimHei}\setCJKmonofont{FangSong}\setCJKfamilyfont{zhsong}{SimSun}\setCJKfamilyfont{zhhei}{SimHei}\setCJKfamilyfont{zhkai}{KaiTi}\ newcommand*{\songti}{\CJKfamily{zhsong}} % 宋体 \ newcommand*{\heiti}{\CJKfamily{zhhei}} % 黑体\ newcommand*{\kaishu}{\CJKfamily{zhkai}} % 楷书...
修改之后应该就能编译成功了。使用ctex宏包的话可以直接用pdflatex
命令编译。<br/>
(参考自:)