在 ConTeXt 中应用范德格拉夫的佳能(九分音符)

在 ConTeXt 中应用范德格拉夫的佳能(九分音符)

我确信这是一个显而易见的问题,但是经过多次尝试后我却发现自己更加困惑。

我正在排版一本书。纸张尺寸为 5.5×8.5 英寸。我想申请页面构造的准则按照书中的方法。如果我计算 5.5×8.5" 的 1/9,我得到的基本网格大小是 0.611×0.944",这导致文本宽度为 6 × 0.611" = 3⅔",文本高度为 6 × 0.944" = 5⅔"。为了实现这一点,我需要将退格和顶格设置为一个网格单位,因此退格 = 0.611",顶格 = 0.944"。让我感到困惑的第一件事是文本区域应该是 6 × 6 个网格单位,但标准计算的文本区域确实如此不是包括页眉和页脚(这是正确的吗?)。正典并没有真正告诉你如何处理页眉和页脚。假设我选择了一些随机大小,正确的配置方法是什么\setuplayout

文件救命!排版区很有用,但我找不到提到的 Metapost 程序,它可以针对给定的纸张尺寸进行计算。该论文还提到,ConTeXt 很快将提供基于九分制的默认页面设置,但我不知道这是否真的实现了(该文档来自 2004 年),或者如果实现了,它们在哪里以及如何使用它们。显然,如果我可以使用预定义的设置或至少在自己的文档中进行计算来避免将这些内容硬编码到我的文档中,那就更好了。

感谢您的帮助!

答案1

您可以使用typearea 模块。这是一个非常简单的模块,实际上没有太多文档。您可以使用bcor和值来设置绑定校正,该值在某种程度上与从到的alphabets字母表适合一行的频率有关。要使其工作,您必须首先设置字体或在字体设置后发出命令 。最后一个选项是,如果设置为, 模块将不会假设双面布局进行计算。以下是如何设置的示例:az\doTypeAreaonesideyes

\setupTypeArea
  [alphabets=2.9]

页眉和页脚不予考虑,也不属于页面构造计算的一部分。如果您需要比模块提供的更多控制或微调,则必须使用以下方法手动设置 \setuplayout

这里演示了字体大小如何影响类型区域。

%% only for demonstration
\usemodule
  [visual]

%% set up font first
\setupbodyfont
  [12pt]

\usemodule
  [typearea]

\setuppagenumbering
  [alternative=doublesided]

\showframe

\starttext
  \setupbodyfont [6pt]
  \doTypeArea
  \fakenwords{2000}{2000}\page

  \setupbodyfont [10pt]
  \doTypeArea
  \fakenwords{2000}{2000}\page

  \setupbodyfont [14pt]
  \doTypeArea
  \fakenwords{2000}{2000}\page
\stoptext

结果1 结果2 结果3

相关内容