与 tikz circuits 键关联的值或参数电路符号大小以无量纲形式描述符号的宽度和高度。参数格式的一个示例是width 10 height 3
。我想将变量分配给符号的宽度和高度。在尝试编译以下代码时,我发现像width \symbolwidtha height \symbolheighta
where这样的表达式
\def\symbolwidtha{13}
\def\symbolheighta{1.5}
返回错误。如何使用预定义变量来控制符号的大小?
\documentclass[tikz,convert=false]{standalone}
\usetikzlibrary{circuits,circuits.ee.IEC}
\begin{document}
\newlength{\circuitunit}
\setlength{\circuitunit}{0.32cm}
%\edef\symbolwidtha{13}
%\edef\symbolheighta{1.5}
%\def\symbolwidtha{13}
%\def\symbolheighta{1.5}
\begin{tikzpicture}[circuit ee IEC]
%\node[resistor,circuit symbol size=width \symbolwidtha height \symbolheighta] at (0,0) (theresistora) {};% does not compile
%\node[resistor,width=\symbolwidtha,height=\symbolheighta] at (0,0) (theresistora) {};% does not compile
\node[resistor,circuit symbol unit=\circuitunit] at (0,1) (theresistorb) {};
\node[resistor,circuit symbol size=width 12 height 2,circuit symbol unit=6pt] at (0,2) (theresistorc) {};
\end{tikzpicture}
\end{document}
答案1
在第一种情况下,之前的空间height
会丢失,你需要做以下操作之一
circuit symbol size=width {\symbolwidtha} height \symbolheighta
或者
circuit symbol size/.expanded=width \symbolwidtha\space height \symbolheighta
第一种方法是首选方法。