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画折线图,遇到了坐标轴 "数字+刻度" 混合显示.标题中文显示.批量处理等诸多问题.通过学习解决了,来记录下.如有错误或不足之处,望请指 ...
随机推荐
- 欢迎大家提问Android技术及职业生涯等问题
博客出自:http://blog.csdn.net/liuxian13183,转载注明出处! All Rights Reserved ! 最近有些时间,但QQ群问的问题比较多,不能一一解答,如果有价值 ...
- ArcGIS API for Silverlight 之ElementLayer使用及TextSymbol的模板使用
原文:ArcGIS API for Silverlight 之ElementLayer使用及TextSymbol的模板使用 在开发中动态在地图上添加文字信息,可以使用TextSymbol添加文字 // ...
- ExtractTablesFromSQL
public static string[] ExtractTablesFromSQL(string cmdString) { return Regex.Matches(cmdString, @&qu ...
- 【转】Android的材料设计兼容库(Design Support Library)
转自:http://www.jcodecraeer.com/a/anzhuokaifa/developer/2015/0531/2958.html?mType=Group Android的材料设计兼容 ...
- 移动端公共css样式
@media screen and ( min-width: 319px){html{ font-size: 100px;}}@media screen and ( min-width: 359px) ...
- POJ1528问题解答
#include <iostream>#include <cstdio>#include <cmath> #include <string>#inclu ...
- jQuery对象与DOM对象之间的转换(转)
什么是jQuery对象? —就是通过jQuery包装DOM对象后产生的对象.jQuery对象是jQuery独有的,其可以使用jQuery里的方法. 比如: $(“#test”).html() 意思 ...
- php 表单提交
<?php header("Content-Type:text/html; charset=utf8"); class config{ public static funct ...
- Qt4过渡至Qt5
技术在不断进步,新知识也理应不断学习!Qt5的发布带给我无尽的好奇心,然而,受项目影响,一直使用VS2008 + Qt4.8也未曾及时更新.这几天,果断装上VS2010 + Qt5.1,开始研究.Qt ...
- Android --Activity与Fragment通讯
参考博客:详解Fragment跟Activity之间的通信 Activity中方法 private OnSearchListener mSearchListener; /** *定义一个借口 **/ ...