如何将页码切换为罗马数字

如何将页码切换为罗马数字

我试图将前页的页码设为小写罗马数字,其余部分则设为阿拉伯数字。我也不希望标题页上的数字(尽管应该计算在内)。根据我找到的文档(ConTeXt 参考手册 (2011);ConTeXt 花园维基),我应该使用类似这样的代码

\setuppagenumbering[state=stop]
% title page
\setuppagenumbering[state=start,conversion=romannumerals]
% rest of front matter, e.g. TOC
\setuppagenumbering[conversion=numbers]
% body
% back matter

好吧,隐藏标题页上的页码是可行的,但我似乎无法切换到罗马数字。

答案1

前言的页码采用小写罗马字母

使用以下设置

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

如果您希望在前面或正文部分应用其他设置,可以使用命令\startsectionblockenvironment。仅供演示,以下是如何在正文中将页码重置为 1:

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

不要忘记标记您的内容,这样 ConTeXt 就知道前面和正文在哪里:

\startfrontmatter
\stopfrontmatter

\startbodymatter
\stopbodymatter

其余用阿拉伯数字表示

这已经是默认设置了,无需更改。

封面

标题页创建如下

\startstandardmakeup
  Content of the title page
\stopstandardmakeup

默认情况下,页面不计算在内。要更改此设置,请使用pagestart=start此处的设置,以及其他设置来放大字体并使内容居中:

\setupmakeup
  [standard]
  [pagestate=start,
   style=bigbodyfont,
   align=middle]

把所有这些放在一起可以得到以下骨架:

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

\setupmakeup
  [standard]
  [pagestate=start,
   style=bigbodyfont,
   align=middle]

\starttext

\startstandardmakeup
  Title page
\stopstandardmakeup

\startfrontmatter
  \completecontent
\stopfrontmatter

\startbodymatter
  \startchapter [title=First chapter]
  \stopchapter
  \startchapter [title=Second chapter]
  \stopchapter
\stopbodymatter

\stoptext

答案2

根据http://www.mail-archive.com/[电子邮件保护]/msg48251.html,应该是\setupuserpagenumber,而不是\setuppagenumbering。 在我的情况下,以下内容可以完成工作:

\setuppagenumbering[state=stop]
% title page
\setuppagenumbering[state=start]
\setupuserpagenumber[numberconversion=romannumerals]
% rest of front matter, e.g. TOC
\setupuserpagenumber[numberconversion=numbers]
% body
% back matter

\setupuserpagenumber但是我在 ConTeXt Garden、参考手册或 SE TeX 中找不到有关该命令的任何信息。

相关内容