float 和 subfig 包干扰:具有精确位置的子图

float 和 subfig 包干扰:具有精确位置的子图

我使用了subfig子图包和float强制浮动放置包 ( H)。同时使用这两个包会导致子标题不被重置。以下示例显示了从 (a) 到 (f) 的六个图形,而我预计它们会从 (a) 到 (c),显示两次。

\documentclass[a4paper]{scrartcl}

\usepackage{graphicx} 
\usepackage{float}
\usepackage{subfig}

\begin{document}

\begin{figure}[H] \centering
    \subfloat[first subfig]{\includegraphics{img}}
    \subfloat[second subfig]{\includegraphics{img}}
    \subfloat[third subfig]{\includegraphics{img}}
\end{figure}

\begin{figure}[H] \centering
    \subfloat[first subfig]{\includegraphics{img}}
    \subfloat[second subfig]{\includegraphics{img}}
    \subfloat[third subfig]{\includegraphics{img}}
\end{figure}

\end{document}

我想要实现的是子图准确位于我想要的位置。有没有办法解决这种干扰,或者有更好的解决方案?

答案1

这是\caption重置子图编号的命令,但您没有提供该命令。

实际上,\caption执行\stepcounter{figure}并且是这个命令执行业务。因此,如果您真的不想使用全局标题,请发出

\stepcounter{figure}\addtocounter{figure}{-1}

之前\end{figure}。这将重置subfloat计数器但不会影响figure计数器,因为净变化为 0。

答案2

\setcounter{subfigure}{0}

在两个数字之间。

答案3

\subfloat命令仅设计用于\caption。如果您不想\caption在图形中使用,请使用\phantomcaption。这将增加计数器figure并在hyperref使用该包时提供适当的超链接。(\phantomcaption需要 caption v3.2 或更新版本)

相关内容