当前位置: 首页 > news >正文

网站建设捌金手指花总二九网站搭建网

网站建设捌金手指花总二九,网站搭建网,网站菜单设置,新手如何做网站优化c# 无损压缩照片大小#xff0c;并且设计了界面#xff0c;添加了外部Ookii.Dialogs.dll#xff0c;不一样的选择文件夹界面#xff0c;并且可以把外部dll打包进exe中 using System; using System.Collections; using System.Collections.Generic; using System.ComponentM…c# 无损压缩照片大小并且设计了界面添加了外部Ookii.Dialogs.dll不一样的选择文件夹界面并且可以把外部dll打包进exe中 using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; using System.IO; using System.Linq; using System.Net.NetworkInformation; using System.Reflection; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using static System.Net.WebRequestMethods; using static System.Windows.Forms.AxHost; namespace _23_无损压缩照片大小 { public partial class Form1 : Form { public Form1() { DllClass.LoadResourceDll();//将dll加到exe需要加入这行代码 InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { string path textBox1.Text; string path_bc textBox2.Text; ArrayList list_jpg select_jpg(path); //设置进度条的最小及最大值 progressBar1.Maximum list_jpg.Count; progressBar1.Minimum 0; int i 0; setPos(i); foreach (string item in list_jpg) { string pPath System.IO.Path.GetDirectoryName(item); //获取文件路径 string pName System.IO.Path.GetFileName(item); //获取文件名 string path_jpg_bc path_bc “\压缩后-” pName; //执行照片压缩 CompressImage(item, path_jpg_bc); setPos(i); i; } setPos(i); } /// /// 根据文本框内容获取照片路径集合 /// /// 文本框路径 /// 照片集合 private static ArrayList select_jpg(string path) { ArrayList list_jpg new ArrayList(); //判断是否是文件夹 if (Directory.Exists(path)) { DirectoryInfo folder new DirectoryInfo(path); FileSystemInfo fileinfo1 folder as FileSystemInfo; list_jpg selecte_jpg(fileinfo1);//获取文件夹下面所有的照片 } else { //根据符号拆分照片路径 string[] result path.Split(‘|’); foreach (string item in result) { list_jpg.Add(item);//将路径添加到集合中 } } return list_jpg; } /// /// 提取文件夹下面所有的png /// /// 文件夹路径 /// 所有png照片路径 private static ArrayList selecte_jpg(FileSystemInfo info) { DirectoryInfo dir info as DirectoryInfo; ArrayList listPics new ArrayList(); FileSystemInfo[] files dir.GetFileSystemInfos(); for (int i 0; i files.Length; i) { FileInfo file files[i] as FileInfo; //是文件 if (file ! null) { string extension Path.GetExtension(file.Name); if (extension.ToUpper() “.PNG”) { listPics.Add(file.FullName); } else if (extension.ToUpper() “.JPG”) { listPics.Add(file.FullName); } else if (extension.ToUpper() “.ICO”) { listPics.Add(file.FullName); } } else//对于子目录进行递归调用 selecte_jpg(files[i]); } return listPics; } /// /// 无损压缩图片 /// /// 原图片地址 /// 压缩后保存图片地址 /// 压缩质量数字越小压缩率越高1-100 /// 压缩后图片的最大大小 /// 是否是第一次调用 /// public static bool CompressImage(string sFile, string dFile, int flag 100, int size 1000, bool sfsc true) { Image iSource Image.FromFile(sFile); ImageFormat tFormat iSource.RawFormat; //如果是第一次调用原始图像的大小小于要压缩的大小则直接复制文件并且返回true FileInfo firstFileInfo new FileInfo(sFile); if (sfsc true firstFileInfo.Length size * 1024) { try { firstFileInfo.CopyTo(dFile); } catch { System.IO.File.Delete(dFile); firstFileInfo.CopyTo(dFile); } return true; } int dHeight iSource.Height / 2; int dWidth iSource.Width / 2; int sW 0, sH 0; //按比例缩放 Size tem_size new Size(iSource.Width, iSource.Height); if (tem_size.Width dHeight || tem_size.Width dWidth) { if ((tem_size.Width * dHeight) (tem_size.Width * dWidth)) { sW dWidth; sH (dWidth * tem_size.Height) / tem_size.Width; } else { sH dHeight; sW (tem_size.Width * dHeight) / tem_size.Height; } } else { sW tem_size.Width; sH tem_size.Height; } Bitmap ob new Bitmap(dWidth, dHeight); Graphics g Graphics.FromImage(ob); g.Clear(Color.WhiteSmoke); g.CompositingQuality System.Drawing.Drawing2D.CompositingQuality.HighQuality; g.SmoothingMode System.Drawing.Drawing2D.SmoothingMode.HighQuality; g.InterpolationMode System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; g.DrawImage(iSource, new Rectangle((dWidth - sW) / 2, (dHeight - sH) / 2, sW, sH), 0, 0, iSource.Width, iSource.Height, GraphicsUnit.Pixel); g.Dispose(); //以下代码为保存图片时设置压缩质量 EncoderParameters ep new EncoderParameters(); long[] qy new long[1]; qy[0] flag;//设置压缩的比例1-100 EncoderParameter eParam new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, qy); ep.Param[0] eParam; try { ImageCodecInfo[] arrayICI ImageCodecInfo.GetImageEncoders(); ImageCodecInfo jpegICIinfo null; for (int x 0; x arrayICI.Length; x) { if (arrayICI[x].FormatDescription.Equals(“JPEG”)) { jpegICIinfo arrayICI[x]; break; } } if (jpegICIinfo ! null) { ob.Save(dFile, jpegICIinfo, ep);//dFile是压缩后的新路径 FileInfo fi new FileInfo(dFile); if (fi.Length 1024 * size) { flag flag - 10; CompressImage(sFile, dFile, flag, size, false); } } else { ob.Save(dFile, tFormat); } return true; } catch { return false; } finally { iSource.Dispose(); ob.Dispose(); } } private void label1_Click(object sender, EventArgs e) { }private void button2_Click(object sender, MouseEventArgs e){if (e.Button MouseButtons.Left){OpenFileDialog dialog new OpenFileDialog();dialog.Multiselect true;//该值确定是否可以选择多个文件dialog.Title 请选择电子文档excel;dialog.Filter 图片文件(*.jpg,*.png,*.ico)|*.jpg;*.png;*.ico;if (dialog.ShowDialog() System.Windows.Forms.DialogResult.OK){Liststring list new Liststring();//循环将多个文件添加到集合中foreach (string file in dialog.FileNames){list.Add(file);}string result String.Join(|, list);textBox1.Text result.TrimEnd(|);}}else{Ookii.Dialogs.VistaFolderBrowserDialog folderBrowser new Ookii.Dialogs.VistaFolderBrowserDialog();//folderBrowser.SelectedPath D:;//folderBrowser.Description 请选择网页所在的目录;folderBrowser.ShowNewFolderButton true;if (folderBrowser.ShowDialog() DialogResult.OK){textBox1.Text folderBrowser.SelectedPath;}}}private void button3_Click(object sender, EventArgs e){Ookii.Dialogs.VistaFolderBrowserDialog folderBrowser new Ookii.Dialogs.VistaFolderBrowserDialog();//folderBrowser.SelectedPath D:;//folderBrowser.Description 请选择网页所在的目录;folderBrowser.ShowNewFolderButton true;if (folderBrowser.ShowDialog() DialogResult.OK){textBox2.Text folderBrowser.SelectedPath;}}/// summary/// 设置进度条/// /summary/// param namevalue/paramprivate void setPos(int value) //设置进度条当前进度值{if (value progressBar1.Maximum 1) //如果值有效{progressBar1.Value value; //设置进度值}Application.DoEvents();//重点必须加上否则父子窗体都假死}/// summary/// 应用外部dll需要加上这个模块/// /summaryclass DllClass{public static void LoadResourceDll(){AppDomain.CurrentDomain.AssemblyResolve new ResolveEventHandler(CurrentDomain_AssemblyResolve);}private static System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args){string dllName args.Name.Contains(,) ? args.Name.Substring(0, args.Name.IndexOf(,)) : args.Name.Replace(.dll, );dllName dllName.Replace(., _);if (dllName.EndsWith(_resources)) return null;string Namespace Assembly.GetEntryAssembly().GetTypes()[0].Namespace;System.Resources.ResourceManager rm new System.Resources.ResourceManager(Namespace .Properties.Resources, System.Reflection.Assembly.GetExecutingAssembly());byte[] bytes (byte[])rm.GetObject(dllName);return System.Reflection.Assembly.Load(bytes);}} }}
http://www.hkea.cn/news/14354074/

