如何在 floatrow/subfloatrow 中的新行上打印图形

如何在 floatrow/subfloatrow 中的新行上打印图形

subfloatrow在环境(包)中,如何floatrow在两个图形之后跳转到换行符。我想在同一行上排版两个图形A.pdf和,并且应该在新行上。考虑到标签和标题,所有图形都应该是同一个的一部分。我遗漏了 floatrow 概念的一部分,所以我尝试了一些愚蠢的事情,比如引入换行符(和),当然这行不通。B.pdfC.pdfD.pdfsubfloatrow\\\newline

这是我使用的代码:

前言:

\documentclass{article}
\usepackage{floatrow}
\usepackage{graphicx}
\usepackage{subfig}
\usepackage{caption}

\begin{document}  
    \clearpage
    \begin{figure}[h!]
    \ffigbox[\FBwidth]
    {\begin{subfloatrow}
        \sidesubfloat[]{\includegraphics[width = 0.4\textwidth]{A.pdf}}%
        \sidesubfloat[]{\includegraphics[width = 0.4\textwidth]{B.pdf}}%
        \sidesubfloat[]{\includegraphics[width = 0.4\textwidth]{C.pdf}}%
        \sidesubfloat[]{\includegraphics[width = 0.4\textwidth]{D.pdf}}%
        \end{subfloatrow}}
    {\caption{this is a caption}}
    \end{figure}
\end{document}

答案1

对于每一行,您需要使用subfloatrow环境:

\documentclass{article}
\usepackage{floatrow}
\usepackage[demo]{graphicx}
\usepackage{subfig}
\usepackage{caption}

\begin{document}  

\begin{figure}[h!]
  \ffigbox[\FBwidth]
    {\begin{subfloatrow}
        \sidesubfloat[]{\includegraphics[width = 0.4\textwidth]{A.pdf}}%
        \sidesubfloat[]{\includegraphics[width = 0.4\textwidth]{B.pdf}}%
      \end{subfloatrow}
      \begin{subfloatrow}
        \sidesubfloat[]{\includegraphics[width = 0.4\textwidth]{C.pdf}}%
        \sidesubfloat[]{\includegraphics[width = 0.4\textwidth]{D.pdf}}%
      \end{subfloatrow}}
    {\caption{this is a caption}}
\end{figure}

\end{document}

我使用该demo选项使graphicx我的示例代码可供所有人编译;请不要在实际代码中使用该选项。

答案2

subfloat因为这让我很头疼:如果a 中只有一个,subfloatrow事情可能会中断(这种情况以非常奇怪的方式发生)。诀窍是添加一个空的subfloat. 例如\sidesubfloat[]{}{}。我不知道这是否会破坏其他东西,但它对我来说确实有效。

相关内容