在Ubuntu下配置使用Tex中文环境有好几种选择和相关方法,有些比较简单(比如直接用XeTeX),有些则相对麻烦一点(比如手动去生成相关字体)。
现在应用最广的一般是TexLive+CJK,如果想尽量使你的Tex文档在Windows/Linux下互相通用,一般都选择这种组合,而且这也是目前最成熟的(相对于XeTeX)。
今天这篇文章中的方法,是利用目前已经成功的方法,再结合Ubuntu的特定环境所作的。希望能给想在Ubuntu下配置Tex中文环境的朋友一个参考。
—–
先介绍一下之前最流行的在Linux下配置Tex的方法,一般是参考这篇文章:
http://mailboxpublic.googlepages.com/texlive2007cjkchinesehowto
下载1GB左右的ISO档,挂载ISO并安装其中的TexLive,再自己生动生成相关字体文件。一般都能顺利的配置好Tex+UTF-8的中文环境。
但是对于习惯了apt-get的用户,可能不愿意从外部安装Tex套件。因此,我参考了一些文章,琢磨出了这个利用Ubuntu源里的TexLive,再手动生成字体包的方法,优点是:
- 不需要下载1GB的ISO档,只需要下载我准备的几百KB的字体生成要用的相关文件。
- 只从Ubuntu源里安装相关Tex套件,不往系统目录写入其他文件,方便删除。
- 仍需要手动生成字体文件,不过是安装在自己的主目录下。
好。请看详细方法:
一、安装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 texlive-bibtex-extra texlive-common latex-beamer
如果硬盘充裕的话,直接完整安装也可以:
sudo apt-get install texlive-full latex-beamer
安装完后,就可以安装CJK的相关软件包了,如果只需要获得中文支持,那么执行:
sudo apt-get install latex-cjk-chinese ttf-arphic-* hbf-*
否则,建议安装latex-cjk-all以获取完整支持。
二、生成中文字体包
安装好TexLive+CJK以后,还需要安装一个软件──fontforge用于生成字体:
sudo apt-get install fontforge
好了,前面所做的,都是标准的Debian式安装,假如哪天你不需要了,直接remove安装即可。
生成字体前,请自己准备你需要生成的字体文件:simsun.ttc,simhei.ttf等,这里以simsun.ttc(宋体)为例。
准备好后下载下面这个包,解压到一个地方,如自己的主目录~/font:
font.tar.bz2
然后把simsun.ttc也复制到~/font里去,执行下面的命令生成字体地图:
cd ~/font
time fontforge -script subfonts.pe simsun.ttc song Unicode.sfd
加time是为了计算时间,因为比较耗时,在我的Core 2 Duo T5500下,生成song花了40分钟,生成hei花了24分钟,仅供参考。
字体生成好了,再建立一个描述文件吧。
在~/font下,建立一个makemap文件,内容如下:
for i in *.tfm
do
cat >> song.map << EOF
${i%.tfm} ${i%.tfm} < ${i%.tfm}.pfb
EOF
done
然后在终端下执行:chmod +x makemap让文件加上执行权限,最后执行:
./makemap
再建立一个一个c70song.fd文件:
% This is c70song.fd for CJK package.
% created by Edward G.J. Lee
% modify by Yue Wang
/ProvidesFile{c70song.fd}
/DeclareFontFamily{C70}{song}{/hyphenchar /font/m@ne}
/DeclareFontShape{C70}{song}{m}{n}{<-> CJK * song}{}
/DeclareFontShape{C70}{song}{bx}{n}{<-> CJKb * song}{/CJKbold}
/endinput
好的,相关文件都已生成,开始复制字体使其生效。
执行下面的命令,在你的主目录下生成隐藏的个人Tex配置,如果你哪天不需要了,也可以删除:
mkdir -p ~/.texmf-var/fonts/map/dvips/CJK
mkdir -p ~/.texmf-var/fonts/tfm/CJK/song
mkdir -p ~/.texmf-var/fonts/type1/CJK/song
mkdir -p ~/.texmf-var/tex/latex/CJK/UTF8
建立完这层层叠叠的目录以后,就把刚刚生成的字体复制进去吧。
cp ~/font/song.map ~/.texmf-var/fonts/map/dvips/CJK
cp ~/font/*.tfm ~/.texmf-var/fonts/tfm/CJK/song
cp ~/font/*.pfb ~/.texmf-var/fonts/type1/CJK/song
cp ~/font/c70song.fd ~/.texmf-var/tex/latex/CJK/UTF8
复制完后就执行命令刷新缓存,让它生效:
sudo texhash
updmap --enable Map song.map
假如一切顺序的话, 就测试一下我们安装的song体是否能用吧。
在任意位置编辑这个文件,然后保存为test.tex,支持UTF-8格式:
/documentclass{article}
/usepackage{CJKutf8}
/begin{document}
/begin{CJK}{UTF8}{song}
你好!这里是Ubuntu下的TexLive+CJK环境!
/end{CJK}
/end{document}
执行分别生成pdf文档和用evince来查看文档:
pdflatex test.tex
evince test.pdf
看看你的过程顺不顺利,生成的PDF档也是下面这样吗?
用同样的方法搞定hei和kai等常用中文标准字体,开始享受你的Tex吧!
参考资料是:
Fedora上配置Tex UTF-8 中文系统
TeXLive 2007 CJK Chinese Howto
ubuntu 7.10下搞定Latex + CJK
相关推荐
汉字转拼音首字母(UTF-8支持多音字,GB2312不支持多音字),程序hz2py_GB2312_Non-polyphone.cpp在Windows系统下VC 6.0运行通过,程序hz2py_UTF-8_Polyphone.c在Ubuntu的Linux系统下运行通过,前者不支持多音字,后者...
该图像用于将语言环境设置为en_US.UTF-8。 它用作其他项目的基础图像。 Docker建立在: 您将获得“成功构建” 但是,当您测试locale-gen en_US.UTF-8 ,它失败了[ ]( ) 当您尝试从Ubuntu映像更改语言环境时,...
ubuntu20.04 stm32开发笔记---之开发环境搭建 。不是IDE,请要找IDE的不用浪费时间。谢谢!
在Ubuntu10.04建立QT-linux-embedded-4.6.3开发环境及编译qvfb
ubuntu-base-16.04-core-armhf.tar.gz ubuntu-base-16.04-core-armhf.tar.gz
ubuntu-18.04.6-server-arm64.iso ubuntu arm64 aarch64位系统 ubuntu for arm64 ubuntu for aarch64
在/opt/deepinwine/tools/run.sh 中将 WINE_CMD 那一行修改为 WINE_CMD=“LC_ALL=zh_CN.UTF-8 deepin-wine” Ubuntu把wine的QQ、微信的系统托盘集成到状态栏 1 安装gnome-tweak-tool sudo apt install gnome-tweak-...
全志 a20 ubuntu-core-14.04-core-armhf.tar.gz
ubuntukylin-13.04-desktop-amd64操作系统 网盘下载地址 确保资源可用
nccl-repo-ubuntu1604-2.6.4-ga-cuda10.0_1-1_amd64.deb,配置pycaffe的时候用于GPU CUDA加速的包,在make文件里面可以进行修改。
ubuntu-14.04-desktop-i386.part14
ubuntu-16.04.6-desktop-i386
ubuntu-20.04-desktop-amd64(百度网盘) (ISO)(百度网盘)(百度网盘)
Ubuntu下安装arm-linux-gcc交叉编译
解决兼容问题,2015年的faster-rcnn在[Ubuntu]下 配置环境问题记录
ubuntu-14.04.3-desktop-i386.rar
ubuntu-22.04-live-server-arm64.iso https://releases.ubuntu.com/jammy/
ubuntu-20.04.3-desktop-amd64,共2部分,此为第1部分。
ubuntu-20.04.5-desktop-amd64.iso 使用rufud将镜像刻录到U盘里 将刻录的U盘插入到物理机上,开机并进入到BIOS中,设置U盘优先启动,或者开机按下F9进入到引导菜单栏,选择U盘,然后点击Ubuntu进行安装 安装设置
1 配置环境 一台服务器和若干PC组成的简单局域网。 服务器安装Ubuntu Server,开启DNS服务。 服务器的IP:192.168.1.2 1.1 检查是否安装bind 使用命令dpkg -l bind*查看相关软件是否安装 这是安装的...