页眉与页脚

LiYanrui posted @ Oct 08, 2008 09:49:31 PM in Dream of TeX with tags ConTeXt 版式设计 , 7935 阅读

若采用 Van de Graaf 版式,那么页面的外部留白较宽,页眉和页脚如果还是像传统那般分别设置在版心的正上和正下方,版面会显得过于紧张。应当将页眉和页脚向外侧都延伸过去一些才好,就像下面的这种样式:

偶数页的左侧页眉显示当前的章标题,奇数页的右侧页眉显示当前的小节标题。为了与页眉呼应一下,我将页码置于页脚的外侧。

下面是 ConTeXt 实现:

\def\Offset{\hbox to -1.6cm{}}

\def\CurrentChapter{%
  \tinyframed{第 \headnumber[chapter] 章}%
  \hbox to 1em{}%
  \tightframed{\getmarking[chapter]}%
}

\def\CurrentSection{%
  \tinyframed{\headnumber[section]}%
  \hbox to 1em{}%
  \tightframed{\getmarking[section]}%
}

\setupheadertexts
  [text][]
  [{\CurrentSection\Offset}]
  [{\Offset\CurrentChapter}][]

\setupfootertexts
  [text][]
  [\pagenumber\Offset]
  [\Offset\pagenumber][]

\setupfooter[style=\tfx]
\setupheader[style=\tfx]

\Offset 的具体大小,这个要根据具体的情况来定。比如,如果在边注区域显示一些文字、图形,为了保持版面协调,可以将 \Offset 的值再取大一些。

一开始,我不知道盒子是可以负向伸缩的。因为想到 CSS 有这个功能,便顺手试验了一下,不想居然真的可以。

hash 说:
2008年10月09日 00:37

:) 推荐看一下Knuth的TexBook。长度为负值的glue超级有用啊,无数的功能都靠它来实现。

Avatar_small
Li Yanrui 说:
2008年10月09日 01:10

嗯。夏天的时候,想看 TeXBook,只看了一个开头,便被许多杂事扰了。后来参与 Wang Yue 组织的 Impatient 的翻译,迄今还没真正动手干。等忙过这一阵……

Yue Wang 说:
2008年10月09日 19:54

err... 赞。我当时定制的那个版式也是如此,不过是通过 edge 的位置确定的。


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter