資源簡介
使用C#完成的圖像壓縮,實現質量壓縮,大小壓縮,批量壓縮。可選擇讀取圖像輸出到另一圖像,可實現從界面中讀取圖像輸出到圖像,附全部代碼+注釋+開發過程。

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Text;
using?System.IO;
using?System.Windows.Forms;
using?System.Drawing.Imaging;
namespace?ImageChange1
{
????public?partial?class?Form1?:?Form
????{
????????public?Form1()
????????{
????????????InitializeComponent();
????????}
????????//private?ImageCodecInfo?GetCodecInfo(string?mimeType)?//ImageCodecInfo類的作用是確定文件格式,返回值為格式編碼
????????//{
????????//????ImageCodecInfo[]?CodecInfo?=?ImageCodecInfo.GetImageEncoders();?//將所有格式的編碼信息賦給CodecInfo數組
????????//????foreach?(ImageCodecInfo?ici?in?CodecInfo)?//定義一個編碼器型參數ici,并建立循環
????????//????{
????????//????????if?(ici.MimeType?==?mimeType)?return?ici;?//返回傳遞進來的格式的編碼
???????????????
????????//????}
????????//????return?null;
????????//}
????????private?void?button1_Click(object?sender?EventArgs?e)
????????{
????????????this.odlgImage.Filter?=?“圖像類型(*.jpg)|*.jpg|圖像類型(*.bmp)|*.bmp|圖像類型(*.png)|*.png|圖像類型(*.gif)|*.gif|圖像類型(*.tif)|*.tif|圖像類型(*.wmf)|*.wmf“;
????????????//選擇錄入的圖片的類型
????????????this.odlgImage.ShowDialog();
????????????Bitmap?MyBitmap?=?new?Bitmap(this.odlgImage.FileName);
????????????this.picIn.Image?=?MyBitmap;
????????}
????????private?void?button2_Click(object?sender?EventArgs?e)
????????{
????????????Image?img?=?picIn.Image;
????????????if?(picIn.Image.ToString()?==?““)
????????????{
????????????????MessageBox.Show(“當前圖像為空!“);
????????????????return;
????????????}
????????????int?i?=?Convert.ToInt32(txtB.Text);
????????????//txtInput.Text?=?Js(this.odlgImage.FileName).ToString();
????????????//int?witdh?=?img.Width?*?Convert.ToInt32(txtB.Text)?/?100;??//獲取原圖寬按輸入比例壓縮后的寬
????????????//int?height?=?img.Height?*?Convert.ToInt32(txtB.Text)?/?100;??//獲取原圖高按輸入比例壓縮后高
????????????int?Qty?=?Int32.Parse(txtC.Text);
????????????//Bitmap?bmb?=?new?Bitmap(witdh?height);
????????????//Graphics?grap?=?Graphics.FromImage(bmb);
????????????//grap.DrawImage(img?new?Rectangle(0?0?witdh?height));
????????????//EncoderParameter?p?=?new?EncoderParameter(System.Drawing.Imaging.Encoder.Quality?i);
????????????//EncoderParameters?ps?=?new?EncoderParameters(1);
????????????//ps.Param[0]?=?p;
????????????//System.IO.MemoryStream?me?=?new?MemoryStream();
????????????//bmb.Save(me??GetCodecInfo(“image/jpeg“)?ps);????????
????????????//Image?pic?=?System.Drawing.Image.FromStream(me);
????????????ClassImage.ImageChange?Imagechange?=?new?ClassImage.ImageChange();
????????????picOut.Image??=?Imagechange.KiSaveAsJPEG(img?Qty?i);?
????????}
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????28672??2013-03-05?10:25??引用類完成不保存\ImageChange\bin\Debug\ImageChange.exe
?????文件??????32256??2013-03-05?10:25??引用類完成不保存\ImageChange\bin\Debug\ImageChange.pdb
?????文件???????5632??2005-11-11?22:25??引用類完成不保存\ImageChange\bin\Debug\ImageChange.vshost.exe
?????文件??????28672??2013-02-27?10:33??引用類完成不保存\ImageChange\bin\Release\ImageChange.exe
?????文件??????26112??2013-02-27?10:33??引用類完成不保存\ImageChange\bin\Release\ImageChange.pdb
?????文件??????11286??2013-03-05?15:22??引用類完成不保存\ImageChange\Form1.cs
?????文件??????17306??2013-03-05?15:22??引用類完成不保存\ImageChange\Form1.Designer.cs
?????文件???????6588??2013-03-05?15:22??引用類完成不保存\ImageChange\Form1.resx
?????文件???????3229??2013-02-23?17:22??引用類完成不保存\ImageChange\ImageChange.csproj
?????文件????????842??2013-03-05?10:25??引用類完成不保存\ImageChange\obj\Debug\ImageChange.csproj.GenerateResource.Cache
?????文件??????28672??2013-03-05?10:25??引用類完成不保存\ImageChange\obj\Debug\ImageChange.exe
?????文件????????180??2013-03-05?10:25??引用類完成不保存\ImageChange\obj\Debug\ImageChange.Form1.resources
?????文件??????32256??2013-03-05?10:25??引用類完成不保存\ImageChange\obj\Debug\ImageChange.pdb
?????文件????????180??2013-02-23?16:49??引用類完成不保存\ImageChange\obj\Debug\ImageChange.Properties.Resources.resources
?????文件???????3104??2013-02-23?16:49??引用類完成不保存\ImageChange\obj\Debug\ResolveAssemblyReference.cache
?????文件???????1200??2013-03-05?11:30??引用類完成不保存\ImageChange\obj\ImageChange.csproj.FileListAbsolute.txt
?????文件????????842??2013-02-27?10:33??引用類完成不保存\ImageChange\obj\Release\ImageChange.csproj.GenerateResource.Cache
?????文件??????28672??2013-02-27?10:33??引用類完成不保存\ImageChange\obj\Release\ImageChange.exe
?????文件????????180??2013-02-27?10:33??引用類完成不保存\ImageChange\obj\Release\ImageChange.Form1.resources
?????文件??????26112??2013-02-27?10:33??引用類完成不保存\ImageChange\obj\Release\ImageChange.pdb
?????文件????????180??2013-02-27?10:33??引用類完成不保存\ImageChange\obj\Release\ImageChange.Properties.Resources.resources
?????文件????????470??2013-02-23?15:11??引用類完成不保存\ImageChange\Program.cs
?????文件???????1190??2013-02-23?15:11??引用類完成不保存\ImageChange\Properties\AssemblyInfo.cs
?????文件???????2878??2013-02-23?15:11??引用類完成不保存\ImageChange\Properties\Resources.Designer.cs
?????文件???????5612??2013-02-23?15:11??引用類完成不保存\ImageChange\Properties\Resources.resx
?????文件???????1096??2013-02-23?15:11??引用類完成不保存\ImageChange\Properties\Settings.Designer.cs
?????文件????????249??2013-02-23?15:11??引用類完成不保存\ImageChange\Properties\Settings.settings
?????文件????????922??2013-02-23?17:22??引用類完成不保存\ImageChange.sln
????..A..H.?????18944??2013-03-05?15:23??引用類完成不保存\ImageChange.suo
?????文件??????57856??2013-03-05?15:29??圖像壓縮說明文檔.doc
............此處省略75個文件信息
- 上一篇:C# 實現簡單郵件SMTP和POP3客戶端 聯系人管理
- 下一篇:C#全局鍵盤鉤子
評論
共有 條評論