在透明像素上使用DrawString时出现了糟糕的文本渲染。
- 论坛
- 在透明像素上使用DrawString时出现了糟糕的文本渲染。
9 浏览
在透明像素上使用DrawString时出现了糟糕的文本渲染。
当将文本渲染成位图时,我发现在非不透明alpha区域上渲染的文本看起来非常糟糕。随着底层像素变得更加透明,问题会逐渐加剧。如果我不得不猜测的话,当底层像素透明时,文本渲染器会将任何反锯齿的“灰色”像素绘制为纯黑色。
以下是一些屏幕截图:
在透明像素上绘制的文本:
在半透明像素上绘制的文本:
在不透明像素上绘制的文本:
以下是用于渲染文本的代码:
g.SmoothingMode = SmoothingMode.HighQuality; g.DrawString("按空格键", Font, Brushes.Black, textLeft, textTop);