首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Windows Mobile >

Image载入大图会内存溢出,有无替代方案?解决办法

2012-03-02 
Image载入大图会内存溢出,有无替代方案?WM5,C#环境ImageimgnewBitmap(@ D:\xx.jpg )因为图片比较大(20

Image载入大图会内存溢出,有无替代方案?
WM5,C#环境
Image   img   =   new   Bitmap(@ "D:\xx.jpg ");
因为图片比较大(2000×2000),这句会产生内存溢出,但是我用Resco   Photo   Viewer   5.32这款软件可以打开此图,只是出现一个进度掉,几秒后就打开了,说明一定有办法,向各位求助!

[解决办法]
NetCF加载图片比较耗费资源,下面的链接有evc写的imageloader.dll可以调用. 我试过,速度有提高,内存占用变小. 但是图片质量会下降.

http://www.microsoft.com/china/MSDN/library/Mobility/pocketpc/NETCompactFramework.mspx?mfr=true
[解决办法]
提供了的,你看看sample中的ResourceTest.cs中的方法LoadViaDLL和DrawFromDLL,其中调用了imageloader.dll中的非托管函数LoadBitmapFromResource

[DllImport( "ImageLoader.dll ", CharSet=CharSet.Unicode)]
public static extern IntPtr LoadBitmapFromResource (IntPtr hdc, uint dwResourceID, string pcszClass, IntPtr hModule);

热点排行