在运行一些旧的 TikZ 代码(2019 年可以运行)时,我遇到了一个问题,显然字符串“bg”被传递给了 xcolor,而不是当前的背景颜色。示例:
\documentclass{article}
\usepackage{tikz}
\tikzset{gap/.style={circle,fill=bg,inner sep=1pt}}
\begin{document}
\[\begin{tikzpicture}
\node (00) at (0,0) {$A$};
\node (20) at (2,0) {$B$};
\draw (00) to node[gap]{g}(20);
\end{tikzpicture}
\]
\end{document}
将“bg”替换为“white”是可行的,但在 Beamer 中背景可能不是白色,因此结果看起来很丑陋。
LuaHBTeX 版本 1.13.2(TeX Live 2021)会出现这种情况。
答案1
您可以按如下方式修改代码,使其与背景颜色无关。不再有填充,线条无论如何都会在中间分开:
\documentclass{article}
\usepackage{tikz}
\tikzset{gap/.style={circle}}
\begin{document}
\[\begin{tikzpicture}
\node (00) at (0,0) {$A$};
\node (20) at (2,0) {$B$};
\path (00) to node [gap](g){g} (20);
\draw (00) -- (g) -- (20);
\end{tikzpicture}
\]
\end{document}