MathML 字体
要获得良好的数学渲染效果,需要具有适当 Unicode 覆盖范围和 Open Font Format 特征的字体。本页介绍用户如何在浏览器中安装此类数学字体以正确显示 MathML。
安装说明
总的来说,建议同时安装Latin Modern Math(它使用了Computer Modern 风格,这种风格因数学公式而流行)和STIX Two Math(它具有广泛的科学字符 Unicode 覆盖范围)。在接下来的几节中,您将找到在各种操作系统上安装这些字体的详细说明。
Windows
按以下步骤安装Latin Modern Math和STIX Two Math字体
- 下载 latinmodern-math-1959.zip。
- 打开 ZIP 存档,进入
latinmodern-math-1959
目录,然后再进入otf
目录。您将找到一个latinmodern-math
字体文件。 - 打开
latinmodern-math
字体文件,然后单击安装按钮。 - 下载 static_otf.zip。
- 打开
static_otf.zip
ZIP 存档,然后进入static_otf
目录。在该目录的文件中,您将找到一个STIXTwoMath-Regular
文件。 - 打开
STIXTwoMath-Regular
文件,然后单击安装按钮。如果需要,您也可以对目录中的其他字体文件执行相同的操作。
注意:Cambria Math 在 Windows 上是默认安装的,应该能确保相对较好的 MathML 渲染效果。
macOS
按以下步骤安装Latin Modern Math字体
- 下载 latinmodern-math-1959.zip。
- 解压缩 ZIP 存档,进入
latinmodern-math-1959
目录,然后再进入otf
目录。您将找到一个latinmodern-math
字体文件。 - 双击
latinmodern-math
字体文件,然后从打开的窗口中单击安装字体按钮。
注意:如果您使用的是 macOS Ventura(13 版)或更高版本,则 STIX Two Math 已经预装,您可以跳过以下步骤。
按以下步骤安装STIX Two Math字体
- 下载 static_otf.zip。
- 打开
static_otf.zip
ZIP 存档,然后进入static_otf
目录。在该目录的文件中,您将找到一个STIXTwoMath-Regular.otf
文件。 - 打开
STIXTwoMath-Regular.otf
文件,然后从打开的窗口中单击安装字体按钮。如果需要,您也可以对目录中的其他字体文件执行相同的操作。
注意:从 OS X Lion(10.7 版)开始,预装了一个过时的 STIX 版本。虽然某些浏览器能够使用它,但强烈建议按照上述说明进行操作以获得最佳的数学渲染效果。
Linux
下面,您可以看到在流行的 Linux 发行版上安装Latin Modern Math和STIX Two Math字体的命令,这些命令可以通过您的包管理器执行。如果您的 Linux 发行版没有提供这些字体的专用软件包,也提供了替代方法。
基于 Debian 的发行版(包括 Ubuntu 和 Mint)
sudo apt-get install fonts-lmodern fonts-stix
基于 Fedora 的发行版
sudo dnf install texlive-lm-math stix-math-fonts
基于 openSUSE 的发行版
sudo zypper install texlive-lm-math stix-fonts
Arch Linux
sudo pacman -S otf-latinmodern-math otf-stix
TeXLive 软件包
如果您的 Linux 发行版没有提供Latin Modern Math和STIX字体的软件包,请考虑安装包含Latin Modern Math和XITS字体的 texlive
软件包。例如,在 Mageia 上
sudo urpmi texlive-dist texlive-fontsextra
但是,您很可能需要确保系统知道这些字体。添加一个指向 TeXLive 的 opentype
目录的字体配置文件 /etc/fonts/conf.avail/09-texlive-fonts.conf
,例如:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<dir>/your/path/to/texmf-dist/fonts/opentype</dir>
</fontconfig>
最后,将此配置文件添加到系统字体位置列表中,并重新生成字体缓存
ln -sf /etc/fonts/conf.avail/09-texlive-fonts.conf /etc/fonts/conf.d/
fc-cache -sf
上游软件包
如果您的 Linux 发行版上没有可用的软件包,或者您只想安装上游软件包,请尝试此方法:
- 下载 latinmodern-math-1959.zip 和 static_otf.zip。
- 如果
~/.fonts
不存在,请创建一个,并将latinmodern-math.otf
和STIXTwoMath-Regular.otf
放入该目录。 - 运行
fc-cache -f
来重新生成字体缓存。
Android
您必须使用 MathML-fonts 附加组件。
Noto Sans Math 提供了良好的数学符号 Unicode 覆盖范围和 数学布局。
其他系统
在其他系统上,请考虑使用您的包管理器安装一个带有 MATH 表的字体。请注意,这些字体通常随 TeX 发行版(如 TeX Live)一起提供,但您可能需要遵循特定说明才能使您的系统识别这些字体。作为最后的手段,可以安装MathML 字体附加组件。
高级设置
在接下来的几节中,您将找到有关 MathML 字体安装和配置的其他有用技巧。
阿拉伯数学字母符号
目前,很少有字体能为阿拉伯数学字母符号提供合适的字形。如果您可能需要这些字符,我们建议安装XITS或Amiri字体。
无管理员权限安装
如果您需要在没有管理员权限的系统上安装字体,最简单的选择是使用MathML-fonts 附加组件。请注意,使用此附加组件并非最优方案,因为它会强制您的 Gecko 浏览器在您访问的每个页面上加载 CSS 样式表,并在所有包含 MathML 内容的页面上加载 Web 数学字体。
在 UNIX 系统上,更好的替代方案是将Latin Modern Math和STIX的 OTF 文件安装到某个本地字体文件夹,并(如果需要)在其上运行 fc-cache
。在 macOS 和 Linux 上,标准路径分别为 ~/Library/Fonts/
和 ~/.fonts
。
带有 MATH 表的字体
您实际上可以安装任何数学 OpenType 字体并将其用于 MathML 渲染。一些浏览器在其字体偏好设置菜单中提供了一种配置 MathML 默认字体的方式。或者,您可以尝试MathML Font Settings 附加组件。