TikZ-Bild in der Tabelle

TikZ-Bild in der Tabelle

Kann mir jemand mit der Tabelle helfen? Ich möchte Abstand zwischen dem Umriss eines TikZ-Bildes und der Tabellenlinie haben. Außerdem sind die Nicht-TikZ-Bilder nicht zentriert.

Hier ist mein LaTeX-Code:

\documentclass[a4paper,10pt]{article}
\usepackage{tikz,amsmath, amssymb,bm,color}
\usetikzlibrary{circuits.logic.US,circuits.logic.IEC}
\begin{document}

\begin{table}
\caption{Test}
\label{de:Wahrheitstabelle_Bsp01}
\setlength{\tabcolsep}{5mm} % separator between columns
\def\arraystretch{1.25} % vertical stretch factor
\centering

  \begin{tabular}{|c|c|c|}
      \hline

      Gatter    &   Funktion    &   CNF-Formel        \\ \hline

    \begin{tikzpicture}
      \draw (-1.5,-0.75) rectangle (1.5,0.75) ;
    \end{tikzpicture}   &    0   & 1    \\ \hline

    \begin{tikzpicture}[circuit logic US,  logic gate input sep=4mm]
      \node [or gate, inputs =nn] (a1) {};
      \draw (a1.input 1) -- ++(left:5mm) node[left] {$x_{1}$};
      \draw (a1.input 2) -- ++(left:5mm) node[left] {$x_{2}$};
      \draw (a1.output)--++(right:5mm) node[right] {$x_{3}$};

    \end{tikzpicture}   &    0   & 1        \\ \hline

    \begin{tikzpicture}[circuit logic US]
      \node (a1) [not gate, inputs =n] at (0,0)  {};
      \draw (a1.input) -- ++(left:5mm) node[left] {$x_{1}$};
      \draw (a1.output)--++(right:5mm) node[right] {$x_{2}$};

    \end{tikzpicture}   & $x_{2} \equiv \neg x_{1}$  & $(x_{2} \vee x_{1}) \wedge (\neg x_{2} \vee \neg x_{1})$    \\ \hline
  \end{tabular}
\end{table}

\end{document}

Hier ist meine Tabelle:

Bildbeschreibung hier eingeben

Antwort1

Um den vertikalen Rand um ein Tikzbild zu fixieren, können Sie die fitBibliothek und den speziellen Knoten verwenden current boundind box. Im folgenden Beispiel \addvmarginverwendet das Makro diese Methode.

Um die vertikale Ausrichtung eines Tikzbilds festzulegen, können Sie die baselineOption verwenden. Hier wähle ich 0als Basislinie für das erste Tikzbild, aber Sie können jede beliebige vertikale Koordinate wählen. In den beiden letzten Tikzbildern wähle ich einen beliebigen Knoten als Referenz.

Bildbeschreibung hier eingeben

\documentclass[a4paper,10pt]{article}
\usepackage{tikz,amsmath, amssymb,bm,color}
\usetikzlibrary{circuits.logic.US,circuits.logic.IEC,fit}
\newcommand\addvmargin[1]{
  \node[fit=(current bounding box),inner ysep=#1,inner xsep=0]{};
}
\begin{document}
\begin{table}
\caption{Test}
\label{de:Wahrheitstabelle_Bsp01}
\setlength{\tabcolsep}{5mm} % separator between columns
\def\arraystretch{1.25} % vertical stretch factor
\centering
\begin{tabular}{|c|c|c|}
  \hline
  Gatter    &   Funktion    &   CNF-Formel
  \\ \hline
  \begin{tikzpicture}[baseline=0]
    \draw (-1.5,-0.75) rectangle (1.5,0.75) ;
    \addvmargin{1mm}
  \end{tikzpicture}   &    0   & 1
  \\ \hline
  \begin{tikzpicture}[baseline={(x3.base)},circuit logic US,logic gate input sep=4mm]
    \node [or gate, inputs =nn] (a1) {};
    \draw (a1.input 1) -- ++(left:5mm) node[left] {$x_{1}$};
    \draw (a1.input 2) -- ++(left:5mm) node[left] {$x_{2}$};
    \draw (a1.output)--++(right:5mm) node[right] (x3) {$x_{3}$};
    \addvmargin{1mm}
  \end{tikzpicture}   &    0   & 1
  \\ \hline
  \begin{tikzpicture}[baseline={(x1.base)},circuit logic US]
    \node (a1) [not gate, inputs =n] at (0,0)  {};
    \draw (a1.input) -- ++(left:5mm) node[left] (x1) {$x_{1}$};
    \draw (a1.output)--++(right:5mm) node[right] {$x_{2}$};
    \addvmargin{1mm}
  \end{tikzpicture}   & $x_{2} \equiv \neg x_{1}$  & $(x_{2} \vee x_{1}) \wedge (\neg x_{2} \vee \neg x_{1})$
  \\ \hline
  \end{tabular}
\end{table}
\end{document}

verwandte Informationen