TikZ 的文档似乎表明它shape aspect
适用于所有节点形状。但是,该命令仅在shapes.geometric
加载时才可用,并且仅适用于某些形状(例如菱形)。我尝试将其应用于矩形,但没有成功:
\documentclass[tikz]{standalone}
\usetikzlibrary{shapes.geometric}
\begin{document}
\begin{tikzpicture}
\newcommand\ww{4cm}
\node[draw, minimum width=\ww,shape aspect=5] {};
% works
\node[draw, diamond, minimum width=\ww,shape aspect=5, yshift=-1cm] {};
\end{tikzpicture}
\end{document}
我是不是漏掉了什么?我该如何构造具有minimum width
和比例的矩形?我是否必须使用繁琐的\pgfmathresult
宏来手动计算(我不喜欢它们)。
答案1
没有办法,只能自己做饭。这是我花了两分钟做的模型,没有太多思考,因为我正在用另一只眼睛看别的东西
\documentclass[tikz]{standalone}
\tikzset{
adjust height/.style={minimum height=#1*\pgfkeysvalueof{/pgf/minimum width}},
adjust width/.style={minimum width=#1*\pgfkeysvalueof{/pgf/minimum height}}
}
\begin{document}
\begin{tikzpicture}
\node[fill=blue!40,minimum width=2cm,adjust height=3] (a) at (0,0) {Lawrence Tierney};
\node[fill=orange!50!black,minimum height=2cm,adjust width=3] (a) at (5,0) {Tim Roth};
\end{tikzpicture}
\end{document}