我希望在 tikz 绘制命令的样式部分中使用一个命令,这样我就可以轻松地参数化我正在创建的绘图包中节点的相对定位。
在示例中:
\usepackage{tikz}
\begin{document}
\end{document}
\newcommand{\XX}{above left = of a}
\begin{tikzpicture}
\node [circle,draw] (a) {};
\node [circle, draw, {\XX}] () {};
\end{tikzpicture}
我收到错误:
软件包 pgfkeys 错误:我不知道键 '/tikz/above left = of a',我将忽略它。也许你拼错了。\node [circle, draw, {\XX}]
如何在 tikz 命令的样式部分中使用命令?
答案1
欢迎!您可以使用钥匙style/.expanded
来访问。
\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\newcommand{\XX}{above left = of a}
\begin{tikzpicture}
\node [circle,draw] (a) {a};
\node [circle, draw, style/.expanded=\XX] (b) {b};
\end{tikzpicture}
\end{document}
当然,钛钾实现此目的的最佳方式不是使用宏而是使用样式。
\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}[XX/.style={above left = of a}]
\node [circle,draw] (a) {a};
\node [circle, draw, XX] (b) {b};
\end{tikzpicture}
\end{document}