Jaz*_*mov 9 dpi fontconfig anti-aliasing cleartype windows-10
观看视频演示:vimeo.com/155636855
我已经解决这个问题太久了——现在我希望得到一些外部帮助。
* 这与 VM 技术无关——请参阅帖子末尾的补充说明 *
附加的图像包含写字板文件的并排图像,其中文本代表字母表中的所有字母,包括小写和大写。左侧的图像取自在 Windows 10 主机(“主机”操作系统)上运行的 Windows 10 虚拟机(“来宾”操作系统);右边的图像是从 Windows 主机上截取的:
放大图像并仔细查看每个字母边缘的差异:左侧比右侧平滑得多 - 如果您想快速得出结论,CLEARTYPE 不是问题(请参阅下面的要点),至少不是从“开”与“关”的角度来看(换句话说,可能涉及与 ClearType 相关的注册表设置,但与 ClearType 相关的 Windows UI 上没有任何内容导致这种情况,因为两台机器都针对 ClearType 和ClearType 在主机和来宾计算机上均启用)。
事实:
两个操作系统都使用相同的 Myriad 字体 TrueType (TTF) 字体文件
两个操作系统都设置为相同的屏幕分辨率。
我以为这是 Windows 视频驱动程序问题,但我有最新的 nVidia 驱动程序,而且我在主机和来宾上都运行带有 DirectX 12 的相对高端的 GeForce GTX 560 卡。
两个写字板文件都使用相同的字体、字体大小、字体样式和缩放比例 (100%)。
两个 Windows 10 操作系统都使用 Windows 更新进行了全面更新。
ClearType 在 Windows 主机和虚拟机中均处于活动状态(开启)。我尝试了 ClearType 的各种组合(在主机上关闭它并在来宾上关闭它,以及所有其他组合)并且与来宾相比,主机上显示的粗糙边缘工件没有变化。
我不知道来宾和主机之间有任何 DPI 差异。其他字体,例如 Windows 包含的 Arial 字体,仅在主机上显示类似的粗糙问题——我只是选择了 Myriad Pro 来说明问题。
两种字体的颜色均为 100% BLACK (#000)。
此问题出现在所有可以呈现 TrueType 字体的应用程序中。我以写字板为例,但它也发生在 Microsoft PowerPoint 和 TechSmith 的 Camtasia 中。
此问题与 TrueType 字体无关;OTF 字体也会发生这种情况。
而且,就其价值而言,我是否通过远程桌面会话 (RDP) 或使用 TeamViewer 之类的工具从另一台计算机查看主机并不重要;此外,当我使用 RDP 或 TeamViewer 时,来宾的行为不会改变。
很明显,主机上的字体渲染子系统出了点问题。有趣的是,主机是一台 Windows 7 Ultimate 机器,直到大约一周前(2016 年 2 月上旬),当时我通过安装 Windows 10 Enterprise 对其进行了升级。我曾希望从 Windows 7 升级到 Windows 10 可以解决字体渲染问题,尤其是因为我已经看到在同一主机上的虚拟机中运行的 Windows 10 没有字体渲染问题。不幸的是,Windows 10 的更新没有修复字体渲染(我没有进行全新的 Windows 10 安装——我进行了保留以前操作系统文件和设置的更新)。
由于我上面写的所有内容,我怀疑注册表中与主机操作系统的字体渲染相关的某些值已损坏、丢失或不正确——但这可能是什么?
* 添加了 2/12/2016 * 我使用了一个全新的硬盘驱动器并将一个干净的 Windows 10 实例安装到我上面提到的“主机”正在运行的同一硬件上。新的 Windows 10 实例具有流畅的字体,就像 Windows 10 的虚拟机 (VM) 实例一样。 这告诉我,机器的硬件没有导致生成右侧图像的问题,并且 VM(或虚拟化)技术)不是造成差异的原因。我现在在物理机上有一个装有 Windows 10 的硬盘 A,我可以启动并看到右侧的图像;我在同一台机器上有第二个装有 Windows 10 的硬盘 B,我可以启动以显示左侧的图像。
然后我擦除了那个新硬盘并从 Microsoft 源安装 DVD 安装了 Windows 7 Ultimate。它还在左侧呈现图像(正确、平滑的字体)。所以问题不在于 Windows 7 在我的硬件上有问题,而 Windows 10 没有纠正它——现在我很清楚,如果我重新安装 Windows 7,Windows 7 不会在我的硬件上显示字体问题。
因此,撇开虚拟化不谈——我似乎目睹了现有主机和“普通”Windows 7/10 机器之间的字体渲染子系统中的某种损坏(请记住,我现有的主机是从 Windows 7 Ultimate 升级的)到 Windows 10 Enterprise,在我升级之前,Windows 7 Ultimate 中确实存在问题;事实上,我希望升级能解决这个问题——唉,它没有)。
我会在空闲时间尝试查看/比较密钥注册表项中的差异,但我仍然渴望听到任何专家的意见,他们可能会帮助我从根本原因归零。
我从来没有注意到 ClearType 字体渲染在大字体大小上效果如此糟糕......但在我的 Win10 上它与你的计算机上的一样。
在我看来,您描述的行为不是一个错误......而是一个功能:-)
看看下面的图片:
图 1:ClearType 渲染已打开(单击图像可看得更清楚)
当 ClearType 打开时,Windows 字体渲染引擎会尝试利用 LCD R/G/B 子像素来优化字体渲染。如果您检查左侧的放大图像,您可以看到每种字体都有蓝色/红色平滑,这是由于 LCD 子像素结构所致(有关子像素渲染的更多信息请参见此处)。
但是,正如您所指出的,这对于大字体来说效果不佳。
但它在小字体上仍然表现得很好。
图 2:ClearType 渲染已关闭(单击图像可看得更清楚)
如果关闭 ClearType 渲染,则 Windows 字体渲染引擎将停止利用 LCD 子像素结构,现在字体将具有简单的灰色平滑(而不是蓝/红平滑)。
这在大字体大小上效果更好......但在小字体大小上效果非常差,因为你可以通过查看文件名渲染、菜单渲染等来检查......
现在,在您的来宾 PC 上,字体渲染看起来更好,这可能是因为仅当 Windows 检测到物理 LCD 屏幕时才会启用 ClearType 子像素字体渲染。如果虚拟电脑没有检测到物理 LCD,它可能会使用“标准”(灰度)字体平滑。
现在,您可以尝试强制 Windows 使用“标准/灰度”字体平滑,而不是 Cleartype/子像素平滑,但在我的计算机上,它没有任何区别:强制灰度平滑给出与禁用 Cleartype 相同的结果控制面板。(有关尝试调整 Cleartype 渲染的注册表黑客的更多信息)
| 归档时间: |
|
| 查看次数: |
1775 次 |
| 最近记录: |