跳轉到內容

LaTeX/計數器

來自華夏公益教科書,自由的教科書

LaTeX

入門
  1. 介紹
  2. 安裝
  3. 安裝額外包
  4. 基礎
  5. 如何獲得幫助

常見元素

  1. 文件結構
  2. 文字格式
  3. 段落格式
  4. 顏色
  5. 字型
  6. 列表結構
  7. 特殊字元
  8. 國際化
  9. 旋轉
  10. 表格
  11. 標題建立
  12. 頁面佈局
  13. 自定義頁面頁首和頁尾‎
  14. 匯入圖形
  15. 浮動體、圖形和標題
  16. 腳註和邊注
  17. 超連結
  18. 標籤和交叉引用
  19. 首字母

機制

  1. 錯誤和警告
  2. 長度
  3. 計數器
  4. 方框
  5. 規則和支撐

技術文字

  1. 數學
  2. 高階數學
  3. 定理
  4. 化學圖形
  5. 演算法
  6. 原始碼列表
  7. 語言學

特殊頁面

  1. 索引
  2. 詞彙表
  3. 參考文獻管理
  4. 更多參考文獻

特殊文件

  1. 科學報告(學士報告、碩士論文、博士論文)
  2. 信件
  3. 簡報
  4. 教師專區
  5. 簡歷
  6. 學術期刊(MLA、APA 等)

建立圖形

  1. 介紹程式圖形
  2. MetaPost
  3. 圖片
  4. PGF/TikZ
  5. PSTricks
  6. Xy-pic
  7. 建立 3D 圖形

程式設計

  1. 純 TeX
  2. 建立包
  3. 建立包文件
  4. 主題

雜項

  1. 模組化文件
  2. 協作編寫 LaTeX 文件
  3. 匯出到其他格式

幫助和推薦

  1. 常見問題解答
  2. 技巧和竅門

附錄

  1. 作者
  2. 連結
  3. 包參考
  4. LaTeX 文件示例
  5. 索引
  6. 命令詞彙表

編輯此框編輯目錄

計數器是 LaTeX 的重要組成部分:它們允許您控制所有內容(節、列表、標題等)的編號機制。為此,每個計數器在 長整數 範圍內儲存一個整數值,即從 [1]

計數器操作

[編輯 | 編輯原始碼]

在 LaTeX 中,建立新的計數器以及在另一個計數器增加時自動重置的計數器(例如,節中的小節)相當容易。使用命令

\newcounter{NameOfTheNewCounter}

您將建立一個新計數器,該計數器自動設定為零。如果您希望計數器在每次另一個計數器增加時重置為零,請使用

\newcounter{NameOfTheNewCounter}[NameOfTheOtherCounter]

例如,如果您希望在每章中獨立列舉方程式,您可以建立一個類似於“equationschapter”的計數器,該計數器將在每節開頭自動重置。

\newcounter{equationschapter}[section]
	
    \section{First Section}
    I present one equation:
    
    \stepcounter{equationschapter} $a=b+c$ (Eq. \arabic{section}.\arabic{equationschapter})
    
    \section{Second Section}
    I present more equations:
    
    \stepcounter{equationschapter} $a=c+d$ (Eq. \arabic{section}.\arabic{equationschapter})
      
    \stepcounter{equationschapter} $d=e$ (Eq. \arabic{section}.\arabic{equationschapter})


要將另一個計數器新增到現有計數器中,並在增加時導致重置,請使用

\counterwithin*{NameOfTheCounter}{NameOfTheOtherCounter}

如果這不起作用,可能是因為您使用的 LaTeX 版本過舊,在這種情況下,以下方法應該可以正常工作

\makeatletter
\@addtoreset{NameOfTheCounter}{NameOfTheOtherCounter}
\makeatother

要撤消此效果,可以使用

\counterwithout*{NameOfTheCounter}{NameOfTheOtherCounter}

\makeatletter
\@removefromreset{NameOfTheCounter}{NameOfTheOtherCounter}
\makeatother

要增加計數器,請使用

\stepcounter{NameOfTheNewCounter}

