同时使用列表和子图

同时使用列表和子图

我正在编写一个文档,其中代码列表和图表经常并排出现。我使用包listings来处理代码和\includegraphics图表。我想将它们放在同一张图上。我尝试了subfigure包,但它不允许在\subfigure{}参数中使用逐字环境。

fancyvrb包有一个解决此限制的方法:使用SaveVerbatim\BUseVerbatim。但是,我更喜欢仅使用listing包来获得代码列表的统一样式。

手册subfigure中包含了一些巫术定义,subfloat即可以包含带有逐字内容的迷你页面的环境。这是一个笨拙的解决方案。我还想知道为什么这个解决方案没有包含在包本身中。

有人知道让这些包协同工作的简单方法吗?另外,有没有更逐字友好的子图包?

答案1

下面是使用 subcaption 包的示例,该包包含在标题软件包。 (请注意,\rule我的示例中的命令只是 的占位符\includegraphics。)

\documentclass{article}

\usepackage{listings}
\usepackage{caption,subcaption}

\begin{document}

\begin{figure}
  \begin{subfigure}[b]{.5\linewidth}
    \begin{lstlisting}
    for i:=maxint to 0 do
    begin
    { do nothing }
    end;
    \end{lstlisting}
    \caption{A listing}
  \end{subfigure}
  \begin{subfigure}[b]{.5\linewidth}
    \centering
    \rule{1.5cm}{1.5cm}
    \caption{A diagram}
  \end{subfigure}
  \caption{A listing and a diagram}
\end{figure}

\end{document}

编辑:子图TeX Catalogue OnLine 的条目指出:

此软件包现已过时:新用户应该使用子图或子标题反而。

相关内容