期望输出

期望输出

我想在每页的空白处写下章节标题或章节主题。

我最终设法获得了一些有效的代码:

\setuplayout[edge=3cm,margin=3cm,backspace=7cm,height=27cm]
\setuptexttexts[edge][subject][subject]
\setuptext[edge][style=\rmd\sc]
\starttext
  \rotate[rotate=270]{\subject{\rotate[rotation=90]{Some title}}}
\stoptext

我可以使用边缘、边距和退格宽度来调整文本相对于页面边缘和正文的位置,但没有其他/更好的选项来微调文本的位置吗?之内边缘还是边距?我试过了,\setuptext[edge][after={\blank[2cm]}]但没有成功。

最重要的是,我怎样才能让标题在边缘/边距中垂直,而不必定义标题旋转了吗? 即,我如何定义旋转里面 \setuptext从而避免了丑陋的双重旋转(这会产生不必要的效果,在使用\section编号版本时我没有尝试解决\subject- 章节编号旋转偏离 90°;将图像设置为标题页的背景时也会产生副作用)?

期望输出

标题有自己的一页(像普通文本一样水平打印)。在其他页面上,它应该垂直写在侧面(像页眉一样)。例如,对于左页:

页面示例
(来源:toile-libre.org

在右页上,标题应朝向相反的方向(标题的顶部始终朝向最近的页面边框)。

备查

值得一提的是\setuptexttexts\setuptext是一系列命令的一部分:

  • \setuptoptexts\setuptop ;
  • \setupheadertexts\setupheader;
  • \setuptexttexts\setuptext;
  • \setupfootertexts\setupheader;
  • \setupbottomtexts\setupbottom

请参阅ConTeXt 参考手册(svnversion 329,2013 年 9 月 27 日)以供进一步阅读。

更新

我以为我找到了解决方案,\setuphead进行了textcommand争论。但是以下内容似乎没有任何效果:

\def\RotateTitle#1{\rotate[rotation=90]{#1}}
\setuptext[edge][style=\rmd\sc,color=white,textcommand={\RotateTitle}]

(既不做command也不deeptextcommand争论)。

答案1

要获得边距标记,您需要:

\setuptexttexts[margin][...][...][...][...]

例如,下面显示左页左边距和右页右边距上的章节标题。

\setuppagenumbering[alternative=doublesided]
\setuptexttexts[margin][section][][][section]
\showlayout

\setuphead[subject][alternative=inmargin]

\showframe

\starttext
\section{Tufte}
\input tufte
\page
\section{Tufte}
\input tufte
\stoptext

现在,剩下的就是找出正确的旋转。我使用它\framed是因为控制框的宽度更容易,但您\rotate也可以使用并手动设置框的宽度:

\setuppagenumbering[alternative=doublesided]
\setuptexttexts[margin][\setups{left}][][][\setups{right}]

\startsetups left
  \framed[strut=no,align=high,height=\rightmarginwidth, orientation=90]{\getmarking[section]}
\stopsetups

\startsetups right
  \framed[strut=no,align=high,height=\rightmarginwidth, orientation=-90]{\getmarking[section]}
\stopsetups

\setuplayout
  [
    backspace=1in,
    cutspace=1in,
    width=middle,
    leftmargin=0.75in,
    rightmargin=0.75in,
  ]

\setuphead[subject][alternative=inmargin]

\showframe

\starttext

\section{Tufte}
\input tufte
\page
\section{Tufte}
\input tufte
\section{Tufte}
\input tufte

\stoptext

这使

在此处输入图片描述

如果您想对位置有更多的控制权,另一个选择是使用\setlayer

相关内容