我目前有一个问题,列表包不能跨多个页面传播源文件。在doc中写道,“framed”包应该用于各种格式化选项。不幸的是,我没有找到任何“框架”包的文档。我目前的源格式对于C#源来说是这样的:
Source Formatting http://www.free.image.hosting.net/uploads/88987a1ef4.png
我对“listing”包的格式是:
\newcommand{\sourceFormatterCSharp}
{
\lstset
{ language=[Sharp]C
, captionpos=b
%, frame=lines
, morekeywords={var, get, set}
, basicstyle=\footnotesize\ttfamily
, keywordstyle=\color{blue}
, commentstyle=\color{darkgreen}
, stringstyle=\color{darkred}
, backgroundcolor=\color{lightgrey}
, numbers=left
, numberstyle=\scriptsize
, stepnumber=2
, numbersep=5pt
, breaklines=true
, tabsize=2
, showstringspaces=false
, emph={double, bool, int, unsigned, char, true, false, void, get, set}
, emphstyle=\color{blue}
, emph={Assert, Test}
, emphstyle=\color{red}
, emph={[2]\#using, \#define, \#ifdef, \#endif}
, emphstyle={[2]\color{blue}}
, frame=shadowbox
, rulesepcolor=\color{grey}
, lineskip={-1.5pt} % single line spacing
}
}
% first optional param is placement
% param1 file name without extension
% param2 chapter number, e.g. 1 or 2 ...
% param3 caption to use
\newcommand{\embedCSharp}[4][htbp]
{
\sourceFormatterCSharp
\includeListing{#1}{#4}{#3:#2}{#3/#2.cs}
}
任何人都可以帮助我使用“框架”软件包或其他任何其他资源帮助我实现类似的结果,看起来像这样,但可以跨页面分发吗? 如何在框架中嵌入列表的示例将无法满足,因为我到目前为止自己。
答案 0 :(得分:2)
列表包已经支持跨页面拆分代码;请参阅下面的示例(抱歉长列表)。请注意,您不能拥有跨页面的浮动,因此您需要使用标题包(例如)在lstlisting
环境的开头插入标题。
\documentclass{article} \usepackage[a5paper,landscape]{geometry} \usepackage{xcolor,listings} \begin{document} \definecolor{lightgrey}{gray}{0.8} \lstset { captionpos=b , backgroundcolor=\color{lightgrey} , numbers=left , numberstyle=\scriptsize , stepnumber=2 , numbersep=5pt , frame=shadowbox , rulesepcolor=\color{gray} } \begin{lstlisting} a b c d e f g h i j k l m n o p q r s t u v w x y z a b c d e f g h i j k l m n o p q r s t u v w x y z \end{lstlisting} \end{document}
答案 1 :(得分:1)
框架文档位于.sty文件中。只需使用它:
\documentclass{article} \usepackage{framed,lipsum} \begin{document} \begin{framed} \lipsum[1-10] \end{framed} \end{document}
从文档中,您还可以使用:
在上面的示例中放置您的列表而不是lipum将允许多页代码及其周围的框架;你将无法获得相同的输出到列表,但应该能够调整一些东西以使事情看起来没问题。