tikzpicture による垂直配置

tikzpicture による垂直配置

tabular環境では垂直方向の位置合わせに問題がありますtikzpicture

これまでの私のコードは次のとおりです:

\documentclass[12pt,a4paper]{article}
\usepackage{tikz}
\begin{document}
\begin{tabular}{ccccc}
\begin{tikzpicture}
  \draw[step=0.2cm,gray,very thin] (0,0) grid (0.2,1.6);
\end{tikzpicture} 
& = & 
\begin{tikzpicture}
  \draw[step=0.2cm,gray,very thin] (0,0) grid (3,1.6);
\end{tikzpicture}
& * & 
\begin{tikzpicture}
  \draw[step=0.2cm,gray,very thin] (0,0) grid (0.2,3);
\end{tikzpicture}
\end{tabular}
\end{document}

結果は次のようになります: ここに画像の説明を入力してください

しかし、私が望んでいるのは次のようなものです: ここに画像の説明を入力してください

どうすればいいですか?

答え1

baselineオプションを に使用できますtikzpicture。($\ast$プレーン の代わりにを使用し*、ベースラインを調整します)

\documentclass{article}
\pagestyle{empty}% for cropping
\usepackage{tikz}
\begin{document}
\begin{tabular}{ccccc}
    \begin{tikzpicture}[baseline={(0,1.4-1.4/2)}]
        \draw[step=0.2cm,gray,very thin] (0,0) grid (0.2,1.6);
    \end{tikzpicture} 
    & = & 
    \begin{tikzpicture}[baseline={(0,1.4-1.4/2)}]
        \draw[step=0.2cm,gray,very thin] (0,0) grid (3,1.6);
    \end{tikzpicture}
    & $\ast$ & 
    \begin{tikzpicture}[baseline={(0,2.8-1.4/2)}]
        \draw[step=0.2cm,gray,very thin] (0,0) grid (0.2,3);
    \end{tikzpicture}
\end{tabular}
\end{document}

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

答え2

一つの方法はbaseline環境のキーを設定することです

\documentclass{standalone}
\usepackage{tikz}
\begin{document}

\begin{tabular}{ccccc}
\begin{tikzpicture}[baseline=(current bounding box.center)]
  \draw[step=0.2cm,gray,very thin] (0,0) grid (0.2,1.6);
\end{tikzpicture} 
& = & 
\begin{tikzpicture}[baseline=(current bounding box.center)]
  \draw[step=0.2cm,gray,very thin] (0,0) grid (3,1.6);
\end{tikzpicture}
& * & 
\begin{tikzpicture}[baseline={([yshift=0.7cm]current bounding box.center)}]% We know the step
  \draw[step=0.2cm,gray,very thin] (0,0) grid (0.2,3);
\end{tikzpicture}
\end{tabular}

\end{document}

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

もう1つはすべてTikZで描いたものです。

\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\begin{document}

\begin{tabular}{ccccc}
\begin{tikzpicture}[baseline=(current bounding box.center)]
  \draw[step=0.2cm,gray,very thin] (0,0) grid (0.2,1.6);
\begin{scope}[shift={(0.8,0)}]
  \draw[step=0.2cm,gray,very thin] (0,0) grid (3,1.6);  
\end{scope}
\begin{scope}[shift={(4.4,-1.4)}]
  \draw[step=0.2cm,gray,very thin] (0,0) grid (0.2,3);  
\end{scope}
\node at (0.5,0.8) {$=$};
\node at (4.1,0.8) {${\times}$};
\end{tikzpicture}
\end{tabular}

\end{document}

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

関連情報