子字幕包:兼容性问题

子字幕包:兼容性问题

之间存在兼容性问题CIFA 文档类副标题包。当我编译以下示例时(使用 PDFLaTex):

\documentclass{cifa}

\usepackage{subcaption}

\begin{document}
\begin{figure}
\parbox{4cm}{\subcaption{This is a subcaption}\label{sub}}

\caption{nothing}
\label{nothing}
\end{figure}

See figure \ref{nothing}: there is \ref{sub} inside...

\end{document}

显示以下警告:

包标题警告:检测到不支持的文档类(或包),

软件包标题警告:\caption 将不会被重新定义,因为它已经

此外,标题之后还显示单词“图形”和“子图形”。

如何解决这个问题?

答案1

该软件包的最新版本subcaption甚至会发出一个错误:

! 软件包 caption 错误:‘subcaption’ 软件包无法正常工作
(标题)处于兼容模式。

解决此问题的唯一方法是compatibility=falsecaption包指定选项:

\documentclass{cifa}

\usepackage{subcaption}
\captionsetup{compatibility=false}

\begin{document}
\begin{figure}
\parbox{4cm}{\subcaption{This is a subcaption}\label{sub}}
\caption{nothing}
\label{nothing}
\end{figure}

See figure \ref{nothing}: there is \ref{sub} inside...

\end{document}

请注意:这样,文档类对字幕的自定义将被软件包以蛮力方式cifa覆盖。在最好的情况下,字幕的输出看起来会有所不同(文档类提供的一些与字幕相关的内容将不再起作用),在最坏的情况下,您会收到错误消息和奇怪的输出。因此,还请查看软件包文档的“6 软件包支持”部分。由于这是一种完美的自掘坟墓的方法,因此在使用该选项时总会发出额外的警告:captioncifacaptioncompatibility=false

软件包 caption 警告:强制重新定义 \caption,因为
(标题)不支持(!)包选项“兼容性 = false”
(标题)已给出。
请参阅标题包文档以获取解释。

如果您不想要这个(或者它无论如何都不起作用),那么剩下的唯一解决方案就是不使用该subcaption包。改用subfig带有选项的包caption=false(这会阻止加载包caption):

\documentclass{cifa}

\usepackage[caption=false]{subfig}

\begin{document}
\begin{figure}
\subfloat[This is a subcaption\label{sub}]{............}
\caption{nothing}
\label{nothing}
\end{figure}

See figure \ref{nothing}: there is \ref{sub} inside...

\end{document}

相关内容