副标题:调整多行内三幅图像的垂直位置

副标题:调整多行内三幅图像的垂直位置

我想将三张图片放在一个图形中。其中两张应在右侧上下排列。第三张应在左侧。左侧图片应垂直居中。我尝试了几种使用minipage和 的方法multirow。但是,我总是遇到左侧图片垂直对齐的问题。有人能给我提示如何实现我的目标吗?

\documentclass[a4paper,10pt]{scrreprt}
\usepackage[T1]{fontenc}
% \usepackage[utf8]{inputenc}
\usepackage[latin1]{inputenc}
\usepackage{geometry}
\geometry{a4paper,left=25mm,right=25mm, top=25mm, bottom=25mm}
\usepackage{multirow}
\usepackage{subcaption}
\usepackage{tikz}

\begin{document}

\begin{figure}[htbp]
\begin{tabular}{cc}
\multirow{2}{*}{
\begin{subfigure}[t]{0.48\textwidth}
\centering
\includegraphics[height=.22\textheight]{example-image-a}
\caption{Subcaption left}
\end{subfigure}
}
&
\begin{subfigure}[t]{0.48\textwidth}
\centering
\includegraphics[height=.18\textheight]{example-image-b}
\caption{Subcaption upper right}
\end{subfigure}
\\
&
\begin{subfigure}[t]{0.48\textwidth}
\centering
\includegraphics[height=.12\textheight]{example-image-c}
\caption{Subcaption lower right}
\end{subfigure}
\end{tabular}
\caption{Caption}
\end{figure}

\end{document}

答案1

可以使用floatrow基于的包此主题

\documentclass[a4paper,10pt]{scrreprt}
\usepackage[T1]{fontenc}
% \usepackage[utf8]{inputenc}
\usepackage[latin1]{inputenc}
\usepackage{floatrow}
\usepackage{geometry}
\geometry{a4paper,left=25mm,right=25mm, top=25mm, bottom=25mm}
\usepackage{subcaption}
\usepackage{tikz}

\begin{document}

\begin{figure}[htbp]
\centering
\ffigbox[7.8cm]{%
  \begin{subfloatrow}
\ffigbox[\FBwidth][]{\caption{A large subfigure}\label{sfig:testc}}{\includegraphics[width=3cm,height=7cm]{example-image-c}}
  \end{subfloatrow}
  \hspace*{\columnsep}
  \begin{subfloatrow}
\vbox to 7.35cm{
  \ffigbox[\FBwidth]{\caption{small subfigure A}\label{sfig:testa}}
  {\includegraphics[width=3cm,height=3cm]{example-image-a}}
  \vss
  \ffigbox[\FBwidth]
  {\caption{small subfigure B}\label{sfig:testb}}
  {\includegraphics[width=3cm,height=2cm]{example-image-b}}
}
  \end{subfloatrow}
  }{
  \caption{three subfigures}
  \label{fig:test}
  }
\end{figure}

\end{document}

相关内容