清除 Mac OS X 中的字体缓存和字体数据库以解决异常字体问题

OS X 中的终端 字体安装在标准之外之后~/Library/Fonts 目录,但在某些情况下也可能突然发生。虽然一些字体问题可以通过修复权限来解决,但更隐蔽的问题可能需要您转储字体缓存并重建它们。

这不是你应该随便做的事情,因为没有理由执行此任务,除非你有与缓存、错误或特定显示错误有关的非常具体的字体问题,其中显示字形而不是字体。

如何在 OS X 中清除字体数据库和字体缓存

在终端中,输入以下命令字符串并按回车键。这使用 sudo,它需要管理员密码才能执行,就像通常使用命令行项一样,您希望命令出现在一行中:

sudo atsutil 数据库 -remove

这将从 OS X 系统和用户中删除所有字体数据库和缓存。根据 atsutil 的手册页,-remove 标志将执行以下操作:

将删除 fontd 系统或用户数据库以及所有缓存
文件。删除数据库可能会导致字体注册状态丢失:
在标准字体目录之外激活的字体、禁用的字体和字体库。新数据库将从字体重新生成
在用户注销、
重新启动或 fontd 服务器重新启动后安装标准字体目录。

使用权限和重启完成字体显示故障排除

当 atsutil 完成运行时,您可能想要修复 OS X 中的权限终端也可以使用 disktuil 命令(毕竟你已经在终端中了):

sudo diskutil repairPermissions /

修复磁盘权限可能需要相当长的时间,因此请做好等待长达数小时的准备,具体取决于驱动器的大小和速度以及 Mac 上的文件数量。

上述两个过程都完成后,像往常一样继续并重新启动 Mac,您的字体现在应该可以正常显示,没有任何其他问题。

如果您想知道,这张图片是此类字体显示问题的示例:

字体在 Mac OS 中显示错误X

显然,如果你的 Mac 上的每一种字体都像这样显示,作为一个带有大写字母 A 的方框,如 [A] [A] [A],那么做任何事情都可能具有挑战性,在这种情况下你可能需要启动到 OS X 安全模式,甚至进入单用户通过在引导期间按住 Command+S 运行上述命令来进入模式。

请在评论中告诉我们这是否对您有用,或者您是否有针对 Mac 上特定字体问题的其他解决方案。