我有一个类似的文档:
\usepackage{listings}
\begin{document}
\lstset{language=Matlab,%
basicstyle=...
}
\subsection*{Matlab code}
\lstinputlisting{../myScript.m}
\end{document}
我找到了几个关于如何使用lstlisting
等宽字体的答案,以及一些关于如何通过分别设置basicstyle
等于\ttfamily
或来获得无衬线字体的答案\sffamily
。
但是如果我想以等宽字体和无衬线字体显示我的源代码,我该怎么办?
答案1
假设您可以使用操作系统提供的字体,那么实现您的目标很简单:(a)使用 LuaLaTeX(或 XeLaTeX)代替 pdfLaTeX;(b)加载包fontspec
并通过指令加载合适的等宽字体\setmonofont
;(c)加载listings
包后,将选项添加basicstyle=\ttfamily
到 的参数中\lstset
。
\documentclass{article}
\usepackage{fontspec}
%\setmainfont{...} % select a suitable main text font
%\setsansfont{...} % select a sans-serif font
\setmonofont{Lucida Console}[Scale=MatchLowercase] % select a suitable monospaced font
\usepackage{listings}
\lstset{basicstyle=\ttfamily}
\begin{document}
Hello World. \lstinline{Hello World.}
\end{document}
答案2
一个不错的无衬线等宽字体是源代码专业版来自 Google。您只需导入它即可使用它:
\usepackage{sourcecodepro}
梅威瑟:
\documentclass{article}
\usepackage{sourcecodepro}
\begin{document}
\texttt{This text is in source code pro.}
\end{document}