當我將一個字符串繪製到一個緩衝區中時,得到的輸出不會按照我期望的方式消除鋸齒。此代碼說明了這個問題......只是把這個在一個標準的智能設備項目的Form1.cs中:如何在Compact Framework上使用雙緩衝區的ClearType?
protected override void OnPaint(PaintEventArgs e)
{
Bitmap buffer = new Bitmap(Width, Height, PixelFormat.Format32bppRgb);
using(Graphics g = Graphics.FromImage(buffer))
{
g.Clear(Color.White);
g.DrawString("Hello, World", Font, new SolidBrush(Color.Black), 5, 5);
}
e.Graphics.DrawImage(buffer, 0, 0);
}
在另一方面,如果我只是畫串入Graphics對象,它是與PaintEventArgs
傳遞,它就像我所期望的那樣在ClearType中呈現。
我想我必須創建我的圖形緩衝區的方式,使它使用字體平滑,但我沒有看到一種方式來做到這一點。
我以某種方式懷疑這是可用的CF. – leppie 2009-07-27 12:43:14