雁过请留痕...
代码改变世界

随笔档案-2015年01月

以Lockbits的方式访问bitmap

2015-01-15 11:38 by xiashengwang, 6344 阅读, 收藏, 编辑
摘要: 用Bitmap.GetPixel和Bitmap.SetPixel访问像素点实在是太慢了,必须要用LockBits的方式访问内存才能改善,这里贴一个快速访问Bitmap每个像素点的包装类,是国外一个老外写的,感觉很好用。 public class LockBitmap { Bitmap source = null; IntPtr Iptr = IntPt... 阅读全文

【转】Graphics 关于呈现质量与合成模式

2015-01-14 15:34 by xiashengwang, 879 阅读, 收藏, 编辑
摘要: GDI+相关的作图,每种语言都有其自身的封装类,但本质上是一样的,下面这篇文章写的非常好,对于C#的Graphics类也是使用的,所以转载了,原文在这里: http://www.cnblogs.com/del/archive/2009/12/22/1630120.html 相关内容有: IGPGraphics.SmoothingMode; { 绘图质量 } IGPGraph... 阅读全文

【转】使用lockbits方法处理图像

2015-01-07 14:11 by xiashengwang, 874 阅读, 收藏, 编辑
摘要: 许多图像处理任务即时是最简单的文件类型转换,例如从32位深度到8位深度的格式转化,直接获得像素阵列要比使用GetPixel和SetPixel等方法的效率高得多。 你可能会发现DotNet采用托管机制,大多数情况下微软会推荐你使用托管代码,理由是便捷和安全。实际应用中,直接操作内存中的数据块是很少见的,尽管如此,图像处理恰恰是这类为数不多的情况之一,因为使用托管代码的效率低的难以忍受,特别是对巨幅图... 阅读全文