为什么字体有时在Mac OS X上看起来“胖”?


19

有时,从挂起状态恢复时,Mac OS X中的字体看起来比正常字体“杂乱无章”。不幸的是,现在我无法让我的Macbook Pro表现出“正常”的行为进行比较,昨天和今天都异常。如果我可以获得我认为是“正常”的屏幕截图,请添加它们。

“修复”这是随机的。我使用外接显示器,有时将其拔出并重新插入,甚至将其关闭然后再打开都可以。有时在连接显示器(或不连接显示器)的情况下,检测显示器是可行的。有时需要注销或完全重新引导。

使用的显示:

  • Macbook Pro 15英寸内置显示屏
  • 戴尔27英寸液晶屏(2009年型号)

我看到这种情况的软件,至少最值得注意的是:

  • Firefox(以下屏幕截图)
  • iTerm
  • 东西
  • MacIrssi(以下屏幕截图)

我正在使用Mac OS X 10.5.8。

MacIrssi与Inconsolata 16 pt的“异常”观点。

异常(Macirssi)

Firefox的“异常”视图。

异常(Firefox)

终于让它切换回了,尽管从挂起恢复为“胖”之后:-(。

正常(Macirssi)

和“正常”在Firefox中:

正常(Firefox)


如何使字体恢复正常?重启?
Stephen Jennings 2010年

到目前为止,它是随机的。有时候,当我使用外接显示器,关闭/开启或拔下电源时,检测显示器是否可以做到这一点,这就是我想问这个问题的原因,我想:-)。
jtimberman 2010年

@Arjan,我更新了帖子。现在是“异常”。
jtimberman 2010年

1
您现在可以添加“异常”版本的屏幕截图吗?
Brian Campbell 2010年

因为他们更快乐,并且在Apple上感觉更自在...所以,他们“照样玩耍”,感到他们的舒适发胖。这就是为什么Mac上的某些字体看起来更胖的原因

Answers:


21

当您放大图像时,问题变得明显:

放大“胖”字体的屏幕截图,显示彩色像素
放大了“瘦”字体的屏幕截图,显示了灰度像素

如您所见,瘦版本完全是灰度的,而胖版本的像素有些偏红,有些像素有些偏蓝。

发生这种情况是由于子像素抗锯齿。LCD屏幕实际上并不包含可以是任何颜色的正方形像素。相反,它具有三个细长的矩形元素,分别是红色,绿色和蓝色。(以下图片来自维基百科)。

各种显示器上的像素图案

使用抗锯齿字体时,您可以改变三种颜色中每种颜色的强度,而不是简单地使用灰色阴影,而是以三倍于水平分辨率的方式渲染,而这种分辨率只需通过使用灰色阴影进行抗锯齿即可达到。我提供的放大图片实际上并不代表您所看到的。相反,由于像素的形状和位置,字体应该看起来更加平滑。渲染如下所示会更准确:

子像素抗锯齿文字示例

因此,您看到的是,有时字体是使用亚像素抗锯齿渲染的,而有时是使用普通的抗锯齿渲染的。我猜想正在使用的亚像素抗锯齿算法已针对白色背景上的黑色文本进行了优化,这可以解释为什么当在黑色背景上被视为白色文本时,文本看起来有点“胖”。

另一方面,它可能只是实际字体的更准确呈现。如果您查看的是相同字体的正确放大版本,则它看起来比上面显示的“紧身”版本大胆且不那么笨拙:

高字体大小的示例文本

它在两个版本之间来回切换的原因可能是由于您的第二台显示器。我不确切知道操作系统何时决定或如何决定,但是它很可能检测到具有未知子像素布局的LCD。因为它不知道像素的布局,所以它带有更安全的标准抗锯齿功能(因为在错误布局的LCD上显示子像素抗锯齿效果时,看起来确实很奇怪)。看来,有时您会使它做出一个决定,有时又使它做出另一个决定。我相信,一旦以某种呈现模式启动了应用程序,它就不会改变,直到您退出并重新启动该应用程序为止,这可以解释为什么您会看到不稳定的行为。

如果您只是想在所有应用程序中保持一致,则无论是否使用第二个LCD并始终使用窄字体,都可以在“外观系统”首选项面板中关闭字体平滑功能:

在外观系统首选项面板中突出显示“可用时使用LCD字体平滑”

当然,您到处都会失去亚像素抗锯齿功能。正如John Rudy所指出的,通过遵循使用该defaults程序手动设置级别的说明,您可以获得更精细的控制。或者如果您还没有使用Snow Leopard,那么您应该在系统偏好设置中仍然可以使用更细粒度的控件。


仅供参考,当我取消选中“在可用时使用LCD字体平滑处理”时,我在笔记本电脑显示屏上的效果最佳。
jtimberman 2011年

12

看起来抗锯齿方面的差异,如果您在挂起/恢复和外部监视器连接/断开连接时看到此行为,这可能是有道理的。可能是您的Dell显示器正在触发系统使用的抗锯齿模式的更改。

根据Mac OS X的版本,您可能在“外观系统偏好设置”窗口中具有控制系统使用的字体平滑的选项。(从Snow Leopard开始,我仅看到一个复选框“在可用时使用LCD字体平滑处理。”这似乎与旧的“​​自动-最适合主显示”设置相对应。)

您仍然可以通过Terminal.app中的系统属性来配置它。本文介绍了详细信息,下面将对其进行总结:

字体平滑有五种设置:

  1. 自动-最适合主显示
  2. 标准-最适合CRT(可选1
  3. 灯(选项2
  4. 中-最适合平板显示器(可选3
  5. 强(选项4

要严格控制它,使您不再处于自动状态,请使用Terminal.app更改系统范围的属性。我怀疑如果您这样做,显示器的切换(在显示器之间,我怀疑您的屏幕保护程序可以暂停/恢复)应该不再与您的设置混淆。

在Terminal.app中,输入:

    defaults -currentHost write -globalDomain AppleFontSmoothing -int 2

更改为2最喜欢的选项(在上面的列表中,在文本后使用选项编号)。


很好的参考!我猜它的“而不是依靠LCD报告应该使用哪些设置”确实可能导致突然的变化。
Arjan

我使用的是iTerm,而不是Terminal.app,等宽屏幕截图来自Macirssi。
jtimberman 2010年

当我使用Leopard而不是Snow Leopard时,该选项在“系统偏好设置”->“外观”中可用。在Macbook显示屏上,“ Standard ... CRT”实际上对我来说看起来是“正常”,尽管明天我回到办公室时必须等待检查外部LCD。
jtimberman 2010年

2
@jtimberman,因为我使用的是iTerm,而不是Terminal.app,请注意,John给出的命令仅对Terminal没有作用。您也可以使用iTerm运行它。
Arjan

0

如果使用的是CRT,则在CRT完全预热之前,可能会出现一些颜色,亮度和高宽比的失真。您正在使用什么显示器?


内部Macbook LCD显示器。我什至没有CRT。
jtimberman 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.