清單在一個盒子裡嗎?

清單在一個盒子裡嗎?

我的問題是我正在嘗試編寫一個帶有彩色部分的文檔作為範例。範例可以包含程式碼清單。不知何故,我似乎無法將背景顏色與清單結合起來,甚至無法逐字結合。

我嘗試過的一個例子是這樣的:

\colorbox{lightgray}{
\begin{minipage}{4cm}
An example text

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

Some more text
\end{minipage}  
}

任何想法表示讚賞!

答案1

請務必發佈顯示所用軟體包的完整文件。問題是您不能在像 這樣的巨集的參數中使用逐字結構\colorboxlrbox為此引入了環境

在此輸入影像描述

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

\begin{lrbox}{\lstbox}\begin{minipage}{4cm}
An example text

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

Some more text
\end{minipage}\end{lrbox}  

\colorbox{lightgray}{\usebox\lstbox}


\end{document}

答案2

這是我通常使用的。

\documentclass[12pt]{article}
\usepackage[margin=1.6cm]{geometry}
\usepackage{amsmath, amssymb}
\usepackage{xcolor}
\usepackage{listings}
\lstset
{
    language=[LaTeX]TeX,
    breaklines=true,
    basicstyle=\tt\normalsize,
    keywordstyle=\color{blue},
    identifierstyle=\color{magenta},
    frame = single
}

請注意使用frame = single作為參數。使用frame = true不會讓你一事無成。只是作為提示

相關內容