当显示设置设置为小或大时,WinForm 的默认字体设置为 Microsoft Sans Serif, 8.25pt。表格上的所有内容都可以正确缩放。但是,当它设置为 Medium 时,它会将默认字体更改为 Microsoft Sans Serif,7.8pt,这会导致表单出现各种破坏性问题。
字体大小仅在“中”设置上更改是否有特定原因?
是的,默认情况下,如果您超过中等(超过 125%),Windows 就会开始提供帮助并模拟设置为每英寸 96 点的视频适配器。和小一样。这通过 Windows 让程序实际绘制到内存中的位图并在将位图传输到屏幕之前重新缩放位图。这是一个 appcompat 功能,结果通常不被认为是漂亮的,特别是文本变得“模糊”。然而,它确实有助于使程序在非常高分辨率的屏幕上可用,并防止主窗口具有邮票的大小。禁用此功能是此答案的主题,否则与您正在寻找的完全相反。
之所以如此,是因为 125% 缩放已经存在很长时间了,至少早在 2001 年的 XP 版本中。所以程序应该知道如何处理它。不能选择以 125% 启用自动 DPI 缩放。