APS.NET MVC4生成二维码简单解析

.Net  /  houtizong1 发布于 6个月前   63

一、视图

@{ Layout = null;}<!DOCTYPE html><html><head> <meta name="viewport" content="width=device-width" /> <title>Index</title> <script src="https:/article/~/Scripts/jquery-1.8.2.min.js"></script> <script type="text/javascript"> $(function () {  //生成  $('#createBtn').click(function () {  createImage();  });  //解析  $('#analysisBtn').click(function () {  analysisImage();  }); }); //生成二维码 function createImage() {  var content = $('#content').val();  //ajax开始  $.post("/ORCode/GetORImage/",  { "content": content },  function (data) {   $('#imgDiv').empty();   $('#imgDiv').append('<img id="ORImage" />');   $("#ORImage").attr("src", data);  });  //ajax结束 } //解析二维码 function analysisImage() {  //获取图片名称  var imageUrl = $('#ORImage').attr("src");  var array = imageUrl.split('/');  var imageName = array[array.length - 1]; //如:123.jpg  //ajax开始  $.post("/ORCode/GetORImageContent/",  { "imageName": imageName },  function (data) {   $('#ORCodeContent').empty();   $('#ORCodeContent').text(data);  });  //ajax结束 } </script></head><body> <div style="text-align:center;"> <div>  <textarea style="width:230px;height:120px;" id="content"></textarea>  <br />  <input id="createBtn" type="button" value="生成二维码" /> </div> <div>  <textarea style="width:230px;height:120px;" id="ORCodeContent"></textarea>  <br />  <input id="analysisBtn" type="button" value="解析二维码" /> </div> <div style="margin-top:20px;" id="imgDiv"> </div> </div></body></html>

二、控制器

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.Mvc;using Common;using System.Drawing;namespace QRCodeDemo.Controllers{ public class ORCodeController : Controller { // // GET: /ORCode/ public ActionResult Index() {  return View(); } [HttpPost] public ActionResult GetORImage(string content) {  //if (string.IsNullOrEmpty(content))  //{  // return Content("");  //}  string timeStr = DateTime.Now.ToFileTime().ToString();  Bitmap bitmap = QRCodeOp.QRCodeEncoderUtil(content);  string fileName = Server.MapPath("~") + "Content\\Images\\QRImages\\" + timeStr + ".jpg";  bitmap.Save(fileName);//保存位图  string imageUrl = "/Content/Images/QRImages/" + timeStr + ".jpg";//显示图片   return Content(imageUrl); } [HttpPost] public ActionResult GetORImageContent(string imageName) {  string fileUrl = Server.MapPath("~") + "Content\\Images\\QRImages\\" + imageName;  Bitmap bitMap = new Bitmap(fileUrl);  string content = QRCodeOp.QRCodeDecoderUtil(bitMap);  return Content(content); } }}

三、二维码生成工具类

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using ThoughtWorks.QRCode.Codec;using ThoughtWorks.QRCode.Codec.Data;using System.Drawing;namespace Common{ public class QRCodeOp { /// <summary>  /// 生成二维码  /// </summary>  /// <param name="qrCodeContent">要编码的内容</param>  /// <returns>返回二维码位图</returns>  public static Bitmap QRCodeEncoderUtil(string qrCodeContent) {  QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();  qrCodeEncoder.QRCodeVersion = 0;  Bitmap img = qrCodeEncoder.Encode(qrCodeContent, Encoding.UTF8);//指定utf-8编码, 支持中文   return img; } /// <summary>  /// 解析二维码  /// </summary>  /// <param name="bitmap">要解析的二维码位图</param>  /// <returns>解析后的字符串</returns>  public static string QRCodeDecoderUtil(Bitmap bitmap) {  QRCodeDecoder decoder = new QRCodeDecoder();  string decodedString = decoder.decode(new QRCodeBitmapImage(bitmap), Encoding.UTF8);//指定utf-8编码, 支持中文   return decodedString; } }}

以上就是简单解析了APS.NET MVC4下二维码的生成过程,希望对大家的学习有所帮助,制作属于自己的二维码。

下载源码:APS.NET MVC4二维码

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

留言需要登陆哦

技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成

网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客