使用 LaTeX 制作多个略有不同的 PDF 版本

使用 LaTeX 制作多个略有不同的 PDF 版本

我需要创建大量(比如说 20 个)略有不同的 PDF 文档版本,这些版本来自一个 LaTeX 文档。

我设想的是某种自定义标签,在将文档编译为 PDF 时对其进行解释。对于文档 #1,某个“custom1”标签内的文本将被隐藏(好像它只是代码注释),但其他所有内容都将显示。对于 PDF #2,“custom2”标签内的文本将被隐藏。依此类推,直到 #20。

我的问题与一,除非提问者只想创建两个 PDF 文档,而且我认为答复通常只适用于该二进制文件。

答案1

以下是一些选项创建具有条件内容的文档。不过,我认为你想要的是包multiaudience

  • 您可以在文档中设置受众并进行编译(创建 1 个 pdf)
  • 您可以为所有定义的受众运行批量编译(创建所有 pdf)
  • 它的手册了解详情

这是一个简单的例子:

\documentclass[10pt,a4paper]{article}
\usepackage{multiaudience}

% ~~~ define all audiences ~~~~~~~~~
\SetNewAudience{cust1}
\SetNewAudience{cust2}
\SetNewAudience{cust3}

% ~~~ select the current one for this compile ~~~
%     (or use the commandline option)
\DefCurrentAudience{cust1} % <<< cust1, cust2, cust3

\begin{document}

\begin{shownto}{cust1}
     (+) This is visible to cust1 only.
\end{shownto}

\begin{shownto}{cust2}
    (++)  This is visible to CUst2 only.
\end{shownto}

\begin{shownto}{cust3}
    (+++) This is visible to cuST3 only.
\end{shownto}
 
 
 This is visible to all audiences.
 
 \begin{shownto}{-,cust3}
     (**) This is visible to all, but not cuST3.
\end{shownto}
 
 
\end{document}

\DefCurrentAudience{cust1}编译结果如下:

客户1

\DefCurrentAudience{cust2}编译结果如下:

客户2

\DefCurrentAudience{cust3}编译结果如下:

客户3

请注意,我将客户受众和合法受众数量可视化( )

附言

您可能想要添加并尝试例如:

 \begin{shownto}{-,cust3,cust1}
     (*) This is visible to all, but not cuST3 and cust1.
\end{shownto}

相关内容