Ubuntu 14.04/14.10 系统安装 Latex及配置中文字体[修订]

转载 2015年01月29日 21:34:54
说明:以下描述参考“Linux下Latex的安装”以及 “Ubuntu 11.10下CJK宏包的中文字体安装“,同时,结合我在Ubuntu 14.10上安装的实际测试结果对部分操作的描述进行了修正。

此文的第一版上传后,我试验后续的安装步骤发现不少东西在Ubuntu 14.10上与两篇参考文献说的都不同,因此只好大刀阔斧地按实际情况进行了修改。


各位阅读前,先说明以下总体上我们要做的几件事。

  1. 安装TexLive。我们知道Latex只是一套排版的宏定义,为实现Latex,需要在各种操作系统上提供软件支持。TexLive就是实现此目的一个跨平台软件包。
  2. Latex支持的字体非常多,自然包括中文。不过,为了更好地支持中日韩(因为这些是方块型的字符集,与字母类型的文字不同),需要安装CJK扩展包。
  3. 为了使用额外的中文字体,需要配置Latex以便使用它们。
  4. 使用测试文档,确认安装的字体不是已经生效了。

====================================================================================

一、安装TexLive+Latex+CJK:

打开终端,安装以下TexLive和常用的一些Latex宏包(可以根据自己的需要增改):

sudo apt-get install
texlive texlive-math-extra texlive-latex-base
texlive-latex-extra texlive-latex-recommended
texlive-pictures texlive-science latex-beamer
texlive-common texlive-bibtex-extra 

如果硬盘充裕的话,直接完整安装也可以:

