使用子标题重新排列子浮动对象

使用子标题重新排列子浮动对象

我有一些代码,其结果如下:

在此处输入图片描述

代码如下:

\documentclass[demo]{book}
\usepackage{graphicx}
\usepackage[hypcap=true]{subcaption}
\begin{document}
\begin{figure}[tbp]
    \begin{subfigure}{0.24\linewidth}
        \begin{subfigure}{\linewidth}
            \includegraphics[width=\linewidth]{installA.eps}
            \caption*{(a)} % --- CHEAT ---
        \end{subfigure}
        \begin{subfigure}{\linewidth}
            \includegraphics[width=\linewidth]{installC.eps}
            \caption*{(c)} % --- CHEAT ---
        \end{subfigure}
    \end{subfigure}
    \begin{subfigure}{0.74\linewidth}
        \includegraphics[width=\linewidth]{installB.eps}
        \caption*{(b)} % --- CHEAT ---
    \end{subfigure}
    \caption{Instalação do Prestress no Robot}
\end{figure}
\end{document}

该图显示了操作的“时间顺序”,从左上角 (a) 到右侧 (b),然后到左下角 (c)。但是,查看代码时,请注意我必须作弊才能获得正确的标题。考虑到图像出现的顺序,标准标题将是 (a) 和 (b),最右边的图是 (c)。

有没有更聪明的方法来做到这一点?

答案1

无需猜测值:将 (a) 带有参考点的框设置在底部,将 (b) 不具有深度的框设置在顶部,将 (c) 带有参考点的框设置在顶部(仅用于对称)。

\documentclass{book}
\usepackage{graphicx,adjustbox}
\usepackage[hypcap=true]{subcaption}
\begin{document}
\begin{figure}[tbp]
\raggedright

\begin{subfigure}[b]{0.24\linewidth}% reference point at the bottom
\includegraphics[width=\linewidth]{example-image-10x16}
\caption{}
\end{subfigure}\hfill
\begin{adjustbox}{set depth=0pt}% no depth
\begin{subfigure}{0.74\linewidth}
\includegraphics[width=\linewidth]{example-image}
\caption{}
\end{subfigure}
\end{adjustbox}

\begin{subfigure}[t]{0.24\linewidth}% reference point at the top
\includegraphics[width=\linewidth]{example-image-10x16}
\caption{}
\end{subfigure}

\caption{Instalação do Prestress no Robot}
\end{figure}

\end{document}

在此处输入图片描述

adjustbox您可以使用内核命令来代替提供的便捷界面;

\begin{adjustbox}{set depth=0pt}% no depth
\begin{subfigure}{0.74\linewidth}
\includegraphics[width=\linewidth]{example-image}
\caption{}
\end{subfigure}
\end{adjustbox}

类型

\raisebox{0pt}[\height][0pt]{%
  \begin{subfigure}{0.74\linewidth}
  \includegraphics[width=\linewidth]{example-image}
  \caption{}
  \end{subfigure}%
}

其效果将完全相同。

相关内容