天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

ASP.NET 2.0,C#----圖像特效處理

利用.NET 提供的類,如Drawing.Bitmap ,Drawing.Bitmap 等,很容易就可以實現對圖片的簡單處理。包括打水印,放大縮小,等操作。

public partial class WebForm4 : System.Web.UI.Page
      {
          // 原始圖片路徑
          private string path;
          private System.Drawing.Bitmap bitmap;     
          private System.Drawing.Graphics graphics;
          string Message = "<script>alert(/"{0}/");</script>";
          protected void Page_Load(object sender, EventArgs e)
          {
              if (!Page.IsPostBack)
              {
                  this.txtPicPath.Text = Server.MapPath("/test.jpg");
              }
              path = this.txtPicPath.Text.Trim();
              if (!System.IO.File.Exists(path))
              {
                  MessageShow("指定的源文件不存在!");
                  return;
              }
          }
          // 打水印Logo
          protected void btnLogo_Click(object sender, EventArgs e)
          {
              string log = txtLog.Text.Trim();
              if (log.Length < 1)
              {
                  MessageShow("請輸入水印字符!");
                  return;
              }

              bitmap = new Bitmap(path);
              graphics = Graphics.FromImage(bitmap);
              graphics.DrawString(log, new Font("宋體", 16), System.Drawing.Brushes.GreenYellow, new PointF(bitmap.Width / 2 - (log.Length) * 5, bitmap.Height / 2));
              try
              {
                  bitmap.Save(Server.MapPath("./_Log.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg);
                  MessageShow("已經生成水印圖片,路徑為" + @Server.MapPath("./_log.jpg").Replace("http://", "http:////"));

              }
              catch (Exception ex)
              {
                  MessageShow("生成圖片錯誤!" + ex.Message);
                  throw;
              }
              graphics.Dispose();
              bitmap.Dispose();
          }
          private void MessageShow(string msg)
          {
              Page.ClientScript.RegisterStartupScript(Page.GetType(), "Message", string.Format(Message, msg));

          }
          //放大X*X倍
          protected void btnBig_Click(object sender, EventArgs e)
          {
              int i = int.Parse(txtBig.Text.Trim());
              System.Drawing.Image img = System.Drawing.Image.FromFile(path);
              bitmap = new Bitmap(img.Width * i, img.Height * i);
              graphics = Graphics.FromImage(bitmap);
              graphics.DrawImage(img, 0, 0, img.Width * i, img.Height * i);
              try
              {
                  bitmap.Save(Server.MapPath("./_Big.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg);
                  MessageShow("已經生成圖片,路徑為" + @Server.MapPath("./_Big.jpg").Replace("http://", "http:////"));

              }
              catch (Exception ex)
              {
                  MessageShow("生成圖片錯誤!" + ex.Message);
                  throw;
              }
              graphics.Dispose();
              bitmap.Dispose();
          }

          //縮小為原始圖像的1/(X*X)
          protected void btnSmall_Click(object sender, EventArgs e)
          {
              float i = float.Parse(txtBig.Text.Trim());
              System.Drawing.Image img = System.Drawing.Image.FromFile(path);
              int w = Convert.ToInt32(img.Width / i);
              int h = Convert.ToInt32(img.Height / i);

              // 防止過度變形
              if (w < 1) w = 10;
              if (h < 1) h = 0;
              bitmap = new Bitmap(w, h);
              graphics = Graphics.FromImage(bitmap);
              graphics.DrawImage(img, 0, 0, w, h);
              try
              {
                  bitmap.Save(Server.MapPath("./_Small.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg);
                  MessageShow("已經生成圖片,路徑為" + @Server.MapPath("./_Small.jpg").Replace("http://", "http:////"));

              }
              catch (Exception ex)
              {
                  MessageShow("生成圖片錯誤!" + ex.Message);
                  throw;
              }
              graphics.Dispose();
              bitmap.Dispose();
          }
//傾斜( 右轉90度)
          protected void btnIncline_Click(object sender, EventArgs e)
          {
              System.Drawing.Image img = System.Drawing.Image.FromFile(path);
              // 圖像旋轉,可以利用RotateFlipType的枚舉值,在編程的時候,IDE會自動顯示每一個枚舉的意思
              img.RotateFlip(RotateFlipType.Rotate90FlipXY);
              bitmap = new Bitmap(img);
              graphics = Graphics.FromImage(bitmap);
              graphics.DrawImage(img, new Point(0, 0));
              try
              {
                  bitmap.Save(Server.MapPath("./_Incline.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg);
                  MessageShow("已經生成圖片,路徑為" + @Server.MapPath("./_Incline.jpg").Replace("http://", "http:////"));

              }
              catch (Exception ex)
              {
                  MessageShow("生成圖片錯誤!" + ex.Message);
                  throw;
              }
              graphics.Dispose();
              bitmap.Dispose();
          }

          // 圖像壓扁
          protected void btnStave_Click(object sender, EventArgs e)
          {
              System.Drawing.Image img = System.Drawing.Image.FromFile(path);
              // 寬度不變
              int w = img.Width;
              //    高度為原始高度的1/2
              int h = img.Height / 2;

              // 防止過度變形
              if (w < 1) w = 10;
              if (h < 1) h = 0;
              bitmap = new Bitmap(w, h);
              graphics = Graphics.FromImage(bitmap);
              graphics.DrawImage(img, 0, 0, w, h);
              try
              {
                  bitmap.Save(Server.MapPath("./_Stave.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg);
                  MessageShow("已經生成圖片,路徑為" + @Server.MapPath("./_Stave.jpg").Replace("http://", "http:////"));

              }
              catch (Exception ex)
              {
                  MessageShow("生成圖片錯誤!" + ex.Message);
                  throw;
              }
              graphics.Dispose();
              bitmap.Dispose();
          }
          //圖像拉寬
          protected void btnElongate_Click(object sender, EventArgs e)
          {
              System.Drawing.Image img = System.Drawing.Image.FromFile(path);
              // 放大寬度
              int w = img.Width / 2;
              // 高度不變
              int h = img.Height;

              // 防止過度變形
              if (w < 1) w = 10;
              if (h < 1) h = 0;
              bitmap = new Bitmap(w, h);
              graphics = Graphics.FromImage(bitmap);
              graphics.DrawImage(img, 0, 0, w, h);
              try
              {
                  bitmap.Save(Server.MapPath("./_Elongate.jpg"), System.Drawing.Imaging.ImageFormat.Jpeg);
                  MessageShow("已經生成圖片,路徑為" + @Server.MapPath("./_Elongate.jpg").Replace("http://", "http:////"));

              }
              catch (Exception ex)
              {
                  MessageShow("生成圖片錯誤!" + ex.Message);
                  throw;
              }
              graphics.Dispose();
              bitmap.Dispose();
          }
      }

AspNet技術ASP.NET 2.0,C#----圖像特效處理,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 天天色天天综合网 | 日本19xxxx撤尿 | 欧美另类老女人 | 亚洲精品国产高清嫩草影院 | 69精品人妻一区二区三区蜜桃 | 九热这里只有精品 | 国产69精品久久久久乱码韩国 | 国产高清免费视频免费观看 | 久久综合网久久综合 | 久久www免费人成_看片高清 | 国产婷婷午夜精品无码A片 国产婷婷色综合AV蜜臀AV | 国产一区二区精品视频 | 日本少妇无码精品12P | 506070老熟肥妇bbwxx视频 4虎最新网址 | 先锋影音av无码第1页 | 日韩精品久久久久影院 | 国产线精品视频在线观看 | 十九岁在线观看免费完整版电影 | 欧美大香线蕉线伊人久久 | 越南女子杂交内射BBWXZ | 月夜直播视频免费观看 | 9420高清完整版在线电影免费观看 | 亚洲区视频在线观看 | 夜色88V精品国产亚洲AV | QVOD在线播放| 闺蜜扒开我尿口使劲揉 | 伊人大香线蕉影院在线播放 | 野花视频在线观看免费最新动漫 | 成人在线不卡视频 | 一级毛片皇帝 宫女 | 使劲别停好大好深好爽动态图 | 亚洲AV无码A片在线观看蜜桃 | 亚洲 日本 天堂 国产 在线 | 俄罗斯老妇女BBXX | adc影院欢迎您大驾光临入口 | 亚洲精品免播放器在线观看 | 在线观看成人免费视频 | 男男h啪肉np文总受 男男h开荤粗肉h文1v1 | 久久大香线蕉综合爱 | 国产又黄又粗又爽又色的视频软件 | 国产亚洲精品久久久久久禁果TV |