开发者

Fast display of raw pixel data from byte[] .net Compact Framework

I'm playing with rasters and I want to know the fastest way to paint a byte[] to the screen using the .net CF. The array is a standard 24bit raster (Screen.Width * Screen.Height * 3 in length, RGB order) and right now I'm saving the array to a Bitmap开发者_运维问答 object and drawing it to the screen using the Graphics.DrawImage(bmp) method. I feel that there must be someway of doing this w/o having to create a Bitmap.

I'm using C#, but I can to go native if needs be (I'd prefer P/Invokes if possible, assuming that is the case)

Thanks for any help!


When drawing images, I found the native BitBlt to perform alot better than using .NET Graphics, you could use it to display your Bitmap or even use GDI to create the bitmap instead.

http://msdn.microsoft.com/en-us/library/aa923590.aspx

An example of using BitBlt in .NET CF (although it's the reverse of what you are doing, and in VB.NET):

http://anoriginalidea.wordpress.com/2008/01/03/getting-a-screenshot-using-vbnet-on-the-compact-framework-20/

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