#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. Google 网站打不开

    http://209.116.186.246/ http://91.213.30.153/  (2014年6月30日 新增) https://wen.lu/ (2014年6月30日 新增,注意下是ht ...

  2. linux源码阅读笔记 数组定义

    在阅读linux源码的过程中遇到了下面的略显奇怪的结构体数组定义. static struct hd_struct{ long start_sect; long nr_sects; }hd[10]={ ...

  3. Bad configuration option localCommand

     command-line: line 0: Bad configuration option: PermitLocalCommand 2011-12-08 14:04:54 标签:Bad confi ...

  4. 0环境设置 - SQLPLUS设置

    define _editor=vi - SQL*PLUS默认编辑器set serveroutput on size 1000000 - 默认打开DBMS_OUTPUT, 不用每次使用都执行这个命令来启 ...

  5. lintcode 中等题:k Sum ii k数和 II

    题目: k数和 II 给定n个不同的正整数,整数k(1<= k <= n)以及一个目标数字. 在这n个数里面找出K个数,使得这K个数的和等于目标数字,你需要找出所有满足要求的方案. 样例 ...

  6. 为什么需要用到序列化?为什么HttpSession中对象要序列化

    简单说就是为了保存在内存中的各种对象的状态,并且可以把保存的对象状态再读出来.虽然你可以用你自己的各种各样的方法来保存Object States,但是Java给你提供一种应该比你自己好的保存对象状态的 ...

  7. activiti5.13 框架 数据库设计说明书

    转载自:http://www.cnblogs.com/llzgzljl/p/3356108.html activiti5.13 框架 数据库设计说明书 1.结构设计 1.1.    逻辑结构设计 Ac ...

  8. WCF入门(十一)---WCF安全

    一个强大的WCF服务安全系统,拥有两种安全模式或级别预期的客户端可以访问的服务.这是常见的分布式事务的安全威胁正在放缓,在很大程度上由WCF决定. 关键的安全功能 WCF服务有四个主要的安全功能,如下 ...

  9. Jdk命令之jps

    jps -- Java Virtual Machine Process Status Tool jps命令类似于Linux下的ps命令,可以列出本机所有正在运行的java进程.

  10. HDU 4604 deque 最长上升子序列

    枚举每个位置,求以num[i]为起点的最长不下降子序列和以num[i]为结尾的最长不递增子序列. 并且把相同值的个数统计一下,最后要减去算重复了的. 比如: 1 9 4 4 2 2 2 3 3 3 7 ...