sudo apt-get install texlive-full latex-beamer (注:在我电脑上,硬盘空间比较充裕,我直接选择全部安装。

安装完后,就可以安装CJK的相关软件包了,如果只需要获得中文支持,那么执行:

sudo apt-get install latex-cjk-chinese ttf-arphic-* hbf-*

否则,建议安装latex-cjk-all以获取完整支持。

Linux下的中文字体,对于Ubuntu来说有现成的。因此,只要第一步正常安装完毕,就可以用下面的测试文件进行测试。

	\documentclass{article}
	\usepackage{CJKutf8}
	\begin{document}
	\begin{CJK}{UTF8}{gkai}
	这是一个楷体中文测试,处理简体字。
	\end{CJK}
	\begin{CJK}{UTF8}{gbsn}
	这是一个宋体中文测试,处理简体字。
	\end{CJK}
	\begin{CJK}{UTF8}{bkai}
	這是一個big5編碼的楷體中文測試,處理繁體文字。
	\end{CJK}
	\begin{CJK}{UTF8}{bsmi}
	這是一個个big5編碼的明體中文測試,處理繁體文字。
	\end{CJK}
	\end{document}
将这部分代码粘贴到文本文件中,然后保存将其保存为test.tex。然后使用下面的命令生成PDF文档。
		pdflatex test.tex
		evince test.pdf
如果编译tex文档时没有出错,对于宋体和楷体,应该看到希望的字体正确显示(参考下图的示例)。


二、准备其他中文字体包

不过,为了得到更好地支持,常常会使用Windows既有的TrueType字体或者文泉驿字体,以便扩充现有的系统字体库。对于Linux,安装fontforge可以方便地生成能被Latex识别的字体文件(map、enc等文件)。
sudo apt-get install fontforge
因为Windows的字体涉及版权问题,而且我个人觉得文泉字体更美观,所以我选择文泉字体生成字体地图。

(注:原文推荐下载font.tar.bz2,但是此压缩包很难下载,加上如果使用文泉字体该包可以不需要,因此不必纠结)。

步骤1:将包括wqy-microhei.ttc等相关文件都复制到~/cnfont里去,执行下面的命令生成字体地图:

$mkdir ./cnfont
$cd ~/cnfont
$cp /usr/share/texlive/texmf-dist/fonts/sfd/ttf2pk/Unicode.sfd ./
$cp /usr/share/fonts/truetype/wqy/wqy-microhei.ttc ./
$cp /usr/share/latex-cjk-common/utils/subfonts/subfonts.pe ./
$cp /usr/share/latex-cjk-common/utils/subfonts/vertical.pe ./
$cp /usr/share/latex-cjk-common/utils/subfonts/makefdx.pl ./
$ time fontforge -script subfonts.pe wqy-micorhei.ttc hei Unicode.sfd

注:原文中步骤如下,遗漏拷贝重要文件的步骤,此处已修正。按上述命令操作,在Ubuntu 14.10上已通过验证。
cd ~/fonttime fontforge -script subfonts.pe simsun.ttc song Unicode.sfd
在我的电脑上,生成文泉驿的字体地图花了2-3分钟。

步骤2:接下来,
在~/cnfont下,建立一个makemap.sh文件,内容如下( 没有空格):
for i in *.tfm
do
cat >> song.map << EOF
${i%.tfm} ${i%.tfm} < ${i%.tfm}.pfb
EOF
done

然后在终端下执行:chmod +x makemap.sh让文件加上执行权限,最后执行:

./makemap.sh
编写此配置文件的时候可能会需要查询CJK扩展包的版本,可以参考附注中的步骤操作。

步骤3:将步骤1、2中生成的各种字体配置文件拷贝到系统的指定目录。(相关操作的详细含义可参考Ubuntu 11.10下CJK宏包的中文字体安装“


$sudo mkdir -p /usr/share/texmf/fonts/type1/latex-cjk-cn/hei
$sudo cp *pfb /usr/share/texmf/fonts/type1/latex-cjk-cn/hei

$sudo mkdir -p /usr/share/texmf/fonts/afm/arphic/hei
$sudo cp *afm /usr/share/texmf/fonts/afm/arphic/hei/

$mkdir -p /usr/share/texmf/fonts/tfm/latex-cjk-cn/hei
$sudo cp *tfm /usr/share/texmf/fonts/tfm/latex-cjk-cn/hei/

$sudo mkdir -p /usr/share/texmf/fonts/enc/dvips/latex-cjk-cn/hei
$sudo cp *enc /usr/share/texmf/fonts/enc/dvips/latex-cjk-cn/hei/

$sudo mkdir -p /usr/share/texmf/fonts/map/dvips/latex-cjk-cn
$sudo cp hei.map /usr/share/texmf/fonts/map/dvips/latex-cjk-cn


再建立一个文本文件,命名为“c70hei.fd”文件:
% This is the file c70hei.fd of the CJK package
% for using Asian logographs (Chinese/Japanese/Korean)
% with LaTex2e
% 
% created by the Debian source package for
% CJK Version 4.8.3 (30-1-2015)
\def\fileversion{4.8.3}
\def\filedate{2012/09/14}
\ProvidesFile{c70hei.fd}[\filedate\space\fileversion]
% character set: UTF-8
% font encoding: Unicode

\DeclareFontFamily{C70}{hei}{\hyphenchar\font\m@ne} 
\DeclareFontShape{C70}{hei}{m}{n}{<-> CJK * hei}{\CJKnormal}
\DeclareFontShape{C70}{hei}{bx}{n}{<-> CJKb * hei}{\CJKbold}
\endinput

将编辑完毕的c70hei.fd文件拷贝到配置目录。
$sudo cp c70hei.fd /usr/share/texmf/tex/latex/CJK/UTF8/

步骤5:
复制完后,执行字体地图更新命令刷新缓存,让配置生效:
sudo texhash
updmap-sys --enable Map hei.map

假如一切顺序的话, 就测试一下我们安装的文泉驿米黑体能否使用。

可以在$HOME目录下编辑如下文本文件,然后保存为"test.tex",支持UTF-8格式:

	\begin{CJK}{UTF8}{gbsn}
	这是一个宋体中文测试,处理简体字。
	\end{CJK}
	\documentclass{article}
	\usepackage{CJKutf8}
	\begin{document}
	\begin{CJK}{UTF8}{gkai}
	这是一个楷体中文测试,处理简体字。
	\end{CJK}
	\begin{CJK}{UTF8}{hei}
	这是一个黑体中文测试,处理简体字。
	\end{CJK}
	\begin{CJK}{UTF8}{bkai}
	這是一個big5編碼的楷體中文測試,處理繁體文字。
	\end{CJK}
	\begin{CJK}{UTF8}{bsmi}
	這是一個个big5編碼的明體中文測試,處理繁體文字。
	\end{CJK}
	\end{document}

执行分别生成pdf文档和用evince来查看文档:

pdflatex test.tex
evince test.pdf


一切顺利的话,在PDF中应该看到类似下图的效果。


补充说明:

1)如何确认CJK安装包的版本。

sudo apt-get install apt-show-versions 
mastervind@Zeon:~/cnfont$ apt-show-versions | grep -i cjk
latex-cjk-all:all/utopic 4.8.3+git20120914-2ubuntu1 uptodate
latex-cjk-chinese:amd64/utopic 4.8.3+git20120914-2ubuntu1 uptodate
latex-cjk-chinese-arphic-bkai00mp:all/utopic 1.23 uptodate
latex-cjk-chinese-arphic-bsmi00lp:all/utopic 1.23 uptodate
latex-cjk-chinese-arphic-gbsn00lp:all/utopic 1.23 uptodate
latex-cjk-chinese-arphic-gkai00mp:all/utopic 1.23 uptodate
latex-cjk-common:amd64/utopic 4.8.3+git20120914-2ubuntu1 uptodate
latex-cjk-japanese:amd64/utopic 4.8.3+git20120914-2ubuntu1 uptodate
latex-cjk-japanese-wadalab:all/utopic 0.20050817-16 uptodate
latex-cjk-korean:all/utopic 4.8.3+git20120914-2ubuntu1 uptodate
latex-cjk-thai:all/utopic 4.8.3+git20120914-2ubuntu1 uptodate
texlive-lang-cjk:all/utopic 2014.20140717-1 uptodate

安装TexLive,支持中文

Pandoc可以将Markdown转换为PDF,转换过程还是需要Tex. 所以先需要把Tex系统装好。Pandoc推荐的是TeXLive。我的环境是Ubuntu 14.04,64位。TexLive版本...

pandoc将含有中文的markdown文件转成pdf时的问题及思考

1 问题我写了一个markdown文件,里面含有中文字符,我想利用pandoc将其转换为pdf格式,采用下面命令:pandoc -f markdown_github my.md -o test.pdf...

修改ubuntu 14.04 中文版的默认中文字体

最近下载安装了ubuntu 14.04,默认只有英文版,联网安装中文包后fax
  • yuchno1
  • yuchno1
  • 2014年07月19日 21:13
  • 2866

转:latex中文字体配置

原文:http://www.2cto.com/os/201202/120526.html 下载texlive2010 地址:http://ftp.ctex.org/mirrors/CTAN/s...

Latex安装 在 ubuntu14.04系统中文支持

来源: http://blog.chinaunix.net/u/25605/showart_2100398.html 一、安装TexLive+Latex+CJK: 打开终端,安装以下TexLive...

fedora 10 下LaTeX-CJK和中文字体的安装 2/2

http://blog.sina.com.cn/s/blog_4d181eef0100boyw.html 新买了电脑,安装的是Fedora 10。装完之后发现系统没有安装CJK,所以无法...

ubuntu明明白白安装中文字体

授权方式:署名,非商业用途,保持一致,转载时请务必以超链接(http://www.fwolf.com/blog/post/170 )的形式标明文章原始出处和作者信息及本声明。Ubuntu 6.06 ...
  • mypop
  • mypop
  • 2011年01月31日 10:06
  • 723

Ubuntu 10.04 10.10 11.04 9.10 9.04 中文字体美化——安装雅黑

http://os.51cto.com/art/201109/288883.htm 刚接触Ubuntu,可能会觉得那中文字体怪怪的,看着不顺眼,没关系,可以换成你看着顺眼的(伪Lin...

centos系统安装中文字体几种方法

 我们知道centos是基于linux内核的这款系统默认是不带中文字体了,如果我们要使用中文字体就需要自行安装了,下面一起来看看吧。 前天有用户反应,生成的报到单中他的名字少了一个...

Gentoo系统中文字体设置及fcitx输入法的安装

Gentoo系统中文字体设置及fcitx输入法的安装 boear| 系统相关 | 2010-7-3015:45 | 12 点击 | 0 评论Linux| Gentoo| 系统...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ubuntu 14.04/14.10 系统安装 Latex及配置中文字体[修订]
举报原因:
原因补充:

(最多只允许输入30个字)