下面这一文章总结是很不错的,基本把中文支持,linux下的命令行安装都介绍到了,若是能基本阅读掌握,应该对当前的TeX系统比较了解了。推荐推荐,选自:http://zhengmingpei.github.io/linux配置/2014/07/07/install-tex/
下面的笔记适用于在基于debian的发行版(比如Ubuntu、LinuxMint)安装Texlive2013、2014;
第一步根据本机状况,可能不需要;
Texlive2014已经可以下载安装了,下面的所有“2013”更改为“2014”,安装Texlive2014正常。
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"!所以问题在于Texlive找不到所示的SimSun
字体。
配置Texlive,使其可以使用系统字体
参照官方文档的说法:
XeTEX和LuaTEX可以使用任何系统安装的字体,而不只是TEX目录树中的那些。它们使用类似但不完全一致的方式实现这一功能。 在Windows下TEXLive提供的字体会自动为XeTEX所用。但如果你在Unix兼容的系统中安装了xetex软件包,则需要把系统配置一番XeTEX才能找到随TEXLive安装的那些字体。 为了进行配置,xetex 安装后(不管是初始安装还是后来安装的)都会在TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf 创建一个必需的配置文件。 要在整个系统中使用TEXLive的字体(假定你有足够的权限),请依照下面的步骤来做: 1. 将texlive-fontconfig.conf 文件复制到 /etc/fonts/conf.d/09-texlive.conf。 2. 运行fc-cache -fsv。 如果你没有足够的权限执行上述操作,或者只需要把TEXLive字体提供给你自己,可以这么做: 1. 将texlive-fontconfig.conf文件复制到 ~/.fonts.conf,其中~是你的主目录。 2. 运行fc-cache -fv
。 你可以运行fc-list
来查看系统字体的名称。
由此可知,执行如下命令即可:
sudo cp /usr/local/texlive/2014/texmf-var/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf sudo fc-cache -fv
现在texlive可以使用系统字体,但是SimSun
字体在类UNIX中不存在,所以需要从Windows拷贝。
拷贝SimSun字体到系统中
mkdir ~/.fonts
cp * ~/.fonts
也可以使用默认的系统文件夹,比如可以用
mkdir /usr/share/fonts/windowsfonts
cp * /usr/share/fonts/windowsfonts
然后执行如下命令,修改字体权限并再次更新字体缓存:
sudo chmod +x * 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
注意:输出中有SimSun
字样才表示上述两步成功,否则可能复制相关字体不完全。
下面需要做的就是将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}
效果是这样: 大功告成。
发表评论 取消回复