将源文件中的变量包含到模板中

将源文件中的变量包含到模板中

我需要使用模板以编程方式自动生成报告。模板包含标准文本和结构。生成报告时,文档中需要包含一些值。这些值的位置由模板给出。我想用两个文件来管理它:一个模板文件和一个值文件,它们应该合并在一起。我试过这样:

在值文件中:

\newcommand{\ArticleNo}{123456}

在模板文件中:

\begin{document}
This is the article \ArticleNo
\end{document}

我如何导入这些变量,以便它们可以在模板中使用?大约有 20 个变量需要写入。我使用 python 生成包含值的文件并以编程方式对其进行编译。

答案1

您可以用另一种方式来做,而不是将值文件导入模板。然后编译值文件。这样,一旦模板写好,您就不必再碰它了。您将获得以值文件命名的 PDF。您只需要\input{template}在报告文件末尾添加该行即可。

例子:

report_x.tex

\newcommand{\ArticleNo}{123456}
\input{template}

template.tex

\documentclass{article}
\begin{document}
This is the article \ArticleNo
\end{document}

然后编译report_x.tex将会给你report_x.pdf

答案2

我做了同样的事情来自动生成我写的书的封面..在文件 bookInfo.tex 中我使用如下命令定义书籍参数(例如)

\def\bookTitle {Quantum Mechanics}
\def\bookSubTitle {Principles and Applications}
\def\bookEdition {2n edition}

在 cover.tex 中我只需写入

\title{
\Huge
\textbf {\color{bookTitleColor}{\bookTitle}}\blackink\\
\LARGE \color{bookTitleColor}{\bookSubTitle}\blackink\\
\LARGE \bookEdition}

其中 bookTitleColor 在 bookInit.tex 中定义,也使用命令

\colorlet{bookTitleColor}{violet}

这样,我只需更改这些值,编译后书的封面就会自动更新。我希望这是你想要做的。

相关内容