使用 %& -job-name 在文档文件中定义 pdf 输出文件

使用 %& -job-name 在文档文件中定义 pdf 输出文件

我的理解是,如果我创建一个名为 noName.tex 的文件,其第一行

%& -jobname=myName

然后当我在该文件上运行 pdflatex 时,输出文件将被命名为 myName.pdf 而不是 noName.pdf,就像我输入的一样

pdflatex -jobname=myName noName.tex

但在下面的例子中,第一行被pdflatex忽略,输出名为noName.pdf。

这是 noName.tex:

%& -job-name=myName
\documentclass{minimal}
\begin{document}
Hello World
\end{document}

有人能建议一下正确的语法吗?非常感谢。

我使用的 pdflatex 版本是:

This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009/Debian) (format=pdflatex 2014.6.25)

答案1

魔法%&线多年来一直受到 TeX 实现的支持。然而,该功能在不同的 TeX 发行版中的实现方式不同。

请注意,据我所知,没有编辑器/前端可以解释这样的行:这是 TeX 引擎特有的。

在 TeX Live 中,该行只能包含要加载的格式和 TCX 文件的规范,请参阅 Web2c 文档中的第 3.5.2.2 节(texdoc web2c,TeX Live 2015 的第 11 页):

%&format -translate-file=tcxfile

任何部分都可以为空。请注意,在 TeX Live 中,Knuth TeX没有尊重这条神奇的线。

据我所知,其他命令行选项(例如)-jobname可以通过 MiKTeX 指定。它们肯定不能与 TeX Live 一起使用。

答案2

如果你使用 TeXstudio 和 TeX Live/MacTeX,你可以添加以下行

% !TeX TXS-program:compile = txs:///pdflatex/[-jobname=myName]

在文档的开头指定myName为输出文件的名称。

相关内容