请告诉我如何设计一个页面(使用 \pagestyle 设计代码进行编码),其中只有“文本区域”被框起来。边距、页眉和页脚必须超出此框。另外,我想控制框的粗细和颜色。
谢谢,Satyendra
答案1
下面借用了showframe
包中的放置框架的机制。该\pagestyle
机制实际上并不是必需的,但只是因为您要求,我才将其添加到此处。样式framedpage
不会改变当前页面样式的任何内容(但您可以添加代码来改变),而只是设置\myframetrue
以显示框架。您可以通过重新定义\myframecolor
和来控制颜色和厚度\myframethickness
。
\documentclass[]{memoir}
\usepackage{xcolor}
\usepackage{eso-pic}
\usepackage{etoolbox}
\makeatletter
\newcommand*\myframecolor{\color{purple}}
\newcommand*\myframethickness{.4pt}
\newif\ifmyframe
\pretocmd\pagestyle{\myframefalse}{}{\GenericError{}{Patching failed}{}{}}
\newcommand*\mypageframe
{%
\begingroup
\myframecolor
\linethickness{\myframethickness}%
\AtTextLowerLeft
{\framebox(\LenToUnit{\textwidth},\LenToUnit{\textheight}){}}%
\endgroup
}
\newcommand*\ps@framedpage{\myframetrue}
\AddToShipoutPictureFG{\ifmyframe\mypageframe\fi}
\makeatother
\usepackage{duckuments} % only for dummy text
\begin{document}
\duckument
\cleardoublepage
\pagestyle{framedpage}
\duckument
\cleardoublepage
\pagestyle{plain}
\duckument
\end{document}