zoukankan      html  css  js  c++  java
  • Winform文件夹图片批量压缩整理修改

    效果图:

    窗体设计器生成的代码:

    namespace ImageCompact
    {
        partial class MainForm
        {
            /// <summary>
            /// 必需的设计器变量。
            /// </summary>
            private System.ComponentModel.IContainer components = null;
    
            /// <summary>
            /// 清理所有正在使用的资源。
            /// </summary>
            /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
            protected override void Dispose(bool disposing)
            {
                if (disposing && (components != null))
                {
                    components.Dispose();
                }
                base.Dispose(disposing);
            }
    
            #region Windows 窗体设计器生成的代码
    
            /// <summary>
            /// 设计器支持所需的方法 - 不要
            /// 使用代码编辑器修改此方法的内容。
            /// </summary>
            private void InitializeComponent()
            {
                this.groupBox1 = new System.Windows.Forms.GroupBox();
                this.lvSourceFolderList = new System.Windows.Forms.ListView();
                this.columnHeader1 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
                this.btnSelectSourceFolder = new System.Windows.Forms.Button();
                this.label1 = new System.Windows.Forms.Label();
                this.tbSourceFolderPath = new System.Windows.Forms.TextBox();
                this.groupBox2 = new System.Windows.Forms.GroupBox();
                this.label6 = new System.Windows.Forms.Label();
                this.label5 = new System.Windows.Forms.Label();
                this.cbQualityRate = new System.Windows.Forms.ComboBox();
                this.cbSizeRate = new System.Windows.Forms.ComboBox();
                this.label4 = new System.Windows.Forms.Label();
                this.label3 = new System.Windows.Forms.Label();
                this.lvResultList = new System.Windows.Forms.ListView();
                this.压缩文件 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
                this.压缩结果 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
                this.btnSelectTargetFolder = new System.Windows.Forms.Button();
                this.label2 = new System.Windows.Forms.Label();
                this.tbTargetFolderPath = new System.Windows.Forms.TextBox();
                this.lbInfomation = new System.Windows.Forms.Label();
                this.btnClose = new System.Windows.Forms.Button();
                this.btnStart = new System.Windows.Forms.Button();
                this.folderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog();
                this.groupBox1.SuspendLayout();
                this.groupBox2.SuspendLayout();
                this.SuspendLayout();
                // 
                // groupBox1
                // 
                this.groupBox1.Controls.Add(this.lvSourceFolderList);
                this.groupBox1.Controls.Add(this.btnSelectSourceFolder);
                this.groupBox1.Controls.Add(this.label1);
                this.groupBox1.Controls.Add(this.tbSourceFolderPath);
                this.groupBox1.Location = new System.Drawing.Point(12, 12);
                this.groupBox1.Name = "groupBox1";
                this.groupBox1.Size = new System.Drawing.Size(819, 268);
                this.groupBox1.TabIndex = 0;
                this.groupBox1.TabStop = false;
                this.groupBox1.Text = "文件来源";
                // 
                // lvSourceFolderList
                // 
                this.lvSourceFolderList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
                this.columnHeader1});
                this.lvSourceFolderList.FullRowSelect = true;
                this.lvSourceFolderList.GridLines = true;
                this.lvSourceFolderList.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
                this.lvSourceFolderList.Location = new System.Drawing.Point(10, 58);
                this.lvSourceFolderList.MultiSelect = false;
                this.lvSourceFolderList.Name = "lvSourceFolderList";
                this.lvSourceFolderList.Size = new System.Drawing.Size(796, 204);
                this.lvSourceFolderList.TabIndex = 3;
                this.lvSourceFolderList.UseCompatibleStateImageBehavior = false;
                this.lvSourceFolderList.View = System.Windows.Forms.View.Details;
                // 
                // columnHeader1
                // 
                this.columnHeader1.Text = "图片文件";
                this.columnHeader1.Width = 499;
                // 
                // btnSelectSourceFolder
                // 
                this.btnSelectSourceFolder.Location = new System.Drawing.Point(731, 18);
                this.btnSelectSourceFolder.Name = "btnSelectSourceFolder";
                this.btnSelectSourceFolder.Size = new System.Drawing.Size(75, 23);
                this.btnSelectSourceFolder.TabIndex = 2;
                this.btnSelectSourceFolder.Text = "浏览";
                this.btnSelectSourceFolder.UseVisualStyleBackColor = true;
                this.btnSelectSourceFolder.Click += new System.EventHandler(this.btnSelectSourceFolder_Click);
                // 
                // label1
                // 
                this.label1.AutoSize = true;
                this.label1.Location = new System.Drawing.Point(8, 23);
                this.label1.Name = "label1";
                this.label1.Size = new System.Drawing.Size(65, 12);
                this.label1.TabIndex = 1;
                this.label1.Text = "选择文件夹";
                // 
                // tbSourceFolderPath
                // 
                this.tbSourceFolderPath.Location = new System.Drawing.Point(74, 20);
                this.tbSourceFolderPath.Name = "tbSourceFolderPath";
                this.tbSourceFolderPath.Size = new System.Drawing.Size(655, 21);
                this.tbSourceFolderPath.TabIndex = 0;
                // 
                // groupBox2
                // 
                this.groupBox2.Controls.Add(this.label6);
                this.groupBox2.Controls.Add(this.label5);
                this.groupBox2.Controls.Add(this.cbQualityRate);
                this.groupBox2.Controls.Add(this.cbSizeRate);
                this.groupBox2.Controls.Add(this.label4);
                this.groupBox2.Controls.Add(this.label3);
                this.groupBox2.Controls.Add(this.lvResultList);
                this.groupBox2.Controls.Add(this.btnSelectTargetFolder);
                this.groupBox2.Controls.Add(this.label2);
                this.groupBox2.Controls.Add(this.tbTargetFolderPath);
                this.groupBox2.Location = new System.Drawing.Point(12, 286);
                this.groupBox2.Name = "groupBox2";
                this.groupBox2.Size = new System.Drawing.Size(819, 274);
                this.groupBox2.TabIndex = 1;
                this.groupBox2.TabStop = false;
                this.groupBox2.Text = "保存到";
                // 
                // label6
                // 
                this.label6.AutoSize = true;
                this.label6.Location = new System.Drawing.Point(288, 251);
                this.label6.Name = "label6";
                this.label6.Size = new System.Drawing.Size(11, 12);
                this.label6.TabIndex = 12;
                this.label6.Text = "%";
                // 
                // label5
                // 
                this.label5.AutoSize = true;
                this.label5.Location = new System.Drawing.Point(133, 252);
                this.label5.Name = "label5";
                this.label5.Size = new System.Drawing.Size(11, 12);
                this.label5.TabIndex = 11;
                this.label5.Text = "%";
                // 
                // cbQualityRate
                // 
                this.cbQualityRate.FormattingEnabled = true;
                this.cbQualityRate.Items.AddRange(new object[] {
                "10",
                "20",
                "22",
                "25",
                "27",
                "30",
                "40",
                "50",
                "60",
                "70",
                "80",
                "90",
                "100"});
                this.cbQualityRate.Location = new System.Drawing.Point(226, 246);
                this.cbQualityRate.Name = "cbQualityRate";
                this.cbQualityRate.Size = new System.Drawing.Size(56, 20);
                this.cbQualityRate.TabIndex = 10;
                // 
                // cbSizeRate
                // 
                this.cbSizeRate.FormattingEnabled = true;
                this.cbSizeRate.Items.AddRange(new object[] {
                "10",
                "20",
                "30",
                "40",
                "50",
                "60",
                "70",
                "80",
                "90",
                "100"});
                this.cbSizeRate.Location = new System.Drawing.Point(74, 247);
                this.cbSizeRate.Name = "cbSizeRate";
                this.cbSizeRate.Size = new System.Drawing.Size(56, 20);
                this.cbSizeRate.TabIndex = 9;
                // 
                // label4
                // 
                this.label4.AutoSize = true;
                this.label4.Location = new System.Drawing.Point(160, 252);
                this.label4.Name = "label4";
                this.label4.Size = new System.Drawing.Size(59, 12);
                this.label4.TabIndex = 8;
                this.label4.Text = "压缩质量:";
                // 
                // label3
                // 
                this.label3.AutoSize = true;
                this.label3.Location = new System.Drawing.Point(8, 251);
                this.label3.Name = "label3";
                this.label3.Size = new System.Drawing.Size(59, 12);
                this.label3.TabIndex = 7;
                this.label3.Text = "压缩大小:";
                // 
                // lvResultList
                // 
                this.lvResultList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
                this.压缩文件,
                this.压缩结果});
                this.lvResultList.FullRowSelect = true;
                this.lvResultList.GridLines = true;
                this.lvResultList.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
                this.lvResultList.Location = new System.Drawing.Point(6, 54);
                this.lvResultList.MultiSelect = false;
                this.lvResultList.Name = "lvResultList";
                this.lvResultList.Size = new System.Drawing.Size(796, 187);
                this.lvResultList.TabIndex = 6;
                this.lvResultList.UseCompatibleStateImageBehavior = false;
                this.lvResultList.View = System.Windows.Forms.View.Details;
                // 
                // 压缩文件
                // 
                this.压缩文件.Text = "压缩文件";
                this.压缩文件.Width = 596;
                // 
                // 压缩结果
                // 
                this.压缩结果.Text = "压缩结果";
                this.压缩结果.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
                this.压缩结果.Width = 108;
                // 
                // btnSelectTargetFolder
                // 
                this.btnSelectTargetFolder.Location = new System.Drawing.Point(731, 12);
                this.btnSelectTargetFolder.Name = "btnSelectTargetFolder";
                this.btnSelectTargetFolder.Size = new System.Drawing.Size(75, 23);
                this.btnSelectTargetFolder.TabIndex = 5;
                this.btnSelectTargetFolder.Text = "浏览";
                this.btnSelectTargetFolder.UseVisualStyleBackColor = true;
                this.btnSelectTargetFolder.Click += new System.EventHandler(this.btnSelectTargetFolder_Click);
                // 
                // label2
                // 
                this.label2.AutoSize = true;
                this.label2.Location = new System.Drawing.Point(8, 17);
                this.label2.Name = "label2";
                this.label2.Size = new System.Drawing.Size(65, 12);
                this.label2.TabIndex = 4;
                this.label2.Text = "选择文件夹";
                // 
                // tbTargetFolderPath
                // 
                this.tbTargetFolderPath.Location = new System.Drawing.Point(74, 14);
                this.tbTargetFolderPath.Name = "tbTargetFolderPath";
                this.tbTargetFolderPath.Size = new System.Drawing.Size(655, 21);
                this.tbTargetFolderPath.TabIndex = 3;
                // 
                // lbInfomation
                // 
                this.lbInfomation.AutoSize = true;
                this.lbInfomation.Location = new System.Drawing.Point(18, 574);
                this.lbInfomation.Name = "lbInfomation";
                this.lbInfomation.Size = new System.Drawing.Size(53, 12);
                this.lbInfomation.TabIndex = 2;
                this.lbInfomation.Text = "已经停止";
                // 
                // btnClose
                // 
                this.btnClose.Location = new System.Drawing.Point(614, 567);
                this.btnClose.Name = "btnClose";
                this.btnClose.Size = new System.Drawing.Size(75, 23);
                this.btnClose.TabIndex = 3;
                this.btnClose.Text = "关闭";
                this.btnClose.UseVisualStyleBackColor = true;
                this.btnClose.Click += new System.EventHandler(this.btnClose_Click);
                // 
                // btnStart
                // 
                this.btnStart.Location = new System.Drawing.Point(717, 566);
                this.btnStart.Name = "btnStart";
                this.btnStart.Size = new System.Drawing.Size(75, 23);
                this.btnStart.TabIndex = 4;
                this.btnStart.Text = "开始压缩";
                this.btnStart.UseVisualStyleBackColor = true;
                this.btnStart.Click += new System.EventHandler(this.btnStart_Click);
                // 
                // MainForm
                // 
                this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
                this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                this.ClientSize = new System.Drawing.Size(838, 604);
                this.Controls.Add(this.btnStart);
                this.Controls.Add(this.btnClose);
                this.Controls.Add(this.lbInfomation);
                this.Controls.Add(this.groupBox2);
                this.Controls.Add(this.groupBox1);
                this.Name = "MainForm";
                this.Text = "图片批量压缩";
                this.groupBox1.ResumeLayout(false);
                this.groupBox1.PerformLayout();
                this.groupBox2.ResumeLayout(false);
                this.groupBox2.PerformLayout();
                this.ResumeLayout(false);
                this.PerformLayout();
    
            }
    
            #endregion
    
            private System.Windows.Forms.GroupBox groupBox1;
            private System.Windows.Forms.GroupBox groupBox2;
            private System.Windows.Forms.Label label1;
            private System.Windows.Forms.TextBox tbSourceFolderPath;
            private System.Windows.Forms.Button btnSelectSourceFolder;
            private System.Windows.Forms.Button btnSelectTargetFolder;
            private System.Windows.Forms.Label label2;
            private System.Windows.Forms.TextBox tbTargetFolderPath;
            private System.Windows.Forms.ListView lvSourceFolderList;
            private System.Windows.Forms.ListView lvResultList;
            private System.Windows.Forms.Label label4;
            private System.Windows.Forms.Label label3;
            private System.Windows.Forms.Label label6;
            private System.Windows.Forms.Label label5;
            private System.Windows.Forms.ComboBox cbQualityRate;
            private System.Windows.Forms.ComboBox cbSizeRate;
            private System.Windows.Forms.Label lbInfomation;
            private System.Windows.Forms.Button btnClose;
            private System.Windows.Forms.Button btnStart;
            private System.Windows.Forms.ColumnHeader columnHeader1;
            private System.Windows.Forms.ColumnHeader 压缩文件;
            private System.Windows.Forms.ColumnHeader 压缩结果;
            private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog;
    
        }
    }
    View Code

    后台代码:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using Microsoft.Win32;
    using System.IO;
    using System.Threading;
    using System.Drawing.Imaging;
    
    namespace ImageCompact
    {
        public partial class MainForm : Form
        {
            /// <summary>
            /// 定义文件列表
            /// </summary>
            private IList<string> imageList = new List<string>();
            /// <summary>
            /// 压缩结果信息
            /// </summary>
            /// <param name="file"></param>
            /// <param name="result"></param>
            private delegate void DelegateWriteResult(string file, bool result);
            /// <summary>
            /// 压缩状态信息
            /// </summary>
            /// <param name="message"></param>
            private delegate void DelegateWriteMessage(string message);
            public MainForm()
            {
                InitializeComponent();
    
                //压缩大小默认显示选项
                cbSizeRate.SelectedIndex = 8;
                //压缩质量默认显示选项
                cbQualityRate.SelectedIndex = 8;
       
             RegistryKey folders;
             folders = OpenRegistryPath(Registry.CurrentUser, @"softwaremicrosoftwindowscurrentversionexplorershell folders");
                //保存的选择文件夹默认路径
             tbTargetFolderPath.Text = folders.GetValue("Desktop").ToString();
                
            }
    
            /// <summary>
            /// 获得注册表键对象
            /// </summary>
            /// <returns></returns>
            private RegistryKey OpenRegistryPath(RegistryKey root, string s)
            {
                s = s.Remove(0, 1) + @"";
                while (s.IndexOf(@"") != -1)
                {
                    root = root.OpenSubKey(s.Substring(0, s.IndexOf(@"")));
                    s = s.Remove(0, s.IndexOf(@"") + 1);
                }
                return root;
            }
            /// <summary>
            /// 浏览选择文件夹
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnSelectSourceFolder_Click(object sender, EventArgs e)
            {
                if (DialogResult.OK == folderBrowserDialog.ShowDialog())
                {
                    this.lvSourceFolderList.Items.Clear();
                    tbSourceFolderPath.Text = folderBrowserDialog.SelectedPath;
                    ListFiles(new DirectoryInfo(tbSourceFolderPath.Text));
                }
            }
    
            /// <summary>
            /// 遍历文件
            /// </summary>
            /// <param name="info"></param>
            public void ListFiles(FileSystemInfo info)
            {
                if (!info.Exists) return;
                DirectoryInfo dir = info as DirectoryInfo;
                if (dir == null) return;
                FileSystemInfo[] files = dir.GetFileSystemInfos();
                for (int i = 0; i < files.Length; i++)
                {
                    FileInfo file = files[i] as FileInfo;
                    if (file != null && file.Name.Trim().LastIndexOf(".") > -1)
                    {
                        if (file.Name.Substring(file.Name.LastIndexOf(".")).ToUpper() == ".JPG")
                        {
                            this.lvSourceFolderList.Items.Add(file.FullName);
                            imageList.Add(file.FullName);
                        }
                    }
                    else
                    {
                        ListFiles(files[i]); //对于子目录,进行递归调用
                    }
                }
            }
    
            /// <summary>
            /// 将文件列表加载到list中
            /// </summary>
            /// <param name="path"></param>
            //private void ScanFolder(string path)
            //{
            //    imageList = new List<string>();
            //    string[] images = Directory.GetFiles(path, "*.bmp");
            //    for (int i = 0; i < images.Length; i++)
            //    {
            //        imageList.Add(images[i]);
            //    }
            //    images = Directory.GetFiles(path, "*.png");
            //    for (int i = 0; i < images.Length; i++)
            //    {
            //        imageList.Add(images[i]);
            //    }
            //    images = Directory.GetFiles(path, "*.jpg");
            //    for (int i = 0; i < images.Length; i++)
            //    {
            //        imageList.Add(images[i]);
            //    }
    
            //    if (imageList.Count > 0)
            //    {
            //        ListFiles();
            //    }
            //}
            /// <summary>
            /// 加载文件列表到listview
            /// </summary>
            private void ListFiles()
            {
                lvSourceFolderList.Items.Clear();
                foreach (string item in imageList)
                {
                    lvSourceFolderList.Items.Add(item);
                }
            }
            /// <summary>
            /// 保存到文件路径  的 选择文件夹
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnSelectTargetFolder_Click(object sender, EventArgs e)
            {
                if (DialogResult.OK == folderBrowserDialog.ShowDialog())
                {
                    tbTargetFolderPath.Text = folderBrowserDialog.SelectedPath;
                }
            }
            /// <summary>
            /// 退出
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnClose_Click(object sender, EventArgs e)
            {
                Application.Exit();
            }
            /// <summary>
            /// 开始压缩
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btnStart_Click(object sender, EventArgs e)
            {
                if (!Directory.Exists(tbTargetFolderPath.Text))
                {
                MessageBox.Show("目标文件夹不存在,请先建立这个文件夹。", "存储错误", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                }
                if (Directory.GetFiles(tbTargetFolderPath.Text).Length > 0)
                {
                if (DialogResult.OK != MessageBox.Show("目标文件夹不是空的,同名文件将被覆盖,确认?", "目标文件夹不是空的", MessageBoxButtons.OKCancel, MessageBoxIcon.Question))
                {
                return;
                }
                }
                lvResultList.Items.Clear();
                Thread workThread = new Thread(new ThreadStart(CompressAll));
                workThread.IsBackground = true;
                workThread.Start();
                }
    
            /// <summary>
            /// 压缩所有文件
            /// </summary>
            private void CompressAll()
            {
                string message = "";
                foreach (string item in imageList)
                {
                    int index = item.LastIndexOf("\");
                    if (index != -1)
                    {
                        string fileName = item.Substring(index + 1);
    
                        string targetFilePath = tbTargetFolderPath.Text + "\" + fileName;
    
                        message = "正在处理" + fileName;
                        if (this.InvokeRequired)
                        {
                            this.Invoke(new DelegateWriteMessage(WriteMessage), new object[] { message });
                        }
                        else
                        {
                            this.WriteMessage(message);
                        }
    
                        if (CompressPicture(item, targetFilePath))
                        {
                            if (this.InvokeRequired)
                            {
                                this.Invoke(new DelegateWriteResult(WriteResult), new object[] { item, true });
                            }
                            else
                            {
                                this.WriteResult(item, true);
                            }
                        }
                        else
                        {
                            if (this.InvokeRequired)
                            {
                                this.Invoke(new DelegateWriteResult(WriteResult), new object[] { item, false });
                            }
                            else
                            {
                                this.WriteResult(item, false);
                            }
                        }
                    }
                }
    
                message = "全部完成";
                if (this.InvokeRequired)
                {
                    this.Invoke(new DelegateWriteMessage(WriteMessage), new object[] { message });
                }
                else
                {
                    this.WriteMessage(message);
                }
            }
            /// <summary>
            /// 显示状态信息
            /// </summary>
            /// <param name="message"></param>
            private void WriteMessage(string message)
            {
                lbInfomation.Text = message;
            }
            /// <summary>
            /// 显示压缩结果信息
            /// </summary>
            /// <param name="fileName"></param>
            /// <param name="result"></param>
            private void WriteResult(string fileName, bool result)
            {
                if (result)
                {
                    ListViewItem thisListItem = new ListViewItem();
                    thisListItem.ForeColor = Color.White;
                    thisListItem.BackColor = Color.DarkGreen;
                    thisListItem.SubItems[0].Text = fileName;
                    thisListItem.SubItems.Add("成功");
                    lvResultList.Items.Add(thisListItem);
                }
                else
                {
                    ListViewItem thisListItem = new ListViewItem();
                    thisListItem.ForeColor = Color.White;
                    thisListItem.BackColor = Color.Red;
                    thisListItem.SubItems[0].Text = fileName;
                    thisListItem.SubItems.Add("失败");
                    lvResultList.Items.Add(thisListItem);
                }
            }
    
            /// <summary>
            /// 压缩图片方法
            /// </summary>
            /// <param name="sourcePath">原目录</param>
            /// <param name="targetPath">目标目录</param>
            /// <returns>压缩是否成功</returns>
            private bool CompressPicture(string sourcePath, string targetPath)
            {
                try
                {
                    double sizeRate = double.Parse(cbSizeRate.Text) / 100;// 大小比率
                    int qualityRate = int.Parse(cbQualityRate.Text);// 品质比率
    
                    Image sourceImage = Image.FromFile(sourcePath);
                    //调整图片大小
                    Bitmap bmp = new Bitmap(sourceImage, new Size((int)(sourceImage.Width * sizeRate), (int)(sourceImage.Height * sizeRate)));
                    //压缩图片
                    SaveAsJPEG(bmp, targetPath, qualityRate);
    
                    GC.Collect();
                    return true;
                }
                catch
                {
                    return false;
                }
            }
            /// <summary>
            /// 保存为JPEG格式,支持压缩质量选项
            /// </summary>
            /// <param name="bmp">原始位图</param>
            /// <param name="FileName">新文件地址</param>
            /// <param name="Qty">压缩质量,越大越好,文件也越大(0-100)</param>
            /// <returns>成功标志</returns>
            public static bool SaveAsJPEG(Bitmap bmp, string FileName, int Qty)
            {
                try
                {
                    EncoderParameter p;
                    EncoderParameters ps;
    
                    ps = new EncoderParameters(1);
    
                    p = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, Qty);
                    ps.Param[0] = p;
    
                    bmp.Save(FileName, GetCodecInfo("image/jpeg"), ps);
    
                    return true;
                }
                catch
                {
                    return false;
                }
            }
    
            /// <summary>
            /// 保存JPG时用
            /// </summary>
            /// <param name="mimeType"></param>
            /// <returns>得到指定mimeType的ImageCodecInfo</returns>
            private static ImageCodecInfo GetCodecInfo(string mimeType)
            {
                ImageCodecInfo[] CodecInfo = ImageCodecInfo.GetImageEncoders();
                foreach (ImageCodecInfo ici in CodecInfo)
                {
                    if (ici.MimeType == mimeType) return ici;
                }
                return null;
            }
        }
    }
    View Code
  • 相关阅读:
    阿里云部署Java web项目初体验(转)/linux 上配置jdk和安装tomcat
    【数据结构与算法01】数组
    HashMap和Hashtable的区别 源码分析
    【JMS】JMS之ActiveMQ的使用
    日志框架只打印出Mybatis SQL的配置
    [C++]简单的udp通信
    [原][osg][osgearth]简单的通过osgDB,读取高程tif,修改高程tif
    [转] VR-FORCES 介绍
    写出漂亮的代码
    如果需要一个图形学算法
  • 原文地址:https://www.cnblogs.com/Warmsunshine/p/3528032.html
Copyright © 2011-2022 走看看