DefineVerbatimEnvironment 內的框架線寬

DefineVerbatimEnvironment 內的框架線寬

我正在嘗試定義一個需要與 \textwidth 一樣寬的框架線的環境

\DefineVerbatimEnvironment%
 {code}{Verbatim}{...,frame=lines,%
               xleftmargin=7pt,fontsize=...}

我不確定如何限制線的寬度?

答案1

可以修改一個這個解決方案相關問題如下:

\documentclass{article}

\usepackage{fancyvrb}

\newenvironment{code}
  {
    \VerbatimEnvironment
    \vskip\baselineskip\hrule
    \begin{Verbatim}[xleftmargin=7pt]%
  }
  {\end{Verbatim}\hrule\vskip\baselineskip}

\usepackage{lipsum}
\begin{document}

\lipsum[2]

\begin{code}
  Test the verbatim.  
  Here is some more.
\end{code}

\lipsum[4]

\end{document}

樣本輸出

\hrule其本身會產生一條長度的線\textwidth,但是,它只增加了最小量的垂直空間。這就是放入 的原因\vskip。您可能很想調整這些空格的大小(或使用\smallbreak等),您可能還想\vskip在第一個規則之後和最後一個規則之前添加一些負數。例如,以下給出的間距更接近從 獲得的間距\begin{Verbatim}[frame=lines]

\newenvironment{code}
  {
    \VerbatimEnvironment
    \vskip18pt\hrule\vskip-10pt\hskip0pt
    \begin{Verbatim}[xleftmargin=7pt]%
  }
  {\end{Verbatim}\vskip-3pt\hrule\vskip18pt}

如果您需要不同厚度的規則,您可以寫類似的內容\hrule height 2pt

相關內容