IEEE Latex 列表

IEEE Latex 列表

这是我的代码的最小版本:

\documentclass[10pt, conference, compsocconf]{IEEEtran}
\usepackage{listings}
\lstset{frame=single,language=C}

\begin{document}
\begin{lstlisting}[caption=matrix multiplication pseudo  
 code,linewidth=8.7cm,label=lst1:mxm]

#include <stdlib.h>
#include <stdio.h>  
void main(int argc, char **argv)
{
  printf("hello! ");
}
\end{lstlisting}

\bibliographystyle{IEEEtran}
\bibliography{IEEEabrv,IEEEexample}

\end{document}

我的伪代码的屏幕截图

我的问题:

  • 如何在标题后添加空格?

  • 如何可以减少伪代码的警察的大小?

非常感谢。谨致问候。

答案1

IEEEtran仅区分tablefigure标题。当标题设置为(\@makecaption)时,它会检查table并设置下方的空间\abovecaptionskip,否则\abovecaptionskip将设置在标题上方。\belowcaptionskip未使用。表格标题应设置在表格上方,图形标题应设置在下方。由于列表标题设置在上方,因此以下重新定义的\lst@makecaption技巧IEEEtran是将列表视为表格以将空间放在标题下方。

通过删除空行,可以删除第一个包含内容的源行上方的空白区域。

可以使用选项来更改列表的字体大小basicstyle

\documentclass[10pt, conference, compsoc]{IEEEtran}

\usepackage{listings}
\lstset{
  frame=single,
  language=C,
  basicstyle=\small,
}

\makeatletter
\def\lst@makecaption{%
  \def\@captype{table}%
  \@makecaption
}
\makeatother

\begin{document}
\begin{lstlisting}[
  caption=Matrix multiplication pseudo code,
  label=lst1:mxm,
]
#include <stdlib.h>
#include <stdio.h>
void main(int argc, char **argv)
{
  printf("hello! ");
}
\end{lstlisting}
\end{document}

结果

相关内容