我正在使用IEEE Access Latex 模板我在列表环境中使用该命令时遇到错误caption
。使用 IEEEtran 模板时不会发生这种情况。
例如,此代码有效:
\documentclass{ieeeaccess}
\usepackage{graphicx}
\usepackage{listings}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{lstlisting}[label=listing1, language=C]
int main(void)
{
printf("Hello world\n");
}
\end{lstlisting}
\end{document}
但下面却不是这样,唯一的区别就是caption
命令:
\documentclass{ieeeaccess}
\usepackage{graphicx}
\usepackage{listings}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{lstlisting}[label=listing1, language=C, caption=Listing 1]
int main(void)
{
printf("Hello world\n");
}
\end{lstlisting}
\end{document}
事实上,结果是一系列这样的错误:
! 未定义控制序列。\@makecaption ...capfont #2\strut }\ifdim \xfigwd \columnwidth \setbox \@te... l.12 ...el=listing1, language=C, caption=Listing1]
!缺失数字,视为零。
l.12 ...el=listing1,语言=C,标题=Listing1]
! 非法计量单位(插入 pt)。
l.12 ...el=listing1,语言=C,标题=Listing1]
! 当前页面上发现无限胶合收缩。\@makecaption ...\ }}{\vss \raggedright \noindent \unhbox \@tempboxa \figcap... l.12 ...el=listing1, language=C, caption=Listing1]
答案1
ieeeaccess
重新定义 caption 命令并使用通常从图形或表格环境中设置的长度\xfigwd
。由于您的列表不使用这两种环境,因此您必须手动执行此操作:
\documentclass{ieeeaccess}
\usepackage{graphicx}
\usepackage{listings}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begingroup
\newlength{\xfigwd}
\setlength{\xfigwd}{\textwidth}
\begin{lstlisting}[label=listing1, language=C, caption={hgd}]
int main(void)
{
printf("Hello world\n");
}
\end{lstlisting}
\endgroup
\EOD
\end{document}
答案2
如果有人仍在努力解决这个问题,以下是我的解决方案:
把你的清单放进去minipage
,用删除新段落的缩进\hspace*{-\parindent}%
(这是来自为什么小页面在左侧缩进?
\hspace*{-\parindent}%
\begin{minipage}[c]{\linewidth}
\begin{lstlisting}[label=listing1, language=C, caption={hgd}]
int main(void)
{
printf("Hello world\n");
}
\end{lstlisting}
\end{minipage}
\makeatletter
并在包含listings
包之后和之前添加此代码片段\begin{document}
:
\documentclass{ieeeaccess}
\usepackage{graphicx}
\usepackage{listings}
\usepackage{lipsum}
\makeatletter
\def\lst@makecaption{%
\def\@captype{table}%
\@makecaption
}
\makeatother
\begin{document}
它使ieeeaccess
列表的标题像表格的标题一样处理,并在标题和列表之间添加额外的垂直空间。此代码片段取自:IEEE Latex 列表