LaTeX安装CJK-- 添加中文支持
原文: http://basiccoder.com/latex-cjk-slackware.html
过几天要做presentation,想借这个机会把LaTeX好好学学,今天在解决中文问题的时候着实把我卡住了,广泛搜索了各方面的资料,一直搞了好几个小时才弄好,把过程总结一下。
首先下载CJK,我在CJK的官网上下载的cjk-4.8.2.tar.gz,解压之后把里面的texinput目录拷贝到/usr/share/texmf/tex/latex/CJK目录下,CJK这个目录默认是没有的,自己创建一个。
从/media/win/WINDOWS/Fonts目录下找到simsun.ttc,simfang.ttf, simhei.ttf,simkai.ttf这四个字体文件,把ttc改成ttf,然后把这四个文件拷贝到/usr/share/texmf/fonts/truetype/chinese目录下就可以了,chinese目录可能默认也没有,自己创建一个。
下载gdbfonts,记不清是在哪里下载的了,gbkfonts-linux-0.3.tar.bz2,里面有三个可执行文件appendconf,go,gbkfonts-glibc2.3,前两个是脚本文件。把gbkfonts-glibc2.3重命名为gbkfonts,并将这三个文件拷贝到/usr/local/bin里面(这样做纯粹是为了以用调用方便)。
进入/usr/share/texmf目录(也可以是一个自己创建的目录,生成的所有和CJK相关的文件都会保存在这个目录里面,不使用系统目录的目的是可以在将来重装系统的时候继续保留中文配置,我估计我也不太可能会重装系统了,也不想弄出各种目录,就直接用系统目录了),然后执行
1 |
go fonts/truetype/chinese |
根据ttf字体来生成TeX字体,并生成各种各样的配置文件。
接着执行下面的命令来组织配置文件
1 |
appendconf /usr/share/texmf |
生成字体之后会有几个map文件,这些map文件里面定义了字体名字和字体文件名之间的映射关系,为了让dvips这样的工具能知道使用哪个map文件,需要修改下面的配置文件
1 |
vi /usr/share/texmf/dvips/config/config.ps |
找到o |lpr这一行注释掉并在后面加上 p +cjk.map这一行。
如果/usr/share/texmf/fonts/map/dvips目录下没有cjk.map这个文件,那么找到这个文件把它复制过来。
最后更新一下TeX字体数据库就可以了
1 |
mktexlsr |
这个时候其实已经算成功了,结果输出的虽然是中文,可都是些乱七八糟的字,根本不是我想要的,我写个“中国”,它显示“涓球”,然后这个问题我郁闷了三个多小时,最后怀疑是vim的原因,以前在新建文件的时候都会先touch一个文件,然后再用vim打开编辑,突然想到touch出来的这个文件是用utf8编码的,而且vim的编码方式设置的也是utf8,而CJK的字符集是GBK,会不会和这个有关系,后来就改了一下vim的编码格式
1 |
:set encoding=gb2312 |
OK,再编译就成功地看到中文了,哎,就这么点事我就从中午一直搞到晚上,郁闷啊。
===========================必不可少的实践==============================
我使用的是texlive-2013 和 CJK 4.8.3
大体过程差不多,只是有些目录位置不一样。
上文中的 /usr/share/texmf 对于我这里是 /usr/local/texlive/2013/texmf-dist
进入 /usr/local/texlive/2013/texmf-dist,执行 (如果没有chinese目录,可以自己建立)
go fonts/truetype/chinese
然后
appendconf /usr/local/texlive/2013/texmf-dist
vi /usr/local/texlive/2013/texmf-dist/dvips/config.ps
找到o |lpr这一行注释掉(我这里已经被注释了),并在后面加上 p +cjk.map这一行。
我使用find命令,发现cjk.map在这里
/usr/local/texlive/2013/texmf-dist/dvips/cjk.map
要把它拷贝到/usr/local/texlive/2013/texmf-dist/fonts/map/dvips/ , 于是执行:
cp /usr/local/texlive/2013/texmf-dist/dvips/cjk.map /usr/local/texlive/2013/texmf-dist/fonts/map/dvips/
最后:
mktexlsr
建立测试文件: test.tex
\documentclass{article}
\usepackage{CJK}
\begin{document}
\begin{CJK*}{GBK}{hei}
哈哈,你好CJK!
\end{CJK*}
\end{document}
我用vim编辑之后,编码是utf-8。
转换编码用iconv命令:
iconv -f utf8 -t gbk test.tex -o test2.tex
生成pdf
pdflatex test2.tex
看看test2.pdf是不是有中文啦。哈哈哈
gbkfonts下载地址
http://www.ctex.org/documents/shredder/programs.html
Tex Live iso下载地址
http://mirror.hust.edu.cn/CTAN/systems/texlive/Images/
==============================二次总结==================================
texlive在安装的时候可以选择安装那些软件包,其中ctex包可以很好的支持中文。(我是用 ./install-tl -gui 图形界面全部安装的。关于perl-Tk的安装见这里)
完全安装需要大于3G的空间。。。安装之后要测试安装是否成功,见中文帮助的3.5节。
我在测试第8个xetex的时候,收到 “Invalid fontname ‘Latin Modern Roman/ICU’…” 这样的错误信息,就说明需要配置
系统才能找到 TEX Live 自带的字体。参见第 3.4.4 节。
要在整个系统中使用 TEX Live 的字体 (假定你有足够的权限),请依照下面的步骤来做:
1. 将 texlive-fontconfig.conf 文件复制到 /etc/fonts/conf.d/09-texlive.conf。
2. 运行 fc-cache -fsv。
如果你没有足够的权限执行上述操作,或者只需要把 TEX Live 字体提供给你自己,可以这么做:
1. 将 texlive-fontconfig.conf 文件复制到 ~/.fonts.conf,其中 ~ 是你的主目录。
2. 运行 fc-cache -fv。
你可以运行 fc-list 来查看系统字体的名称。命令 fc-list : family style file spacing 可
以列出一些有趣的信息。
根据上面的昨晚,再次测试第8个例子,就成功了。可以用 latex做中文简历啦。嘎嘎。
ps:“上面的必不可少的总结”可以不看了。照着二次总结的做就好了。
参考: http://www.360doc.com/content/11/1112/15/532901_163797486.shtml#
http://huxuan.org/2012/07/14/chinese-font-problem-of-ctex-in-texlive-under-linux/
还有关于字体的安装。其实最简单的办法是直接拷贝windows的字体(在C:\windows\fonts)到linux下,然后双击安装。。。。。Tahoma就是这么成功的。。。。汗。。。。
LaTeX安装CJK-- 添加中文支持相关推荐
- ubuntu下打开matlab_ubuntu下matlab安装,添加中文支持与启动
一.安装 挂载Matlab 2010 ISO: sudo mount -o loop -t iso9660 /文件目录/matlab.iso /cdrom/ 安装Matlab : cd /cdro ...
- 如何为Ubuntu添加中文支持
如何为Ubuntu添加中文支持 我的寝室电脑装了VMWare虚拟机,虚拟机里装了Ubuntu8.04,虚拟机与外界无法联网. 近些天来突发奇想,想试一下纯Linux下工作感觉如何,但发现初装系统时默认 ...
- Ubuntu添加中文支持
Ubuntu18.04添加中文支持 apt-get install language-pack-zh-hant language-pack-zh-hans sudo vim /etc/environm ...
- Latex添加中文支持和A4纸张设置
中文支持: 利用ctexart \documentclass[11pt]{ctexart} A4 纸的配置 使用geometry \usepackage[a4paper, left = 2cm, ri ...
- arch终端添加中文支持_Archlinux中文化--怎么显示中文的界面
Archlinux中文化--怎么显示中文的界面? 怎么显示中文的界面? 要正确实现中文,必需设置正确的locale和安装合适的中文字体. locale的设定 Linux中通过locale来设置程序运行 ...
- ubuntu下matlab添加中文支持
1. Matlab2010的JRE目录为:/Matlab安装目录/sys/java/jre/glnx86/jre* 请根据自己的安装目录和版本确定JRE的目录: $ cd /Matlab安装目录/s ...
- opencv 显示中文汉字(添加中文支持)
文章目录 利用CvxText和FreeType库 编译安装FreeType库 CvxText 支持IplImage 支持Mat CvxText和FreeType库使用 重写putText函数 open ...
- 安装drawio + 添加中文字体
1. 安装drawio Release 20.3.0 · jgraph/drawio-desktop · GitHubOfficial electron build of draw.io. Contr ...
- 我的docker随笔23:修改容器时区和添加中文支持
许多 docker 镜像没有时区,默认是0时区,对于日志的时间显示,可能不太友好.另外有些镜像无法输出中文,也不太好友.本文以 busybox 为例,尝试解决此类问题. 时区支持 运行busybox: ...
- 为ASP.NET MVC Client-side Resource Combine 添加中文支持
以前介绍过ASP.NET MVC Client-side Resource Combine 主要的用途是集中管理js css 和压缩缓存js css 等文件. 但老外写的不支持中文,现在项目中需要用到 ...
最新文章
- python下载后如何使用-如何使用python下载文件?
- 【Binder 机制】Native 层 Binder 机制分析 ( binder_loop | svcmgr_handler | binder.c | binder_parse )
- Linux下安装PPPOE SERVER
- 框架:AspectJ
- Python数据结构之链表(linked list)
- 转:C# Thread
- 专科程序员吐槽:学历是硬伤!问:想进大厂试试必须学历够格么?
- 圆形渐变shader_Flutter 中渐变的高级用法
- sqlserver实验心得体会_sqlserver 关于DBCC CHECKDB的总结
- 为什么Java中类方法不能访问实例方法
- Python内置函数总结
- 久谦咨询python笔试题目_python笔试含答案
- android 软键盘 状态,Android监听软键盘状态
- WPF之Manipulation
- java utf8 简繁转换 类库_Java封装简体繁体(香港台湾)转换工具
- java 扫描自定义注解_利用spring 自定义注解扫描 找出使用自定义注解的类
- 历时3个月,我们是如何为一个开源项目集资300万美元的?
- UML 类图生成工具simpleUML
- 软件显示服务器端没有启动,打开软件显示无连接服务器,双击服务器显示如图...
- Spring框架的详细学习
热门文章
- 时间序列的距离度量DTW
- cattee翻译_0302 echo、重定向、管道、cat、tee
- 良心分享!最全面cmd快捷指令及使用方法,万字总结
- 杭州心田花开:70首人教版小学语文须掌握古诗词(附译文)
- 计算机统计大数据库,统计数据库
- 什么是运行时应用程序自我保护(RASP)Runtime Application Self-Protection
- python爬虫——中文编码
- SphereEx张亮:“开源和商业化不能形成对立”
- 风变python基础语法第11关_风变编程-Python基础语法
- gps网络对时Linux,GPS 网络对时设置 详细版.doc