源图文件名(绝对路径)///目标宽度(允许的最大宽度) 源图文件名(绝对路径)///目标宽度(允许的最大宽度)
C#Bitmap占用资源不释放解决方案.doc

C#Bitmap占用资源不释放解决方案.doc

ID:50515927

大小:60.80 KB

页数:2页

时间:2020-03-06

C#Bitmap占用资源不释放解决方案.doc_第1页
C#Bitmap占用资源不释放解决方案.doc_第2页
资源描述:

《C#Bitmap占用资源不释放解决方案.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、///

///缩小图片//////源图文件名(绝对路径)///目标宽度(允许的最大宽度)///新图片质量(1-100)publicvoidResizePic(stringstrPath,intnewWidth,intquality){BitmapbmOld,bmNew;try{//读取原图片bmOld=newBitmap(strPath);//为了解

2、决Bitmap不释放资源问题,先不同的名称保存图片,缩放完后把临时文件删除stringtempPath=strPath.Replace(".","_temp.");intoldWidth=bmOld.Width;intoldHeight=bmOld.Height;intnewHeight=(int)((double)newWidth/oldWidth*oldHeight);if(oldWidth

3、bmOld,newWidth,newHeight);//保存缩放后的图片bmNew.Save(tempPath);bmOld.Dispose();bmNew.Dispose();//获取图片Encoder信息ImageCodecInfo[]codecs=ImageCodecInfo.GetImageEncoders();ImageCodecInfoici=null;foreach(ImageCodecInfocodecincodecs){if(codec.MimeType=="image/jpeg")ici=codec;}EncoderParameterse

4、p=newEncoderParameters();//给定的参数qualityep.Param[0]=newEncoderParameter(Encoder.Quality,(long)quality);//从临时文件中读取图片Imageimg=Image.FromFile(tempPath);//以给定的参数保存图片img.Save(strPath,ici,ep);img.Dispose();//最后删除临时图片File.Delete(tempPath);}catch(Exceptionex){newDatabase().SysLog(ex,"PicSto

5、re.ResizePic(""+strPath+"","+newWidth+",""+quality+"",)");}finally{bmOld=null;bmNew=null;}}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。