AddShipoutPictureBG 应用的背景未到达页面边缘

AddShipoutPictureBG 应用的背景未到达页面边缘

我想将背景图像应用到文档,但它似乎无法覆盖图片的底部和右侧。

我开始使用来自这里

简化我的文档我发现

\documentclass[a4paper,10pt]{article}

\usepackage{fullpage} 
\usepackage{eso-pic,graphicx}
\usepackage{hyperref}

\addtolength{\textwidth}{2cm}
\addtolength{\hoffset}{-1cm}
\addtolength{\textheight}{3cm}
\addtolength{\voffset}{-1.5cm}

\begin{document}

\AddToShipoutPictureBG*{
    \includegraphics[width=\paperwidth,height=\paperheight]{example-image-a}
};

\pagestyle{empty} % non-numbered pages

\end{document}

创建如下图像:

生成的 PDF 背景无法拉伸

白色区域是页面上未被图像覆盖的部分。如何确保背景图像覆盖整个页面?

奇怪的是,我发现我可以通过删除“\usepackage{hyperref}”来消除底部边距。这似乎与这个问题有关:为什么 hyperref 包会改变纸张尺寸?

然而,即使没有 hyperref 包,右边距仍然未被覆盖。

欢呼并感谢,查尔斯。

答案1

您要么需要纠正您的调整\hoffset——\voffset页面上显示白色区域的原因,要么您需要完全摆脱它们。

包含\hoffset\voffset调整:

\documentclass{article}

\usepackage{eso-pic,graphicx}

%\addtolength{\textwidth}{2cm}
\addtolength{\hoffset}{-1cm}
%\addtolength{\textheight}{3cm}
\addtolength{\voffset}{-1.5cm}

\begin{document}

\AddToShipoutPictureBG*{%
  \AtPageLowerLeft{%
    \hspace{1cm}% \hoffset adjustment
    \raisebox{-1.5cm}{% \voffset adjustment
      \includegraphics[width=\paperwidth,height=\paperheight]{example-image}% Background image
    }% \raisebox
  }% \AtPageLowerLeft
}% \AddToShipoutPictureBG*

\pagestyle{empty} % non-numbered pages

\mbox{}% Place something on the page in order for it to ship out

\end{document}

没有\hoffset\voffset调整:

\documentclass{article}

\usepackage{eso-pic,graphicx}

\begin{document}

\AddToShipoutPictureBG*{%
  \AtPageLowerLeft{%
    \includegraphics[width=\paperwidth,height=\paperheight]{example-image}% Background image
  }% \AtPageLowerLeft
}% \AddToShipoutPictureBG*

\pagestyle{empty} % non-numbered pages

\mbox{}% Place something on the page in order for it to ship out

\end{document}

背景图像的明确放置\AtPageLowerLeft不是必需的,但它有助于理解代码。

相关内容