2014.7.19更新:
1、Ubuntu卸载旧的Texlive2009
Try the following commands, one after another. If you progress, respective folders may already be deleted:
sudo apt-get purge texlive*
rm -rf /usr/local/texlive/2009 and rm -rf ~/.texlive2009
rm -rf /usr/local/share/texmf
rm -rf /var/lib/texmf
rm -rf /etc/texmf
sudo apt-get remove tex-common --purge
rm -rf ~/.texlive
2、安装texlive 2013
这个安装比較简单,我用的是ubuntu12.04.4。 详细步骤是,mount一下你下载的iso文件。
sudo mkdir /media/texlive
sudo mount texlive2013-20130530.iso /media/texlive
然后进入到 /media/texlive文件夹下。运行:
./install-tl
提示输入的时候,输入I (大写的i,会看到提示的)
安装完毕后,能够向/etc/profile文件的最后一行加入例如以下代码。注意。我的系统是64位的,你要看看你自己的系统是不是在这个文件夹下有latex命令。
export PATH=/usr/local/texlive/2013/bin/x86_64-linux:$PATH
假设你想使用帮助的话,还能够向~/.bashrc中加入以下两行:
export MANPATH=/usr/local/texlive/2013/texmf-dist/doc/man:$MANPATH
export INFOPATH=/usr/local/texlive/2013/texmf-dist/doc/info:$INFOPATH
到这里,我通常会重新启动一下。
測试一下上面的配置是否正确:
which latex
假设找到了latex。那就能够继续了,找不到的话,你须要又一次看一下自己是不是没有配置好环境PATH
3、搞定中文字体
(1)測试中文字体
先写一个简单的測试tex文件。
起名为test.tex
\documentclass[UTF8]{ctexart}
\begin{document}
我爱中国!
\end{document}
然后运行例如以下命令编译:
xelatex test.tex
等一会,你会遇到一个错误,大致例如以下:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! fontspec error: "font-not-found"
!
! The font "SimSun" cannot be found.
!
! See the fontspec documentation for further information.
!
! For immediate help type H <return>.
!...............................................
以下就要解决问题。
(2)解决中文字体问题
错误里说了。"font-not-found"!所以要先安装SimSun字体。
先运行例如以下命令:
cd /etc/fonts/conf.d
sudo ln -s /usr/local/texlive/2013/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts 09-texlive.conf
上面的命令是为了让系统能够使用texlive的字体。
再做例如以下操作能够使用自己定义的字体。
mkdir ~/.fonts
#假设文件夹不存在须要自己建。 cp *.ttf ~/.fonts
#将字体复制到.fonts
然后运行例如以下命令,改动字体权限并更新字体缓存:
sudo chmod 644 *.ttf
sudo mkfontscale
sudo mkfontdir
sudo fc-cache -fsv
运行成功后,再做例如以下操作:
cd /usr/local/texlive/2013/texmf-dist/tex/latex/ctex/fontset/
sudo vim ctex-xecjk-winfonts.def
文件定义了xeCJK字体设置,内容大致例如以下:
% 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
错误产生的原因在于上面定义的字体不存在或者找不到,所以依据已有字体名对字体名进行改动。
以下,打开新的终端。运行例如以下命令:
fc-list :lang=zh-cn
输出大约例如以下:
AR PL UMing TW:style=Light
AR PL UMing HK:style=Light
文泉驿等宽微米黑,文泉驛等寬微米黑,WenQuanYi Micro Hei Mono:style=Regular
仿宋,FangSong:style=Normal,obyčejné,Standard,Κανονικά,Regular,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta
標楷體,DFKai\-SB:style=Regular
AR PL UMing CN:style=Light
新宋体,NSimSun:style=常规,Regular
楷体,KaiTi:style=Normal,obyčejné,Standard,Κανονικά,Regular,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta
微软雅黑,Microsoft YaHei:style=Normal,obyčejné,Standard,Κανονικά,Regular,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta
Adobe 楷体 Std,Adobe Kaiti Std,Adobe Kaiti Std R,Adobe 楷体 Std R:style=R,Regular
Microsoft YaHei UI,Microsoft YaHei UI Light:style=Light,Regular
以下须要做的就是将ctex-xecjk-winfonts.def中的字体SIMFANG.TTF改为FangSong。SIMKAI.TTF改为KaiTi。
假设你用vim,能够在vim里运行例如以下命令:
:%s/\[SIMFANG.TTF\]/FangSong/g
:%s/\[SIMKAI.TTF\]/KaiTi/g
(3)測试问题解决
又一次运行一下。那个编译命令吧:
xelatex test.tex
如今应该没有问题了。
(4)调用系统字体
尽管上述方法攻克了一些问题,但却还是不能使用微软雅黑之类的字体。以下是解决方式
測试文档是:
\documentclass{ctexart}
\setCJKfamilyfont{Microsoft YaHei}{微软雅黑}
\newcommand{\yah}{\CJKfamily{Microsoft YaHei}}
\begin{document}
注意:UTF-8编码,用XeLaTeX编译,{\yah 这里演示样例为微软雅黑}。\\
效果还能够。
\end{document}
效果是这样:
大功告成。