使用标记包生成文档的两个版本

使用标记包生成文档的两个版本

我希望一次运行获得两个 PDF,第一个具有此 MWE:

\documentclass{report}
\usepackage{tagging}

\begin{document}

\usetag{answer} 

\iftagged{answer}{Some text to be included in the first PDF}
\untagged{answer}{Some text to be included in the second PDF}

\end{document}

第二个有这个 MWE:

\documentclass{report}
\usepackage{tagging}

\begin{document}

\iftagged{answer}{Some text to be included in the first PDF}
\untagged{answer}{Some text to be included in the second PDF}

\end{document}

谢谢

答案1

受到我自己遇到的问题的启发:这里。我已经适应了你的目的。我不是 XeTeX 用户,但它适用于 latex 和 pdflatex。

目标是定义一个命令\myversion来响应编译时的反应,并检查文档中的版本以应用或不应用宏\usetag{}。使用这种方式,您可以通过在 texmaker、texstudio 或命令终端中定义编译命令来进行两次编译。

\documentclass{report}
\usepackage{tagging}

\newcommand*\checkversion
{%
    \begingroup
    \def\tempa{answer}%
    \expandafter
    \endgroup
    \ifx\tempa\myversion
        \usetag{answer}
    \else
    \fi
}
\checkversion
\begin{document}

\tagged{answer}{Some text to be included in the first PDF}
\untagged{answer}{Some text to be included in the second PDF}

\end{document}

之后,您可以使用命令行进行编译:

latex -jobname=%_answer "\def\myversion{answer}\input{MWE.tex}" | latex MWE.tex 第一个生成答案版本,第二个调用正常版本。

希望它能帮助你。

相关内容