`

ASP.NET画图与图像处理-压缩图片质量

阅读更多

ASP.NET画图与图像处理-获取图片宽度和高度

*ASP.NET画图与图像处理-生成缩略图

*ASP.NET画图与图像处理-生成高质量缩略图

*ASP.NET画图与图像处理-加水印

*ASP.NET画图与图像处理-写字与画线

*ASP.NET画图与图像处理-画点

*ASP.NET画图与图像处理-画弧

*ASP.NET画图与图像处理-GraphicsPath

*ASP.NET画图与图像处理-关于RectanglePath边框问题

*ASP.NET画图与图像处理-让Photoshop可打开

*ASP.NET画图与图像处理-压缩图片质量

*ASP.NET画图与图像处理-如何直接输出到页面

*ASP.NET画图与图像处理-提供一个很好的验证码程序

*ASP.NET画图与图像处理-获取照片拍摄日期


现在数码相机拍摄的照片一般都是上M的,这样的照片传到网上去是不太现实的,通过压缩其图片质量,可以大大减少文件大小。

System.Drawing.Bitmap img = new System.Drawing.Bitmap("C:\\source.jpg"); //相机中的照片
//System.Drawing.Graphics graphics = System.Drawing.Graphics.FromImage(img);


System.Drawing.Imaging.ImageCodecInfo encoder
= GetEncoderInfo("image/jpeg");
if (encoder != null)
{
//有我们需要的编码器

//EncoderParameters 是封装 EncoderParameter 对象的数组。
//构造函数中参数值 1 表示 EncoderParameters 含有一个EncoderParameter
System.Drawing.Imaging.EncoderParameters encoderParams =
new System.Drawing.Imaging.EncoderParameters(1);

//System.Drawing.Imaging.Encoder 对象封装一个全局唯一标识符 (GUID),它标识图像编码器参数的类别。
//设置 jpeg 质量为 60,注意应该为 long 类型
encoderParams.Param[0] =
new System.Drawing.Imaging.EncoderParameter(System.Drawing.Imaging.Encoder.Quality, (long)60);

//使用指定编码器按指定参数保存图片
img.Save("C:\\destination.jpg", encoder, encoderParams);

encoderParams.Dispose();
}



//graphics.Dispose();
img.Dispose();
//根据 mime 类型,返回编码器
private System.Drawing.Imaging.ImageCodecInfo GetEncoderInfo(string mimeType)
{
System.Drawing.Imaging.ImageCodecInfo result
= null;

//检索已安装的图像编码解码器的相关信息。
System.Drawing.Imaging.ImageCodecInfo[] encoders =
System.Drawing.Imaging.ImageCodecInfo.GetImageEncoders();
for (int i = 0; i < encoders.Length; i++)
{
if (encoders[i].MimeType == mimeType)
{
result
= encoders[i];
break;
}

}


return result;
}

分享到:
评论

相关推荐

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    书中还深入讲述了其他ASP.NET图书遗漏的高级主题,如自定义控件的创建、图像处理、加密等。此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软...

    ASP.NET4高级程序设计(第4版) 3/3

    书中还深入讲述了其他ASP.NET图书遗漏的高级主题,如自定义控件的创建、图像处理、加密等。此外,《ASP.NET 4高级程序设计(第4版)》专门提供了两章的内容来教你如何用Ajax 技术制作快速响应的页面,以及如何使用微软...

    vc1020345346241_newa

    【描述】中反复提到"画图程序",这表明这是一个专注于图像处理的应用程序,可能具有类似于Windows内置的“画图”程序的功能,比如绘制、编辑、保存和打开图片等。这个程序可能包含基本的绘图工具,如线条、形状、...

    Android画图学习总结(二)-转_玉树临疯

    位图还提供了`compress()`方法用于压缩图片,通常支持PNG和JPG两种格式。这在处理大量图像数据时尤为重要,可以有效减少内存占用和磁盘空间消耗。 ### 三、显示位图 在Android中,显示位图的主要工具是Canvas类。...

    C#编程经验技巧宝典

    111 &lt;br&gt;0184 如何在ASP.NET中获取文件的扩展名 111 &lt;br&gt;0185 如何在ASP.NET中用URL在页面之间传值 112 &lt;br&gt;0186 如何使用IsPostBack实现ASP.NET页面加载 112 &lt;br&gt;0187 如何利用输出缓存技术缓存...

Global site tag (gtag.js) - Google Analytics