oneslideicywater 2016-05-07
系统: Ubuntu 14.04
Texlive版本: 2013
1. Texlive安装方法,未采用镜像和网络安装,直接在terminal下apt-get
Install: sudo apt-get install texlive*
大概有3G不到,基本的texlive2013的包会全部安装,里面包含了对中文支持的CTex
2. 安装texworks
sudo apt-get update
sudo apt-get install texworks
大概3M左右,安装好了以后,terminal下直接输入texworks可以打开,界面相对于其他的latex编辑器会简单一点,而且Linux版比Windows下的优势是自带拼写检查的包。
3. 添加中文支持
我用的中文包时CTeX的,也即 \documentclass[*]{ctexart}, *部分可以选nofont,winfont或adobefont
这里主要是针对Windows字体的winfont。考虑到Linux下的中文基本时文泉驿系列的,需要手动安装Windows的字体。建议从win7去拷贝,win10的字体变换挺大的,而且不是很好看。
Windows系统下字体的位置: C:/windows/fonts。
因为字体比较多,可以直接搜索sim*相关的就可以了,大概10个左右,包含了CTeX下可以使用的所有字体。
~$ mkdir ~/Desktop/WinFonts
~$ cp /media/usr/C ~/Desktop/WinFonts
注意这里的usr是当前用户的名称,C是C盘的盘符,如果你是双系的话。
4. 安装字体,建议批量安装
~$ sudo cp -r ~/Desktop/WinFonts/ /usr/share/fonts/
~$ cd /usr/share/fonts/WinFonts
# 修改权限,这一步很重要
sudo chmod 744 *
# 安装字体
~$ sudo mkfontscale
~$ sudo mkfontdir
~$ sudo fc-cache -f -v
5. 下检查字体是否安装成功
~$ fc-list :lang-zh-CN | less
若列表中有'宋体','楷体'等字体出现,则说明安装成功。如果没有出现,建议注销重新登陆,再次尝试检查。
7. 验证TexLive对于winfont的支持,利用如下语句尝试即可
\documentclass[winfont]{ctexart}
\begin{document}
中文测试!
\end{document}
XeLaTex 编译以后,输出相应的结果说明中文的支持添加成功。注意pdfLatex是不支持中文的。
8. 可能会碰到编译不成功的情况,采用如下方法解决:
修改ctex的配置文件,如果是apt-get install安装的话,利用如下语句找到配置文件的位置
~$ cd /usr/share/texlive/texmf-dist/tex/latex/ctex/fontset/
~$ ls 看到有对于winfont,nofont以及adobefont的支持文件,利用vim或者gedit打开,whatever
~$ sudo gedit ctex-xecjk-winfonts.def
会看到:
% ctex-xecjk-winfonts.def: Windows 的 xeCJK 字体设置,默认为六种中易字体
% vim:ft=tex
\setCJKmainfont[BoldFont={SimHei},ItalicFont={[SIMKAI.TTF]}]
{SimSun}
\setCJKsansfont{SimHei}
\setCJKmonofont{[SIMFANG.TTF]}
\setCJKfamilyfont{zhsong}{SimSun}
\setCJKfamilyfont{zhhei}{SimHei}
\setCJKfamilyfont{zhkai}{[SIMKAI.TTF]}
\setCJKfamilyfont{zhfs}{[SIMFANG.TTF]}
% \setCJKfamilyfont{zhli}{LiSu}
% \setCJKfamilyfont{zhyou}{YouYuan}
\newcommand*{\songti}{\CJKfamily{zhsong}} % 宋体
\newcommand*{\heiti}{\CJKfamily{zhhei}} % 黑体
\newcommand*{\kaishu}{\CJKfamily{zhkai}} % 楷书
\newcommand*{\fangsong}{\CJKfamily{zhfs}} % 仿宋
% \newcommand*{\lishu}{\CJKfamily{zhli}} % 隶书
% \newcommand*{\youyuan}{\CJKfamily{zhyou}} % 幼圆
\endinput
根据报错的内容,比如说 SIMKAI.TFF找不到,则根据fc-list列出的进行修改,比如修改如下
% ctex-xecjk-winfonts.def: Windows 的 xeCJK 字体设置,默认为六种中易字体
% vim:ft=tex
\setCJKmainfont[BoldFont={SimHei},ItalicFont={KaiTi}]
{SimSun}
\setCJKsansfont{SimHei}
\setCJKmonofont{[SIMFANG.TTF]}
\setCJKfamilyfont{zhsong}{SimSun}
\setCJKfamilyfont{zhhei}{SimHei}
\setCJKfamilyfont{zhkai}{KaiTi}
\setCJKfamilyfont{zhfs}{[SIMFANG.TTF]}
% \setCJKfamilyfont{zhli}{LiSu}
% \setCJKfamilyfont{zhyou}{YouYuan}
\newcommand*{\songti}{\CJKfamily{zhsong}} % 宋体
\newcommand*{\heiti}{\CJKfamily{zhhei}} % 黑体
\newcommand*{\kaishu}{\CJKfamily{zhkai}} % 楷书
\newcommand*{\fangsong}{\CJKfamily{zhfs}} % 仿宋
\newcommand*{\lishu}{\CJKfamily{zhli}} % 隶书
\newcommand*{\youyuan}{\CJKfamily{zhyou}} % 幼圆
\endinput
重新编译tex文件,应该可以解决问题。