我想将三张图片放在一个图形中。其中两张应在右侧上下排列。第三张应在左侧。左侧图片应垂直居中。我尝试了几种使用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
\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}