这个例子中的 tikz 节点如果我\node[red]{x};
在数学模式(RTL 上下文)中使用,节点会显得很远,不像\node[color=red]{x};
,我以为这两个是等效的
在 pgfmanual (第 173 页) 中,我们可以发现
所发生的情况是,TikZ 不知道的每个选项(例如红色!20)都作为颜色名称获得了“第二次机会”。
\documentclass{article}
\usepackage{tikz}
\usepackage{bidi}
\begin{document}
\huge
\setRTL
Text start here
$$ A \tikz\node[red]{X}; B$$
\bigskip
$$ A \tikz\node[color=red]{X}; B$$
\end{document}
\beginR
如果我们使用仅提供的方法来改变文本方向并在bidi
包中大量使用,则不会出现此问题
不含 bidi 的示例
\documentclass{article}
\usepackage{tikz}
\TeXXeTstate=1
\begin{document}
\huge
\everypar{\beginR}
Text start here
$$ A \tikz\node[red]{X}; B$$
\bigskip
$$ A \tikz\node[color=red]{X}; B$$
\end{document}
答案1
逐步细分:
red
不是预定义的 Ti钾Z 键。/tikz/.unknown/.code
被调用。(tikz.code.tex
第 1651 行)这是检查传递的键是否是(a)PGF 键、(b)颜色、(c)箭头或(d)形状的例程red
是一种颜色;\tikz@addoption{\tikz@compat@color@set{red}}
被烧毁了。\tikz@compat@color@set
(tikz.code.tex
第 1687 行)调用\pgfutil@color
。\pgfutil@color
(pgfutil-latex.def
第 30 行)调用\color
。繁荣。