\refstepcounter{NameOfTheNewCounter} % used for labels and cross referencing

\addtocounter{NameOfTheNewCounter}{number}

這裡的數字也可以是負數。對於自動重置,您需要使用 \stepcounter

要顯式設定計數器值,請使用

\setcounter{NameOfTheNewCounter}{number}

計數器訪問

[編輯 | 編輯原始碼]

有幾種方法可以訪問計數器。

  • \theNameOfTheNewCounter 將列印與計數器相關的格式化字串(注意計數器實際名稱之前的“the”)。
  • \value{NameOfTheNewCounter} 將返回計數器值,該值可供其他計數器使用或用於計算。它不是格式化字串,因此不能在文字中使用。
  • \arabic{NameOfTheNewCounter} 將使用阿拉伯數字列印格式化的計數器。

請注意,\arabic{NameOfTheNewCounter} 也可以用作值,但其他命令不行。

奇怪的是,LaTeX 計數器在任何情況下都不用反斜槓引入,即使使用 \the 命令也是如此。plainTeX 等效項 \count\newcount\mycounter 則遵守反斜槓規則。

計數器樣式

[編輯 | 編輯原始碼]

以下內部 LaTeX 命令將把指定計數器的數值轉換為可列印的字串,並將字串插入文件中

\arabic
數字從 (含)轉換為字串 «-2147483648», «-2147483647», …, «-1», «0», «1», …, «2147483646», «2147483647»。
示例:1、2、3、…
\alph
數字從 1 到 26(含)轉換為字串 «a», «b», …, «z». 其他數字(負數、零、27、28、…, ) 轉換為空字串。
示例:a、b、c、…
\Alph
\alph 相同,但使用大寫字母。
示例:A、B、C、…
\roman
數字從 1 到 4999(含)轉換為字串 «i»(1)、«ii»(2)、…, «mmmmcmxcix»(4999),其中 «i» — 1、«v» — 5、«x» — 10、«l» — 50、«c» — 100、«d» — 500、«m» — 1000。數字從 5000 到 (含)轉換為字串 «mmmmm»(5000)、«mmmmmi»(5001)、…。其他數字(負數、零)轉換為空字串。
示例:i、ii、iii、…
\Roman
\roman 相同,但使用大寫字母。
示例:I、II、III、…
\fnsymbol
針對腳註;列印一系列符號。
數字 符號
1
2
3
4 §
5
6
7 ∗∗
8 ††
9 ‡‡
其他數字 空字串
示例:∗、†、‡、…

LaTeX 預設計數器

[編輯 | 編輯原始碼]
  • 部分
  • 章節
  • 小節
  • 小小節
  • 段落
  • 子段落
  • 腳註
  • 多行腳註

對於 enumerate 環境

  • enumi
  • enumii
  • enumiii
  • enumiv

對於 eqnarray 環境

  • 公式

包含部分、節,但沒有章節的書籍

[編輯 | 編輯原始碼]

以下是一個在 book 類中使用部分和節,但沒有章節的例子。

\renewcommand{\thesection}{\thepart .\arabic{section}}

\part{My Part}                                                                
\section{My Section}
\subsection{My Subsection}

自定義 enumerate

[編輯 | 編輯原始碼]

參見 列表結構 章節。

自定義分節

[編輯 | 編輯原始碼]

這是一個重建類似於 LaTeX 中已經存在的節和子節計數器的例子。

\newcounter{mysection}
\newcounter{mysubsection}[mysection]
\addtocounter{mysection}{2} % set them to some other numbers than 0
\addtocounter{mysubsection}{10} % same
%
\arabic{mysection}.\arabic{mysubsection}
Blah blah

\stepcounter{mysection}
\arabic{mysection}.\arabic{mysubsection}
Blah blah

\stepcounter{mysubsection}
\arabic{mysection}.\arabic{mysubsection}
Blah blah

\addtocounter{mysubsection}{25}
\arabic{mysection}.\arabic{mysubsection}
Blah blah and more blah blah


前一節:長度 索引 下一節:盒子
華夏公益教科書