RTL 上下文中 \node[red]{X}; 有什么问题(xelatex)

RTL 上下文中 \node[red]{X}; 有什么问题(xelatex)

这个例子中的 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不是预定义的 TiZ 键。

  • /tikz/.unknown/.code被调用。(tikz.code.tex第 1651 行)这是检查传递的键是否是(a)PGF 键、(b)颜色、(c)箭头或(d)形状的例程

  • red是一种颜色; \tikz@addoption{\tikz@compat@color@set{red}}被烧毁了。

  • \tikz@compat@color@settikz.code.tex第 1687 行)调用\pgfutil@color

  • \pgfutil@colorpgfutil-latex.def第 30 行)调用\color

  • 繁荣。

相关内容