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画折线图,遇到了坐标轴 "数字+刻度" 混合显示.标题中文显示.批量处理等诸多问题.通过学习解决了,来记录下.如有错误或不足之处,望请指 ...
随机推荐
- Hue协作框架
http://archive.cloudera.com/cdh5/cdh/5/hue-3.7.0-cdh5.3.6/manual.html 一:框架 1.支持的框架 ->job ->yar ...
- 如何将cmd中命令输出保存为TXT文本文件
在使用Windows 中的cmd.exe工具时,有时候我们想要把我们的输入命令及结果保存起来, 但是用复制的方法过于麻烦:有时输出数据条数过大,会造成内容自动滚出屏幕,无法阅读,我们可将命令运行的结果 ...
- C/C++ 获取汉字拼音
参考文章:http://blog.csdn.net/thenile/article/details/6318521 在参考文章的基础上,去掉了代码中C++特有的语法和数据类型,用纯C语言实现了获取汉字 ...
- .NET对象与Windows句柄(二):句柄分类和.NET句柄泄露的例子
上一篇文章介绍了句柄的基本概念,也描述了C#中创建文件句柄的过程.我们已经知道句柄代表Windows内部对象,文件对象就是其中一种,但显然系统中还有更多其它类型的对象.本文将简单介绍Windows对象 ...
- ArcGIS Portal 10.4 本地坐标系的web 3d地形展示制作说明
原文:ArcGIS Portal 10.4 本地坐标系的web 3d地形展示制作说明 ArcGIS Portal 10.4 本地坐标系的web 3d地形展示制作说明 By 李远祥 ArcGIS Por ...
- 运用SET ANSI_PADDING OFF创建某个字段为自增列的表,以及插入数据
SET ANSI_PADDING OFFGOPRINT 'Testing with ANSI_PADDING OFF'GO CREATE TABLE WebsitesPaddingOFF (id in ...
- oracle视图V$BH && X$BH的使用列子
1创建一个测试表,test,并且插入10000行数据: SQL> create table test (id int); SQL> begin 2 for i in 1 ...
- 关于C、OC、C++、OC++、Swift的一些常识
关于C.OC.C++.OC++.Swift的一些常识 OC是C语言的一个超集,是一门面向对象的语言,因为苹果的崛起而火,API主要是cocoa(OSX)和cocoatouch(iOS),GCC 和 C ...
- webconfig和appconfig中出现特殊字符如何处理
在配置文件出现特殊字符&的字符串(如:abce&efg),就会报错.错误如下: 如何处理呢? config文件的本质是xml,所以必须符合xml的规范我们需要这么处理: abce&am ...
- iOS SQLite 增删改查的封装(关系型)
在工程里导入libsqlite3.tbd库(Xcode 7) #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder &l ...