2

を使用して論理ゲートの入力間の間隔を広げるにはどうすればよいですかtikz。複数の入力が利用可能な場合は、複数の入力を使用してこの問題を解決できます。ただし、入力が 2 つしかない場合、この方法は使用できません。これにより、ラベルが重複する問題が発生します。

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{circuits.logic.US}
\tikzstyle{branch}=[fill,shape=circle,minimum size=3pt,inner sep=0pt]

\begin{document}

\begin{tikzpicture}[circuit logic US]
  \node[xnor gate] at (0,0) (xnor) {};
  \node[label={left:$A$}] at ([xshift=-1cm]xnor.input 1) (A) {};
  \node[label={left:$B$}] at ([xshift=-1cm]xnor.input 2) (B) {};
  \draw (A) -- (xnor.input 1);
  \draw (B) -- (xnor.input 2);
  \node[label={right:$Y$}] at ([xshift=1cm]xnor.output) (Y) {};
  \draw (xnor.output) -- (Y);
\end{tikzpicture}
\end{document}

circuitikz諸事情によりパッケージをご利用いただけません。次の図では、A と B が重ならないようにしています。レベルを上下にシフトできることは理解していますが、それらは互いに重なりません。

4

1 に答える 1

1

PGF マニュアルの 240 ページと 586 ページを読むのを手伝ったので、試してみることをお勧めします。

\node[label={[above] left:$A$}] at ([xshift=-1cm]xnor.input 1) (A) {};
\node[label={[below] left:$B$}] at ([xshift=-1cm]xnor.input 2) (B) {};

また

\node[label={[above left] $A$}] at ([xshift=-1cm]xnor.input 1) (A) {};
\node[label={[below left] $B$}] at ([xshift=-1cm]xnor.input 2) (B) {};

別のバリエーション:

\node[label={[yshift=1mm] left:$A$}] at ([xshift=-1cm]xnor.input 1) (A) {};
\node[label={[yshift=-1mm] left:$B$}] at ([xshift=-1cm]xnor.input 2) (B) {};

これにより、次の出力が生成されます (前の 2 つと同様)。

出力pdfのスクリーンショット

于 2015-10-14T17:21:05.460 に答える