不能把数字放在盒子里

不能把数字放在盒子里

前几天,我在创建包含文本和列表的示例时遇到了问题,我在这里询问了这个问题:在盒子里列出?David Carlisle 找到了一个非常好的解决方案,在尝试了他的解决方案后,我又遇到了另一个问题。看来这个解决方案确实接受列表,但不接受数字。

下面是我想要的一个例子。它基本上是 David 之前提供的解决方案,并添加了一个图形。因此它会失败。虽然我知道这里可能不需要这个图形,但我有其他情况确实想在示例中使用图形,这提供了一个可行的示例。

我不知道如何解决这个问题。欢迎提供任何指点和想法。

顺便说一句,我打算稍后使用最终解决方案作为新环境,作为我在文档中获得的所有示例的模板。

谢谢您阅读此篇。

\documentclass{article}
\usepackage{color,listings}
\definecolor{lightgray}{rgb}{.7,.7,.7}
\newsavebox\lstbox
\begin{document}

\begin{lrbox}{\lstbox}\begin{minipage}{\textwidth}
An example text

\begin{lstlisting}[frame=single,language=XML,caption=A Fibonaci example\label{code:fibonaci}]
   <xml></xml>
\end{lstlisting}   

\begin{figure}[htb]
\begin{verbatim}
  1 1 2 3 5 8 13 21 34 55 89
\end{verbatim}
\caption{\label{code:fibonaci:output}Output of the Fibonaci example}
\end{figure}
  Some more text
\end{minipage}\end{lrbox}  

\colorbox{lightgray}{\usebox\lstbox}


\end{document}

答案1

使用captioncapt-of包并在外部figure环境中执行所有操作。我添加了一些间距,使框架围​​绕lstlisting灰色背景内部。

\documentclass{article}
\usepackage{color,listings,caption,calc}
\definecolor{lightgray}{rgb}{.7,.7,.7}
\newsavebox\lstbox
\begin{document}

\begin{figure}[htb]
\begin{lrbox}{\lstbox}\begin{minipage}{\textwidth-2\fboxsep-2pt}
An example text

\begin{lstlisting}[frame=single,language=XML,caption=A Fibonacci example\label{code:fibonacci}]
   <xml></xml>
\end{lstlisting}

\begin{verbatim}
  1 1 2 3 5 8 13 21 34 55 89
\end{verbatim}
\captionof{figure}{\label{code:fibonacci:output}Output of the Fibonacci example}
  Some more text
\end{minipage}\end{lrbox}

\colorbox{lightgray}{\kern1pt\usebox\lstbox\kern1pt}
\end{figure}

\end{document}

在此处输入图片描述

顺便说一下,斐波那契,而非斐波纳契。

相关内容