我正在处理LaTeX文档并使用lstlisting来显示我的Java源代码。我的设置如下:
\lstset{
basicstyle=\ttfamily,
keywordstyle=\bfseries,
language=Java,
frame=single,
aboveskip=11pt,
belowskip=11pt,
breaklines=true,
breakatwhitespace=false,
showspaces=false,
showstringspaces=false
}
使用ttfamily时,关键字不会以粗体显示,但如果我使用small或不指定基本样式,则会突出显示它们。
我错过了什么?
答案 0 :(得分:12)
LaTeX中的默认字体Computer Modern不提供电传打字机系列的粗体版本。您可以将其安装为bold-extra
包;有关详细信息,请参阅this FAQ entry。
答案 1 :(得分:1)
另一种选择是将您使用的字体换成粗体,如下所述:http://www.macfreek.nl/mindmaster/LaTeX_Bold_Typewriter_Font
只需将此行放在我的文档顶部,就可以在非常标准的Ubuntu版本上为我工作:
\DeclareFontShape{OT1}{cmtt}{bx}{n}{<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>cmttb10}{}
答案 2 :(得分:1)
有一种替代方法(有点简单的恕我直言)here使用Courier字体而不是默认的Computer Modern:
% Using Courier font
\renewcommand{\ttdefault}{pcr}
\begin{lstlisting}[basicstyle=\ttfamily\bfseries]
y:=2
\end{lstlisting}
所有学分都归功于Marco Daniel!