⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bookcover.ashx

📁 一个网上书店的源码
💻 ASHX
字号:
<%@ WebHandler Language="C#" Class="BookCover"  %>

using System;
using System.Web;
using System.Drawing;
using System.IO;

public class BookCover : IHttpHandler {
    
    public void ProcessRequest (HttpContext context) {        
        
        string path = context.Request.MapPath("~/Images/BookCovers/" + context.Request.Params["ISBN"].ToString());

        if (!File.Exists(path + "_new.jpg"))
        {
            MakeNewImage(path, context.Request.MapPath("~/Images/watermark.jpg"), context.Request.MapPath("~/Images/watermark.jpg"));
        }
        context.Response.ContentType = "image/jpeg";
        context.Response.WriteFile(path + "_new.jpg");
    }

    /// <summary>
    /// 当添加数字水印的图片没有时,绘制有数字水印的图片
    /// </summary>
    /// <param name="road">图片路径</param>
    /// <param name="watermarkroad">数字水印路径</param>
    /// <param name="defaultimage">默认图片路径</param>
    public void MakeNewImage(string road, string watermarkroad,string defaultimage)
    {
        System.Drawing.Image image;
        if (!File.Exists(road + ".jpg"))
        {
            image = System.Drawing.Image.FromFile(defaultimage);
        }
        else
        {
            image = System.Drawing.Image.FromFile(road + ".jpg");
        }
        System.Drawing.Image watermark = System.Drawing.Image.FromFile(watermarkroad);
        Graphics g = Graphics.FromImage(image);
        g.DrawImage(watermark, new Rectangle(image.Width - watermark.Width, image.Height - watermark.Height, watermark.Width, watermark.Height), 0, 0, watermark.Width, watermark.Height, GraphicsUnit.Pixel);
        g.Dispose();
        watermark.Dispose();        
        string newPath = road + "_new.jpg";
        image.Save(newPath);
        image.Dispose();
    }
    public bool IsReusable {
        get {
            return false;
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -