自定义切换背景图片的命令

自定义切换背景图片的命令

我使用壁纸包将 PDF 文档放在我的文档的背景中。

我希望用户能够在序言中选择应该使用哪个 PDF 作为背景图像,如下所示:

\output{print} or \output{screen}

我认为我可以像这样写命令:

\newcommand{\output}[1]{
  \ifstrequal{#1}{print}{
     \ULCornerWallPaper{1}{backgroundPrint.pdf}
   }{
      \ULCornerWallPaper{1}{background.pdf}
   }
}

但这不起作用。然而,我发现这是有效的:

\newcommand{\print}{
   \ULCornerWallPaper{1}{backgroundPrint.pdf}
}
\newcommand{\screen}{
    \ULCornerWallPaper{1}{background.pdf}
}

效果很好,但我真的想知道我最初的方法存在什么问题。

我也尝试过描述的方法这里但没有成功。

我不太熟悉 LaTeX 编程,因此非常感谢任何帮助。

答案1

\output已定义(它是 TeX 原语,→为什么我不能多次使用 \newfloat?) 正如日志中看到的那样:

! LaTeX Error: Command \output already defined.
               Or name \end... illegal, see p.192 of the manual.

您将需要使用不同的宏名称,例如\Output

代码

\documentclass{article}
\usepackage{wallpaper,graphicx,etoolbox}
\newcommand*{\Output}[1]{%
  \ifstrequal{#1}{print}{%
     \ULCornerWallPaper{1}{example-image-A.pdf}% example-image-? is from the mwe package
  }{%
     \ULCornerWallPaper{1}{example-image-B.pdf}%
  }%
}
\Output{print}
\begin{document}
Nothing to see here.
\end{document}

相关内容