我在使用 Windows XP。
前段时间,在尝试一些不同的字体管理程序时,出现了问题。我不知道发生了什么,但现在一些应用程序在其某些 GUI 控件中使用 System(12) 字体,而不是 Windows 默认字体(我认为应该是 Microsoft Sans Serif 8)。
例如,大多数安装程序(在安装开始时,在后续的对话框中字体显示正常)和许多程序都会发生这种情况。
以下是 Microsoft/Sysinternals 的自动运行:
您可以看到选项卡名称以及底部面板中的文本以 System(12) 字体显示。在另一台机器上,它们只使用“MS Sans Serif 8”(使用窗口间谍)。
我试过:
- 删除 Windows 字体缓存文件(c:\windows\system32\fntcache.dat)
- 修改“MS Shell Dlg”和“MS Shell Dlg 2”的注册表值,如下所述这里
...无济于事。
关于我还可以尝试什么来恢复默认字体,还有什么建议吗?
答案1
您可能已经卸载了“MS Sans Serif”字体。
Autoruns 的对话框资源均通过以下属性指定:
FONT 8, "MS Sans Serif"
而不是更常见的 UI 字体之一,例如“MS Shell Dlg”映射。因此,如果没有“MS Sans Serif”或任何可用的替代品,Windows 就会退回到可怕的最后手段默认字体“System”。
'MS Sans Serif' 是一种位图字体,因此即使在标准系统上,Autoruns 的窗口也可能看起来不正确,因为不会使用 ClearType,就像默认的 'MS Shell Dlg' 映射到 Tahoma 或 'Microsoft Sans Serif'(与 'MS Sans Serif' 不同的字体,只是为了让您感到困惑)一样。
因此重新安装字体(文件“sserife.fon”)应该可以恢复正常行为...或者,您可以设置 FontSubstitute 将其映射到您需要的另一种字体做已经安装,例如:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"MS Sans Serif"="Tahoma"
答案2
我在 Windows 7 x64 上遇到了上述问题(显示系统字体而不是 MS Sans serif),并且还出现了其他症状 - 控制面板中的字体显示 Arial 而不是 MS Sans serif。将区域设置位置和非 Unicode 程序语言切换为英语(美国)并切换回我的原始设置(俄语,俄罗斯)后,问题得以解决。我想仅切换非 Unicode 程序语言就足够了。
答案3
右键单击桌面并选择Properties
。
接下来,选择Appearance
选项卡并单击高级。
您应该可以从这里更改一些默认字体。
如果这仍然不能解决问题,那么系统级别似乎出了问题。
转到一个Command Prompt
窗口并输入以下内容:SFC /SCANNOW
它应该扫描并替换系统文件。