\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{quotes}
\begin{document}
\tikzset{
thing/.pic={
\node {\tikzpictext};
\node at (0,1) {\tikzpictextoptions};
}
}
\begin{tikzpicture}
\pic["foo"'bar] {thing};
\end{tikzpicture}
\end{document}
这将按预期呈现“foo”,但节点(0,1)
显示:
every pic quotes/.try,’,bar
我期望的是“'bar”。
这是一个错误还是我遗漏了什么?
实际上,我正在尝试向 pic 样式传递 3 个参数,并且根据手册,引号功能应该适合 1 或 2(首先)。
答案1
是'
一个特殊字符,由库处理quotes
,因此语法如下
"Foo"' Bar
无需做
"Foo" {', Bar}
这使得swap
一个节点(/标签/引脚)具有一个密钥,而无需使用,
和{}
。'
总是会偷偷带入一个额外的,
。
作为every pic quotes
的一部分\pictextoptions
,我认为这是手册的疏忽('
示例中的 even 并没有真正转变)。此行为与所有其他quotes
情况一致
every pin quotes
,every label quotes
和every edge quotes
。
其中后者是唯一默认定义的auto
。除非您的图片节点也位于路径段上,否则这也将是唯一一个'
=swap
有意义的节点。
'
当然,您可以随时更改或swap
内部的定义,以便在与标签、图钉或图片文本一起使用时,every label/pin/pic quotes
速记具有更有用的含义。'