MacOS 终端显示我的模板使用 pdftex,但我使用 xetex 进行设置。我做错了什么?

MacOS 终端显示我的模板使用 pdftex,但我使用 xetex 进行设置。我做错了什么?
MacOS 12.2
TexShop v.4.68

在我的模板顶部:

% !TEX TS-program = XeTeX
% !TEX encoding = UTF-8 Unicode

在序言中,除其他内容外:

\documentclass{article}
\usepackage{fontspec}

TeXShop Typeset 控制台状态:

This is XeTeX, Version 3.141592653-2.6-0.999993 (TeX Live 2021)
 (preloaded format=xetex)

在 pandoc 中使用此模板,终端状态:

> Error producing PDF. ! Fatal Package fontspec Error:  The fontspec
> package requires either XeTeX or LuaTeX. You must change your
> typesetting engine to, e.g., "xelatex" or "lualatex" instead of
> "latex" or "pdflatex".
>l.45 \msg_fatal:nn {fontspec} {cannot-use-pdftex}

我的模板第 45 行:

\usebackgroundtemplate{%
  \includegraphics[width=\paperwidth]{$background-image$}%

选定的xelatex作为引擎,但 Typeset 控制台仍然显示它是 XeTeX。

提前感谢你的帮助。

答案1

“魔法线”的目的是声明用于处理文件的引擎和格式独立在下拉菜单中选择的引擎上进行排版,即相当于⌘-T。

所以你应该

% !TEX TS-program = XeLaTeX

您收到的错误信息pandoc似乎暗示了它所选择的引擎pdflatex,但是您没有提供有关如何运行的任何信息pandoc

答案2

请注意,% !TeX注释仅仅是注释,默认行为是忽略它。一些编辑器可能会读取它来选择要运行的程序,但这不是 tex 指定的,这是编辑器的一个功能。

https://pandoc.org/MANUAL.html#options

表示您可以用来pandoc -t xelatex 告诉 pandoc 使用 xelatex 而不是 pdflatex。

相关内容