将框架文本置于页面顶部

将框架文本置于页面顶部

我有章节(使用标准“报告”类),我想在章节第一页的顶部放置一个文本框架 - 它提供章节的简洁元细节。

到目前为止我成功做到的是:

在此处输入图片描述

我的问题是,我设法做事的唯一方法是使用 TikZ 绝对定位(我了解各种包,例如 textpos,但我无法让它们令人满意地工作)。

解决方案的不足之处在于,我无法精确控制框架的位置 - 或者更确切地说,我必须指定精确地显示它应该在的位置(使用绝对坐标),而我只是希望它确切地与文本主体垂直对齐,并且只需给出距顶部的绝对距离。

例如:

\myboxedtext{1cm}{Text}

在距离顶部 1 厘米处放置一个与文本正文宽度相同的带框架的文本框,并与文本正文对齐。

我该怎么做?我尝试过将 raisebox 与 pagetotal 结合使用,但无济于事……

编辑:并且我想避免使用 TikZ(或任何需要多次编译的不稳定解决方案)。

答案1

tikz您可以通过在当前页面北放置一个节点anchor=north并通过参数指定来轻松实现您想要的效果yshift,控制页面上边框和节点上边框之间的垂直分离:

\documentclass[openany]{report}
\usepackage{tikz}
\usepackage{lipsum}

\newcommand\ChapterPrecis[2]{%
\begin{tikzpicture}[remember picture,overlay]
\node[anchor=north,draw,yshift=-#1] at (current page.north) {\parbox[t][3cm][c]{\linewidth}{#2}};
\end{tikzpicture}%
}

\begin{document}

\chapter{Test Chapter One}
\ChapterPrecis{1cm}{\lipsum[2]}
\lipsum[1-3]
\chapter{Test Chapter Two}
\ChapterPrecis{2cm}{\lipsum[2]}
\lipsum[1-3]

\end{document}

在此处输入图片描述

相关内容