Chinaunix首页 | 论坛 | 博客
  • 博客访问: 313138
  • 博文数量: 75
  • 博客积分: 1956
  • 博客等级: 上尉
  • 技术积分: 862
  • 用 户 组: 普通用户
  • 注册时间: 2007-11-21 15:36
文章分类

全部博文(75)

文章存档

2018年(1)

2012年(3)

2011年(19)

2010年(1)

2009年(1)

2008年(50)

分类: LINUX

2008-09-05 09:33:11

laTeX是linux下面不可多得的文档编写软件 ,但是其中文环境的配置着实让我头痛了很长一段时间,幸好最近把这个问题解决了。

    首先,我的操作系统是Fedora Core 5,在安装操作系统的时候请选择上teTeX,它包含了很多有用的包,接下来我们的工作就简单一点了。需要注意的是,以下的很多操作都需要root权限, 所以我先假定你登陆到系统之后使用su命令切换到root用户了。

    1、安装tetex-afm-3.0-17.i386.rpm

       gbkfonts的执行过程需要这个包。默认情况下,FC5是不装tetex-afm的,不过FC5的光盘中带有这个rpm包。在cdrom/Fedora/RPMS目录下,你也可以通过yum在线安装。

      >yum install tetex-afm

     或者

     >rpm -ivh tetex-afm-3.0-17.i386.rpm

   2、安装CJK-4_5.1-2.i386.rpm

    当前中文编辑主要用的就是CJK和CCT,前者是国外开发的,有些地方不太符合我们中国人的习惯,但是与LaTeX的其它扩展和包的兼容性非常好;后者是 中科院开发的,中文编辑当然是一流,但兼容性不太好。CCT比CJK用起来要简单一些,但很多大学的论文模板都是用CJK写的。
     >rpm -ivh CJK-4_5.1-2.i386.rpm

    3、下载gbkfonts

    网上有已经编译好的程序,直接下载就可以用了。下载后,将其复制到/usr/local/bin,方便使用。

    4、准备TTF字体文件

    可以直接从Windows下复制过来。如果是写论文的话,只需要以下四种字体即可:宋体(simsun.ttc),楷体(simkai.ttf),黑体 (simhei.ttf)和行楷(stxingka.ttf)。注意:请将simsun.ttc改名为simsun.ttf。
请将字体文件放入以下目录:
      >mkdir -p /usr/local/share/texmf/fonts/truetype/chinese
      >cp ./*.ttf /usr/local/share/texmf/fonts/truetype/chinese

    5、字体转换
     从TTF文件生成LaTeX所需要的字体格式,这里只对以上四种字体进行了转换,其它的字体操作方式与此类似。
     >cd /usr/local/share/texmf
     >gbkfonts fonts/truetype/chinese/simsun.ttf song
     >gbkfonts fonts/truetype/chinese/simhei.ttf hei
     >gbkfonts fonts/truetype/chinese/simkai.ttf kai
     >gbkfonts fonts/truetype/chinese/stxingka.ttf xingkai

    6、修改配置文件
     在执行了gbkfonts之后,会在/usr/local/share/texmf下生成一个cjk.map的文件,将这个文件拷贝到/usr /share/texmf目录下,同时,更改/usr/share/texmf/dvips/config/config.gerneric文件,添加一 行

         p +cjk.map

保存文件。之后将该文件拷贝到/usr/local/share/texmf/dvips/config/目录下。可能这个时候这个目录还不存在,创建它就是了。

     7、更新LaTeX系统
     使用以下命令更新LaTeX的数据库,使其可以使用新增加的功能。注意:updmap命令后的参数一定要写
      >updmap --enable Map=cjk.map
      >texhash

      由于此时是root用户,从终端的输出上可以看出,该命令在/root/目录下生成了.texmf-var和.texmf-config两个目录,并且分别向里面添加了一个文件。至此,root用户的latex中文环境就配置完毕了。

      对于普通用户,则还需要进行如下的过程:
      首先,在终端中输入exit回到普通用户shell,切换到/usr/local/share/texmf下,同样输入以上的两个命令:
       >updmap --enable Map=cjk.map
       >texhash

      这时,从终端的输出可以看到,在/home/yourname/目录下也生成了.texmf-var和.texmf-config两个目录,并且分别向里面添加了一个文件。至此,普通用户的latex中文环境也配置完毕了。

     8、测试

    使用texmaker或者vim输入以下的tex文档

\documentclass{article}
\usepackage{amsmath}
\usepackage{CJK}
\begin{document}
\begin{CJK*}{GBK}{song} 你好
\end{CJK*}
\end{document}

如果编译预览可以看到宋体的“你好”,我们就可以使用teTeX编辑中文文档了。    

     9、总结:
      可以将以上用到的文件放在同一个目录下,然后编写一个脚本,这样就不用每次都这么麻烦了。

      例如:我将所有的文件放在/home/latex/这个目录下,包括:
                    tetex-afm-3.0-17.i386.rpm、
                   CJK-4_5.1-2.i386.rpm、
                   gbkfonts、
                   simsun.ttf、simkai.ttf、simhei.ttf和stxingka.ttf。
      脚本名为setup.sh,也放在/home/latex/这个目录下,代码为:

rpm -ivh tetex-afm-3.0-17.i386.rpm
rpm -ivh CJK-4_5
.1-2.i386.rpm
cp 
./gbkfonts /usr/local/bin
mkdir -p /usr/local/share/texmf/fonts/truetype/chinese
cp 
./*.ttf /usr/local/share/texmf/fonts/truetype/chinese
cd /usr/local/share/texmf
gbkfonts fonts
/truetype/chinese/simsun.ttf song
gbkfonts fonts
/truetype/chinese/simhei.ttf hei
gbkfonts fonts
/truetype/chinese/simkai.ttf kai
gbkfonts fonts
/truetype/chinese/xingkai.ttf xingkai
cp 
./cjk.map /usr/share/texmf/

以后再要配置时,执行以下命令即可:
cd /home/latex
su
(输入root用户密码)
./setup.sh

        接着,记得执行第6步,更改/usr/share/texmf/dvips/config/config.gerneric文件,并将该文件拷贝到/usr/local/share/texmf/dvips/config/目录下。

        最后,执行updmap,也做个脚本:

对于root用户,打开shell切换到root用户,执行代码:

cd /usr/share/texmf
updmap --enable Map
=cjk.map
texhash

对于普通用户,打开自己的shell,执行代码:

cd /usr/local/share/texmf
updmap --enable Map
=cjk.map
texhash

配置之后,看看是否可以编辑出漂亮的文档了。

    10、后记

       在发现一些新的字体后,gbkfonts将自己添加到本系统后,更新了cjk.map文件。但是此时updmap --enable Map=cjk.map提示没有更改,不用更新。此时要么执行updmap与texhash强制执行配置,要么删掉当前用户下.texmf-var 和.texmf-config这两个目录,重新执行updmap --enable Map=cjk.map。
       还有一点要注意的是,一定要切换到包含有cjk.map文件的目录下执行updmap程序,否则将会找不到这个文件导致配置失败。

阅读(902) | 评论(0) | 转发(0) |
0

上一篇:培训

下一篇:15 Overview

给主人留下些什么吧!~~