`

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;
}

分享到:
评论

相关推荐

    Maximizing ASP.NET Real World, Object-Oriented Development(2005)

    Maximizing ASP.NET Real World, Object-Oriented Development(2005)

    ASP.NET画图全攻略

    ASP.NET 画图全攻略 ASP.NET 画图全攻略是指利用 ASP.NET 技术来生成各种类型的图表,以便更好地显示和分析数据。传统的 ASP 技术不支持画图表,需要利用 ActiveX 或 Java Applets 来实现这个功能。但是,新近出现...

    ASP.NET实现网络通信--vs2003

    ASP.NET实现网络通信--vs2003,ASP.NET实现网络通信--vs2003

    Aspnet-ASP.NET-WebForm-Identity-Demo.zip

    Aspnet-ASP.NET-WebForm-Identity-Demo.zip,asp.net-webform-identity-demoasp.net-webform-identity-demo,asp.net是一个开源的web框架,用于使用.net构建现代web应用和服务。asp.net创建基于html5、css和javascript...

    asp.net画图组件相关

    它可能涵盖了使用GDI+(Graphics Device Interface Plus)库来创建和修改图像,以及如何将这些操作与ASP.NET控件集成。 2. **WebSamples.zip**: 类似于WebSamples4.0.zip,这个文件可能包含了更早期版本的ASP.NET...

    pro-asp.net-mvc-5-platform-master.zip

    ASP.NET MVC 5 是微软开发的一个强大的Web应用程序框架,它结合了ASP.NET Web Forms和MVC(模型-视图-控制器)设计模式的优点,为开发者提供了更灵活、可测试的Web开发解决方案。这本书"精通ASP.NET MVC5"的源代码...

    ASP.NET Core:ASP.NET-Core-简介与环境搭建.docx

    ASP.NET Core:ASP.NET-Core-简介与环境搭建.docx

    【计算机毕业课程设计】asp.net通讯录管理系统课程设计.zip

    ASP.net项目整站源码-毕业设计期末大作业课程设计 ASP.net项目整站源码-毕业设计期末大作业课程设计 ASP.net项目整站源码-毕业设计期末大作业课程设计 ASP.net项目整站源码-毕业设计期末大作业课程设计 ASP.net项目...

    【计算机毕业课程设计】asp.net企业客户管理系统cms系统.zip

    ASP.net项目整站源码-毕业设计期末大作业课程设计 ASP.net项目整站源码-毕业设计期末大作业课程设计 ASP.net项目整站源码-毕业设计期末大作业课程设计 ASP.net项目整站源码-毕业设计期末大作业课程设计 ASP.net项目...

    ASP.NET WEB开发学习实录-----源码.rar

    ASP.NET Web开发是一种微软公司推出的用于构建Web应用程序的技术框架,它基于.NET Framework或.NET Core,提供了丰富的功能和工具,使得开发者能够快速、高效地构建动态、数据驱动的网站和应用程序。这个"ASP.NET ...

    asp.net架构基础知识--asp.net请求的处理过程

    ASP.NET架构基础知识主要涵盖Web应用程序如何通过ASP.NET框架进行处理,特别是关于ASP.NET请求的处理过程。这个过程涉及多个步骤,从用户发起请求到服务器返回响应。以下将详细阐述这一流程。 1. **请求到达**: 当...

    asp.net-core-mvc-2019-learn-video.zip

    - **测试友好**:ASP.NET Core MVC支持模拟请求和路由,方便编写单元测试和集成测试,确保代码质量。 - **命令行工具(CLI)**:使用命令行工具,开发者可以轻松创建、构建和部署ASP.NET Core项目,提高了开发效率...

    ASP.NET4揭秘---概述

    asp.net概述 概括了asp.net各内容

    asp.net+sql人才网站设计-含系统源码

    asp.net+sql人才网站设计-含系统源码asp.net+sql人才网站设计-含系统源码asp.net+sql人才网站设计-含系统源码asp.net+sql人才网站设计-含系统源码asp.net+sql人才网站设计-含系统源码asp.net+sql人才网站设计-含系统...

    亮剑ASP.NET项目开发案例导航-part01(共三分卷)

    亮剑ASP.NET项目开发案例导航-part01(共三分卷)

    亮剑ASP.NET项目开发案例导航-part03(共三分卷)

    《亮剑ASP.NET项目开发案例导航-part03》是...通过这些章节的学习,开发者不仅能深入理解ASP.NET的各个方面,还能在实际项目中灵活运用,提高开发效率和应用质量。每个章节都值得深入研究,以便全面掌握ASP.NET的精髓。

    ASP.NET 信息管理软件开发--物业管理系统(源码+文档)

    3. **报修与服务请求**:业主或租户可以通过系统提交维修请求,管理员可以跟踪处理进度,确保服务质量。 4. **资源管理**:管理公共设施如停车场、健身房等的预约和使用情况,防止资源冲突。 5. **公告通知**:...

    ASP.NET 2.0入门经典:C#编程篇.pdf

    6. **数据访问**:ADO.NET是.NET Framework中用于数据库访问的组件,ASP.NET 2.0通过ADO.NET与各种数据库(如SQL Server)交互,提供了GridView、FormView等控件方便地展示和操作数据。 7. ** Membership 和 Role ...

    asp.net+sql旅游网站-毕业设计

    综上所述,"asp.net+sql旅游网站-毕业设计"项目涵盖了ASP.NET Web开发的多个关键领域,包括但不限于数据库设计、前后端交互、用户认证与授权、支付接口集成、用户体验优化等,对于学习和实践Web开发技能具有很高的...

    C# 7 and .NET Core: Modern Cross-Platform Development - Second Edition

    C# 7 and .NET Core: Modern Cross-Platform Development - Second Edition by Mark J. Price English | 24 Mar. 2017 | ASIN: B01N8UG78Q | 594 Pages | AZW3 | 23.26 MB Modern Cross-Platform Development ...

Global site tag (gtag.js) - Google Analytics