文档章节

生成二维码与返回流

o
 osc_4nmshwhm
发布于 2018/08/06 22:45
字数 307
阅读 5
收藏 0

精选30+云产品,助力企业轻松上云!>>>

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Web;

namespace Glonee.Handler
{
    /// <summary>
    /// ErWeiMa 的摘要说明
    /// </summary>
    public class ErWeiMa : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            string strSource = context.Request.Params["strSource"];
            string text = "";
            int width = 250;
            int height = 250;
            string fontName = "楷体";
            Image image = (GetTwoDimensionCode(strSource,text,width,height,fontName));
            context.Response.ContentType = "image/jpeg";
            image.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
            image.Dispose();
        }
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
        public static Bitmap GetTwoDimensionCode(string strSource,
           string text, int width, int height, string fontName)
        {
            // 创建Bitmap对象
            Bitmap bmp = new Bitmap(width, height);
            // 从image创建 Graphics对象
            Graphics objGraphics = Graphics.FromImage(bmp);
            // 填上背景色
            objGraphics.FillRectangle(Brushes.White, 0, 0, bmp.Width, bmp.Height);
            // 
            ThoughtWorks.QRCode.Codec.QRCodeEncoder qrCodeEncoder =
                new ThoughtWorks.QRCode.Codec.QRCodeEncoder();
            // 设置编码方法
            qrCodeEncoder.QRCodeEncodeMode =
                ThoughtWorks.QRCode.Codec.QRCodeEncoder.ENCODE_MODE.BYTE;
            // 设置大小
            qrCodeEncoder.QRCodeScale = 3;
            // 适用于信息量较少的情形,图像越小保存的信息量越少
            // qrCodeEncoder.QRCodeScale = 4;
            // 设置版本
            qrCodeEncoder.QRCodeVersion = 0;
            // 设置错误校验的级别,正因为二维码有纠错能力,才能够加入logo
            qrCodeEncoder.QRCodeErrorCorrect =
                ThoughtWorks.QRCode.Codec.QRCodeEncoder.ERROR_CORRECTION.M;
            Image image = qrCodeEncoder.Encode(strSource, Encoding.GetEncoding("utf-8"));
            // 写入二维码
            int x = (int)(width - image.Width) / 2;
            int y = (int)(height - image.Height) / 2;
            objGraphics.DrawImage(image, new Point(x, y));
// 添加Logo图标
            image = Image.FromFile(@"G:\ASP.net\S2结业项目\MI\MI\img\logo-footer.png");
            x = (int)(width - image.Width) / 2;
            y = (int)(height - image.Height) / 2;
            objGraphics.DrawImage(image, new Point(x, y));
            // 写入字符串
            //objGraphics.DrawString(text, new Font(fontName, 13, FontStyle.Bold), 
            //    Brushes.Black, new PointF(43, 15));
            return bmp;
        }
    }
}


想要使用这个返回的值 就直接src 去访问这个handler

  

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
微信小程序自定义券票二维码文件流上传到OSS解决方法

前言 目前项目中有这样一下需求,通过传入的不同的参数生成不同渠道的微信小程序二维码从而统计各大平台通过小程序引流的数据。而旧系统是先通过接口生成二维码后先是保存至当前服务器上后拿...

北桥苏
04/25
10
0
java如何台生成二维码详解

现在呢说明页面上展示二维码的两种方式: 1.使用img标签的src来请求生成二维码,后台会直接返回; 2.此处跟上方意思相似,获取到url给img标签设置src属性; 特别注意:如果url有amp;,需求替换...

osc_y40tpu41
2019/09/25
2
0
微信二维码扫描支付

微信二维码扫码支付的原理 参数生成等请参考官方文档:https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=61 微信扫码支付。简单来说,就是你把微信支付需要的信息,生成到二维码图...

刘显示
2015/07/27
4.4K
0
springboot微信支付,支付二维码生成

https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=91 微信扫码支付开发者文档,里面会有支付流程的教程 接口链接 URL地址:https://api.mch.weixin.qq.com/pay/unifiedorder 首先,...

osc_80dzmuml
2019/01/01
3
0
关于.NET HttpClient方式获取微信小程序码(二维码)

随着微信小程序的火热应用,市面上有关小程序开发的需求也多了起来。近来分析了一项生成有关生成微信小程序码的需求——要求扫码跳转到小程序指定页面(带参数);看了下小程序官方文档,以及...

osc_8k5qho63
04/16
2
0

没有更多内容

加载失败,请刷新页面

加载更多

浅谈对python pandas中 inplace 参数的理解

这篇文章主要介绍了对python pandas中 inplace 参数的理解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 pandas 中 inplace 参数在很多函数中都会有,它的作用是:是否...

Linux就该这么学
5分钟前
0
0
C++ 从基本数据类型说起

前言 int 在32位和64位操作系统,都是四个字节长度。为了能编写一个在32位和64位操作系统都能稳定运行的程序,建议采用std::int32_t 或者std::int64_t指定数据类型。*与long随操作系统子长变...

osc_sxdofc9c
5分钟前
0
0
游戏音乐的作用以及起源

游戏音乐是由特殊的音乐、语言符号、美学符号组成,在电子游戏的发展下,游戏音乐越来越成熟,游戏音乐与美术相融合,能够带给玩家视觉与声音的感官冲击,形成游戏音乐所具有的独特的审美效果...

奇亿音乐
6分钟前
0
0
2020,最新Model的设计-APP重构之路

很多的app使用MVC设计模式来将“用户交互”与“数据和逻辑”分开,而model其中一个重要作用就是持久化。下文中设计的Model可能不是一个完美的,扩展性强的model范例,但在我需要重构的app中,...

osc_mfzkzkxi
6分钟前
0
0
面对职业瓶颈,iOS 开发人员应该如何突破?

我们经常看到 iOS 开发人员(各种能力水平都有)的一些问题,咨询有关专业和财务发展方面的建议。 这些问题有一个共同点:前面都会说“我现在遇到了职业困境”,然后会问一些诸如“我是否应该...

osc_gfpedeca
8分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部