Circuitikz - 调整单个块的长度

Circuitikz - 调整单个块的长度

考虑以下 MWE

\documentclass[border=0pt]{standalone}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}

\begin{circuitikz}
    \draw (0,0) node[twoportshape, t=$\frac{T_s \, (z+1)}{2 \, (z-1)}$] (int1) {};
\end{circuitikz}
\end{document}

在此处输入图片描述

我如何调整 twoportshape 的长度以使文本适合它没有改变其高度?

这看起来是一个非常基本的事情,但我无法在文档中找到解决方案。

文档建议使用

\ctikzset{bipoles/length=1.4cm}

但这确实增加了区块的长度和高度。此外,它适用于所有区块,而不仅仅是单个区块。

感谢您的帮助。

答案1

基本上twoport是拥有一组大小相同的块 --- 如果你只想在通用文本或公式周围绘制块,Zarko 给出的答案是正确的 --- 纯 TiZ 就足够了,而且更灵活。

无论如何,如果你的较大块是奇数块,你使用未记录的键更改其宽度bipoles/twoport/width(默认值为 0.7,相对于基长度)。请注意,如果您使用节点形式,则需要添加circuitikz前面的部​​分。

\documentclass[border=5pt]{standalone}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}

\begin{circuitikz}
    \draw (0,0) node[twoportshape, t=$\frac{T_s \, (z+1)}{2 \, (z-1)}$, circuitikz/bipoles/twoport/width=1.0] (int1) {};
\end{circuitikz}
\end{document}

在此处输入图片描述

当(更自然地)用作path元素时,例如:

\documentclass[border=5pt]{standalone}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}

\begin{circuitikz}
    \draw 
    (0,0) to[twoport, t=$\frac{T_s \, (z+1)}{2 \, (z-1)}$, bipoles/twoport/width=1.0, >]
    ++(3,0) to[amp, box, , >, -o] ++(2,0)
    ;
\end{circuitikz}
\end{document}

在此处输入图片描述

答案2

为什么你不把你的盒子画成普通的tikz盒子?

\documentclass[border=0pt]{standalone}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}

\begin{circuitikz}
    \draw (0,0) node[draw, thick, minimum size=9mm] (int1) {$\frac{T_s(z+1)}{2(z-1)}$};
\end{circuitikz}
\end{document}

在此处输入图片描述

相关内容