GDI+在使用默认的Microsoft Office字体Calibri时,具有ClearTypeGridFit指定的大小在9pt和14pt之间时切换到二进制抗锯齿。这是什么原因呢?
这有些令人不安。还有多少其他字体也受到此背后的影响,并且在哪些大小下受到影响?是否有解决方法?(排除GDI,它没有相同的文本布局功能)
以下是我用来生成图像的代码:
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.TextRenderingHint = TextRenderingHint.ClearTypeGridFit;
var height = 0;
for (var i = 1; i <= 17; i++)
{
using (var font = new Font("Calibri", i))
{
var text = "ClearTypeGridFit " + i + "pt";
e.Graphics.DrawString(text, font, SystemBrushes.ControlText, 0, height);
height += (int)e.Graphics.MeasureString(text, font).Height;
}
}
}