使用 includepdf 时的背景包层

使用 includepdf 时的背景包层

对于我的目的来说,如果可能的话,我首先希望留在background包裹里。

当我只有文本时,它工作得很好。背景确实是背景(就层而言)。

在此处输入图片描述

但是当使用includepdf\fitallincludepdf(修改版本)来包含一些 pdf 文件时,背景会突出,这是我不喜欢的。

在此处输入图片描述

如果仔细观察,你test会发现它就像一个覆盖层一样位于 pdf 文件上方。

我怎样才能让它在下面?

以下用于制作exam-pic.pdf

\documentclass{article}
\usepackage{pdfpages}
\begin{document}
    \includepdf[fitpaper]{example-image-A}
    \includepdf[fitpaper]{example-image-10x16}
\end{document}

现在MWE

\documentclass[a4paper, 12pt, scheme=plain, twosides]{ctexart}
\usepackage{lipsum}

\usepackage{background}
\backgroundsetup{
    placement=center,
    scale=6,
    contents={test}
}%


\usepackage{pdfpages}
\makeatletter
\newcommand\fitallincludepdf[2][]{%
    \AM@findfile{#2}%
    \setkeys{pdfpages}{#1}%
    \expandafter\AM@readlist\expandafter{\AM@pagestemp}%
    \@for\xxx:=\AM@pagelist\do{%
    \edef\AM@tmp{[\unexpanded{#1},pages=\xxx]}%
    \expandafter\includepdf\AM@tmp{#2}%
}}%
\makeatother

\begin{document}


\lipsum[1-10]
\cleardoublepage
\includepdf[pages=-]{exam-pic}
\fitallincludepdf[fitpaper,pages=-]{exam-pic}

\end{document}

答案1

背景包使用everypage并放置它的钩子,以便它位于 \includepdf 之上。另一种方法是使用 eso-pic 命令而不是背景。

\documentclass[a4paper,12pt]{article}

\usepackage{pdfpages,tikzducks}

\AddToShipoutPictureBG{\AtPageCenter{\hspace{-5cm}\tikz[scale=8]\duck;}}

\begin{document}
\includepdf[pages=-]{example-image}
\end{document}

在此处输入图片描述

另一个选择是将 \includepdf 移到前台,但这也会影响使用页面命令插入的文本,该文本现在位于图片后面:

\documentclass[a4paper,12pt]{article}

\usepackage{pdfpages,lipsum}

\usepackage{background}
\backgroundsetup{
    placement=center,
    scale=25,
    contents={\bfseries Text}
}%

\begin{document}
\includepdf[pages=-,pagecommand={\lipsum[1-4]}]{example-image}


\makeatletter
\def\AM@AddToShipoutPicture{\AddToShipoutPictureFG*}
\makeatother

\includepdf[pages=-,pagecommand={\lipsum[1-4]}]{example-image}
\end{document}

在此处输入图片描述

相关内容