我想在不干扰页面其余内容的情况下在页面上放置覆盖图片。但是,当我将覆盖图片的源代码放在节命令的上方或下方时,节标题或后续文本会向下移动。
可以规避这种情况吗?或者是否有其他完全不同的方法可以在常规页面内容上方/下方放置附加文本?
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[remember picture,overlay]
\draw [line width=1mm,opacity=.25] (current page.center) circle (3cm); \end{tikzpicture}
\section{Section}
\begin{tikzpicture}[remember picture,overlay]
\node [rotate=60,scale=10,text opacity=0.2]
at (current page.center) {Example};
\end{tikzpicture}
Both, the section header and this text, are shifted because of the overlay TikZ pictures.
\end{document}
答案1
即使tikzpicture
带有覆盖的 大小为零,就 TeX 而言,它仍然存在。因此,您在一行上有一个“某些内容”,然后是\section
,它开始一个新段落。在 之后,\section
您再次拥有某些内容,然后是段落分隔符,然后是文本。如果您将两个tikzpicture
s 放在 之后的文本之前\section
,没有任何空格或空行,您将获得想要的内容。或者同样,只使用一个tikzpicture
。
框架来自showframe
包装。
\documentclass{article}
\usepackage{tikz,showframe}
\begin{document}
\section{Section}
\begin{tikzpicture}[remember picture,overlay]
\draw [line width=1mm,opacity=.25] (current page.center) circle (3cm);
\node [rotate=60,scale=10,text opacity=0.2] at (current page.center) {Example};
\end{tikzpicture}% <- end of line comment to remove space from newline
No spaces or paragraph breaks around the tikpicture, so no apparently empty lines, and thus no shifting.
\end{document}
答案2
一个可行的解决方案是使用该background
包:
\documentclass{article}
\usepackage{tikz, showframe}
\usepackage[pages=some]{background}
\begin{document}
\backgroundsetup{opacity=1, scale=1, angle=0, contents={%
\begin{tikzpicture}[remember picture,overlay]
\draw [line width=1mm,opacity=.25] (current page.center) circle (3cm);
\node [rotate=60,scale=10,text opacity=0.2]
at (current page.center) {Example};
\end{tikzpicture}}}
\BgThispage
\section{Section}
Neither the section header nor this text are shifted because of the overlay TikZ pictures.
\clearpage
No background on this page.
\end{document}