使用 pgf 3.0.1 在 Tikz 中定位标签

使用 pgf 3.0.1 在 Tikz 中定位标签

我已经使用 Tikz 一段时间了,到目前为止,有些宏运行良好。但自从 pgf 更新到 3.0.1 后,它们似乎就坏了。

具体来说,我有一些宏可以将文本放在图形中的特定点,并将其定位在该图形中的特定位置。例如,以下宏用于将文本放在某个特定位置的右侧:

\newcommand{\tkzputrghtext}[2]{
  \node[label distance=-10pt,inner sep=0pt,outer sep=0pt,
    minimum height=0pt,minimum width=0pt,
    outer xsep=0pt,outer ysep=0pt,inner xsep=0pt,inner ysep=0pt,
    label=right:#2] at (#1){};}

现在,标签的“正确”参数不再被视为位置参数;它现在被视为标签的一部分(因此所有标签都采用“正确:...”的形式)。

我应该如何做才能比 pgf 版本更加强大?

答案1

尝试:

\newcommand{\tkzputrghtext}[2]{
  \node[inner sep=0pt,outer sep=0pt,
        minimum height=0pt,minimum width=0pt,
        label={[label distance=-10pt]right:#2}] at (#1) {};}

我认为,在节点的选项中,只有 标记属于 ,label distance其他选项属于节点。因为只需确定inner和分离一次就足够了……所以我省略了对和outer的声明。xsepysep

我不明白为什么使用空节点来放置标签。您可以通过节点本身来执行此操作。

相关内容