[心得] 中文化目錄編號後,附錄部份顯示為零問題

看板LaTeX (論文排版)作者 (sppmg)時間5年前 (2018/07/22 17:01), 5年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/3 (看更多)
我在使用 zhnumber 套件時遇到這個問題。如果你使用的是 CJKnumb/xCJKnumb 也出現相同狀況,可能問題來源一樣。 以下使用 \zhnumber 作為轉換數字巨集,如果你用的是 CJKnumb 要改成 \CJKnumber。 狀況: 照 google 結果,使用: \titleformat{\chapter}{\centering\Huge\bfseries}% {第\,\zhnumber{\thechapter}\,章}{1em}{} 主章節正常顯示『第 一 章』,但附錄卻是「第零章」,可能編譯還帶 error ??? 原因: bool.cls (linux 中位於 /usr/share/texlive/texmf-dist/tex/latex/base/bool.cls) 中,主要章節的 \thechapter 定義於 277 行: -------------- % book.cls: 277 \renewcommand \thechapter {\@arabic\c@chapter} -------------- 作用就是將 latex counter 轉為阿拉伯數字。 附錄部份則是在 523 行,利用 \appendix 去覆寫定義 -------------- % book.cls: 519 \newcommand\appendix{\par \setcounter{chapter}{0}% \setcounter{section}{0}% \gdef\@chapapp{\appendixname}% \gdef\thechapter{\@Alph\c@chapter}} -------------- 作用就是將 latex counter 轉為大寫英文字母。 所以,如果只是簡單的利用 \zhnumber{\thechapter} ,在附錄部份相當於使用 \zhnumber(A) 然後就會得到一個 error .... 解決方法: 我在我的樣板中的解決方法一樣利用 \appendix 去重設 \titleformat{\chapter} ,讓附錄部份不用 \zhnumber ,維持原始樣式。 (這裡是透過 etoolbox 套件的 \apptocmd 去附加) 原始碼見 433 行(建議透過網址連,未來更改行數可能會變) 縮址: https://goo.gl/1kZNB8 未縮: https://github.com/sppmg/TW_Thesis_Template/blob/ 854e905dc2da1846866db1bb75c1f5c198847e43/NCU_zh/thesis_base.cls#L433 同樣的問題也會出現在頁首/頁眉部份, 縮址: https://goo.gl/WuYmM6 未縮: https://github.com/sppmg/TW_Thesis_Template/blob/ 854e905dc2da1846866db1bb75c1f5c198847e43/NCU_zh/thesis_base.cls#L373 --------------------- 閒聊~~ 1. 最近在改寫這部份,讓使用者可以更直覺的去定義編號風格 (e.g. 『第一章』、『一、』)。目前是做出來了, 但感覺有點繞遠路的實現方法。 2. 其實也可以重定義 \zhnumber ,讓它碰到非數字就略過,而非輸出「零」。 這樣在樣板部份可能可以省去判斷 appendix 部份(如果格式不變的話)。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.11.2.157 ※ 文章網址: https://www.ptt.cc/bbs/LaTeX/M.1532250109.A.395.html ※ 編輯: sppmg (101.11.2.157), 07/22/2018 17:05:00
文章代碼(AID): #1RL4VzEL (LaTeX)
文章代碼(AID): #1RL4VzEL (LaTeX)