利用ASP.NET一般处理程序动态生成Web图像(转)
摘自:http://www.cnblogs.com/zhouhb/archive/2011/02/15/1955262.html
一般处理程序的扩展名为ashx,它实现了IHttpHandler接口,可以响应HTTP请求。我们可以用一般处理程序来动态生成Web图像。
<%@ WebHandler Language="C#" class="CreateImage" %>
using System;
using System.Web;
using System.Drawing;
using System.Drawing.Imaging;
public class CreateImage : IHttpHandler {
public void ProcessRequest (HttpContext context) {
using (Bitmap img = new Bitmap(100, 25))//实例化Bitmap
{
using (Graphics g = Graphics.FromImage(img))//从Bitmap实例创建Graphics实例
{
g.Clear(Color.Blue);//以蓝色填充图片
Font f = new Font("宋体", 16);
Brush b = new SolidBrush(Color.White);
g.DrawString("寂寞沙洲", f, b, 0, 0);//输出文字
}
context.Response.Clear();
context.Response.ContentType = "Image/JPEG";//通知浏览器发送的数据是JPEG格式的图像
img.Save(context.Response.OutputStream, ImageFormat.Jpeg);//向浏览器发送图像数据
context.Response.End();
}
}
// 是否自动缓存此对象以供下次复用
public bool IsReusable {
get {
return false;
}
}
}
生成的图像如图:

既可以通过浏览器以URL来访问一般处理程序,也可以作为一个图像源被<img>元素所引用:
<img src="CreateImage.ashx" alt="动态生成图像" />
利用ASP.NET一般处理程序动态生成Web图像(转)的更多相关文章
- 动态生成web表-asp.net table
1. 页面上定义一个server 的table <table style="width: 100%" id="tbContent" runat=" ...
- ASP.NET程序中动态修改web.config中的设置项目(后台CS代码)
using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Dra ...
- 利用jQuery中live为动态生成Dom添加datepicker效果
利用Live属性,focus时重新绑定控件 $(".datepickerDom").live("focus", function () { $(this).da ...
- python读取三维点云球坐标数据并动态生成三维图像与着色
关键步骤: 1.首先通过读取.txt文本数据并进行一系列字符串处理,提取显示所需要的相关数据矩阵 2.然后利用python的matplotlib库来进行动态三维显示 备注:matplotlib在显示2 ...
- (译)利用ASP.NET加密和解密Web.config中连接字符串
介绍 这篇文章我将介绍如何利用ASP.NET来加密和解密Web.config中连接字符串 背景描述 在以前的博客中,我写了许多关于介绍 Asp.net, Gridview, SQL Server, A ...
- 利用ASP.NET加密和解密Web.config中连接字符串
摘自:博客园 介绍 这篇文章我将介绍如何利用ASP.NET来加密和解密Web.config中连接字符串 背景描述 在以前的博客中,我写了许多关于介绍 Asp.net, Gridview, SQL Se ...
- asp.net中处理程序调用HttpContext.Current.Session获取值出错
asp.net中处理程序调用System.Web.HttpContext.Current.Session获取Session时提示错误:未将对象引用设置到对象的实例. 解决办法:在处理程序文件类中实现I ...
- PHP 动态生成验证码
……机器人会在网站中搜寻允许他们插入广告的输入表单,在虚拟世界没有什么能阻挡它们胡作非为.这些机器人效率极高,完全不关心所攻击的表单的本来用途.它们唯一的目标就是用它们的垃圾广告覆盖你的内容,残忍地为 ...
- ABP(现代ASP.NET样板开发框架)系列之20、ABP展现层——动态生成WebApi
点这里进入ABP系列文章总目录 ABP(现代ASP.NET样板开发框架)系列之20.ABP展现层——动态生成WebApi ABP是“ASP.NET Boilerplate Project (ASP.N ...
随机推荐
- Android之多媒体扫描过程
转自:http://blog.csdn.net/yan8024/article/details/6620359下面是系统图 MediaScannerReceiver会在任何的ACTION_B ...
- DAHON 美国大行
DAHON美国大行1982年创立于美国加州,多年来一直率先推动环保的代步工具——折叠自行车.创新是大行的生命,从韩氏兄弟发明了全世界第一辆小到能够放进火车座椅底下的折叠自行车起,大行就开启了不断向前的 ...
- 【BZOJ】【1941】【SDOI2010】Hide and Seek
KD-Tree 一开始看错题了
- [19] 半球形(Hemisphere)图形的生成算法
顶点数据的生成 bool YfBuildHemisphereVertices ( Yreal radius, Yuint slices, Yuint stacks, YeOriginPose orig ...
- Tomcat安装笔记(on Mac)
1. 官网 http://tomcat.apache.org/ 下载apache包,我下的8.5 注意要下core包的tgz版本,我开始下了full doc. 2. 拷贝解压到 /Library, 然 ...
- 玩转OpenStack
一.OpenStack包含那些内容 1.预备知识 首先会有虚拟化和云计算的“预备知识”,会介绍 KVM,IaaS 等技术. 2.OpenStack核心 包含OpenStack的架构和和各个核心组件. ...
- ubuntu添加默认路由才可以访问网络
- 转: MAC认证码的说明
转: http://blog.sina.com.cn/s/blog_4940e1fc01012vk3.html MAC(Message Authentication Code) 消息认证码(带密钥的H ...
- [Node.js]31. Level 7: Redis coming for Node.js, Simple Redis Commands
Let's start practicing using the redis key-value store from our node application. First require the ...
- Drupal Working with nodes, content types and fields
一个大概的总结,便于对接下来的学习进行理解和运行 在使用Drupal过程中.站点中的内容的不论什么一个部分都是一个节点(node),而每一个节点中又包括了一些默认的字段(fields). 值得说明的是 ...