列表中的标题扭曲

列表中的标题扭曲

以下代码会产生奇怪的结果。如果我不包含subfig包或不使用参数,一切看起来都很好xleftmargin。如果我使用,它也可以正常工作captionpos=t。这个问题有解决方法吗?我必须使用subfigxleftmargincaptionpos=b。我正在使用安装了所有更新的 TexLive 2013。

\documentclass{article}
\usepackage[english]{babel}

\usepackage{subfig}
\usepackage{blindtext}
\usepackage{listings}

\lstset{
   breaklines=true,
   captionpos=b,
   numbers=left,
   xleftmargin=20em
}

\begin{document}

\begin{lstlisting}[caption={information information information information information information information}]
A = B
C = D
\end{lstlisting}
\blindtext

\end{document}

结果:

在此处输入图片描述

答案1

如果你只是需要subfig但不需要caption包中的功能(这是此行为的真正原因),subfig请使用caption=false如下选项加载

\usepackage[caption=false]{subfig}

一个完整的示例与您的代码,其中我还包含了 \pretolerance 建议的更改赫伯特他的回答列表标题中的连字符无法正常工作

\documentclass{article}
\usepackage[english]{babel}
\usepackage[caption=false]{subfig}
\usepackage{listings}
\usepackage{blindtext}

\lstset{
   breaklines=true,
   captionpos=b,
   numbers=left,
   xleftmargin=20em
}

\begin{document}

\begin{lstlisting}[caption={\pretolerance=100 information information information information information information information}]
A = B
C = D
\end{lstlisting}
\blindtext

\end{document}

在此处输入图片描述

相关内容