如何实现子图中图像的顶部对齐?

如何实现子图中图像的顶部对齐?

有一些关于子图和对齐的讨论,但我找不到解决我的问题的方法。我想有两个并排的图,每个图都有自己的捕获(a 和 b),并且下面有一个捕获。使用

\documentclass{article}
\usepackage{subcaption}
\usepackage{graphicx}

\begin{document}
\begin{figure}
    \centering
    \begin{subfigure}[b]{.49\textwidth}
        \centering
        \includegraphics[width=6cm]{example-image-a}
        \caption{Caption describing fig a}
        \label{fig:figure_a}
    \end{subfigure}\hfill%
    \begin{subfigure}[b]{.49\textwidth}
        \centering
        \includegraphics[width=7cm]{example-image-b}
        \caption{Caption describing fig b}
        \label{fig:figure_b}
    \end{subfigure}
    \caption{Caption for both images}
    \label{fig:Filter_L_LCL}
\end{figure}
\end{document}

给了我这个: 在此处输入图片描述

并使用我的图形得到了这个,所以情况非常相似:

在此处输入图片描述

这正是我想要的,希望图像对齐。我希望它们顶部对齐,标题底部对齐(图像大小不能改变,因为图像和文档字体大小匹配)。如何做到这一点?有没有无需手动移动的解决方案?

答案1

您可以通过以下包获取它floatrow

\documentclass{article}
\usepackage{geometry}
\usepackage{subcaption}
\usepackage{graphicx, floatrow}

\begin{document}

\begin{figure}
\floatsetup{valign=t, heightadjust=all}
\ffigbox{%
\begin{subfloatrow}
\ffigbox{\includegraphics[width=6cm]{example-image-a}}{\caption{Caption describing fig a \label{fig:figure_a}}}
\ffigbox{\includegraphics[width=7cm]{example-image-b}}{\caption{Caption describing fig b} \label{fig:figure_b}}
    \end{subfloatrow}}
    {\caption{Caption for both images}
    \label{fig:Filter_L_LCL}}
\end{figure}

\end{document} 

在此处输入图片描述

答案2

使用以下方法将较短的图像移动到位\raisebox

在此处输入图片描述

\documentclass{article}

\usepackage{subcaption,graphicx}

\newsavebox{\tempfig}

\begin{document}

\begin{figure}
  \centering
  \begin{subfigure}[b]{.49\textwidth}
    \centering
    \savebox{\tempfig}{\includegraphics[width=7cm]{example-image-b}}% Store larger image in box
    \raisebox{\dimexpr\ht\tempfig-\height}{\includegraphics[width=6cm]{example-image-a}}
    \caption{Caption describing fig a}
  \end{subfigure}\hfill%
  \begin{subfigure}[b]{.49\textwidth}
    \centering
    \includegraphics[width=7cm]{example-image-b}
    \caption{Caption describing fig b}
  \end{subfigure}
  \caption{Caption for both images}
\end{figure}

\end{document}

\ht\tempfig凸起的高度由较大图像( ,其中\tempfig是包含较大图像的框)的高度与较小图像( -的第二个参数\height中包含的元素的自然高度)的高度之差给出。\raisebox

答案3

我建议使用类似的代码:(注意“\usepackage[export]{adjustbox}”和“valign=t”

\documentclass{eage2024}
\usepackage{subcaption}
\usepackage{graphicx}
\usepackage[export]{adjustbox}

\begin{document}

\begin{figure}[!tbp]
\centering
\begin{subfigure}[b]{0.2\textwidth}
    \includegraphics[width=1\textwidth, valign=t]{8a.png}
    \caption{cc.}
    \label{fig:h1}
\end{subfigure}
\begin{subfigure}[b]{0.2\textwidth}
    \includegraphics[width=1\textwidth, valign=t]{8b.png}
    \caption{cc2.}
    \label{fig:h2}
\end{subfigure}
\begin{subfigure}[b]{0.2\textwidth}
    \includegraphics[width=1\textwidth, valign=t]{8c.png}
    \caption{cc3.}
    \label{fig:h3}
\end{subfigure}
\begin{subfigure}[b]{0.2\textwidth}
    \includegraphics[width=1\textwidth, valign=t]{8d.png}
    \caption{Triple layer-thickness 1.}
    \label{fig:h4}
\end{subfigure}
\caption{cc4.}
\label{fig:h5}
\end{figure}

\end{document}

相关内容