在预定页面之后的所有页面上添加水印

在预定页面之后的所有页面上添加水印

会议提交通常将文档限制为一定页数,当我编辑时,我希望能够添加水印来标记超出限制的页面。例如,如果我有 11 页的文档,而会议提交限制为 9 页,我希望水印自动添加到第 10 页和第 11 页。

我查看了该xwatermark包,但它只允许在预先指定的页面之间添加水印,并且不允许任何端点未指定。我尝试使用该lastpage包通过以下方式访问最后一页\pageref{LastPage}并执行类似操作

\newwatermark[pages=10-\pageref{LastPage},color=gray!25,scale=3,xpos=0,ypos=0]{DRAFT}

但这会引发错误。

答案1

xwatermark表示\lastdocpage文档最后一页。因此,使用

\newwatermark[pages=10-\lastdocpage,color=gray!25,scale=3,xpos=0,ypos=0]{DRAFT}

来自xwaterwark文档(部分6.9 文件最后一页):

您可以使用标签 轻松获取文档的最后一页xwmlastpage,该标签由软件包自动提供:用户不必自己插入。通常,您可以使用命令\xwmgetpagenumber从 LaTeX 标签中提取页码(即使在扩展上下文中)。从此命令中提取页码可能需要多次运行。以下示例将水印从倒数第二页插入到倒数最后一页。请注意,在此示例中,起始页必须括在花括号中,以区分用于不同用途的两个连字符。

\newwatermark[pages={\lastdocpage-2}-\lastdocpage,angle=90,
  71 scale=1,xpos=0,ypos=-1]{This is page \thepage~of~\pageref*{xwmlastpage}}

该命令\lastdocpage相当于\xwmgetpagenumber{xwmlastpage}

答案2

举个例子background包;\BGfrom{<number>}仅使用从开始的页面<number>将具有所需的背景材料:

\documentclass{article}
\usepackage[a6paper]{geometry}
\usepackage[contents={}]{background}
\usepackage{lipsum}

\newcommand\BGfrom[1]{%
\AddEverypageHook{%
  \ifnum\value{page}>\numexpr#1-1\relax
    \backgroundsetup{
      contents={Over the limit},
      color=orange,
      scale=3
    }%
  \fi
  \BgMaterial%
  }%
}
\BGfrom{7}

\begin{document}

\lipsum[1-13]

\end{document}

生成的文档:

在此处输入图片描述

在其现在的形式下,\BGfrom{<number>}还会将材料添加到页面中<number>;如果要排除此页面,代码更简单:

\newcommand\BGfrom[1]{%
\AddEverypageHook{%
  \ifnum\value{page}>#1\relax
    \backgroundsetup{
      contents={Over the limit},
      color=orange,
      scale=3
    }%
  \fi
  \BgMaterial%
  }%
}

相关内容