在高DPI设置下调整RichTextBox字体大小

Ste*_* RG 16 c# scaling richtextbox dpi

我的C#应用​​程序包括带有简单文本框和richtext框的网格.通常,richtext框包含从其他地方复制和粘贴的富文本,并且rtf标记通常包括硬编码字体大小(\ fsXX,XX半点).在大多数情况下,富文本字体大小与简单文本字体大小相同或接近.

当DPI缩放设置为默认值以外的任何值时,富文本会失真,如下所示:

a)当应用程序未设置为DPI识别时,richtext显示为小于简单文本并且模糊.

b)当应用程序设置为DPI时,富文本大于简单文本.

有没有办法允许或强制richtext使用简单文本进行缩放,而不是直接编辑标记?

Kaj*_*nha -3

请尝试以下操作,仅 .NET Framework 4.5.2 及以上版本支持。Microsoft 还介绍了更多 HighDpiAutoresizing 控件。

<appSettings>
   <add key="EnableWindowsFormsHighDpiAutoResizing" value="true" />
</appSettings>
Run Code Online (Sandbox Code Playgroud)