我使用 Bera Sans Mono 作为等宽字体来使用该listings
包排版代码列表。这是为使用和 XeLaTeX 制作的幻灯片完成的beamer
。我的序言包括以下内容(在最近更新 MikTeX 引擎、fontspec 包和上述包之前可以使用):
\usepackage{fontspec}
\setmonofont{Bera Sans Mono}[Scale=0.9] % for code listings beramono is used
\newfontfamily\quotefont{Linux Libertine O}[Ligatures=TeX] % selects Libertine for quotation marks
如果我不使用\setmonofont
而改用以下前言,则会产生正确的输出:
\usepackage{fontspec}
\usepackage[scaled]{beramono}
\usepackage[T1]{fontenc}
\newfontfamily\quotefont{Linux Libertine O}[Ligatures=TeX] % selects Libertine for quotation marks
为什么我无法使用\setmonofont{Bera Sans Mono}[Scale=0.9]
(以前可以用)?
另外需要注意的几点:
- XeLaTeX 能够找到字体
\setmonofont
似乎可以与其他字体正常配合,但不能与 Bera Sans Mono 配合使用。
答案1
没有 opentype 字体Bera Sans Mono
,xelatex 找到了正常的 type1 版本,并且由于它不是 unicode 编码的,所以你会得到垃圾。
引用 CTAN 信息(http://www.ctan.org/pkg/bera)
Bera 系列是 Bitstream Vera 系列的重新包装,可与 TEX 一起使用。
因此,使用 xelatex 时你应该使用
\setmonofont{Bitstream Vera Sans Mono}