这是如何在 ConTeXt 中模仿“twoside=semi”?基本上,我想要一个单面布局,并带有双面页码。这包括仅在一侧(在本例中为左侧)留出较宽的边距以容纳边距材料。
不幸的是,\setuphead
替代方案inmargin
不尊重只能有一个边距( 也不尊重margin
)。设置后,rightmargin=0pt
您将在小节级别看到此行为:
这发生在偶数页上。在奇数页上,它确实按预期工作,并且材料正确放置:
\setuppagenumbering [alternative={doublesided,singlesided}]
\setuplayout [rightmargin=0pt,
backspace=8cm,
leftmargin=7cm,
width=fit]
\setuphead [alternative=inmargin]
\showframe
\starttext
\startpart[title=PTest]
\startchapter[title=CTest]
\startsection[title=STest]
\startsubsection[title=SubTest]
Test
\stopsubsection
\page
\startsubsection[title=SubTest]
Test
\stopsubsection
\stopsection
\stopchapter
\stoppart
\stoptext
问题:如何在偶数页上复制奇数页上的行为?
答案1
当您有双面文档时,ConTeXt 会切换偶数页的左右边距的位置。inmargin
另一种方法是将数字放在边距区域时考虑到这一点,但当您设置为时rightmargin
(0pt
这不是必需的,因为边距区域不会更改页面布局),您还将左边距和文本块之间的空间设置为0pt
。
修复此问题的第一种方法是设置rightmargin
为大于的值0pt
。
\setuplayout
[rightmargin=4cm,
backspace=8cm,
leftmargin=7cm,
width=middle]
location
当您拥有较新版本的 ConTeXt 时,您还可以使用不同的方法,为键设置一个值,\setuphead
然后使用\margindata
命令将数字放置在边距中。
\setuphead
[alternative=inmargin,
location=inleft]