如何使用 pgf 计算长度并设置文本宽度

如何使用 pgf 计算长度并设置文本宽度

跟进如何创建用于评论图片区域的形状回答后 克劳迪奥·菲安德里诺

我稍微修改了代码并希望自动计算文本宽度。

\pgfkeys{/tikz/annotated figure/.cd,
    start border pos/.initial={(0,0)},
    start border pos/.get=\bpos,
    start border pos/.store in=\bpos,
    end border pos/.initial={(0,0)},
    end border pos/.get=\epos,
    end border pos/.store in=\epos,
    border options/.code={
    \tikzset{border style/.style={
      #1
     }
    }
    },
   text options/.code={
   \tikzset{text style/.style={
     #1
     }
    }
   },
}

\NewDocumentCommand{\xannote}{r[] m}{
\pgfkeys{/tikz/annotated figure/.cd,#1}
\node[coordinate] (x) at \bpos {};
\node[coordinate] (y) at \epos {};
\draw[border style] (x) rectangle (y);
\node[text style] at ($(x) !.5! (y)$) {#2};
}

Pgf 对我来说仍然很模糊,我不知道该怎么做,我尝试使用

\pgfextractx{\mydim}{\pgfpointdiff{\epos}{\bpos}}

并以此设置文本宽度但没有成功。

答案1

克劳迪奥·菲安德里诺改进了他的代码,并给出了很好的答案如何创建用于评论图片区域的形状。 。

相关内容