在 LaTeX 文档中使用 \usepackage{subcaption} 时出错

在 LaTeX 文档中使用 \usepackage{subcaption} 时出错

现在,我正在写我的学士论文,第一次使用 LaTeX,使用的模板是https://www.overleaf.com/read/jtsdtwkcjcyq

我在写这条消息时,也在写结果。为了更好地展示我的结果,我想用一页纸来展示一个有 3 行 2 列的子图。我想在我的论文中写到这个:

在此处输入图片描述

不幸的是,当我尝试将其放在我的论文中时,当我尝试使用 \usepackage{subcaption} 时,它会出现错误。错误是(有 2 条错误消息)/usr/share/texlive/texmf-dist/tex/latex/caption/subcaption.sty:73: 未定义控制序列。l.73 \caption@SetupOptions {subcaption}{\captionsetup[sub]{#2}}%

report.tex 文件如下所示。(可能有一些我不需要的使用包,但我还不熟悉所有的 latex,而且这是我大学的标准模板)。

我希望有人知道这个错误并且能够帮助我:)

\documentclass[a4paper,12pt,oneside]{booksfsf}
%\documentclass[a4paper,12pt,twoside,fleqn]{booksfsf}
%\documentclass[twocolumn]{article}
\usepackage{hyperref}
\usepackage{latexsym}

\usepackage{graphics}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{psfrag}   
\usepackage{cite}
\def\citepunct{], [}
\def\citedash{]--[}

\usepackage{pdfpages}                           % To allow inclusion of the frontpage as a pdf-page
\usepackage{caption}   
\usepackage{captspec}
\usepackage[printonlyused]{acronym} 
\usepackage{makeidx} 
\usepackage[english]{babel} 
\makeindex  
\usepackage{color}
\usepackage{tabularx}
\usepackage{amsbsy}
\usepackage{lscape}
\usepackage{breakurl}
\usepackage{appendix}
\usepackage{enumerate}

\usepackage{fancyhdr}
\usepackage{mwe}








\usepackage{lastpage}
\usepackage[labelfont = it, font = footnotesize, hangindent = 26pt, parskip = 20pt]{subfig}


%change geometry of the lay-out
\usepackage[left=2.00cm, right=2.00cm, top=3.00cm, bottom=3.00cm]{geometry} % Marges

%change title properties
\usepackage{titlesec}
\titleformat{\chapter}[hang] 
{\normalfont\huge\bfseries}{\chaptertitlename\ \thechapter:}{1em}{} 
\titlespacing*{\chapter}{0pt}{0pt}{40pt}


\renewcommand{\baselinestretch}{1.20}
\renewcommand{\captionfont}{\footnotesize\itshape}

\renewcommand\sfdefault{phv}                               % use helvetica for sans serif
\renewcommand\familydefault{\sfdefault}               %    use sans serif by default


\begin{document}

\frontmatter 

\includepdf{frontpage} % Include the frontpage which is a separate pdf. Make sure the pdf exists!
                       % Note: this only works with PDFlatex. If you use a different typesetter,
                       % then include the frontpage afterwards, e.g. using Adobe Acrobat

%\pagestyle{empty}


\newpage
\cleardoublepage

\include{preface}

\include{summary}


\tableofcontents

%\include{acronyms}

\mainmatter

\include{chap_introduction}

\include{theory}

\include{Experimental}

\include{Results}

%\include{chap_body}

%\include{chap_...}

%\include{chap_conclusions}

\cleardoublepage %to make sure that the first page number for the references is correctly listed in the TOC.
\addcontentsline{toc}{chapter}{References}
\bibliographystyle{IEEEtran}
\bibliography{IEEEfull,Mybibliography}


\noappendicestocpagenum
\addappheadtotoc

\begin{appendix}

\include{appendix_A}

\end{appendix}


\end{document}

答案1

如果\caption@SetupOptions是未定义的命令,则的版本subcaption与包的版本不兼容caption。(日志文件中应该有关于此问题的警告。)

由于caption和总是以捆绑包的形式发布,因此您的文档文件夹中subcaption似乎有一个旧版本的caption.sty和/或本地副本(2008 年或更早版本)。因此删除这些文件应该会有所帮助。caption3.sty

顺便说一句:将captioncaptspec一起使用绝对没有意义。两个包都重新定义,\@makecaption因此您应该决定使用哪一个(并放弃使用另一个)。

相关内容