我想让 tikzpictures 彼此相邻(水平),并在它们之间有一个等号。我使用的是数组环境。这是一个最小的工作示例:
\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath}
\usepackage[math]{cellspace}
\begin{document}
\[
\begin{array}{ccc}
\begin{tikzpicture}
\draw[gray, thick] (-1,2) -- (2,-4);
\end{tikzpicture}
& \text{some text} &
\begin{tikzpicture}
\draw[gray, thick] (-1,2) -- (2,-4);
\end{tikzpicture}
\end{array}
\]
\end{document}
我怎样才能使“一些文本”在行间垂直居中?我尝试了很多解决方案,但似乎都没有用。
答案1
一个简单的选择是使用m
列类型。此方法的唯一限制是您必须为列宽选择一个明智的值。
\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath}
\usepackage[math]{cellspace}
\begin{document}
\[
\begin{array}{m{4cm} c m{4cm}}
\begin{tikzpicture}
\draw[gray, thick] (-1,2) -- (2,-4);
\end{tikzpicture}
& \text{some text} &
\begin{tikzpicture}
\draw[gray, thick] (-1,2) -- (2,-4);
\end{tikzpicture}
\end{array}
\]
\end{document}
另一个选项是在数学模式下使用\vcenter
宏。请注意,\hbox
用于为方程式创建一个水平框,然后使用垂直居中\vcenter
。
\[
\begin{array}{c c c}
\vcenter{\hbox{
\begin{tikzpicture}
\draw[gray, thick] (-1,2) -- (2,-4);
\end{tikzpicture}
}}
& \text{some text} &
\vcenter{\hbox{
\begin{tikzpicture}
\draw[gray, thick] (-1,2) -- (2,-4);
\end{tikzpicture}
}}
\end{array}
\]