如何在 ConTeXt 中将“部分”标题垂直居中?

如何在 ConTeXt 中将“部分”标题垂直居中?

到目前为止,我最大的努力就是简单地添加一个大空白作为之前的参数:

\setuphead[part][placehead=yes, alternative=middle,before={\blank[12*big,force]},
    header=empty]

显然,这可能适用于给定的纸张尺寸,但作为一种解决方案似乎不够优雅。

我是否错过了更简单的方法?

答案1

您可以使用makeup设置自定义页面布局。这里我使用了预定义的standard布局,垂直居中。

\setuphead
  [part]
  [placehead=yes,
   alternative=middle,
   before=\startstandardmakeup,
   after=\stopstandardmakeup,
   header=empty]

\starttext
  \startpart [title=Part One]
  \stoppart
\stoptext

您还可以创建自己的布局并使用align键进行垂直对齐。这种方法更灵活。默认情况下,布局不会增加页面计数器(感谢 Aditya 指出这一点)。可以使用键修复此问题pagestate

\definemakeup
  [part]
  [align=middle,
   pagestate=start]

\setuphead
  [part]
  [placehead=yes,
   alternative=middle,
   before=\startpartmakeup,
   after=\stoppartmakeup,
   header=empty]

\starttext
  \startpart [title=Part One]
  \stoppart
\stoptext

相关内容