使用默认单位长度设置 tikz 节点的最小大小

使用默认单位长度设置 tikz 节点的最小大小

我有两种节点样式,最小尺寸设置为 7 毫米,它们看起来很完美:

\begin{tikzpicture}

    \tikzstyle{style1} = [circle,draw,fill=white,minimum size=7mm,font=\Large];
    \tikzstyle{style2} = [rectangle,draw,fill=white,minimum size=7mm,font=\Large];

    \node (node1) at (0,0)  [style1] {1};
    \node (node2) at (1,0)  [style2] {A};

\end{tikzpicture}

在此处输入图片描述

但我希望能够缩放整个图片并相应地缩放最小尺寸(无需手动设置每个节点样式的缩放参数)。由于默认单位长度为 1cm,我认为我可以更改为,minimum size=7mmminimum size= 0.7矩形会变得更小:

在此处输入图片描述

设置minimum size=20产生了所需的效果。看来这些单位并没有按照我预期的方式工作。这是怎么回事?

答案1

您可以通过键将转换应用于节点transform shape

\begin{tikzpicture}[
        style1/.style={circle,draw,fill=white,minimum size=7mm,font=\Large},
        style2/.style={rectangle,draw,fill=white,minimum size=7mm,font=\Large},
        transform shape
]

\foreach \x in {0.5,1,...,4}{
\begin{scope}[scale=\x,yshift=2cm]
    \node (node1) at (0,0)  [style1] {1};
    \node (node2) at (1,0)  [style2] {A};
\end{scope}
}
\end{tikzpicture}

在此处输入图片描述

别介意字体,它是因不同的答案而卡住的。

相关内容