我可以添加文件的下载日期作为水印吗?

我可以添加文件的下载日期作为水印吗?

我想看看是否可以添加一些内容,比如我在 LaTeX 中创建的文档的下载日期。如果可以,我该怎么做?

参见蓝色标记部分

答案1

以下过程依赖于 2 个包并使用 来\pdffilemoddate{<file.ext>}从 中提取文件修改日期<file.ext>。原始下载文件包含在使用pdfpages。并且,对于所包含的下载文件的每个页面,我们执行pagecommand插入包含文件修改日期(应与下载日期相对应)的水印。水印插入到每个页面的顶部,F使用Geso-pic\AddToShipoutPictureFG*

在此处输入图片描述

\documentclass{article}

\usepackage{eso-pic,pdfpages,lipsum}

% https://tex.stackexchange.com/a/12310/5764
\newcommand*{\filedate}[1]{%
  \expandafter\filedateX\pdffilemoddate{#1}\relax
}
\def\filedateX#1#2#3#4#5#6#7#8{%
  \filedateXX{#3#4#5#6}{#7#8}%
}
\def\filedateXX#1#2#3#4#5#6#7#8{%
  \filedateXXX{#1}{#2}{#3#4}{#5#6}{#7#8}%
}
\def\filedateXXX#1#2#3#4#5#6#7#8\relax{%
  \formatdate{#1}{#2}{#3}{#4}{#5}{#6#7}%
}

\newcommand*{\formatdate}[6]{%
   #1-#2-#3\ #4:#5:#6%
}

\begin{document}

\lipsum[1]% Text before the included/downloaded file (if it exists/is needed)

\includepdf[
  pages=1-2,
  pagecommand={
    \thispagestyle{empty}% Remove header/footer
    \AddToShipoutPictureFG*{%
      \AtPageLowerLeft{%
        \hspace{2em}% Move watermark into page
        \rotatebox{90}{%
          \makebox[\paperheight]{\Large Downloaded on \filedate{lipsum.pdf}}%
        }%
      }%
    }%
  }
]{lipsum}% Include downloaded file

\lipsum[2]% Text after the included/downloaded file (if it exists/is needed)

\end{document}

将输出转换\pdffilemoddate为更易读的内容得益于文件创建日期

相关内容