ConTeXt 中新页面上的图形/浮动框和章节标题?

ConTeXt 中新页面上的图形/浮动框和章节标题?

我仍在尝试在 ConTeXt 中实现复杂的书籍布局……并且我开始怀疑,为什么在很多情况下手册或网站上的描述似乎与实际实现不符。

简而言之,这就是我想要实现的目标:

  • 设置自定义章节标题总是开始于右页
  • 设置自定义浮点数(图)完全填满左页位于节标题旁边。

以下是我能实现的目标:

在此处输入图片描述

这是MWE:

\mainlanguage[de]
\language[de]
\definecolor[lightbrown] [r=0.83, g=0.76, b=0.71]

\setuppapersize[A4][A4]
\setuplayout
[
  backspace=11.67mm,        width=131.25mm,
  topspace=21.21mm,         height=254.57mm,
  headerdistance=13pt,      header=13pt,
  footerdistance=13pt,      footer=13pt,
  rightmargindistance=13pt, rightmargin=39.5mm,
]

\setuppagenumbering[alternative=doublesided, location=]

\definehead[PageSection][section]
\setuphead[PageSection][
  page=right,
  style=\ssb\bf,
]

\definefloat[pagefloat][pagefloats][figure]
\setupfloat[pagefloat][
  location=inner,
]

\starttext

\chapter{Testing Full Page Figures}

\input{knuth}

\input{knuth}

\input{knuth}

\placepagefloat[rightpage]{Test}{\framed[width=\paperwidth, height=\paperheight, background=color, backgroundcolor=lightbrown]{Here's a figure}}

\PageSection{Here's a Section on a New Page}

\input{knuth}

\input{knuth}

\input{knuth}

\stoptext

可以看出,应该填满页面的图形位置不正确。我无论如何也找不到办法来纠正它。这location=inner是我目前找到的最接近的。

另外,我想知道,为什么leftpagerightpage(在 中\placepagefloat)会产生完全相反的效果?(请注意,我以前rightpage让浮动出现在左侧页面上。)顺便说一句,opposite似乎根本不起作用;相反,浮动从文档中消失了。我错过了什么?

还请注意,我尝试使用page=right\definehead使我的自定义部分出现在正确的页面上,但该设置被完全忽略。只有当我用 替换\definehead[PageSection][section]时,它才有效\definehead[PageSection][subsection]

我很困惑。任何帮助我都会非常感激。

答案1

关于分页符的问题

这是一 ”旧功能“。

如果 head 参数continue设置为yes(默认值),则如果当前节头位于更高级别的节头之后,则不会出现分页符(即, 的值page被忽略)。要避免这种情况,请设置continue=no

\setuppagenumbering[alternative=doublesided, location=]

\definehead[PageSection][section]
\setuphead[PageSection]
  [
    page=right,
    continue=no,
    style=\ssb\bf,
  ]

\starttext

\chapter{Testing Full Page Figures}

\dorecurse{3}{\input{knuth}}

\PageSection{Here's a Section on a New Page}

\dorecurse{3}{\input{knuth}}

\stoptext

我不太明白为什么continue=yes存在。我的猜测是它允许您创建一个环境,用于书籍(其中章节是顶级标题)和报告(其中部分是顶级标题)。例如,如果我创建一个环境文件:

\startenvironment *

\setuphead[chapter][page=right]
\setuphead[section][page=yes,continue=yes]

\stopenvironment

并在两本书中使用相同的环境:

\environment env

\starttext
\chapter{Chap One}
\section{Sec One}
\input knuth
\chapter{Chap Two}
\section{Sec Two}
\input knuth
\stoptext

和一份报告

\environment env

\starttext
\section{Sec One}
\subsection{Subsec One}
\input knuth
\section{Sec Two}
\subsection{Subsec Two}
\input knuth
\stoptext

请注意,书中的章节前没有分页符,但报告中的章节前有分页符。

关于leftpage和rightpage的问题

使用context 2016.10.07,我使用键leftpage和获得了浮点的正确位置rightpage。您使用的是哪个版本的 ConTeXt(请参阅 的输出context --version)?

关于全页浮动的问题

一种可能性是使用该bleed机制(参见详细手册)。

\setuppagenumbering[alternative=doublesided, location=]
\useMPlibrary[dum]
\starttext
\placefigure[leftpage,none]{}
  {\bleed[width=\paperwidth,height=\paperheight,location=lt]
    {\externalfigure[dummy][bleed]}} 
\dorecurse{10}{\input{knuth}}
\stoptext

其结果如下:

在此处输入图片描述

相关内容