使用 TeX 获取“盒装”页面

使用 TeX 获取“盒装”页面

我想避免使用 TikZ 或其他软件包。我希望框架用规则围绕页面四周,并且我希望在中间的框架下方显示页码。我很难理解如何使用\outputshipout

答案1

普通 TeX 解决方案:

\def\frameit#1#2{%
 \vbox{\hrule
  \hbox{%
    \vrule \kern#2pt
      \vbox{\kern#2pt #1
         \kern#2pt}%
      \kern#2pt\vrule}
\hrule}}

\output={%
   \shipout\vbox{%
    \frameit{\box255}9
      \medskip
      \centerline{Test Framed Page}}
  \advancepageno}

\frameit{1}{1}
\bye

要想理解输出例程,可以从纯 TeX 和 TeXBook 开始。另请参阅邮政,我在这里发布了一些有关 OTR 的 TUGBoat 文章的链接。

答案2

您可以在页眉和页脚中自行绘制规则。例如,请参阅layout包以了解您必须使用的确切偏移量。

这是我的尝试,非常准确:

\documentclass{article}

\usepackage{lipsum}
\usepackage{fancyhdr}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}

\pagestyle{fancy}

\lhead{%
    \raisebox{\dimexpr-\headsep-\dp\strutbox\relax}[0pt][0pt]{\rlap{\hbox to \textwidth{\hrulefill}}}%
    \raisebox{\dimexpr-\headsep-\textheight-\dp\strutbox\relax}[0pt][0pt]{\vrule height \textheight}%
}
\rhead{%
    \raisebox{\dimexpr-\headsep-\textheight-\dp\strutbox\relax}[0pt][0pt]{\vrule height \textheight}%
}
\lfoot{%
    \raisebox{\footskip}[0pt][0pt]{\rlap{\hbox to \textwidth{\hrulefill}}}%
}

\begin{document}
\lipsum[1-40]
\end{document}

结果:

结果

相关内容