Apple Silicon Mac 中的 Tikz 定位错误

Apple Silicon Mac 中的 Tikz 定位错误

我的代码在 Apple Silicon Mac 中出错。同样的代码在 Intel Mac 中可以正常工作。这是我的 Beamer Slide 代码:

\documentclass{beamer}

\usepackage{tikz}
\usetikzlibrary{tikzmark,fit,shapes.geometric}
\usetikzlibrary{positioning}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{decorations.pathreplacing,calc}

\begin{document}

\begin{frame}{Frame title}
\begin{itemize}
\item One item
\end{itemize}
\begin{tikzpicture}
\node (keyname1) {before overlay};
\onslide<2->{
\node (keyname2) [overlay=of keyname1] {after overlay};
}
\end{tikzpicture}
\end{frame}

\end{document}

当我排版时,错误消息显示包 pgfkeys 错误:选择键“/tikz/overlay”中的“keyname1 的选择未知”。我将忽略这个键。

你能告诉我怎样修复它吗?

编辑:我编辑了示例代码,使其不需要图形文件。(感谢 Roland 的首次编辑)上述代码适用于装有 Mac OS Sierra 和 MacTex 2015 的旧 Macbook,但不适用于装有 Mac OS Big Sur 和 MacTex 2020 的 M1 Macbook。

答案1

正如我在 PGF/TikZ 错误跟踪器上已经告诉过您的,这与 Apple Silicon 无关。它之所以似乎在您的旧计算机上工作,是因为在旧版本的 PGF 中,该overlay选项定义为

\tikzoption{overlay}[]{\pgf@relevantforpicturesizefalse}

根据此定义,overlay选项忽略任何参数. 这意味着

\node (keyname2) [overlay=of keyname1] {after overlay};

完全等同于

\node (keyname2) [overlay] {after overlay};

你也可以使用它。

不信就试试

\node (keyname2) [overlay=random garbage] {after overlay};

在旧电脑上观察,没有任何变化。

相关内容