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 .
!...............................................
下面就要解决这个问题。
(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}
效果是这样:
