我最近在编写一个 beamer 演示文稿,使用 Xelatex 加载 Arial Narrow 作为字体(工作坚持使用 Arial Narrow!),并使用 Ligatures=TeX 确保双连字符和引号为我整理好。一切都很好,但突然间双连字符和引号无法正确识别。
我在 Windows 7 上使用 Tex Live 2015,这是一个最简单的示例:
\documentclass[10pt]{beamer}
%\usepackage[T1]{fontenc}
\usepackage{xltxtra}
\defaultfontfeatures{Ligatures=TeX}
\setsansfont{Arial Narrow}
\begin{document}
\begin{frame}
Some texts with some hyphens--hypens, and some ``quotation marks''.
\end{frame}
\end{document}
在我的计算机上,这个 MWE 将使用 Arial Narrow 生成幻灯片,但双连字符不会被更正,并且引号将明确保留为“和”。
不管我如何调用 fontspec,无论是直接调用还是使用 xltxtra,我都会遇到同样的问题。Ligatures=TeX 是放在原始调用中还是像我在这里所做的那样在调用之后声明,都没有区别。
但对我来说真正奇怪的是当我取消注释 fontenc 调用时会发生什么。如果我像上面那样取消注释该调用,那么什么也不会发生。但是,如果我将它移动到 xltxtra 调用(或直接调用 fontspec)之后的任何地方,那么双连字符等就会再次被拾取 - 但是,Arial Narrow 字体不再加载,而是使用某种衬线字体。以前,无论何时何地调用 fontenc,我都没有遇到任何问题。
我不知道为什么一切都运行正常,然后突然就坏了。最近有没有对 Tex Live 进行更新,导致这种情况?或者是 Windows 7 更新?我保持这两个更新。
谢谢。