我有一个类似的文档:
\documentclass[twoside,11pt,titlepage,a4paper]{report} %unterscheidung zwischen gerade und ungerade seite, 11pkt, kp, kp
\usepackage[T1]{fontenc} %inputcodierung
\usepackage[latin1]{inputenc} %inputcodierung
\usepackage[ngerman]{babel} %deutscher sprachschatz, alte rechtschreibung und vor allem -trennung
\usepackage[babel,german=guillemets]{csquotes} %deutsch mit >><<-anführungszeichen
\usepackage{listings} \lstset{numbers=left, numberstyle=\tiny, numbersep=5pt} %einfache listings
\usepackage{caption} %bildunterschriften
\usepackage{beramono} %schriftart für code
\usepackage{color}
\usepackage{xcolor}
%code-listings
\definecolor{javared}{rgb}{0.6,0,0} % for strings
\definecolor{javagreen}{rgb}{0.25,0.5,0.35} % comments
\definecolor{javapurple}{rgb}{0.5,0,0.35} % keywords
\definecolor{mygrey}{HTML}{575757}
\lstloadlanguages{
[Sharp]C
}
\lstset{
language=[Sharp]C,
basicstyle=\footnotesize\ttfamily, % Standardschrift
numberstyle=\tiny, % Stil der Zeilennummern
numbersep=9pt, % Abstand der Nummern zum Text
tabsize=2, % Groesse von Tabs
extendedchars=true, %
breaklines=true, % Zeilen werden Umgebrochen
frame=lrb,
keywordstyle=\color{javapurple}\bfseries,
stringstyle=\color{javared},
commentstyle=\color{javagreen},
rulecolor=\color{mygrey},
showspaces=false, % Leerzeichen anzeigen ?
showtabs=false, % Tabs anzeigen ?
xleftmargin=25pt,
framexleftmargin=21.5pt,
framexrightmargin=-4pt,
framexbottommargin=3pt,
framextopmargin=3pt,
%backgroundcolor=\color{lightgray},
showstringspaces=false % Leerzeichen in Strings anzeigen ?
}
%----------captions
\DeclareCaptionFont{white}{\color{white}}
\DeclareCaptionFormat{listing}
{\colorbox{mygrey}
{\parbox{0.985\textwidth}{\hspace{14pt}#1#2#3}}}
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white, singlelinecheck=false, margin=0pt, font={bf,footnotesize}}
\begin{document}
\begin{lstlisting}[caption=My caption]
Lorem
ipsum
\end{lstlisting}
\end{document}
生成的 PDF 如下所示:
您会注意到奇怪的边距值;我尝试了这些值,直到我得到了(大部分)我想要的结果(标题和底线与左右文本边距对齐)。直到最近我只有一个 b 框架,但现在我想要一个 lbr 框架。如您所见,左右框架没有达到标题,但还剩下一点空间。有什么想法可以改变吗?我得到了完整的文档设置这里这样你就可以看到我使用的所有包,如果这有帮助的话。
任何建议都将不胜感激。如果您能让列表和标题看起来像上面那样,而没有所有奇怪的边距设置,那就更好了,但如果左右线能达到框的高度,我就很高兴了。
答案1
将评论切换为答案:
您看到的跳过是标题和内容之间的跳过。您可以使用以下方法将其删除
\captionsetup[lstlisting]{...,skip=0pt}