使用回忆录类时子图编号的问题

使用回忆录类时子图编号的问题

我正在memoir为我的论文使用该类,我注意到它最近开始为子图提供错误的编号。我有一些旧的 PDF,当时它工作正常,我很确定我已经有一段时间没有弄乱这些数字了,所以我不确定问题是什么。我下面有一个 MWE。

\documentclass[brazilian,a4paper,12pt,oneside,openleft]{memoir}
\usepackage{graphicx} %package to manage images
\newsubfloat{figure}% Allow subfloats in figure environment

\begin{document}

\chapter{Chapter to have proper numbering}

\begin{figure}[!hptb]
            \centering 
            \subbottom[]{          
                \includegraphics[width=0.4\textwidth]{example-image-a}          
                \label{sf:a} %Nome da sub-Fig. para referenciá-la diretamente como 1a.
            } 
            \hfill
            \subbottom[]{   
                \includegraphics[width=0.4\textwidth]{example-image-b}
                \label{sf:b}
            }   
                    
            \caption{\subcaptionref{sf:a} Subfig a \subcaptionref{sf:b} Subfig b}
            \label{fig:ab}  
\end{figure}

Some sample text referencing Fig.~\ref{fig:ab} which contains both Fig.~\ref{sf:a} and Fig.~\ref{sf:b}.

\end{document}

输出结果类似于问题末尾附上的图。如您所见,标题中的子图标签显示为 和 ,()(a)不是(a)(b)。我猜是某个计数器没有正确递增,但我不知道是哪一个。(a)(b)标签在实际图中也正确显示,这更让我困惑。

最后,我注意到在这个 MWE 中,当我调用\ref{sf:a}和 时,\ref{sf:b}我只得到一个1而不是1.1(a)1.1(b)。这甚至更加令人困惑,因为在我的论文中,使用类似的命令我得到了 的等价物1.1(a),这是我想要的效果!所以它在我的论文上正常工作是件好事,但我不知道为什么它在 MWE 中不能正常工作。

提前致谢!

MWE 的输出

答案1

为了获得正确的输出,请将其放置\label在可选参数的内部,\subbottom如下例所示:

\documentclass[brazilian,a4paper,12pt,oneside,openleft]{memoir}
\usepackage{graphicx} %package to manage images
\newsubfloat{figure}% Allow subfloats in figure environment

\begin{document}

\chapter{Chapter to have proper numbering}

\begin{figure}[!hptb]
            \centering 
            \subbottom[\label{sf:a}]{          
                \includegraphics[width=0.4\textwidth]{example-image-a}          
                 %Nome da sub-Fig. para referenciá-la diretamente como 1a.
            } 
            \hfill
            \subbottom[\label{sf:b}]{   
                \includegraphics[width=0.4\textwidth]{example-image-b}
                
            }   
                    
            \caption{\subcaptionref{sf:a} Subfig a \subcaptionref{sf:b} Subfig b}
            \label{fig:ab}  
\end{figure}

Some sample text referencing Fig.~\ref{fig:ab} which contains both Fig.~\ref{sf:a} and Fig.~\ref{sf:b}.

\end{document}

在此处输入图片描述

相关内容