![如何在每一页上放置(或不放置)与页眉和页脚无关的内容?](https://linux22.com/image/423242/%E5%A6%82%E4%BD%95%E5%9C%A8%E6%AF%8F%E4%B8%80%E9%A1%B5%E4%B8%8A%E6%94%BE%E7%BD%AE%EF%BC%88%E6%88%96%E4%B8%8D%E6%94%BE%E7%BD%AE%EF%BC%89%E4%B8%8E%E9%A1%B5%E7%9C%89%E5%92%8C%E9%A1%B5%E8%84%9A%E6%97%A0%E5%85%B3%E7%9A%84%E5%86%85%E5%AE%B9%EF%BC%9F.png)
我想在大多数页面上放置一些东西(通常是特殊位置的图形),但能够独立于页眉/页脚打开和关闭它。我觉得有一个基本的 LaTeX 宏或包可以让我做到这一点,但我怎么也想不起来。这是我正在尝试做的 MWE。
\documentclass{book}
\usepackage{lipsum}
\usepackage{onoffpages} %% how do I get/define this?
\begin{document}
% seems like picture can now cope with actual values
\oneverypage{ %% put this on every page from now on
\begin{picture}(0,0)
\put(0,-\textheight){0, -textheight}
\put(\textwidth,-\textheight){textwidth, -textheight}
\put(0,0){0, 0}
\put(\textwidth,0){textwidth, 0}
\end{picture}
}
\lipsum[1-10]
\stopeverypage %% don't put anything extra on pages from now on (kills \oneverypage)
\lipsum[1-10]
\end{document}
答案1
您可以使用 shipout 钩子。但您必须根据需要调整值 - 起点是左上角(所以我必须使用 -10pt 才能将文本显示在页面上)。
\documentclass{book}
\usepackage{lipsum}
\begin{document}
\AddToHook{shipout/background}[mypic]
{
\put(0,-\textheight){0, -textheight}
\put(\textwidth,-\textheight){textwidth, -textheight}
\put(0,-10pt){0, 0}
\put(\textwidth,-10pt){textwidth, 0}
}
\lipsum[1-10]
\RemoveFromHook{shipout/background}[mypic]
\lipsum[1-10]
\end{document}