ConTeXt 中的頁碼(羅馬數字和阿拉伯數字)

ConTeXt 中的頁碼(羅馬數字和阿拉伯數字)

我的簡單文件僅分為兩部分(只是一些數學筆記)。

\starttext
% frontmatter
\startstandardmakeup
... % the cover
\stopstandardmakeup
\completecontent
\startbodymatter
... % main part
\stopbodymatter
\stoptext

我希望頁碼frontmatter可以Roman numbers從內容開始not the standardmakeup,這樣我就可以透過以下方式實現這一點:

\startfrontmatter
...
\stopstandardmakeup
\setupuserpagenumber[numberconversion=romannumerals]
\completecontent
\stopfrontmatter
\startbodymatter
% some settings?
...

我還希望中的頁碼bodypart可以來自Arabic numeral 1,我該如何實現這一點?

更清楚的是:當ConTeXt進入時bodymatter,我可以重置頁碼以便它可以從1開始嗎?

答案1

要取得前面部分的羅馬頁碼,您可以使用

\definestructureconversionset [frontpart:pagenumber] [] [romannumerals]

或者

\startsectionblockenvironment [frontpart]
  \setupuserpagenumber [numberconversion=romannumerals]
\stopsectionblockenvironment

需要在正文部分呼叫的命令使用相同的機制,只需替換frontpartbodypart並使用\setcounter來更改頁碼:

\startsectionblockenvironment [bodypart]
  \setcounter [userpage] [1]
\stopsectionblockenvironment

這是一個完整的例子:

\definestructureconversionset [frontpart:pagenumber] [] [romannumerals]

\startsectionblockenvironment [bodypart]
  \setcounter [userpage] [1]
\stopsectionblockenvironment

\starttext
  \startstandardmakeup
    Cover page
  \stopstandardmakeup
  \startfrontmatter
    \completecontent
  \stopfrontmatter
  \startbodymatter
    Main part
  \stopbodymatter
\stoptext

相關內容