是否有任何可与 tufte-latex 配合使用的 subfloat 包?

是否有任何可与 tufte-latex 配合使用的 subfloat 包?

我正在尝试使用 tufte-latex 实现许多类似 subfloat 的包,但它们似乎在标签、引用和标题方面都与 tufte-latex 交互不佳。对于标题,多亏了你们,我找到了解决方案,但引用仍然难以捉摸。

图中最初没有出现编号,但是现在出现了数字但无法通过标签引用。

以下最小示例显示了错误所在。两者都导致类的引用未定义tufte-handout,并且与 配合良好article

\documentclass{tufte-handout}

\usepackage[demo]{graphicx}
\usepackage[caption=false]{subfig}

\begin{document}
\begin{figure}
\centering
  \subfloat[Subfigure 1] % caption for subfigure 1
  {
    \label{fig:sub1}
    \includegraphics[scale=0.5]{subfig1.eps}
  }
  \subfloat[Subfigure 2] % caption for subfigure 2
  {
    \label{fig:sub2}
    \includegraphics[scale=0.5]{subfig2.eps}
  }
  \caption{Results for subfigure}
  \label{fig:results}
  \end{figure}
  In the text, you can refer to subfigures of figure \ref{fig:results} as \ref{fig:sub1}, \ref{fig:sub2}, \subref{fig:sub1}, \subref{fig:sub2}.
\end{document}

这个也可以正常使用标题,但是会弄乱引用(使用 tufte-handout 时会给出未定义的引用,但是使用文章时可以正常使用)。

\documentclass{tufte-handout}

\usepackage{caption}
\usepackage{subcaption}
\usepackage[demo]{graphicx}
\captionsetup{compatibility=false}

\begin{document}
\begin{figure}
\centering
  \begin{subfigure}[b]{0.5\textwidth}
    \includegraphics{subfig1.eps}
    \caption{Subfigure 1}
    \label{fig:sub1}   
  \end{subfigure}
  ~
  \begin{subfigure}[b]{0.5\textwidth}
    \includegraphics{subfig2.eps}
    \caption{Subfigure 2}
    \label{fig:sub2}   
  \end{subfigure}
  \caption{Results for subfigure}
  \label{fig:results}
\end{figure}

In the text, you can refer to subfigures of figure \ref{fig:results} as \ref{fig:sub1}, \ref{fig:sub2}, \subref{fig:sub1}, \subref{fig:sub2}.
\end{document}

还有其他 subfloat 包可以与 tufte-latex 配合使用吗?或者可能有办法让上述包正常工作。

答案1

不幸的是,正如评论中所解释的那样,引用的subfigure包似乎都不完全兼容。在示例中,此包允许正确引用子标题,但隐藏了对主标题的引用。

不过,幸运的是,如果主标签受到保护,这个问题就可以解决包含在标题中(而不是标题下方)。

平均能量损失

\documentclass{tufte-handout}
\usepackage{subfigure}
\usepackage[demo]{graphicx}

\begin{document}

\begin{figure}
\subfigure[\label{fig:sub1}Subfigure 1]
{ \includegraphics{subfig1.eps}}
\subfigure[\label{fig:sub2}Subfigure 2]
{ \includegraphics{subfig1.eps}}
\caption{\protect\label{fig:results}Results for subfigure}
\end{figure}

\noindent In the text, you can refer to subfigures of
figure \ref{fig:results} as \ref{fig:sub1}, \ref{fig:sub2},
\subref{fig:sub1}, \subref{fig:sub2}.

\end{document}

相关内容