zoukankan      html  css  js  c++  java
  • 一般处理程序给图片加水印

    当直接请求网站中images目录下的.jpg图片时把图片加上水印,然后输出

    1、在web.config中设置一个全局应用程序来处理该目录下的请求

    <System.Web>
        <httpHandlers>
            <add verb="*" path="images/*.jpg" type="WaterMarker">

     2、创建一个处理水印的类,对应type中的WaterMarker

    复制代码
     1 using System;
     2 using System.Web;
     3 using System.Drawing;
     4 
     5 /// <summary>
     6 ///WaterMarker 的摘要说明
     7 /// </summary>
     8 public class WaterMarker:IHttpHandler
     9 {
    10     public bool IsReusable
    11     {
    12         get { return false; }
    13     }
    14 
    15     public void ProcessRequest(HttpContext context)
    16     {
    17         context.Response.ContentType = "image/jpeg";
    18         //获取报文中的路径
    19         string rawUrl = context.Request.RawUrl;
    20         //原始图片地址
    21         string path = context.Request.MapPath(rawUrl);
    22         //logo图片的地址
    23         string logoPath = context.Request.MapPath("../logo.png");
    24         //添加水印
    25         using (Image Img = Image.FromFile(path)) 
    26         {
    27             using (Image logo = Image.FromFile(logoPath)) 
    28             {          //创建画布
    29                 Graphics g = Graphics.FromImage(Img);
    30                 //设置logo位置右下角
    31                 g.DrawImage(logo,Img.Width-logo.Width-10,Img.Height-logo.Height);
    32                 //输出图片
    33                 Img.Save(context.Response.OutputStream,System.Drawing.Imaging.ImageFormat.Jpeg);         g.Dispose();
    34             }
    35         }
    36 
    37     }
    38     public WaterMarker()
    39     {
    40         //
    41         //TODO: 在此处添加构造函数逻辑
    42         //
    43     }
    44 }
  • 相关阅读:
    Warning:mailcious javascript detected on this domain来由
    CSS盒模型重新理解篇
    sublime生产力提升利器
    Aptana studio 3前端开发编辑器推荐
    Provides PHP completions for Sublime Text
    关于google电子地图跟卫星地图位置不重合
    无名前端库
    npm 编写cli
    webpack.merge
    ExcelDNA UDF 攻略
  • 原文地址:https://www.cnblogs.com/mingjian/p/3427278.html
Copyright © 2011-2022 走看看