在书籍类中使用 twopage 设置时结合 caption 和 fltpage 包

在书籍类中使用 twopage 设置时结合 caption 和 fltpage 包

caption我在使用该包以及documentclassfltpage中的包时遇到了一个奇怪的问题。 在排除了所有类型的变量后,我发现下面给出的才是该问题的真正 MWE。我猜我做错了什么,因为我对 LaTeX 还比较陌生,可能错过了包文档中的一些内容。booktwoside
caption

\documentclass[twoside]{book}
\usepackage{caption}
\usepackage[leftFloats, CaptionAfterwards]{fltpage}

\begin{document}

\captionsetup[FPfigure]{format=hang, font=small, labelfont=bf}

\begin{FPfigure}
    \fbox{\rule[-10cm]{0pt}{\textheight}Frame ... page.\hspace{5cm}}
    \caption{A caption alone ... figure without a caption!}
\end{FPfigure}

\end{document}

如果删除该选项twoside,它将生成所需的标题布局。但是使用它我得到了以下错误:

7x \AP@ \end{FPfigure} 定义中的参数编号非法 未定义的
控制序列 \end{document} 环境未定义。
未定义的控制序列 \end{document} 包标题 错误:未定义浮点类型 '' 29x 缺少插入的 \endcsname 参考第 1 页上的“FPfigure-1-pos”在输入行 10 上未定义。

如果fltpage不使用环境(只是普通图形),也不会出现任何错误,并会生成正确的布局。
我正在使用 MiKTeX 2.9 的 Windows 系统上工作

因为这是我的论文,所以我确实需要这个twoside选项。任何帮助都将不胜感激。我必须说我没有尝试过其他课程。

答案1

我设法解决了这个“问题”,因为事实证明它根本不是问题。

正如问题中所述,删除该twoside选项会导致 MWE 再次运行。起初我没有意识到这一点,但随着 documentclassbook默认布局设置为双面!因此,添加它不会增加任何内容,但更重要的是,删除该语句也不会改变任何内容!

本质上,问题中的修复已经是答案,但为什么默认设置的明确声明会导致这些错误消息是一个谜。

然后,我对默认不twoside启用该选项的类(例如类)进行了进一步测试article。没有任何语句(因此默认oneside),效果符合预期,并且不会给出任何错误消息。但是,当twoside传递该选项时,它再次导致错误。

fltpage总之,在以下文档类中使用时,和包似乎caption是不兼容的:a. 默认情况下没有布局twoside;并且twoside布局是必需的,因此作为选项传递;或者 b. 默认情况下具有twoside布局,但是在设计文档类时也将其作为语句给出。

我的问题与第二个选项有关,因此我已回答,删除了对该选项的可选提及。对于希望在其他文档类(例如)中与布局结合twoside使用它的人来说,问题仍然存在。articletwoside

相关内容