当前位置: 代码迷 >> Windows Mobile >> Image载入大图会内存溢出,有无替代方案?解决办法
  详细解决方案

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

热度:105   发布时间:2016-04-25 07:59:57.0
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);
  相关解决方案