一般处理程序ashx结合gdi+处理图片

1 新建一般处理程序  .ashx

public void ProcessRequest (HttpContext context) {

context.Response.ContentType = "text/plain";
context.Response.Write("Hello
World");

}

2. 引入命名空间  using System.Drawing;

3.因为是操作图片所以把context.Response.ContentType =
"text/plain";改为context.Response.ContentType = "image/jpeg";

4

//一般处理程序中给图片添加文字

string path = context.Request.MapPath("psb.jpg");

using (Image img = Image.FromFile(path))
{
using
(Graphics g = Graphics.FromImage(img))
{

g.DrawString("文字", new Font("黑体", 40), Brushes.Red, 120, 120);

img.Save(context.Response.OutputStream,
System.Drawing.Imaging.ImageFormat.Jpeg);
}
}

5

//给图片添加logo

string imagepath = context.Request.MapPath("psb.jpg");
string
loginpath = context.Request.MapPath("logo.png");

using (Image img=Image.FromFile(imagepath))
{

using (Image logoimage=Image.FromFile(loginpath))
{

using (Graphics g=Graphics.FromImage(img))
{

g.DrawImage(logoimage, 100, 200, logoimage.Width,
logoimage.Height);

img.Save(context.Response.OutputStream,System.Drawing.Imaging.ImageFormat.Jpeg);

}
}
}

时间: 2024-08-25 04:58:20

一般处理程序ashx结合gdi+处理图片的相关文章

jQuery获取一般处理程序(ashx)的JSON数据

昨天有在开发的软件生产线生产流程,RFID扫描IC卡的数据,当中有用到jQuery获取一般处理程序(ashx)的JSON数据.今有把它写成一个小例子,望需要的网友能参考. 在网站中,创建一个一般应用程序ashx: 命名空间: using System.Data; using System.Collections.Generic; using System.Web.Script.Serialization; 输出的内容类型: context.Response.ContentType = "appl

一般处理程序ashx的好处

[免去了普通.aspx页面的控件解析以及页面处理的过程].这个是主要的.运行起来比.aspx快很多. .ashx 这个文件特别适合于生成动态图片,生成动态文本等内容. HttpHandler和ASP.NET窗体比较,最大的好处就是轻量. HttpHandler主要处理http请求,ASP.NET窗体除了处理http请求之外还要负责生成html页面,另外为了支持服务器空间添加了很多回调的逻辑. 各有各的好处,要灵活应用,例如你要返回一段json数据,HttpHandler就更佳. ASP.NET窗

Ajax 调用(传值)一般处理程序(.ashx)

问题:在一般处理程序(.ashx)中累加[index='b']的值 难点:前台获取JSON值后台解析 解决: //#region 把index=b的值存在JSON对象中 function AjaxGetSum() { var arr = []; $("input[index='b']").each(function () { var arrObject = {}; var tempVal = $(this).val(); if (!$.gstr.isEmpty(tempVal)) {

ASP.NET -- 一般处理程序ashx

ASP.NET  --   一般处理程序ashx 如果在一个html页面向服务器端请求数据,可用ashx作为后台页面处理数据.ashx适合用作数据后台处理,相当于WebForm中的aspx.cs文件或aspx.vb文件. 入门案例:html页面向ashx页面请求数据,ashx作为后台页面返回数据. 前端html页面: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" co

Web-----》》》 一般处理程序 ashx

一般处理程序 后缀: 前台页面:.ashx 后台页面:.ashx.cs 打开方式:右键程序集--在浏览器中查看--输入url(如http://localhost:6560/firstAshx.ashx) firstAshx.ashx是一般处理程序的名称 ashx处理机制(流程): 浏览器发送请求给服务器中的IIS,IIS接收到请求就会到处理映射池中找到对应的类文件交给ASPNet.Isapid(中间处理程序)  中间处理程序再把类文件交给asp.fromwork框架,再根据ashx找到前台页面类

C#、asp.net中的一般处理程序.ashx文件重命名问题

这里简单说一下.net中,对一般处理程序文件xxx.ashx重命名的问题 事发原因,我在对aaa.ashx文件重命名为bbb.ashx时,页面中写好的ajax调用bbb.ashx时,调用不到了,找了一下,在bbb.ashx文件的目录下有2个文件:bbb.ashx.bbb.ashx.cs 打开bbb.ashx,发现 <%@ WebHandler Language="C#" CodeBehind="bbb.ashx.cs" Class="PengYuan

.net Ajax与后台一般处理程序(ashx) 交互

本文主要实现无动态刷新查询后台数据功能,主要用到ajax+ashx+sqlserver进行交互. 首先需要引用Jquery: <script language="javascript" type="text/javascript" src="../js/jquery.js"> html脚本: <asp:TextBox ID="tb_corpName" runat="server" MaxL

一般处理程序(ashx)获取不到POST请求的参数问题

写了一个一般处理程序来做接口,由于字段Content是文本,长度可能很长,鉴于这个原因,所以不能GET请求 所以问题来了,当我改成POST请求,自己使用HttpHelper类来写了一个Demo code var result = new HttpHelper().GetHtml(new HttpItem() { URL = "http://localhost:24885/Comment.ashx", Method = "POST", Postdata = "

ASP.NET MVC 项目中 一般处理程序ashx 获取Session

1-在 aspx和aspx.cs中,都是以Session["xxx"]="aaa"和aaa=Session["xxx"].ToString()进行读写. 而在ashx中,Session都要使用context.Session,读写方法是这样的: context.Session["xxx"]="aaa"和aaa=context.Session["xxx"].ToString() 2-在ash