我有一个背景图片 放在网页的一个image控件里面。我的目的是在image的图片上画一些简单的图。求代码!例子:
已有背景图片是一个格尺,我输入5  则程序在背景图片5厘米处 画处一条红线;输入10则在图片10里面处画出红线。谢谢各位!!!

解决方案 »

  1.   

    asp.net的handle可以去在图片上绘制东西,看看自定义空间的实现原理有帮助
      

  2.   

    其实你说的就是图片水印,你可以在网上查询关于图片水印的资料主要用的是DrawString方法
      

  3.   


    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Web;
    using System.Drawing;namespace WehHandlerLib
    {
    class WaterHandler : IHttpHandler, System.Web.SessionState.IRequiresSessionState
    {
    #region IHttpHandler 成员 public bool IsReusable
    {
    get { return false; }
    } public void ProcessRequest(HttpContext context)
    {
    string fileName = context.Request.PhysicalPath;
    string sitePath = context.Request.PhysicalApplicationPath; if (System.IO.File.Exists(fileName))
    {
    Image img = Image.FromFile(fileName); //加载源图
    Image bmpWater = Image.FromFile(sitePath + "/images/water.jpg"); //加载水印图 Graphics g = Graphics.FromImage(img); //实例化画布
    g.DrawImage(bmpWater, new Rectangle(
    img.Width - bmpWater.Width, 
    img.Height - bmpWater.Height,
    bmpWater.Width, bmpWater.Height));
                                     // 右下角水印 img.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
                                    //以jpg格式写入到输出流
    }
                            //源图不存在,加载默认图片
    else
    {
    Image defaultImage = Image.FromFile(sitePath + "/images/default.jpg");
    defaultImage.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
    } } #endregion
    }
    }