多行位置不正确,如何修复?

多行位置不正确,如何修复?

我有三个数字要以某种方式表达

子图1

-------子图3

子图2

并且height(subfig3)=height(subfig1)+height(subfig2),使得subfig3的顶部与subfig1的顶部对齐,并且subfig3的底部与subfig2的底部对齐。

\begin{table}[h]
\centering
\begin{tabular}{cc}
\includegraphics[width=4cm]{subfig1.png} &
\multirow{2}{*}{\includegraphics[width=8cm]{subfig3.png}} \\
\includegraphics[width=4cm]{subfig2.png}
\end{tabular}
\end{table}

但我发现 subfig3 的位置太低,不居中。我这里遗漏了什么?

答案1

不要用于multirow此:将左侧的图像放在minipage

\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{table}
\centering
\begin{minipage}[b]{4cm}
\offinterlineskip % no vertical space between the two images
\includegraphics[height=3cm,width=4cm]{example-image}\\
\includegraphics[height=5cm,width=4cm]{example-image}
\end{minipage}
\includegraphics[height=8cm,width=4cm]{example-image}

\caption{Three images}
\end{table}
\end{document}

这利用了图像的参考点位于其底部的事实。

在此处输入图片描述

答案2

编辑为使用\shortstack而不是\vcenter。该命令\shortstack从基线开始构建,因此不存在深度低于基线的问题。但是,两个左侧图像之间存在轻微间隙,这意味着右侧图像不会完全对齐,除非您通过有效地修剪它来处理它(就像我在下面通过包裹 的内部所做的\includegraphics那样\addvbuffer

\documentclass{article}
\usepackage{graphicx}
\usepackage{mwe}
\usepackage{verbatimbox}
\begin{document}
\begin{table}[h]
\centering
\begin{tabular}{cc}
\shortstack{%
\addvbuffer[-1pt]{\includegraphics[height=3cm,width=4cm]{example-image}}\\
\addvbuffer[-1pt]{\includegraphics[height=5cm,width=4cm]{example-image}}
}
& 
\addvbuffer[-1pt]{\includegraphics[height=8cm,width=4cm]{example-image}}\\
\end{tabular}
\end{table}
\end{document}

在此处输入图片描述

相关内容