为什么阴影环境中的这个框没有显示出来?

为什么阴影环境中的这个框没有显示出来?

我想将一个带有代码的框架框放在一个阴影框中,但由于某种原因,框架没有显示出来。我该如何让框架显示出来?

\documentclass{memoir}
\usepackage{framed}
\usepackage{color}
\definecolor{shadecolor}{rgb}{0.93,0.93,0.93}
\begin{document}
\begin{shaded}
\trivlist\item\ignorespaces%
Lorem ipsum 

  \begin{framed}
    \begin{minipage}[h]{0.9\linewidth}
    \begin{verbatim}
foo bar
    \end{verbatim}
    \end{minipage}
  \end{framed}

cit dolor
\endtrivlist
\end{shaded}
\end{document}

在此处输入图片描述

答案1

我无法回答为什么frame不按预期工作,但下面的代码可以满足您的要求。只需使用mdframed而不是framed.

\documentclass{memoir}
\usepackage{mdframed}
\usepackage{color}
\definecolor{shadecolor}{rgb}{0.93,0.93,0.93}
\begin{document}
\begin{shaded}
\trivlist\item\ignorespaces%
Lorem ipsum 

  \begin{mdframed}[backgroundcolor=shadecolor]
    \begin{minipage}[h]{0.9\linewidth}
    \begin{verbatim}
foo bar
    \end{verbatim}
    \end{minipage}
    \end{mdframed}
cit dolor
\endtrivlist
\end{shaded}
\end{document}

答案2

这是一种verbatimbox方法。

\documentclass{memoir}
\usepackage{verbatimbox}
\usepackage{color}
\definecolor{shadecolor}{rgb}{0.93,0.93,0.93}
\begin{document}
\begin{shaded}
\trivlist\item\ignorespaces%
Lorem ipsum 

\begin{minipage}[b]{0.9\linewidth}
\begin{verbbox}
foo bar
\end{verbbox}
\fbox{\theverbbox}
\end{minipage}

cit dolor
\endtrivlist
\end{shaded}
\end{document}

在此处输入图片描述

如果希望框架延伸到整个区域,则替换\fbox{\theverbbox}\fbox{\makebox[\linewidth][l]{\theverbbox}}

在此处输入图片描述

如果有人升级该xcolor软件包,则调用

\fcolorbox{red}{shadecolor!50}{\makebox[\linewidth][l]{\theverbbox}}

结果是

在此处输入图片描述

相关内容