如何在 ConTeXt 中设置页面布局尺寸?

如何在 ConTeXt 中设置页面布局尺寸?

使用页面设计在 ConTeXt 用户手册的章节中,我尝试设置自己的页面尺寸,但无法理解说明。例如,有leftmarginleftedgeleftmargindistance、选项leftedgedistance,但我不明白这些选项如何转换为页面。更复杂的是,当我编译任何文档时,如果启用showframe\showstruts\showgrid选项,文档中会出现许多红线,表明有许多复杂的尺寸需要设置,如下所示:

 _____________________ _____________________
|  _   _________   _  |  _   _________   _  |                       
| |_| |         | |_| | |_| |         | |_| |
| |_| |         | |_| | |_| |         | |_| |                     
| | | |         | | | | | | |         | | | |                     
| | | |         | | | | | | |         | | | |                     
| | | |         | | | | | | |         | | | |                     
| | | |         | | | | | | |         | | | |                     
| | | |         | | | | | | |         | | | |                     
| | | |         | | | | | | |         | | | |                     
| | | |         | | | | | | |         | | | |
| |_| |_________| |_| | |_| |_________| |_| |
| |_| |_________| |_| | |_| |_________| |_| |
| |_| |_________| |_| | |_| |_________| |_| |
|_____________________|_____________________|
       (verso)                 (recto)

一般来说,我对页面尺寸的要求比较简单。下面是一个例子:

 _____________________ _____________________
|       ^             |             ^       |
|       a             |             a       |
|      _v_____        |        _____v_      |
|     |   ^   |       |       |       |     |
|     |   |   |       |       |       |     |
|<-b->|   c   |<--d-->|<--d-->|<--e-->|<-b->|
|     |   |   |       |       |       |     |
|     |___v___|       |       |_______|     |
|       ^ ^           |           ^ ^       |
|       | f           |           f |       |
|       | v           |           v |       |
|       g #           |           # g       |
|       |             |             |       |
|       |             |             |       |
|_______v_____________|_____________v_______|
       (verso)                 (recto)

a - 上边距的长度 b - 外边距的宽度 c - 文本区域的高度 d - 装订线的宽度 e - 文本区域的宽度 f - 文本区域和页码之间的空间长度 g - 下边距的长度

  • 左页和右页的尺寸相同,但在装订线处镜像。
  • 任何脚注文本都应出现在文本区域内。
  • 不使用边注。
  • c和的尺寸e不需要设置,它们可以填充页面上剩余的可用尺寸。

如何在 ConTeXt 中设置文档的页面布局尺寸?

答案1

ConTeXt 中的排版区域包含二十五个区域cutspace图中缺失):

上下文排版区域

你只需要设置文本区域和页脚(用于页码):

\setuppagenumbering
  [alternative=doublesided, location=footer]

\setuplayout
  [header=0pt,
   margin=0pt,
   footerdistance=1cm,
   topspace=1cm,
   backspace=1cm,
   cutspace=8cm,
   width=fit,
   % margin bottom of text to paper
   height=\dimexpr
    \paperheight-\topspace+\footerheight+\footerdistance-5cm\relax]

\starttext
  \showlayout
  \null
\stoptext

\setuppagenumbering[alternative=doublesided]切换到偶数页上的镜像布局。当顶部区域和页眉设置为零时, topspace表示从纸张顶部到文本区域的距离以及backspace从左侧到文本的距离。 cutspace是从文本右侧到纸张的距离。为了正确应用这些,width=fit需要设置。

文本底部到纸张的距离不能直接设置,但可以计算。行5cm中的height=表示文本底部到纸张底部的距离。

答案2

在我看来,Marco 的回答中有一部分具有误导性,因为top,,,,bottom似乎是改变这些参数的真正有效的方法。footerheader

\setuplayout [
   backspace=25mm,
   margin=20mm,
   margindistance=0mm,
   width=160mm,
   topspace=20mm,
   height=260mm,
   header=10mm,
   footer=15mm,
   bottomdistance=0mm,
   bottom=10mm
]

他指出的其他方法似乎也有效。如果我错了,请告诉我。

相关内容