使用页面设计在 ConTeXt 用户手册的章节中,我尝试设置自己的页面尺寸,但无法理解说明。例如,有leftmargin
、leftedge
、leftmargindistance
、选项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
似乎是改变这些参数的真正有效的方法。footer
header
\setuplayout [
backspace=25mm,
margin=20mm,
margindistance=0mm,
width=160mm,
topspace=20mm,
height=260mm,
header=10mm,
footer=15mm,
bottomdistance=0mm,
bottom=10mm
]
他指出的其他方法似乎也有效。如果我错了,请告诉我。