我正在寻找压缩的等距(打字机)字体,以便使用 pdflatex 排版程序列表。字体应具有常见的形状(向上和斜体或倾斜)和系列(正常和粗体)。有什么建议吗?
答案1
Latin Modern 是打字机字体的压缩版本:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{lipsum}
\begin{document}
\ttfamily\lipsum[1]
\fontseries{lc}\selectfont
\lipsum[1]
\end{document}
如果需要文本对齐,则必须修改\fontdimenX
值
答案2
我不知道有什么免费字体能满足你的要求。如果你可以考虑非免费字体。我推荐 Lucas de Groot 专为排版程序代码而设计的 Sans Mono Condensed Font:http://www.lucasfonts.com/fonts/thesansmono/thesansmono-condensed/。几年前我为它编写了 LaTeX 支持包:http://www.ctan.org/pkg/thsmc。当然XeTeX可以直接使用这个字体。
答案3
除了寻找压缩字体外,您还可以更改默认字体的大小。我发现 Latin Modern 在\footnotesize
列表中看起来相当不错:
\documentclass{article}
\usepackage{lmodern}
\usepackage{lipsum}
\usepackage{listings}
\lstset{%
basicstyle=\footnotesize\ttfamily,%
numbers=left,%
numberstyle=\footnotesize,%
tabsize=2%
}
\begin{document}
\lipsum[1]
\begin{lstlisting}[language=C]
#include <stdio.h>
int main(void)
{
printf("Hello World!\n");
}
\end{lstlisting}
\end{document}
Latin Modern 打字机字体有普通和粗体系列,但区别很微妙。您可以尝试将选项传递lighttt
给lmodern
包以获得更多区别。
您还可以浏览LaTeX 字体目录。
答案4
有beramono
:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[scaled=.83]{beramono}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\ttfamily\lipsum[1]
\end{document}