自 20 世纪 80 年代以来,对非 ASCII 字符的支持已经取得了长足的进步,今天,作为计算设备的用户,我们已经习惯于通过不同的键盘布局插入任意 Unicode 字符,并合理地识别和呈现它们。
我可以使用 XeLaTeX 来做到这一点吗?
天真地,如果我只写:
\documentclass{minimal}
\begin{document}
A greek letter: φ ... do you see it?
A greek letter in math mode: $φ$ ... do you see it?
\end{document}
并将其传递给 XeLaTeX(版本 3.141592653-2.6-0.999995,TeX Live 2023)——两个 φ 字符均未呈现任何内容:
...我得到:
Missing character: There is no φ (U+03C6) in font [lmroman10-regular]:mapping=t
ex-text;!
注意:我宁愿避免明确设置字体,但如果这是实现我想要的唯一方法 - 请建议设置,以尽可能接近默认字体(Computer Modern,对吗?)和数学模式下的$\phi$。
答案1
由于您已经在使用 Unicode 感知引擎,因此您可以使用fontspec
和unicode-math
选择包含这些符号的文本和数学字体。
例如:
% !TeX TS-program = lualatex
\documentclass{article}
\usepackage{fontspec}
\setmainfont{CMU Serif Roman}
\usepackage{unicode-math}
\setmathfont{LatinModernMath-Regular}
\begin{document}
A greek letter: φ ... do you see it?
A greek letter in math mode: $φ$ ... do you see it?
\end{document}
要找出哪些文本字体包含φ
,您可以使用命令行工具 albatross:albatross φ