paper 47 :Latex中文显示(转)
中文支持需要cjk-latex,总得来说中文可以使用GB和GBK两种字体,GBK需要从windows下copy *.ttc或*.ttf, GB字体则在linux下就用。
先说支持GB的中文显示,安装以下deb包:
apt-get install cjk-latex tetex-extra tetex-doc tfm-arphic-gbsn00lp tfm-arphic-gkai00mp ttf-arphic-gbsn00lp ttf-arphic-gkai00mp ,
编辑tex源文件sample.tex
coosbay:~/tex# cat sample.tex
\documentclass{article}
\begin{document}
\begin{CJK*}{GB}{song}
显示中文
\end{CJK*}{GB}{song}
\end{document}
接下来只需要latex sample.tex; dvipdfm sample.dvi就可以生成sample.pdf文件了。GB支持{song}和{kai}两种字体。
如果需要支持GBK字体文件,则需要安装texmf-zh (这个包在ustc目录里,包括install-gbkfonts,update-gbkfonts,remove-gbkfonts 三个命令)
运行install-gbkfonts *.ttf def
说明:这里def是以后在tex文件里用的名字,必须是小写,大写的不行!
tex文件如下
\documentclass[12pt]{article}
\usepackage{CJK}
\begin{document}
\begin{CJK*}{GBK}{song}
显示中文
\end{CJK*}
\end{document}
制作pdf的过程如上GB一样。所有的texmf相关的文件在/usr/share/texmf-zh下。
英文的tex不需要cjk包。直接pdflatex *.tex就可以生成pdf文件。
具体的tex排版格式还需要慢慢学习。以上就是Debian下tetex+cjk的mini-howto.
再也不用为生产pdf文件发愁了,~cheer!
以前在不同的系统上搞过latex的中文,都是和系统文件放在一起,重装系统就没了,这次参考了几篇文章,发现其实很简单,重装系统也没有关系了。
1 先期tex包的安装
apt-get install tetex-bin tetex-base tetex-extra cjk-latex dvipdfm-cjk-cmap
然后上
http://learn.tsinghua.edu.cn/homepage/2001315450/programs.html
下载gbkfonts的可执行文件,只要gbkfonts的那个静态链接文件就可以了,然后chmod +x gbkfonts && cp gbkfonts /usr/local/bin
2 建立texmf-local 推荐不要直接放在/usr/share/texmf 下面,这样以后升级不方便。假设你的中文字体如simsun.ttf simkai.ttf ......等文件放在/usr/share/fonts/zh下面,现在以普通用户配置。
mkdir ~/texmf
cd ~/texmf
gbkfonts /usr/share/fonts/zh/simsun.ttf song
gbkfonts /usr/share/fonts/zh/simkai.ttf kai
...
...
其他字体用同样的方法生成。
3 配置文件
代码:
mv cid-x.map dvipdfm/config/
mv cjk.map dvips/config/
cp /usr/share/texmf/dvips/config/config.ps dvips/config/
echo 'p +cjk.map' >> dvips/config/config.ps
mv pdftex.cfg pdftex/config/
mktexlsr
4 测试
代码:
\documentclass{article}
\usepackage{CJK}
\begin{document}
\begin{CJK}{GBK}{song}
这是latex
\end{CJK}
\end{document}
然后latex test && dvipdfm test 就应该可以生成test.pdf文件了。
这样的好处是每次重装系统后只要安装好了基本tex环境和cjk-latex包,只要运行mktexlsr就ok了,因为~/texmf 目录默认是mktexlsr搜索的路径。
补充:用
cp -apL * /usr/share/texmf/
拷贝最好,debian下的texmt很多是symlink
paper 47 :Latex中文显示(转)的更多相关文章
- Ubuntu下LaTex中文环境安装与配置
转载自:http://www.linuxidc.com/Linux/2012-06/62456.htm LaTeX是一个强大的排版软件,但是其最初只是为英文排版而设计的.为了使其能够胜任中文排版的重任 ...
- Latex中文utf-8编码的三种方式
我们知道Latex一般用CJK和CTEX宏包支持中文编辑,CJK和CTEX的默认编码是GBK,而windows下的默然编码就是GBK,因此CJK和CTEX不需要特殊配置就可以直接支持中文Latex编译 ...
- latex中文支持ubuntu
latex安装: sudo apt install texlive-full 中文字体安装: sudo apt-get install latex-cjk-all 字体包中包含bsmi,bk ...
- Mac LaTex中文环境搭建
为了在博客上写公式,折腾了一晚上Mac上的LaTex的环境搭建,本文对步骤进行记录. 系统:Mac OSX 10.10.5 软件准备 1) MacTex 2015 Distribution (Tex的 ...
- 【python之路2】CMD中执行python程序中文显示乱码
在IDLE中执行下面代码,中文显示正常: # -*- coding:utf-8 -*- st=raw_input("请输入内容")print st 但在CMD中执行e:\hello ...
- Linux中文显示乱码?如何设置centos显示中文
Linux中文显示乱码?如何设置centos显示中文 怎么设置Linux系统中文语言,这是很多小伙伴在开始使用Linux的时候,都会遇到一个问题,就是终端输入命令回显的时候中文显示乱码.出现这个情况一 ...
- [django]Django站点admin支持中文显示和输入设置
正文: Django站点admin支持中文输入设置,操作如下: 1 需要确定的你的数据库的client客户端和服务端的编码设置为utf-8,如果不是,请将其设置成utf-8编码,我采用mysql,详情 ...
- Xshell个性化设置,解决Xshell遇到中文显示乱码的问题
在同事的推荐下,今天开始使用Xshell连接Linux,但是发现一个“遇到中文显示乱码”的问题, 同事的解决方案如下: 平常给Linux上传文件之前,先把文件转换成UTF-8编码形式, 然后设置Xsh ...
- python中matplotlib画折线图实例(坐标轴数字、字符串混搭及标题中文显示)
最近在用python中的matplotlib画折线图,遇到了坐标轴 "数字+刻度" 混合显示.标题中文显示.批量处理等诸多问题.通过学习解决了,来记录下.如有错误或不足之处,望请指 ...
随机推荐
- 转:[ASP.NET]重構之路系列v4 – 簡單使用interface之『你也會IoC』
前言 上次v3版本,我們將Entity, Service, Dao, Utility都放到了類別庫裡面,讓我們可以輕鬆的在不同專案中用同一份組件.雖然文章沒有獲得太多的讚賞,不過相信那一定是太多人會這 ...
- Layout---poj3169(差分约束+最短路spfa)
题目链接:http://poj.org/problem?id=3169 有n头牛站成一排 在他们之间有一些牛的关系比较好,所以彼此之间的距离不超过一定距离:也有一些关系不好的牛,希望彼此之间的距离大于 ...
- OO之美4(好代码与坏代码)
前言:写代码不仅仅要做到能与机器交流,更要做到能和人交流 编码规范:编码规范就是最佳实践,是前辈在编码这件事上的积累和总结,是智慧的延续和工业的实践,如下: ⑴命名规范 ⑵避免行数过多的方法 ⑶代码缩 ...
- Introducing shard translator
Introducing shard translator by Krutika Dhananjay on December 23, 2015 GlusterFS-3.7.0 saw the relea ...
- ASP.NET MVC 中将数据从View传递到控制器中的表单提交法
本方法以搜索功能为例,在view中输入要搜索的关键字,提交到相应controller中进行处理. view中代码: <div class="searchBox"> @u ...
- Object转换为json格式
public String toJSONString(Object obj) { SerializeWriter serializewriter = new Seri ...
- JAVA并发编程的艺术目录
第7章:JAVA中的13个原子操作类 第8章:JAVA中的并发工具类 第9章:JAVA中的线程池
- sql中的行转列和列转行的问题
sql中的行转列和列转行的问题 这是一个常见的问题,也是一个考的问题 1.行转列的问题 简单实例 CREATE TABLE #T ( MON1 INT, MON2 INT, MON3 INT ) G ...
- MSP430之Hello World!
//#include "io430.h" #include "MSP430G2553.h" int main( void ) { volatile unsign ...
- POJ1326问题描述
Description Mileage program of ACM (Airline of Charming Merlion) is really nice for the travelers fl ...