Ubuntu下LaTex中文环境配置

来源:互联网 发布:矩阵的几公式 编辑:程序博客网 时间:2024/05/05 23:34
http://www.cnblogs.com/lienhua34/p/3675027.html

---------------------------------------

[转] http://hi.baidu.com/liujunwei4321/item/dcb354095299c0c29157

LaTeX是一个强大的排版软件,但是其最初只是为英文排版而设计的。为了使其能够胜任中文排版的重任,我们还需要进行一些额外的调教。这篇文章中,就谈谈如何在Ubuntu下(使用12.04)进行LaTeX中文环境配置。

第一步,安装基本的LaTeX环境:

sudo apt-get install texlive

 

第二步,安装中文字体包。字体包中包含bsmi,bkai,gkai,gbsn四种中文字体。bsmi和bkai是Big5编码的宋体和楷体字;后两者gkai和gbsn分别处理简体中文楷体字和宋体字。

sudo apt-get install latex-cjk-all

至此,基本的配置就完成了。此时,我们可以新建一个tex文件并输入以下测试内容。正常情况下,编译这个tex文件就能在文档中显示中文了。值得说明的一点是,这些字体是不支持斜体格式的,但支持加粗。其实,在正式的中文排版中,如果要强调某些部分,是通过使用仿宋体或者楷体来实现,而不是像英文中那样通过斜体来实现。

\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{gkai}
这是一个楷体中文测试,处理简体字。
\end{CJK}
\begin{CJK}{UTF8}{gbsn}
这是一个宋体中文测试,处理简体字。
\end{CJK}
\begin{CJK}{UTF8}{bkai}
這是一個big5編碼的楷體中文測試,處理繁體文字。
\end{CJK}
\begin{CJK}{UTF8}{bsmi}
這是一個个big5編碼的明體中文測試,處理繁體文字。
\end{CJK}
\end{document}

接下来,还要针对中文排版进行进一步的设置。

首先,设置每一行的首行缩进。

/usepackage{indentfirst}
/setlength{/parindent}{2em}

其次,中文文档习惯于使用“目录”、“插图目录”、“表格目录”、“参考文献”、“摘要”、“索引”、“表格”、“图”等字样作为文章特殊部分的标题,而LaTeX 对于这些部分的标题默认是使用英文的,因此可以通过重定义宏的方式将其重定义为中文字样。

/renewcommand{/contentsname}{目录}/renewcommand{/listfigurename}{插图目录}/renewcommand{/listtablename}{表格目录}/renewcommand{/refname}{参考文献}/renewcommand{/abstractname}{摘要}/renewcommand{/indexname}{索引}/renewcommand{/tablename}{表}/renewcommand{/figurename}{图}

写到这里,用LaTeX来进行日常的中文排版就不成问题了。最后,希望大家都能喜欢LaTeX这个功能强大的排版软件。

新手注意事项

以下是我遇到的问题,新手一般也会遇到,提示一下吧,免得你们也走弯路。

中文问题

在你确定中文可用的情况下,时不时的还钻出一个错误,可能是你的 \begin{CJK}放的位置不对,比如如下代码

[plain] view plaincopyprint?
\documentclass{article} 

 
\usepackage{CJKutf8}  
  
\title{Title}  
\author{lalor}  
  
\begin{document}  
\maketitle  
\tableofcontents  
  
\begin{CJK}{UTF8}{gbsn}  
\section{部分1} %(fold)  
LaTex是一个宏包,目的是使作者能够利用一个  
预先定义好的专业页面设置,  
从而得以高质量的排版和打印他们的作品.  
  
\section{部分二} %(fold)  
  
這是一個个big編碼的明體中文測試,處理繁體文字。  
\end{CJK}  
\end{document}  
\documentclass{article}
\usepackage{CJKutf8}

\title{Title}
\author{lalor}

\begin{document}
\maketitle
\tableofcontents

\begin{CJK}{UTF8}{gbsn}
\section{部分1} % (fold)
LaTex是一个宏包,目的是使作者能够利用一个
预先定义好的专业页面设置,
从而得以高质量的排版和打印他们的作品.

\section{部分二} % (fold)

這是一個个big編碼的明體中文測試,處理繁體文字。
\end{CJK}
\end{document}       表面上看没有什么问题,编译又出错,网上搜索也得不错什么结果,经过我的摸索找到了原因,在\begin{CJK}[UTF8]{gbsn}前面没有中文,按理说不会出错,但是不要忘了我们要生成目录,在这里目录是中文的,所以编译出错了,最好将\begin{CJK}[UTF8]{gbsn}放在\usepackage后面,其他语句前面。

目录

我们可以通过\renewcommand{\contentsname}{目录}这条语句将最后文章中“Contents”这个单词改成“目录”二字,毕竟中文么,但是这样又有一个问题就是生成的目录为空,也就是只能看到“目录”二字,却看不到内容,解决方法是在最后的\end{CJK}前加上一条语句\newpage,参见:http://www.bimeichun.com/Linux/latex.html#sec8当然了,这样还是可能不成功的,你可能需要编译两次才能正确生成目录。

日期

最后是日期问题,一般都是自动生成的日期,但是我们想该成一个特定日期应该怎么该了,自己试了半天也没搞定,测试了如\date{2011\03\01},\date{2011\\03\\01},\date{03\01\2011}都不行,原来应该是\date{2011年3月},也就是原样输出啦。

 

[转] http://www.linuxidc.com/Linux/2012-06/62456.htm

 

 

安装TexLive+Latex+CJK

一、安装TexLive+Latex+CJK: 

打开终端,执行下述命令安装TexLive和常用的一些Latex宏包(可以根据自己的需要增改): 

sudo apt-get install texlive texlive-math-extra texlive-latex-basetexlive-latex-extra texlive-latex-recommended texlive-picturestexlive-science texlive-bibtex-extra texlive-commonlatex-beamer 

如果硬盘充裕的话,直接完整安装也可以: 

sudo apt-get install texlive-fulllatex-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 songUnicode.sfd 

加time是为了计算时间,因为比较耗时,在我的Core 2 DuoT5500下,生成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 CJKpackage. 
  % 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

 



0 0
原创粉丝点击