
有人可以幫我整理一下桌子嗎?我想要 TikZ 圖片的輪廓和表格線之間有距離。此外,非 TikZ 圖片不居中。
這是我的 LaTeX 程式碼:
\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}
這是我的桌子:
答案1
要修復 tikzpicture 周圍的垂直邊距,您可以使用fit
庫和特殊節點current boundind box
。在以下範例中,\addvmargin
巨集使用此方法。
要修復 tikzpicture 的垂直對齊方式,您可以使用該baseline
選項。在這裡,我選擇0
作為第一個 tikzpicture 的基線,但您可以選擇任何垂直座標。在最後兩張 tikzpictures 中,我選擇任意節點作為參考。
\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}