html5中文学习网

您的位置: 首页 > 网站及特效实例 > jquery特效 » 正文

C#图片处理工具类 含绘制水印、阴影、保存等_编程语言综合

[ ] 已经帮助:人解决问题

   一个C#写的图片处理基础类,功能包括获取或设置要修改的图像路径、获取或设置在画的图片路径(水印图片)、获取或设置水印在修改图片中的右边距、获取或设置水印在修改图片中距底部的高度、获取或设置要绘制水印的透明度,注意是原来图片透明度的百分比、获取或设置要输出图像的路径、绘制水印、绘制图形坐标、绘制阴影图像、保存文件等功能:dZMHTML5中文学习网 - HTML5先行者学习网

  view sourceprint?001using System;dZMHTML5中文学习网 - HTML5先行者学习网

  002using System.Collections.Generic;dZMHTML5中文学习网 - HTML5先行者学习网

  003using System.Linq;dZMHTML5中文学习网 - HTML5先行者学习网

  004using System.Text;dZMHTML5中文学习网 - HTML5先行者学习网

  005using System.IO;dZMHTML5中文学习网 - HTML5先行者学习网

  006using System.Drawing;dZMHTML5中文学习网 - HTML5先行者学习网

  007using System.Drawing.Drawing2D;dZMHTML5中文学习网 - HTML5先行者学习网

  008using System.Drawing.Imaging;dZMHTML5中文学习网 - HTML5先行者学习网

  009namespace CLB.Utility.ToolsdZMHTML5中文学习网 - HTML5先行者学习网

  010{dZMHTML5中文学习网 - HTML5先行者学习网

  011 public class ImageModificationdZMHTML5中文学习网 - HTML5先行者学习网

  012 {dZMHTML5中文学习网 - HTML5先行者学习网

  013 #region "member fields"dZMHTML5中文学习网 - HTML5先行者学习网

  014 private string modifyImagePath = null;dZMHTML5中文学习网 - HTML5先行者学习网

  015 private string drawedImagePath = null;dZMHTML5中文学习网 - HTML5先行者学习网

  016 private int rightSpace;dZMHTML5中文学习网 - HTML5先行者学习网

  017 private int bottoamSpace;dZMHTML5中文学习网 - HTML5先行者学习网

  018 private int lucencyPercent = 70;dZMHTML5中文学习网 - HTML5先行者学习网

  019 private string outPath = null;dZMHTML5中文学习网 - HTML5先行者学习网

  020 #endregiondZMHTML5中文学习网 - HTML5先行者学习网

  021 public ImageModification()dZMHTML5中文学习网 - HTML5先行者学习网

  022 {dZMHTML5中文学习网 - HTML5先行者学习网

  023 }dZMHTML5中文学习网 - HTML5先行者学习网

  024 #region "propertys"dZMHTML5中文学习网 - HTML5先行者学习网

  025 ///dZMHTML5中文学习网 - HTML5先行者学习网

  026 /// 获取或设置要修改的图像路径dZMHTML5中文学习网 - HTML5先行者学习网

  027 ///dZMHTML5中文学习网 - HTML5先行者学习网

  028 public string ModifyImagePathdZMHTML5中文学习网 - HTML5先行者学习网

  029 {dZMHTML5中文学习网 - HTML5先行者学习网

  030 get { return this.modifyImagePath; }dZMHTML5中文学习网 - HTML5先行者学习网

  031 set { this.modifyImagePath = value; }dZMHTML5中文学习网 - HTML5先行者学习网

  032 }dZMHTML5中文学习网 - HTML5先行者学习网

  033 ///dZMHTML5中文学习网 - HTML5先行者学习网

  034 /// 获取或设置在画的图片路径(水印图片)dZMHTML5中文学习网 - HTML5先行者学习网

  035 ///dZMHTML5中文学习网 - HTML5先行者学习网

  036 public string DrawedImagePathdZMHTML5中文学习网 - HTML5先行者学习网

  037 {dZMHTML5中文学习网 - HTML5先行者学习网

  038 get { return this.drawedImagePath; }dZMHTML5中文学习网 - HTML5先行者学习网

  039 set { this.drawedImagePath = value; }dZMHTML5中文学习网 - HTML5先行者学习网

  040 }dZMHTML5中文学习网 - HTML5先行者学习网

  041 ///dZMHTML5中文学习网 - HTML5先行者学习网

  042 /// 获取或设置水印在修改图片中的右边距dZMHTML5中文学习网 - HTML5先行者学习网

  043 ///dZMHTML5中文学习网 - HTML5先行者学习网

  044 public int RightSpacedZMHTML5中文学习网 - HTML5先行者学习网

  045 {dZMHTML5中文学习网 - HTML5先行者学习网

  046 get { return this.rightSpace; }dZMHTML5中文学习网 - HTML5先行者学习网

  047 set { this.rightSpace = value; }dZMHTML5中文学习网 - HTML5先行者学习网

  048 }dZMHTML5中文学习网 - HTML5先行者学习网

  049 //获取或设置水印在修改图片中距底部的高度dZMHTML5中文学习网 - HTML5先行者学习网

  050 public int BottoamSpacedZMHTML5中文学习网 - HTML5先行者学习网

  051 {dZMHTML5中文学习网 - HTML5先行者学习网

  052 get { return this.bottoamSpace; }dZMHTML5中文学习网 - HTML5先行者学习网

  053 set { this.bottoamSpace = value; }dZMHTML5中文学习网 - HTML5先行者学习网

  054 }dZMHTML5中文学习网 - HTML5先行者学习网

  055 ///dZMHTML5中文学习网 - HTML5先行者学习网

  056 /// 获取或设置要绘制水印的透明度,注意是原来图片透明度的百分比dZMHTML5中文学习网 - HTML5先行者学习网

  057 ///dZMHTML5中文学习网 - HTML5先行者学习网

  058 public int LucencyPercentdZMHTML5中文学习网 - HTML5先行者学习网

  059 {dZMHTML5中文学习网 - HTML5先行者学习网

  060 get { return this.lucencyPercent; }dZMHTML5中文学习网 - HTML5先行者学习网

  061 setdZMHTML5中文学习网 - HTML5先行者学习网

  062 {dZMHTML5中文学习网 - HTML5先行者学习网

  063 if (value >= 0 && value <= 100)dZMHTML5中文学习网 - HTML5先行者学习网

  064 this.lucencyPercent = value;dZMHTML5中文学习网 - HTML5先行者学习网

  065 }dZMHTML5中文学习网 - HTML5先行者学习网

  066 }dZMHTML5中文学习网 - HTML5先行者学习网

  067 ///dZMHTML5中文学习网 - HTML5先行者学习网

  068 /// 获取或设置要输出图像的路径dZMHTML5中文学习网 - HTML5先行者学习网

  069 ///dZMHTML5中文学习网 - HTML5先行者学习网

  070 public string OutPathdZMHTML5中文学习网 - HTML5先行者学习网

  071 {dZMHTML5中文学习网 - HTML5先行者学习网

  072 get { return this.outPath; }dZMHTML5中文学习网 - HTML5先行者学习网

  073 set { this.outPath = value; }dZMHTML5中文学习网 - HTML5先行者学习网

  074 }dZMHTML5中文学习网 - HTML5先行者学习网

  075 #endregiondZMHTML5中文学习网 - HTML5先行者学习网

  076 #region "methods"dZMHTML5中文学习网 - HTML5先行者学习网

  077 ///dZMHTML5中文学习网 - HTML5先行者学习网

  078 /// 开始绘制水印dZMHTML5中文学习网 - HTML5先行者学习网

  079 ///dZMHTML5中文学习网 - HTML5先行者学习网

  080 public void DrawImage()dZMHTML5中文学习网 - HTML5先行者学习网

  081 {dZMHTML5中文学习网 - HTML5先行者学习网

  082 Image modifyImage = null;dZMHTML5中文学习网 - HTML5先行者学习网

  083 Image drawedImage = null;dZMHTML5中文学习网 - HTML5先行者学习网

  084 Graphics g = null;dZMHTML5中文学习网 - HTML5先行者学习网

  085 trydZMHTML5中文学习网 - HTML5先行者学习网

  086 {dZMHTML5中文学习网 - HTML5先行者学习网

  087 //建立图形对象dZMHTML5中文学习网 - HTML5先行者学习网

  088 modifyImage = Image.FromFile(this.ModifyImagePath);dZMHTML5中文学习网 - HTML5先行者学习网

  089 drawedImage = Image.FromFile(this.DrawedImagePath);dZMHTML5中文学习网 - HTML5先行者学习网

  090 g = Graphics.FromImage(modifyImage);dZMHTML5中文学习网 - HTML5先行者学习网

  091 //获取要绘制图形坐标dZMHTML5中文学习网 - HTML5先行者学习网

  092 int x = modifyImage.Width - this.rightSpace;dZMHTML5中文学习网 - HTML5先行者学习网

  093 int y = modifyImage.Height - this.BottoamSpace;dZMHTML5中文学习网 - HTML5先行者学习网

  094 //设置颜色矩阵dZMHTML5中文学习网 - HTML5先行者学习网

  095 float[][] matrixItems ={dZMHTML5中文学习网 - HTML5先行者学习网

  096 new float[] {1, 0, 0, 0, 0},dZMHTML5中文学习网 - HTML5先行者学习网

  097 new float[] {0, 1, 0, 0, 0},dZMHTML5中文学习网 - HTML5先行者学习网

  098 new float[] {0, 0, 1, 0, 0},dZMHTML5中文学习网 - HTML5先行者学习网

  099 new float[] {0, 0, 0, (float)this.LucencyPercent/100f, 0},dZMHTML5中文学习网 - HTML5先行者学习网

  100 new float[] {0, 0, 0, 0, 1}};dZMHTML5中文学习网 - HTML5先行者学习网

  101 ColorMatrix colorMatrix = new ColorMatrix(matrixItems);dZMHTML5中文学习网 - HTML5先行者学习网

  102 ImageAttributes imgAttr = new ImageAttributes();dZMHTML5中文学习网 - HTML5先行者学习网

  103 imgAttr.SetColorMatrix(colorMatrix, ColorMatrixFlag.Default, ColorAdjustType.Bitmap);dZMHTML5中文学习网 - HTML5先行者学习网

  104 //绘制阴影图像dZMHTML5中文学习网 - HTML5先行者学习网

  105 g.DrawImage(dZMHTML5中文学习网 - HTML5先行者学习网

  106 drawedImage,dZMHTML5中文学习网 - HTML5先行者学习网

  107 new Rectangle(x, y, drawedImage.Width, drawedImage.Height),dZMHTML5中文学习网 - HTML5先行者学习网

  108 0, 0, drawedImage.Width, drawedImage.Height,dZMHTML5中文学习网 - HTML5先行者学习网

  109 GraphicsUnit.Pixel, imgAttr);dZMHTML5中文学习网 - HTML5先行者学习网

  110 //保存文件dZMHTML5中文学习网 - HTML5先行者学习网

  111 string[] allowImageType = { ".jpg", ".gif", ".png", ".bmp", ".tiff", ".wmf", ".ico" };dZMHTML5中文学习网 - HTML5先行者学习网

  112 FileInfo file = new FileInfo(this.ModifyImagePath);dZMHTML5中文学习网 - HTML5先行者学习网

  113 ImageFormat imageType = ImageFormat.Gif;dZMHTML5中文学习网 - HTML5先行者学习网

  114 switch (file.Extension.ToLower())dZMHTML5中文学习网 - HTML5先行者学习网

  115 {dZMHTML5中文学习网 - HTML5先行者学习网

  116 case ".jpg":dZMHTML5中文学习网 - HTML5先行者学习网

  117 imageType = ImageFormat.Jpeg;dZMHTML5中文学习网 - HTML5先行者学习网

  118 break;dZMHTML5中文学习网 - HTML5先行者学习网

  119 case ".gif":dZMHTML5中文学习网 - HTML5先行者学习网

  120 imageType = ImageFormat.Gif;dZMHTML5中文学习网 - HTML5先行者学习网

  121 break;dZMHTML5中文学习网 - HTML5先行者学习网

  122 case ".png":dZMHTML5中文学习网 - HTML5先行者学习网

  123 imageType = ImageFormat.Png;dZMHTML5中文学习网 - HTML5先行者学习网

  124 break;dZMHTML5中文学习网 - HTML5先行者学习网

  125 case ".bmp":dZMHTML5中文学习网 - HTML5先行者学习网

  126 imageType = ImageFormat.Bmp;dZMHTML5中文学习网 - HTML5先行者学习网

  127 break;dZMHTML5中文学习网 - HTML5先行者学习网

  128 case ".tif":dZMHTML5中文学习网 - HTML5先行者学习网

  129 imageType = ImageFormat.Tiff;dZMHTML5中文学习网 - HTML5先行者学习网

  130 break;dZMHTML5中文学习网 - HTML5先行者学习网

  131 case ".wmf":dZMHTML5中文学习网 - HTML5先行者学习网

  132 imageType = ImageFormat.Wmf;dZMHTML5中文学习网 - HTML5先行者学习网

  133 break;dZMHTML5中文学习网 - HTML5先行者学习网

  134 case ".ico":dZMHTML5中文学习网 - HTML5先行者学习网

  135 imageType = ImageFormat.Icon;dZMHTML5中文学习网 - HTML5先行者学习网

  136 break;dZMHTML5中文学习网 - HTML5先行者学习网

  137 default:dZMHTML5中文学习网 - HTML5先行者学习网

  138 break;dZMHTML5中文学习网 - HTML5先行者学习网

  139 }dZMHTML5中文学习网 - HTML5先行者学习网

  140 MemoryStream ms = new MemoryStream();dZMHTML5中文学习网 - HTML5先行者学习网

  141 modifyImage.Save(ms, imageType);dZMHTML5中文学习网 - HTML5先行者学习网

  142 byte[] imgData = ms.ToArray();dZMHTML5中文学习网 - HTML5先行者学习网

  143 modifyImage.Dispose();dZMHTML5中文学习网 - HTML5先行者学习网

  144 drawedImage.Dispose();dZMHTML5中文学习网 - HTML5先行者学习网

  145 g.Dispose();dZMHTML5中文学习网 - HTML5先行者学习网

  146 FileStream fs = null;dZMHTML5中文学习网 - HTML5先行者学习网

  147 if (this.OutPath == null || this.OutPath == "")dZMHTML5中文学习网 - HTML5先行者学习网

  148 {dZMHTML5中文学习网 - HTML5先行者学习网

  149 File.Delete(this.ModifyImagePath);dZMHTML5中文学习网 - HTML5先行者学习网

  150 fs = new FileStream(this.ModifyImagePath, FileMode.Create, FileAccess.Write);dZMHTML5中文学习网 - HTML5先行者学习网

  151 }dZMHTML5中文学习网 - HTML5先行者学习网

  152 elsedZMHTML5中文学习网 - HTML5先行者学习网

  153 {dZMHTML5中文学习网 - HTML5先行者学习网

  154 fs = new FileStream(this.OutPath, FileMode.Create, FileAccess.Write);dZMHTML5中文学习网 - HTML5先行者学习网

  155 }dZMHTML5中文学习网 - HTML5先行者学习网

  156 if (fs != null)dZMHTML5中文学习网 - HTML5先行者学习网

  157 {dZMHTML5中文学习网 - HTML5先行者学习网

  158 fs.Write(imgData, 0, imgData.Length);dZMHTML5中文学习网 - HTML5先行者学习网

  159 fs.Close();dZMHTML5中文学习网 - HTML5先行者学习网

  160 }dZMHTML5中文学习网 - HTML5先行者学习网

  161 }dZMHTML5中文学习网 - HTML5先行者学习网

  162 finallydZMHTML5中文学习网 - HTML5先行者学习网

  163 {dZMHTML5中文学习网 - HTML5先行者学习网

  164 trydZMHTML5中文学习网 - HTML5先行者学习网

  165 {dZMHTML5中文学习网 - HTML5先行者学习网

  166 drawedImage.Dispose();dZMHTML5中文学习网 - HTML5先行者学习网

  167 modifyImage.Dispose();dZMHTML5中文学习网 - HTML5先行者学习网

  168 g.Dispose();dZMHTML5中文学习网 - HTML5先行者学习网

  169 }dZMHTML5中文学习网 - HTML5先行者学习网

  170 catch { ;}dZMHTML5中文学习网 - HTML5先行者学习网

  171 }dZMHTML5中文学习网 - HTML5先行者学习网

  172 }dZMHTML5中文学习网 - HTML5先行者学习网

  173 #endregiondZMHTML5中文学习网 - HTML5先行者学习网

  174 }dZMHTML5中文学习网 - HTML5先行者学习网

  175}dZMHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助