欢迎来到天天文库
浏览记录
ID:38581786
大小:321.50 KB
页数:22页
时间:2019-06-15
《C#中基于GDI+(Graphics)图像处理系列之前言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C#中基于GDI+(Graphics)图像处理系列之前言前言图像处理是开发工程师们学习某种语言入门时就会遇到的问题,笔者刚开始接触C#使用GDI+进行图像处理,觉得太简单了,就没有深入研究,随着工作经验的积累,踏遍若干坑以后突然觉得还是有必要将这块的知识好好总结一下,毕竟还是有一些比较冷门的知识在实际应用中给我们的程序带来更多的灵活性,比如将图片保存成jpeg时进一步控制图片的质量、怎样获取任意角度旋转后的图像、怎样获取透明图像等等。本文后面将直接放出图像处理工具类的全部源码和示例程序源码,供有一定开
2、发能力的同学直接获取并使用。需要深入了解代码的同学可以根据以下章节详细了解功能点的实现,会详细说明获取高质量缩略图的要领、图像旋转的实现步骤等重要内容。图像处理工具类的全部源码/*************************************************************Copyright(C)Corporation.Allrightsreserved.**Author:lihaitao*Email:lhtzbj12@126.com*CreateDate:2016-8-15
3、*Description:图片处理工具,包括固定宽高、限制宽高、限制长边、文字水印(透明)、图片水印(透明、任意角度旋转)***RevisionHistory:*DateAuthorDescription*2016-8-15lihaitaocreate**************************************************************/usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usi
4、ngSystem.Text;usingSystem.Threading.Tasks;usingSystem.Drawing;usingSystem.Drawing.Drawing2D;usingSystem.Drawing.Imaging;usingSystem.IO;usingSystem.Runtime.InteropServices;namespaceSDLight.Util{publicpartialclassImageTool{#region变量//优化良好的图片每个像素平均占用文件大小,经
5、验值,可根据需要修改privatestaticreadonlydoublesizePerPx=0.18;#endregion#region生成高质量缩略图、优化图片//////生成高质量缩略图(固定宽高),不一定保持原宽高比//////目标保存路径///源文件路径///生成缩略图的宽度,设置为0,则与源图比处理
6、///生成缩略图的高度,设置为0,则与源图等比例处理///1~100整数,无效值则取默认值95///如image/jpegpublicboolGetThumbnailImage(stringdestPath,stringsrcPath,intdestWidth,intdestHeight,intquality,ou
7、tstringerror,stringmimeType="image/jpeg"){boolretVal=false;error=string.Empty;//宽高不能小于0if(destWidth<0
8、
9、destHeight<0){error="目标宽高不能小于0";returnretVal;}//宽高不能同时为0if(destWidth==0&&destHeight==0){error="目标宽高不能同时为0";returnretVal;}ImagesrcImage=null;ImagedestI
10、mage=null;Graphicsgraphics=null;try{//获取源图像srcImage=Image.FromFile(srcPath,false);//计算高宽比例floatd=(float)srcImage.Height/srcImage.Width;//如果输入的宽为0,则按高度等比缩放if(destWidth==0){destWidth=Convert.ToInt32(destHeight/d);}//如果输入的高为0,则按宽度等比
此文档下载收益归作者所有