背景框位于纸张边缘

背景框位于纸张边缘

我正在尝试为最初在所见即所得发布程序中创建的文档格式制作 LaTeX 模板。

模板的一部分需要一些跨越整个纸张宽度的块色背景元素。

需要两种类型的全宽块色元素:

  1. 页眉和页脚中固定的一个
  2. 包含文本的动态/定位块。(用于摘要)

关键的要求是这些框必须填满纸张的两边以及页眉/页脚的顶部和底部边缘。

我尝试了使用 tcolorbox 和 eso-pic 包的各种方法后似乎无法在 LaTeX 中复制。

这可以在 LaTeX 中完成吗?

我已经阐明了我的意思这个图片

此致,

阿拉斯泰尔

答案1

我介绍了\aty{y-location}{Text}页眉和页脚,它们将在每一页上重复出现。然后,我介绍了\movingbox}{left text}{right text}可以放置在您想要的位置的框。 \inset是定义彩色框的左/右缩进的长度。显然,您可以更改颜色。您指定的框y的位置\aty将取决于您在框中放置的内容的高度。

您必须小心,不要让页眉/页脚与文本主体重叠。

\documentclass{article}
\usepackage{everypage}
\usepackage{xcolor}
\usepackage{lipsum}
\newlength\inset
\inset=1in\relax
% THESE ARE LaTeX DEFAULTS; CAN CHANGE IF NEEDED.
\def\PageTopMargin{1in}
\def\PageLeftMargin{1in}
\newcommand\movingbox[2]{{\centering\makebox[0pt]{%
  \colorbox{green!30!blue!40}{\parbox{\paperwidth}%
  {\leftskip=\inset\rightskip=\inset%
  \begin{minipage}[t]{\dimexpr.45\paperwidth-\inset}\strut#1\end{minipage}%
  \hspace{.1\paperwidth}%
  \begin{minipage}[t]{\dimexpr.45\paperwidth-\inset}\strut#2\end{minipage}%
  }}}\par}}
\newcommand\aty[2]{%
 \AddEverypageHook{\smash{\hspace*{\dimexpr-\PageLeftMargin-\hoffset\relax}%
  \raisebox{\dimexpr\PageTopMargin+\voffset-#1\relax}{\colorbox{blue!20}{%
  \parbox{\paperwidth}{\leftskip=\inset\rightskip=\inset\strut#2}}}}}}
% VERIFIED THAT SETTING \hoffset AND \voffset DO NOT BREAK SOLUTION.
%\hoffset=0.4in
%\voffset=0.2in
\aty{.65in}{HEADER \lipsum[3]}
\aty{10.6in}{FOOTER \lipsum[4]}
\begin{document}
I will put the moving box below here

\movingbox{MOVING BOX \lipsum[5]}{RIGHT COLUMN STUFF \lipsum[6]}

\lipsum[1]
\end{document}

在此处输入图片描述

相关内容