如何从多个 pdf 中制作一个 pdf,其中它们的文件名也显示在一个 pdf 中?

如何从多个 pdf 中制作一个 pdf,其中它们的文件名也显示在一个 pdf 中?

我有一个名为的目录,Titlepage其中文件(至少 10 个 pdf)为titlepage_1.pdf, titlepage_2.pdf, titlepage_3.pdf... 。每份都是一页pdf。

该目录也托管在 Github 上,以便人们可以轻松下载标题页。 Github 目录也包含相应的 LaTeX 文件。

我想使用这些文件制作一个合并的 pdf 文件,其中每页包含 4 个 pdf 文件。而且每页扉页上也有它们原来的名字。这样任何人都可以通过比较一个 pdf 中的所有内容来选择 pdf,然后下载他需要的扉页。

[我想这可以使用pdfuite.如果不可能,pdfunite则只能与LaTeX] 结合使用

在此输入图像描述

或者

在此输入图像描述

编辑

在此输入图像描述

答案1

该顺序与您的顺序不符,但以下命令将指定的页面放入一个 pdf 中(使用 LaTeX):

\documentclass[twocolumn]{article}

\usepackage{graphicx}

\newcommand\putTitlepage[1]
  {%
    \bgroup
    \fboxsep=-\fboxrule
    \noindent
    \fbox{%
      \includegraphics[width=\columnwidth,height=.4\textheight,keepaspectratio]
        {#1}%
    }\\%
    \texttt{\detokenize{#1}}%
    \egroup
  }

\newcount\myTPcounter

\makeatletter
\newcommand\putTheTitlepages[1]
  {%
    \@for\cs:={#1}\do
      {%
        \expandafter\putTitlepage\expandafter{\cs}%
        \par
      }%
  }
\newcommand\putTitlepagesPattern[4]
  {%
    \myTPcounter=\numexpr#3-1\relax
    \loop\ifnum\myTPcounter<#4
      \advance\myTPcounter by 1
      \typeout{}%
      \typeout{Now processing file}%
      \typeout{\the\myTPcounter}%
      \typeout{}%
      \expandafter\putTitlepagesPattern@i\expandafter{\the\myTPcounter}{#1}{#2}%
      \par
    \repeat
  }
\newcommand\putTitlepagesPattern@i[3]
  {%
    \putTitlepage{#2#1#3}%
  }
\makeatother


\begin{document}
\centering
% if you need to specify their names because they don't match a pattern
\putTheTitlepages{titlepage-1.pdf,titlepage-2.pdf}

\putTitlepagesPattern{titlepage-}{.pdf}{3}{10}
\end{document}

在此输入图像描述

答案2

\documentclass{scrartcl}
\usepackage{expl3,graphicx,url}
\newcommand\addpage[1]{%
  \parbox{\dimexpr.5\linewidth}{%
      \centering%
      \fbox{\includegraphics[width=0.9\linewidth]{#1}}\\%
      \path{#1}%
  }%
  \penalty0\relax
}
\lineskip=0pt plus 1fil
\begin{document}
\noindent
\ExplSyntaxOn
\int_step_inline:nnnn{1}{1}{100}{
  \file_if_exist:nT{titlepage_#1.pdf}{
    \addpage{titlepage_#1.pdf}
  }
}
\ExplSyntaxOff
\end{document}

这完全符合我的要求。我在我的笔记本电脑上得到了这个代码。这实际上不是我自己的代码。这是我从网上找的一个人说的,但是我记不清了。谢谢这位匿名帮助者。

相关内容