相关文章:

  • 浦东新区手机网站建设企业网站开发主要职责
  • 闵行虹桥网站建设记账代理公司
  • 哪些网站容易收录网站开发费怎么做账
  • 北京康迪建设监理咨询有限公司网站6外贸网站建设和网站推广要怎么做
  • 网站建设大体包含wordpress 百度分享
  • 门户网站栏目维护建设方案问卷星网站开发市场调查问卷
  • 淘宝做导航网站有哪些提升学历励志语录
  • 济源建设网站的公司临沂网站建设设计
  • 政务网站网上调查怎么做推广网站
  • 音乐网站开发背景免费微信商城小程序
  • 好的平面设计作品网站google网页版
  • 格尔木哪里有做网站的托管网站费用
  • 外综服务平台哪里做网站网页制作的目的和意义
  • 石家庄市网站制作仿站小工具 wordpress
  • 如何做网站二维码python版wordpress
  • wordpress更改站点名称电脑手机网站建设
  • cnc强力磁盘 东莞网站建设创意个人网页设计
  • wap网站 教程高效的宝安网站推广
  • 郑州网站托管助企网站的备案all
  • 做网站设计收入信息系统开发方法
  • 简述建设网站的步骤6做企业网站的人才
  • 开发一个企业网站报价亚马逊中国网站建设目标
  • 网站网站开发者犯法吗为什么有些网站看不到百度快照
  • 策划方案网站平面设计教程视频全集免费
  • 网站知识介绍黄江镇网站建设
  • 网站建设功能列表html精美登录界面源码
  • 网站设计标语做视频网站需要什么服务器配置
  • 长沙seo网站建设WordPress虚拟主机插件
  • asp网站建设中期报告网站建设创客
  • 如何做电子商城网站最好的赣州网站建设