![floatrow 包中的 subfloatrow 在没有子标题的情况下无法工作](https://linux22.com/image/253134/floatrow%20%E5%8C%85%E4%B8%AD%E7%9A%84%20subfloatrow%20%E5%9C%A8%E6%B2%A1%E6%9C%89%E5%AD%90%E6%A0%87%E9%A2%98%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E6%97%A0%E6%B3%95%E5%B7%A5%E4%BD%9C.png)
我有两张图片,我想使用该floatrow
包将它们作为子部分放置。如果我为这些部分添加子标题,以下示例将有效,但如果我省略它们,则无效。
我不想为这些部分添加任何子标题。是我做错了什么还是这是一个错误?
这是一个最小的工作示例:
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{caption,subcaption}
\usepackage{floatrow}
\begin{document}
\begin{figure}
\ffigbox{%
\begin{subfloatrow}[2]%
\ffigbox{%
\includegraphics[width=3cm,height=3cm]{fig1}%
}{
%\subcaption{} %% does not work without
}%
\ffigbox{%
\includegraphics[width=3cm,height=3cm]{fig2}%
}{
%\subcaption{} %% does not work without
}%
\end{subfloatrow}%
}{
\caption{A caption}
}
\end{figure}
\end{document}
答案1
您可以使用该\phantomcaption
命令实际上跳过子图的标题。
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{subcaption}
\begin{document}
\begin{figure}
\begin{subfigure}{0.5\textwidth}\centering
\includegraphics[width=3cm,height=3cm]{fig1}%
\phantomcaption
\label{fig:subfiga}
\end{subfigure}
\begin{subfigure}{0.5\textwidth}\centering
\includegraphics[width=3cm,height=3cm]{fig1}%
\phantomcaption
\label{fig:subfigb}
\end{subfigure}
\caption{A caption}
\label{fig:thefig}
\end{figure}
\end{document}
答案2
您可以使用带空参数的带星号的版本\subcaption
;您还需要纠正垂直间距,删除默认的标题跳过(-10pt
):
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{caption,subcaption}
\usepackage{floatrow}
\begin{document}
\begin{figure}
\floatsetup[subfigure]{captionskip=-10pt}%
\ffigbox{%
\begin{subfloatrow}[2]%
\ffigbox{\includegraphics[width=3cm,height=3cm]{fig1}}{\subcaption*{}}%
\ffigbox{\includegraphics[width=3cm,height=3cm]{fig2}}{\subcaption*{}}%
\end{subfloatrow}%
}{\caption{A test caption}}
\end{figure}
\end{document}