以下產生輸出非常接近我想要的:
\begin{circuitikz}
\draw
(0,0) to[short,l=2.95 GHz] (0,0)
to[bandpass,>,l=BPF,a=2.95 GHz] ++(3.5,0)
node[inputarrow]{}
node[mixer,anchor=west] (mix) {};
\draw
(mix.east) to[lowpass,>,l=LPF,a=100 MHz] ++(3.5,0)
node[inputarrow]{ADC};
\draw (mix.south) node[inputarrow,rotate=90] (loarrow) {} -- ++(0,-1.5)
to[short,l=3 GHz] ++(0,0);
\end{circuitikz}
問題在於文字「ADC」偏移得有點高,並且與輸入處的「2.95 GHz」文字不對稱。
類似地,「3 GHz」文字向左偏移,而不是相對於其相關箭頭居中。
如何更好地對齊這些標籤?
答案1
大多數 Circuitikz 節點並非設計用於處理文字。
請注意,所有標籤實際上都是單獨的節點。
\documentclass{standalone}
\usepackage{circuitikz}
\begin{document}
\begin{circuitikz}
\draw
(0,0) to[short,l=2.95 GHz] (0,0)
to[bandpass,>,l=BPF,a=2.95 GHz] ++(3.5,0)
node[inputarrow]{}
node[mixer,anchor=west] (mix) {};
\draw
(mix.east) to[lowpass,>,l=LPF,a=100 MHz] ++(3.5,0)
node[inputarrow]{} node[right]{ADC};
\draw (mix.south) node[inputarrow,rotate=90] (loarrow) {} -- ++(0,-1.5)
node[below]{3 GHz};
\end{circuitikz}
\end{document}