注册地址 登录
数学建模社区-数学中国 返回首页

aqua2001的个人空间 http://www.madio.net/?20 [收藏] [复制] [分享] [RSS]

日志

LaTeX入门知识(4)

热度 3已有 1778 次阅读2011-10-6 22:27 | 知识

再来说说打中文的问题。标准的LaTeX里是只能用英文的,输入的中文字符它不识别。处理中文有若干办法。包括TY,CCT,CJK等。究其原理都是对含有中文的源文件做了“预处理”,譬如我们使用CJK宏包的时候,它会把其中的中文字符读出来,并转化成一系列TeX命令,大约就是告诉系统在这个位置有个字符,然后把字符转译成它在中文字符集中的编码。在生成输出结果的时候,再到相应的字体文件里找到对应编码的字形,放到相应的位置上就是了。对英文字符,TeX本身就能识别,所以可以说CJK是让TeX学会认识中文字符的办法。这几种方法里,CCT曾经流行,现在在一些刊物的投稿模板里会用到。CJK普遍被认为处理效果较好,用起来也相当方便。但我这里打算更多推荐处理中文的最简单方法──XeTeX。

XeTeX是一种能够直接处理Unicode字符的TeX编译器。它比原先的TeX有两个功能上的扩展:天生认识Unicode字符,所以无需CJK等外部工具去“教”它。而且Unicode里包含的字符极其广泛,除中文外,日文、俄文、阿拉伯文、蒙文、韩文、藏文等原则上都可以一视同仁。当然具体工作的时候还需要适合该文字格式习惯的宏包配合,譬如蒙文需要竖排。还有一个新功能:可以直接调用系统中的字体文件。原来想用漂亮的字体需要很麻烦的处理手续,现在好了,只要系统里有的都能直接使用。

现在的新版TeX套装里都包括了XeTeX,所以到时候直接用它去编译就是了。而源文件在写的时候,除了按照正常的LaTeX规范去写(可以直接在里面加中文),还有两点需要注意的地方。

第一,源文件的编码一定要选择UTF-8,XeTeX才能识别。许多软件默认把编码选成GB18030之类,需要修改一下。

第二,鉴于中文常用字体里的英文字母基本没有能看得下去的,所以中文和英文混合排版时一般分别使用不同字体。而且中英文混合使用的时候,它们之间的间距之类的事情也需要设定。所以几乎是一定要使用相应的宏包来解决这个问题。譬如xeCJK或者zhspacing等都是解决这类问题而生的。以xeCJK为例,只要我们在开头加上\usepackage{xeCJK},然后再写几条定义默认字体的命令(详情请google“xeCJK宏包”,有其说明文件,用法非常简明),就可以畅通无阻地使用中文了。

用TeX排版,为发挥其优势,应当尽可能地遵循“内容与形式分离”的原则。具体说来,就是在文件最前面的版式定义里最好把文件的基本格式都定义清楚。然后真正在写作正文的时候,我们可以再也不去考虑排版格式。在写正文的时候,你需要把自己当成一个纯粹的作者。你所关注的就是哪里分段?哪里分节?哪里加脚注?哪里写引用?诸如此类问题。这些问题针对的都是“内容的结构”,而不是具体的版面效果。不要去关心这里是不是要换行,这里是不是要多打两个空格,这里行间距调大不好看,这里怎么对不齐之类的问题。虽然这些问题在极个别时候也要操些心,但也应在全文打完以后再做微调。有关版式的命令,譬如\par是缩进换行,但它在我们写正文的时候根本不该见到。如果要分自然段,应该打双回车。分自然段和缩进换行不是一个层面的东西,譬如某些特殊的版式下,分自然段也许不是缩进换行呢?缩进换行,甚至更深入的该缩进多少,行间距该空多少,这都是印刷厂的工作。作者是不该操太多心的。

当然这个原则有时也需要变通,譬如作为作者,认为此处一些文字需要强调,必须使用特殊的字体或者颜色──那当然也只能自己使用命令去手动修改。不过,如果一篇文章里满篇都是调整格式的命令,甚至连内容结构都不明显了,那显然是非常错误的使用习惯。

路过

雷人
1

握手
2

鲜花

鸡蛋

刚表态过的朋友 (3 人)

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2024-4-25 10:11 , Processed in 0.235522 second(s), 27 queries .

回顶部