自定义列表标题时出现问题

自定义列表标题时出现问题

我正在尝试用“装饰”源代码listings,但是我在编译文档时收到一些警告和错误框。但是文档可以编译,并且看起来像我想要的那样。

我注意到该警告是由于代码中的一些}和符号引起的。{

\hbox段落第 31-31 行过满(6.0pt 太宽)[][][][][][][][] []

LaTeX 字体信息:尝试在输入行 32 加载 OMS+cmss 的字体信息。

LaTeX 字体信息:输入行 32 上没有文件 OMScmss.fd。

LaTeX 字体警告:输入行 32 上的符号“textbraceleft”的字体形状为“OMS/cmsy/m/n”(字体)。OMS/cmss/m/n' undefined (Font)
using

\documentclass[a4paper]{article}

\usepackage[spanish,activeacute]{babel}
\usepackage{amsmath}
\usepackage{listings}
\usepackage{color}
\usepackage{xcolor}
\usepackage{caption}

\lstset{
basicstyle=\footnotesize,
numbers=left,
numberstyle=\tiny,
frame=tb,
columns=fullflexible,
showstringspaces=false
}


\renewcommand{\familydefault}{\sfdefault}  %this is because default font looks blurry

\DeclareCaptionFont{white}{\color{white}}
\DeclareCaptionFormat{listing}{\colorbox{black}{\parbox{\textwidth}{#1#2#3}}}
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white}

\begin{document}

Some Code:
\begin{lstlisting}[caption=some code, label=source, language=java]
public void hello() {
    aaaa();
}
\end{lstlisting}

\end{document}

答案1

使用 Cork 编码:

\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[spanish,activeacute]{babel}
\usepackage{amsmath}
\usepackage{listings}
\usepackage{color}
\usepackage{xcolor}
\usepackage{caption}

\lstset{
basicstyle=\footnotesize,
numbers=left,
numberstyle=\tiny,
frame=tb,
columns=fullflexible,
showstringspaces=false
}


\renewcommand{\familydefault}{\sfdefault}  %this is because default font looks blurry

\DeclareCaptionFont{white}{\color{white}}
\DeclareCaptionFormat{listing}{\colorbox{black}{\parbox{\dimexpr\textwidth-2\fboxsep\relax}{#1#2#3}}}
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white}

\begin{document}

Some Code:
\begin{lstlisting}[caption=some code, label=source, language=java]
public void hello() {
    aaaa();
}
\end{lstlisting}

\end{document}

我还修复了一个过满的盒子(您没有考虑到\fboxsep引入的长度\colorbox)。

在此处输入图片描述

也许你可能感兴趣this answer阿克塞尔·索末费尔特(的作者caption)关于 \DeclareCaptionBox。

相关内容