- 0
- 0
- 约2.59万字
- 约 22页
- 2026-01-15 发布于北京
- 举报
第七章用户定制IATEX
在IATEX中用户可以定义令和环境。然而这不可避免地要频繁用到
IATEX的记数器和长度,因此我们首先详细讨论一下这些对象,并说明如何使用它
们。
§7.1记数器
§7.1.1IATEX记数器
LATEX管理着大量的记数器,在启动时给出它们的初始值,通过调用特定命令可
以改变它们的值。这些记数器的绝大多数都与可以改变它们令有相同的名称:
partchapterparagraphfigureenumisectionsubparagraphtableenumiis
ubsectionpagefootnoteenumiiisubsectionequationmpfootnoteenumiv
从名称上就可以知道大部分记数器的意义,不需要再解释了。记数器enumi…
enumiv相应的是四个层次的enumerate环境(4.3.4节和4.3.5节),而记数器
mpfootnote控制minipage环境中的脚注编号(4.10.4节)。
除这些记数器外,还可能存在用\newtheorem命令创建的记数器,它也具有与结
构类型参数值相同的名称(4.5节)。由于在70页上的\newtheorem命令例子,
本书中也包含theorem和axiom两个记数器。
记数器的值必须是整数,通常也是非负的。一条命令可以同时输出几个值:当前的
\subsection命令就输出7.1.1,在这种情况中是调用了多个记数器。例如,
\subsection命令会给subsection记数器增1,并显示chapter,section和subsection
记数器的值,中间用句号分开。同时,命令还会把subsection记数器设为零,即使
它没有出现。
§7.1.2用户自定义的记数器
用户可以用下面令创建自己的记数器:
[上级记数器]
这里记数器名就是刚建立的记数器的名称。它可以是任一字母的组合,只要不与已
存在的记数器名称相同就可以了。因此不能用列在上面的ATEX记数器或者前面已
经定义的记数器名称作为记数器名。可省参数上级记数器是另一个已经存在的记数
器(ATEX的或用户自定义的)的名称,其作用就在于只要上级记数器被∖
stepcounter或∖refstepcounter命令(见下面)增1,就把新建立的记数器重设为
零。
当用创建了一个新的记数器,它的初始值就是零。
记数器不能位于用
命令(8.1.2节)读进的文件中。因此把所有的命令都放在导言中。
§7.1.3改变记数器的值
无论是IATEX记数器,还是用户自定义的记数器,都可以用下面令改变其值:
setcounter{记数器}{数}
这条命令的意义从字面上就可以知道了:指定的记数器被赋予给定的数值(整数)。
\addtocounter{记数器}{}数}
利用这条命令,指定记数器的值增加了给定数值,数可以是正值,也可以是负值。
\stepcounter{记数器}
指定记数器的值增1,同时所有从属记数器(即所有把这个记数器作为自己上级记
数器的记数器)的值被重设为零(见上)。
\refstepcounter{记数器}
这条命令的效果与,但它也同时把counter设为交叉索引命令(见8.3.1节)。
例如,最后一条命令可以用在没有,这样也可以在正文中这些插图或表格的编
号。那么放在浮动环境中的或命令也可以使得相应的记数器变为正确的值,从而可
以用(8.3.1节)。
记数器的值可以用下面令当做一个数值处理:
这条命令并不改变记数器的值。它通常与。例如,若用户已经创建了记数器
mypage,那么就可以用命令
使它取与页码记数器page有相同的值。
通常命令可以用来保护脆弱命令在传送过程被破坏,它同样也可以放在牢固命令
前面,而不会有任何危害。然而是一个例外。从来不要在它前面加上命令。
§7.1.4显示记数器的值
在记数器中的值可以用下面令显示出来:
\arabic{counter}以数字显示,
\Roman{co
原创力文档

文档评论(0)