拉丁现代数学中据称缺失的字符

拉丁现代数学中据称缺失的字符

我使用 Unicode-math 包,以 Latin Modern Math 作为我的数学字体。因此

\documentclass[]{article}

\usepackage{unicode-math}
\setmainfont{Latin Modern Roman}
\setmathfont{Latin Modern Math}

\begin{document}
The function $x \mapsto 2x$. But $A \Rightarrow B$, and $C \Longrightarrow D$.
\end{document}

在输出(由 XeTeX 生成)中,存在\RightArrow,但缺少\mapsto\Longrightarrow。我收到一条警告消息,内容为:

** WARNING ** Invalid CMap mapping entry. (ignored)

日志文件中还有以下内容:

Requested font "Latin Modern Math/OT:script=math;language=DFLT;+ssty=1;" at 4.99992pt
-> C:/Windows/Fonts/LMMATH-v0903.otf
Missing character: There is no ↦ in font LMMath-Regular/OT:script=math;language=DFLT;!
Missing character: There is no ? in font LMMath-Regular/OT:script=math;language=DFLT;!

据称缺失的字符肯定包含在拉丁现代数学中。例如,我可以在 Windows 字符映射和 FontForge 中看到它们。

有人知道发生了什么问题吗?

答案1

来自.log文件:

C:/Windows/Fonts/LMMATH-v0903.otf

因此,您似乎正在使用拉丁现代数学的一个非常非常旧的版本 (0.903)。当前版本是 1.958。使用后一个版本,我可以使用 luaTeX 和 XeTeX 获得 MWE 的所有数学字符。

如果 TeX 安装已过期,请更新它。此外,您可能希望从 Windows 字体系统目录中删除旧版本,以防止 XeTeX 查找和使用过期版本。如果您需要 TeX 世界之外的字体,请在那里安装更新的字体。

相关内容