#region 把图片Copy到输出流
//获得图片全路径
string path = context.Server.MapPath("~/img/158_003.jpg");
//把图片写入流
using (Stream stream = File.OpenRead(path))
{
//把流Copy输出流
stream.CopyTo(context.Response.OutputStream);
}
#endregion

把图片Copy到输出流

 #region 实例化一个图片Save到输出流
using (Bitmap map = new Bitmap(, )) //实例化一个图片
using (Graphics g = Graphics.FromImage(map)) //从这个图片得到一个画布
using (Font font = new Font(FontFamily.GenericSerif, ))
{
g.DrawString("RUPENGWANG", font, Brushes.Red, , );
g.DrawEllipse(Pens.Black, , , , );
//map.Save("img1.jpg",ImageFormat.Jpeg); //保存到文件
//保存到输出流
map.Save(context.Response.OutputStream, ImageFormat.Jpeg);
}
#endregion

实例化一个图片Save到输出流

  #region 实例化一个 可以动态传参数的图片 Save到输出流
string name = context.Request["name"];
using (Bitmap map = new Bitmap(, )) //实例化一个图片
using (Graphics g = Graphics.FromImage(map)) //从这个图片得到一个画布
using (Font font = new Font(FontFamily.GenericSerif, ))
{
g.DrawString(name + "万岁,万岁,万万岁!", font, Brushes.Red, , );
g.DrawEllipse(Pens.Black, , , , );
//map.Save("img1.jpg",ImageFormat.Jpeg); //保存到文件
//保存到输出流
map.Save(context.Response.OutputStream, ImageFormat.Jpeg);
}
#endregion

实例化一个 可以动态传参数的图片 Save到输出流

 #region 作业1:动态生成一个 泡妞证 的图片
string name = context.Request["name"];
//获得原图片路径
string mapSou = context.Server.MapPath("~/img/bitmap.jpg");
using (Bitmap map = new Bitmap(mapSou)) //实例化一个已知图片:泡妞证
using (Graphics g = Graphics.FromImage(map)) //从这个图片得到一个画布
using (Font font1 = new Font(FontFamily.GenericSerif, ))
using (Font font2 = new Font(FontFamily.GenericSerif, ))
{
g.DrawString(name, font1, Brushes.Red, , );
g.DrawString(name, font2, Brushes.Red, , );
//保存到输出流
map.Save(context.Response.OutputStream, ImageFormat.Jpeg);
}
#endregion

作业1:动态生成一个 泡妞证 的图片

 #region 作业2:动态生成一个 4位数字的 验证码
//随机生成4位数
Random ran = new Random();
int num = ran.Next(, );
//画出一个图片
using (Bitmap map = new Bitmap(, )) //实例化一个图片:验证码
using (Graphics g = Graphics.FromImage(map)) //从这个图片得到一个画布
using (Font font = new Font(FontFamily.GenericSerif, ))
{
g.DrawString(num.ToString(), font, Brushes.Red, , );
//保存到输出流
map.Save(context.Response.OutputStream, ImageFormat.Jpeg);
}
#endregion

作业2:动态生成一个 4位数字的 验证码

动态生成图片 保存到OutputStream的更多相关文章

  1. pandas对象保存到mysql出错提示“BLOB/TEXT column used in key specification without a key length”解决办法

    问题 将DataFrame数据保存到mysql中时,出现错误提示: BLOB/TEXT column used in key specification without a key length 原因 ...

  2. Android把图片保存到SQLite中

    1.bitmap保存到SQLite 中 数据格式:Blob db.execSQL("Create table " + TABLE_NAME + "( _id INTEGE ...

  3. Java 将PDF转为HTML时保存到流

    本文介绍如何通过Java后端程序代码将PDF文件转为HTML,并将转换后的HTML文件保存到流.在实现转换时,可设置相关转换属性,如:是否嵌入SVG.是否嵌入图片等.下面是实现转换的方法和步骤: 1. ...

  4. jQuery切换网页皮肤保存到Cookie实例

    效果体验:http://keleyi.com/keleyi/phtml/jqtexiao/25.htm 以下是源代码: <!DOCTYPE html PUBLIC "-//W3C//D ...

  5. 个人学习记录1:二维数组保存到cookie后再读取

    二维数组保存到cookie后再读取 var heartsArray = [[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0],[0,0, ...

  6. 利用session_set_save_handler()函数将session保存到MySQL数据库中

    PHP保存session默认的是采用的文件的方式来保存的,这仅仅在文件的空间开销很小的windows上是可以采用的,但是如果我们采用uinx或者是liux上的文件系统的时候,这样的文件系统的文件空间开 ...

  7. PHP如何将session保存到memcached中?如何分布式保存PHP session

    session_set_save_handler无关的memcached保存session的方法 在memcached服务器上 1)下载memcached #wget http://memcached ...

  8. scrapy 保存到 sqlite3

    scrapy 爬取到结果后,将结果保存到 sqlite3,有两种方式 item Pipeline Feed Exporter 方式一 使用 item Pipeline 有三个步骤 文件 pipelin ...

  9. ffmpeg从AVFrame取出yuv数据到保存到char*中

    ffmpeg从AVFrame取出yuv数据到保存到char*中   很多人一直不知道怎么利用ffmpeg从AVFrame取出yuv数据到保存到char*中,下面代码将yuv420p和yuv422p的数 ...

随机推荐

  1. 如何监控业务的响应速度?Cloud Insight SDK 实践分享

    一直在说 Cloud Insight 是数据聚合平台,可以用 SDK 和 API 实现业务监控,如今不拿出点实践人们恐怕是不能信服.那今天本文就先简单介绍一下 SDK 可以应用在哪些方面,再举个真实用 ...

  2. Installing Lua in Mac

    Lua is distributed in source form. You need to build it before using it. Building Lua should be stra ...

  3. poj 3604 Professor Ben

    质因数分解:牛人推导公式(1^3+2^3+……+(1+a1)^3)*……*(1^3+2^3+……+(1+ai)^3)…… 链接http://poj.org/problem?id=3604 #inclu ...

  4. 【mongoDB中级篇①】游标cursor

    简述 通俗的说,游标不是查询结果,可以理解为数据在遍历过程中的内部指针,其返回的是一个资源,或者说数据读取接口. 客户端通过对游标进行一些设置就能对查询结果进行有效地控制,如可以限制查询得到的结果数量 ...

  5. 40. Combination Sum II

    题目: Given a collection of candidate numbers (C) and a target number (T), find all unique combination ...

  6. NSArray 迭代

    NSObject *obj=[[NSObject alloc]init];        NSArray *array=[[NSArray alloc] initWithObjects:@" ...

  7. Android Handler传值方式

    前面介绍handler的时候,也用到过几种传值方式,今天来总结一下,并且重点说一下bundle方式,代码如下: package com.handlerThread; import android.ap ...

  8. Eliza Doolittle lyrics Big City

    Eliza Doolittle lyrics  Big City 歌词很好,现在还没有,以后添加进来.

  9. C语言全局未初始化数据段分析

    前言: 在分析C语言全局未初始化变量时,发现在目标文件中全局未初始化变量并不是直接放在bss段中. 再后来发现在两个.c文件中定义同名的全局变量,链接时居然没有发生符号重定义错误.才知道C语言弱定义的 ...

  10. 【转载】git命令和svn的对比

    首先,要明确的是,git和svn是完全不同的两种管理方式.他们的命令不是完全对等的. 下面只是一些相似方法的参考,而已. 参考 http://blog.csdn.net/chen198746/arti ...