#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. C#接口的经典案例

    C#接口(interface)实例子(简单而经典)2008/12/04 10:04using System; using System.Collections.Generic; using Syste ...

  2. poj 3101 Astronomy

    2个星球周期为a,b.则相差半周的长度为a*b/(2*abs(a-b)),对于n个只需求这n个 分数的最小公倍数即可! 公式: 分数的最小公倍数 = 分子的最小公倍数/分母的最大公约数 由于涉及到大数 ...

  3. NSDictionary 遍历

           NSDictionary *dic1=[NSDictionary dictionaryWithObjectsAndKeys: @"1",@"a", ...

  4. RestTemplateIntegrationTests

    摘录RestTemplate的集成测试类/* 2.    * Copyright 2002-2010 the original author or authors. 3.    * 4.    * L ...

  5. Ubuntu 12.04搭建MTK 6577 安卓开发环境

    Ubuntu 12.04搭建 MTK 6577安卓开发环境 1.       下载并安装Vmware虚拟机: 2.       下载并在虚拟机上安装Ubuntu 12.04 iso 安装包:下载地址: ...

  6. css link和@import区别用法

    这里link与@import介绍的是html引入css的语法单词.两者均是引入css到html的单词. 1.link语法结构<link rel="stylesheet" ty ...

  7. Sublime Text3中文乱码及tabs中文方块的解决方案

    一.文本出现中文乱码问题 方案1 1.打开Sublime Text 3,按Ctrl+-打开控制行,复制粘贴以下python代码,然后回车运行. 2. 复制并粘贴如下代码: import urllib. ...

  8. 转:表单中Readonly和Disabled的区别(HTML中使用javascript解除禁止input输入框代)

    转:表单中Readonly和Disabled的区别 参考资料: disabled和readonly区别: 参考博文1地址:http://blog.csdn.net/symgdwyh/article/d ...

  9. Difference between 2>&-, 2>/dev/null, |&, &>/dev/null and >/dev/null 2>&1

    Reference link: http://unix.stackexchange.com/questions/70963/difference-between-2-2-dev-null-dev-nu ...

  10. UVa 10969 (圆与圆之间的覆盖问题) Sweet Dream

    题意: 有n个按先后顺序放置的不同大小不同位置的圆,求所有可见圆弧的长度. 分析: 这道题应该是大白书上例题 LA 2572 (求可见圆盘的数量) Kanazawa 的加强版,整体框架都差不多. 对于 ...