我希望找到一个命令来etoolbox
帮助解决此类错误。有这样的命令吗?
编辑于 10/14。我正在寻找的是:当两个包定义相同的命令时,导致错误,能够防止错误。我正在考虑一个补丁,它可以包装命令,无论是在哪个包中,ifdef
并相应地更改实现。当然可以用 来完成etoolbox
。
\documentclass{report}
\usepackage{lastpage}
\usepackage{lipsum}
\usepackage{xwatermark}
\usepackage{hyperref}
\usepackage{titleps}%--------------------------------------------------
\newpagestyle{special}
{
\setfoot{}
{\thepage/\pageref{LastPage}}
{}
}
\pagestyle{special}
\begin{document}
\chapter{Intro}
\lipsum[1]
\end{document}
错误:LaTeX 错误:命令 \headrule 已定义。
--- TeX 说 --- 或者名称 \end... 非法,请参阅手册第 192 页。
请参阅 LaTeX 手册或 LaTeX Companion 了解解释。输入 H 可立即获得帮助。...
l.308 \newcommand\headrule{\setheadrule{.4\p@}}
--- 帮助 --- 没有可用的帮助
xwatermark.sty:
\ifpgn@showheadrule
\def\headrule{{%
\color{\pgn@headrulecolor}%
\hrule\@height\pgn@headruleheight\@depth\pgn@headruledepth
\@width\headwidth\vspace{\pgn@headrulesep}%
\hrule\@height\pgn@headruleheight\@depth\pgn@headruledepth
\@width\headwidth\vspace{-\pgn@headrulesep}%
}}%
\else
\let\headrule\relax
\fi
答案1
已定义的问题\headrule
来自titleps
包。事实上,您不必使用它来在最后一页上添加水印(如果我理解您的代码,这是您需要的一项功能)。
但是我还有另一个问题:我必须xcolor
先加载包,xwatermark
否则会出现编译错误。
这是完整的 MWE,其中包含一些用于\newwatermark
演示的命令选项:
\documentclass{report}
\usepackage{lipsum}
\usepackage{xcolor}
\usepackage[printwatermark=true]{xwatermark}
\usepackage{hyperref}
% Watermarks
\newwatermark[lastpage,color=gray!25,xpos=0,ypos=0,angle=45]{My Watermark}
\begin{document}
\chapter{Intro}
\lipsum[1-6]
\end{document}
答案2
我修改了代码,使得titleps
和xwatermark
能够有效地(而不仅仅是假设地)一起使用。
\documentclass{report}
\usepackage{lastpage}
\usepackage{lipsum}
\usepackage{xcolor}
\usepackage[printwatermark]{xwatermark}
\let\headrule=\undefined % solution<-----------
\let\footrule=\undefined % ------------------->
\usepackage{titleps}%--------------------------
\newpagestyle{special}
{
\setfoot{}
{\thepage/\pageref{LastPage}}
{}
}
\pagestyle{special}
% https://tex.stackexchange.com/questions/36880/insert-a-blank-page-after-current-page#36881
\def\blankpage{%
\clearpage%
\null%
\clearpage}
\newwatermark[
pages={2},
fontfamily=bch,
color=gray!25,
angle=45,
scale=3,
xpos=0,
ypos=15
]{WATERMARK}
\begin{document}
\chapter{Intro}
\lipsum[1]
\blankpage
\end{document}