Ian*_*oyd 11 aero cleartype aero-glass
使用GDI +在玻璃上绘制文字:
graphics.DrawString(s, Length(s), font, MakePointF(x, y), brush);
Run Code Online (Sandbox Code Playgroud)
您会注意到启用ClearType的文本在玻璃上绘制得非常糟糕:
但是当玻璃禁用时,文字当然画得很好:
通过比较,这里是反别名字体平滑:
这里没有字体平滑:
注意:没有字体平滑看起来比实际更好,因为StackOverflow会调整显示器上的图像大小.
如何在玻璃上绘制ClearType文本?
Mark建议的是,你不能尊重用户对文本渲染的偏好(即" SystemDefault".ClearType不能在玻璃上起作用,你也不能使用它.
换句话说,如果您在玻璃上渲染,则必须使用以下方式覆盖文本渲染:
graphics.SetTextRenderingHint(TextRenderingHintAntiAliasGridFit);
Run Code Online (Sandbox Code Playgroud)
否则你应该保留TextRenderingHint它的默认值TextRenderingHintSystemDefault.
| 归档时间: |
|
| 查看次数: |
2048 次 |
| 最近记录: |