WPF与GDI+ 图形绘制不是完全割裂 开来的图形 绘制方法,当进行大批量图形数据绘制时,利用WriteableBitmap结合GDI+和WPF图形绘制方法,能够大幅提高图形绘制的效率。
关于WriteableBitmap对象的详细属性和方法请查阅MSDN相关文档,下例实现了在WPF中通过WriteableBitmap调用GDI+进行图形内容绘制,大大的提供了图形绘制效率。
下例的主要思路是:创建WriteableBitmap,使用WriteableBitmap 创建Bitmap,利用Bitmap创建 Graphics ,创建 GraphicsPath ,使用路径绘制需要的图像,完成后使用Graphics 的 DrawPath方法将绘制路径关联到Bitmap,实现WriteableBitmap内容的绘制:
将WriteableBitmap的内容与Bitmap对象相关联;使用Graphics对象将图形绘制到内存中的Bitmap中,将WriteableBitmap的后台缓冲区图形内容复制到UI,示例代码如下:
//===========创建WriteableBitmap对象================
WriteableBitmap wBitmap = new WriteableBitmap(pixelWidth,pixelHeight,96,96,PixelFormats.Pbgra32,null);
//==========禁止图形内容输出到ui============================
wBitmap.Lock();
//============创建与WriteableBitmap后台缓冲数据关联的Bitmap 对象====================
Bitmap backBitmap = ne