有人知道如何使标签或文本更加平滑吗?目前它们看起来相当锯齿状。由于我想让标签具有动态性,所以不能只从Photoshop中插入文本。
public partial class CustomLabel : Label
{
private TextRenderingHint _hint = TextRenderingHint.SystemDefault;
public TextRenderingHint TextRenderingHint
{
get { return this._hint; }
set { this._hint = value; }
}
protected override void OnPaint(PaintEventArgs pe)
{
pe.Graphics.TextRenderingHint = TextRenderingHint;
base.OnPaint(pe);
}
}
添加一个名为CustomLabel(或其他你想要的名称)的新自定义控件,并使用上面的代码。重新构建项目,然后你应该会在工具箱顶部的"MyProject Components"类别下看到CustomLabel控件。在这个自定义标签的属性窗格中,你会看到新的TextRenderingHint属性。将其设置为"AntiAlias"。在表单中添加另一个标签并比较它们的外观。
如果你想将其默认设置为AntiAlias,只需更改私有变量的默认值即可。
如果您正在使用Windows 7,您可以微调ClearType。只需打开开始菜单,输入“ClearType”并启动向导。我认为Vista和XP也有指南,但可能不是默认安装的,而是作为PowerToys或类似物提供...
安装 MacType 程序,它可以使你的 Windows 字体像 MacOS 一样平滑,我不知道为什么微软不修复其 Windows 平滑字体?如果微软修复了它的字体,我就不需要安装第三方应用程序来做这样的基本事情了。