ctex宏包说明?

吴凌云?

打印日期:2006年12月16日

摘要

ctex宏包提供了一个统一的中文LATEX文档框架,底层支持CCT和CJK两种中文

LATEX系统。ctex宏包提供了编写中文LATEX文档常用的一些宏定义和命令。

ctex宏包需要CCT系统或者CJK宏包的支持。主要文件包括ctexart.cls、ctexrep.cls、ctexbook.cls和ctex.sty、ctexcap.sty。

ctex宏包由ctex.org制作并负责维护。

目录

1简介2使用帮助2.1使用CJK......................................2.2使用CCT......................................2.3选项.........................................2.4

基本命令......................................2.4.1字体设置..................................2.4.2字号、字距、字宽和缩进..........................2.4.3中文数字转换................................

2.5

高级设置

......................................2.5.1章节标题设置................................

2.5.2部分修改标题格式.............................2.5.3附录标题设置................................2.5.4其他标题设置................................2.5.5其他设置..................................2.6

配置文件

......................................?本文件版本号为v0.8,最后修改日期2006/06/09。

?aloft@ctex.org

1

33445667788

12131314

14

目录3源代码说明3.13.23.33.4

2

15

选项.........................................15宏包.........................................18辅助定义

......................................19

通用中文设置....................................203.4.1中文字号..................................3.4.2

缺省字号大小................................3.5CCT相关配置...................................3.5.1CCT环境设置...............................3.5.2常用的中文字体

..............................3.5.3中文字号..................................3.5.4其他字体命令................................3.5.5

CCTfntef宏包接口.............................3.6CJK相关配置...................................3.6.1CJK环境设置...............................3.6.2常用的中文字体

..............................3.6.3中文字号..................................3.6.4其他字体命令................................3.6.5

CJKfntef宏包接口.............................3.7中文数字处理....................................3.8

中文化的标题结构.................................3.8.1章节标题基本结构.............................3.8.2part的标题.................................3.8.3chapter的标题...............................3.8.4section的标题...............................3.8.5页眉信息的修改

..............................3.8.6标签引用的中文化.............................3.8.7其他中文标题定义.............................3.8.8用户设置命令................................3.8.9

标题配置文件................................3.9文档类........................................3.10其它功能

......................................2224

262627

272728

282829

292930

30373741434547

51515254

58

58

1简介3

3.10.1中文日期格式................................583.10.2图表标题的分隔符.............................59

3.11用标准字体命令修改中文字体...........................59

3.11.1字体定义文件................................593.11.2字体命令修改................................60

1简介

这个宏包的部分原始代码来自于由王磊编写cjkbook.cls文档类,还有一小部分原始代码来自于吴凌云编写的GB.cap文件。原来的这些工作都是零零碎碎编写的,没有认真、系统的设计,也没有用户文档,非常不利于维护和改进。所以我们用doc和docstrip工具重新编写了整个文档,并增加了许多新的功能。

最初Knuth设计开发TEX的时候没有考虑到支持多国语言,特别是多字节的中日韩语

A言。这使得TEX以至后来的LTEX对中文的支持一直不是很好。即使在CJK解决了中文字A符处理的问题以后,中文用户使用LTEX仍然要面对许多困难。最常见的就是中文化的标

题。由于中文习惯和西方语言的不同,使得很难直接使用原有的标题结构来表示中文标题。

A因此需要对标准LTEX宏包做较大的修改。此外,还有诸如中文字号的对应关系等等。ctex

宏包正是尝试着解决这些问题。中间很多地方用到了在ctex.org论坛上的讨论结果,在此对参与讨论的朋友们表示感谢。

ctex宏包由五个主要文件构成:ctexart.cls、ctexrep.cls、ctexbook.cls和ctex.sty、ctexcap.sty。ctex.sty主要是提供整合的中文环境,可以配合大多数文档

A类使用。而ctexcap.sty则是对LTEX的三个标准文档类的格式进行修改以符合中文习惯,该宏包只能配合这三个标准文档类使用。ctexart.cls、ctexrep.cls、ctexbook.cls

则是ctex.sty、ctexcap.sty分别和三个标准文档类结合产生的新文档类,除了包含ctex.sty、ctexcap.sty的所有功能,还加入了一些修改文档类缺省设置的内容(如使用五号字体为缺省字体)。

A这份说明文档可以通过用LTEX编译ctex.dtx文件来得到。编译说明文档需要CJK

宏包和ctex宏包。为了生成正确的索引和版本记录,需要使用如下命令

makeindex-sgind.ist-octex.indctex.idxmakeindex-sgglo.ist-octex.glsctex.glo

2使用帮助

ctex宏包的使用十分简单。如果是使用ctex的文档类,只需用ctexart、ctexrep或者ctexbook替换原来的文档类就可以了。你也可以继续使用原来的文档类,而用ctex.sty

2使用帮助4

和ctexcap.sty宏包来配合使用,两者的效果是一样的(除了不能修改一些文档设置如缺省字体大小)。

2.1使用CJK

这是ctex宏包的缺省设置。ctex宏包会自动调用CJK宏包,你无需再自己调用。此

外,ctex宏包会在\\begin{document}和\\end{document}之间自动加入一个CJK环境,你无需再添加CJK环境。CJK宏包的命令都可以在\\begin{document}和\\end{document}之间正常使用。

例子1:使用文档类宏包

\\documentclass{ctexart}\\begin{document}中文宏包测试\\end{document}

例子2:使用普通宏包

\\documentclass{article}\%usepackage{ctex}\\begin{document}中文宏包测试\\end{document}

2.2使用CCT

ctex宏包也可以配合新版的CCT使用,只需在使用ctex宏包时加上CCT选项即可。

缺省CCT会使用CJK字库,因为这种字库方式比传统CCT字库更方便,兼容性也更好。如果要使用传统CCT字库,则还要加上CCTfont选项。

例子3:使用CJK方式字库

\\documentclass[CCT]{ctexart}\\begin{document}中文宏包测试\\end{document}

例子2:使用CCT方式字库

\\documentclass[CCT,CCTfont]{ctexart}\\begin{document}中文宏包测试\\end{document}