![使用默认的 head 替代方案](https://linux22.com/image/417918/%E4%BD%BF%E7%94%A8%E9%BB%98%E8%AE%A4%E7%9A%84%20head%20%E6%9B%BF%E4%BB%A3%E6%96%B9%E6%A1%88.png)
我需要在文档上留出边注空间,我已经完成了以下操作\setuplayout
(来自此链接):
\setuplayout[topspace=10mm,
width=middle,
height=270mm,
header=10mm,
headerdistance=0pt,
footerdistance=0pt,
footer=0pt,
bottom=10mm,
bottomdistance=0pt,
cutspace=60mm,
rightmargin=50mm,
rightmargindistance=5mm]
那么,可以不应用于\setuplayout
和part
标题chapter
吗?
答案1
那么,可以不应用于
\setuplayout
和part
标题chapter
吗?
不,这是不可能的。中的设置\setuplayout
决定了打印内容的纸张尺寸,由于部分和章节将与文档的其余部分打印在同一张纸上,因此以\setuplayout
某种方式“忽略”它们是不合逻辑的。
您仍然可以通过为指定条目设置密钥来执行所需的操作。width
\setuphead
使用默认的 head 替代方案
然后,默认的头部渲染将仅将文本块的大小调整为标题的指定宽度。
* 这通常表明您问了错误的问题。
\showgrid
\showframe
\setuplayout[topspace=10mm,
width=middle,
height=270mm,
header=10mm,
headerdistance=0pt,
footerdistance=0pt,
footer=0pt,
bottom=10mm,
bottomdistance=0pt,
cutspace=60mm,
rightmargin=50mm,
rightmargindistance=5mm]
\setuphead
[chapter]
[width=\dimexpr\makeupwidth+\rightmargindistance+\rightmarginwidth\relax]
\starttext
\startchapter[title={A very long chapter name just for the example}]
\samplefile{knuth}
\stopchapter
\stoptext
使用自定义头部替代方案
如果您使用的不是alternative
默认的normal
,则必须手动使其知道已调整的宽度。在评论中,您提到您正在使用自定义alternative
基于的自定义我的这个答案。通过在包含标题的内设置\hsize
为,可以轻松适应新要求。尺寸设置为您在头部渲染代码中提供的参数。\headwidth
\vbox
\headwidth
width
\setuphead
\showgrid
\showframe
\setuplayout[topspace=10mm,
width=middle,
height=270mm,
header=10mm,
headerdistance=0pt,
footerdistance=0pt,
footer=0pt,
bottom=10mm,
bottomdistance=0pt,
cutspace=60mm,
rightmargin=50mm,
rightmargindistance=5mm]
\defineheadalternative
[centered]
[alternative=vertical,
renderingsetup=headrenderings:centered]
\startsetups[headrenderings:centered]
\vbox {
\ifzeropt\headwidth\else
\hsize\headwidth
\fi
\headsetupspacing
\veryraggedcenter
\let\\\endgraf
\let\crlf\endgraf
\ifconditional\headshownumber
\strut
\headnumbercontent
%\par % <-- commented out
\else
\fakeheadnumbercontent
\fi
\begstrut
\headtextcontent
\endstrut
}
\stopsetups
\setuplabeltext[en][chapter=Chapter ]
\setuphead
[chapter]
[width=\dimexpr\makeupwidth+\rightmargindistance+\rightmarginwidth\relax,
commandbefore={:\,},
alternative=centered]
\starttext
\startchapter[title={A very long chapter name just for the example}]
\samplefile{knuth}
\stopchapter
\stoptext