项目中需要生成二维码,方法比较多,可以采用JS插件,也可以采用第三方插件后台生成二维码,在后台方法中可以采用QRCode或者GmaQrCode,现在介绍一种C#在后台生成二维码的方法:

        /// <summary>
/// 获取二维码
/// </summary>
/// <param name="codeString">编码字符</param>
/// <returns>二维码地址</returns>
public static string ReturnGmaQrCode(string codeString)
{
try
{
using (var ms = new MemoryStream())
{
//const string stringtest = "中国inghttp://www.baidu.com/mvc.test?&";
if (string.IsNullOrEmpty(codeString))
{
throw new ArgumentNullException(codeString);
}
var stringtest = codeString;
CreateGmaQrCodeHelper(stringtest, ms);
var img = Image.FromStream(ms);
var filename = DateTime.Now.ToString("yyyymmddhhmmss");
var path = HttpContext.Current.Server.MapPath("~/image/") + filename + ".png";
img.Save(path);
return path;
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
} } /// <summary>
/// 获取二维码
/// </summary>
/// <param name="strContent">待编码的字符</param>
/// <param name="ms">输出流</param>
///<returns>True if the encoding succeeded, false if the content is empty or too large to fit in a QR code</returns>
public static bool CreateGmaQrCodeHelper(string strContent, MemoryStream ms)
{
try
{
//误差校正水平
const ErrorCorrectionLevel ecl = ErrorCorrectionLevel.M;
//待编码内容
var content = strContent;
//空白区域
const QuietZoneModules quietZones = QuietZoneModules.Two;
//大小
const int moduleSize = ;
var encoder = new QrEncoder(ecl);
QrCode qr;
//对内容进行编码,并保存生成的矩阵
if (encoder.TryEncode(content, out qr))
{
var render = new GraphicsRenderer(new FixedModuleSize(moduleSize, quietZones));
render.WriteToStream(qr.Matrix, ImageFormat.Png, ms);
}
else
{
return false;
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return true;
}

在asp.net的项目中,将生成的二维码地址返回至当前方法。可以采用ashx文件加载图片文件,在页面中获取地址,可以在页面中显示二维码资质。

C#运用GmaQrCode生成二维码的更多相关文章

  1. Javascript生成二维码(QR)

    网络上已经有非常多的二维码编码和解码工具和代码,很多都是服务器端的,也就是说需要一台服务器才能提供二维码的生成.本着对服务器性能的考虑,这种小事情都让服务器去做,感觉对不住服务器,尤其是对于大流量的网 ...

  2. 使用jquery.qrcode生成二维码(转)

    jQuery 的 qrcode 插件就可以在浏览器端生成二维码图片. 这个插件的使用非常简单: 1.首先在页面中加入jquery库文件和qrcode插件. <script type=" ...

  3. iOS 生成二维码

    首先先下载生成二维码的支持文件 libqrencode 添加依赖库 CoreGraphics.framework. QuartzCore.framework.AVFoundation.framewor ...

  4. QR code 扩展生成二维码

    include './phpqrcode/phpqrcode.php';  //引入QR库 QRcode::png("leo", 'qrcode.png', 'L', 10);  ...

  5. Python 创建本地服务器环境生成二维码

    一. 需求 公司要做一个H5手机端适配页面,因技术问题所以H5是外包的,每次前端给我们源码,我们把源码传到服务器让其他人访问看是否存在bug,这个不是很麻烦吗?有人说,可以让前端在他们的服务器上先托管 ...

  6. C#通过第三方组件生成二维码(QR Code)和条形码(Bar Code)

    用C#如何生成二维码,我们可以通过现有的第三方dll直接来实现,下面列出几种不同的生成方法: 1):通过QrCodeNet(Gma.QrCodeNet.Encoding.dll)来实现 1.1):首先 ...

  7. 使用Spire.Barcode程序库生成二维码

    使用Spire.Barcode程序库生成二维码 某天浏览网页发现了一个二维码的程序库.它的描述说他可以扫描二维码图像.我很感兴趣,想试试他是不是会有用.所以我就用了些方法扫描二维码图像来测试一下.结果 ...

  8. C#运用ThoughtWorks生成二维码

    在现在的项目中,较多的使用到二维码,前面介绍过一篇使用Gma生成二维码的操作,现在介绍一个第三方组件,主要介绍生成二维码,二维码的解析,以及对二维码的相关信息的选择,现在介绍ThoughtWorks用 ...

  9. Jquery.Qrcode在客户端动态生成二维码并添加自定义Logo

    0 Jquery.Qrcode简介 Jquery.Qrcode.js是一个在浏览器端基于Jquery动态生成二维码的插件,支持Canvas和Table两种渲染方式,它的优点是在客户端动态生成,减轻了服 ...

随机推荐

  1. solr查询语句示例

    url示例:sort=id+desc&&fq=date_time:[20081001 TO 20091031]&wt=json&json.nl=map&q=st ...

  2. IOS网络第七天WebView-03js中调用webView中的代码

    *********** #import "HMViewController.h" @interface HMViewController () <UIWebViewDeleg ...

  3. Box-sizing:小身材,大拳头!

    国庆回来,很久没写博客了.一来是自己毫无时间,二是最近开发任务特别紧,三是节后综合症,脑子一片空白没有找到写作的原材料.今天,在加完班回来的22点,忙里偷闲,分享一下最近学到的一个小知识点如题.标题的 ...

  4. 一个Java程序员的实习总结(2)

    在今天的总结里,主要讲述第二.三周这半个月的培训情况,并且穿插讲讲我对实习和见习的看法,有需要有兴趣的童鞋可以看看. 半个月的见习 其实我更愿意把实习和见习分开讲,实习指的是还没签三方或者直接就是大三 ...

  5. 跟vczh看实例学编译原理——三:Tinymoe与无歧义语法分析

    文章中引用的代码均来自https://github.com/vczh/tinymoe.   看了前面的三篇文章,大家应该基本对Tinymoe的代码有一个初步的感觉了.在正确分析"print ...

  6. .NET事件监听机制的局限与扩展

    .NET中把“事件”看作一个基本的编程概念,并提供了非常优美的语法支持,对比如下C#和Java代码可以看出两种语言设计思想之间的差异. // C#someButton.Click += OnSomeB ...

  7. Angular 2 最终版正式发布

    9月15日,Angular 2 的最终版正式发布了. 作为 Angular 1 的全平台继任者 -- Angular 2 的最终版,意味着什么? 意味着稳定性已经得到了大范围用例的验证: 意味着已经针 ...

  8. Stored Procedure 里的 WITH RECOMPILE 到底是干麻的?

    在 SQL Server 创建或修改「存储过程(stored procedure)」时,可加上 WITH RECOMPILE 选项,但多数文档或书籍都写得语焉不详,或只解释为「每次执行此存储过程时,都 ...

  9. web项目ajax技术一些总结

    WEB项目中,最主要的就是前后端间的联络.有时需要不进行页面跳转的前提下请求后端方法(action),就需要用到ajax. 在这个博客中,我用到的都是原生的js的ajax,不是很喜欢用jquery的a ...

  10. 【转】Spark常见问题汇总

    原文地址:https://my.oschina.net/tearsky/blog/629201 摘要: 1.Operation category READ is not supported in st ...