TeX Live mktexmf 无法找到字体的解决方案

当你在 Windows 上使用 TeX Live 编译包含自定义字体的 LaTeX 文档时,可能会遇到如下错误:

kpathsea: Running mktextfm Fontin

The command name is F:\texlive\2025\bin\windows\mktextfm
name = Fontin, rootname = Fontin, pointsize =
mktexmf: empty or non-existent rootfile!

kpathsea: Running mktexmf Fontin.mf

The command name is F:\texlive\2025\bin\windows\mktexmf
Cannot find Fontin.mf.
kpathsea: Appending font creation commands to missfont.log.

kpathsea: Running mktextfm Fontin

The command name is F:\texlive\2025\bin\windows\mktextfm
name = Fontin, rootname = Fontin, pointsize =
mktexmf: empty or non-existent rootfile!

kpathsea: Running mktexmf Fontin.mf

The command name is F:\texlive\2025\bin\windows\mktexmf
Cannot find Fontin.mf.

这个错误的原因是 TeX 系统找不到所需的字体文件(特别是 .mf.tfm 文件),因此无法生成它们。奇怪的是,你可能已经安装了该字体。

解决方法其实很简单:将字体安装为 所有用户可用

  1. 找到 Fontin 字体文件(例如 Fontin.ttf)。
  2. 右键点击该文件。
  3. 从右键菜单中选择 为所有用户安装(Install for all users)。

当字体以所有用户的身份安装完成后,重新编译文档,问题解决。