Circuitikz でトランスフォーマーの高さを修正するにはどうすればよいですか?

Circuitikz でトランスフォーマーの高さを修正するにはどうすればよいですか?
\documentclass[border=10pt]{standalone}
\usepackage[american]{circuitikz}

\begin{document}

\begin{circuitikz}
\draw (0,0)
node[transformer] (T) {};
\draw (T.B1)
to [D] (3,0)
to [R] (3,-2.1)
to [short] (T.B2);
\draw (3,0)
to [vR] (6,0)
to [R] (6,-2.1)
to [short] (3,-2.1);
\end{circuitikz}

\end{document}

ここに画像の説明を入力してください

\documentclass[border=10pt]{standalone}
\usepackage[american]{circuitikz}

\begin{document}

\begin{circuitikz}
\draw (0,0)
node[transformer] (T) {};
\draw (T.B1)
to [D] (3,0)
to [R] (3,-2)
to [short] (T.B2);
\draw (3,0)
to [vR] (6,0)
to [R] (6,-2)
to [short] (3,-2);
\end{circuitikz}

\end{document}

ここに画像の説明を入力してください

ご覧のとおり、2 番目のコードを使用して生成された回路は見栄えがよくありませんが、最初のコードでは乱雑な座標 (2.1 など) を使用する必要があります。この動作を修正して、アンカーが適切な整数座標になるようにする方法はありますか?

答え1

としてポール・ゲスラー言及されている彼のコメント何らかの係数を使用してトランスフォーマーをスケーリングできますが、私の意見では、より良い方法は、垂直座標系を使用することです。(<coordinatea>|-<coordinateb>)または、(<coordinateb>-|<coordinatea>)座標の垂直/水平位置を調整します。

\documentclass[border=10pt]{standalone}
\usepackage[american]{circuitikz}

\begin{document}

\begin{circuitikz}
\draw (0,0)
node[transformer] (T) {};
\draw (T.B1)
to [D] ++(2,0)
to [R] (3,-2|-T.B2)
to [short] (T.B2);
\draw (3,0)
to [vR] (6,0)
to [R] (6,-2|-T.B2)
to [short] (3,-2|-T.B2);
\end{circuitikz}

\end{document}

ここに画像の説明を入力してください

関連情報