zoukankan      html  css  js  c++  java
  • 生成二维码组件thoughtworks.qrcode

    1 第三方组件DotNetBarcode。

    2 C#有支持winform和web用的thoughtworks.qrcode.dll

    3 使用前先添加引用thoughtworks.qrcode.dll

    4

         /// <summary>
           /// 生成QRcode二维码
           /// </summary>
           /// <param name="code">要编码的字符串</param>
           /// <param name="size">生成图片的高度</param>
           /// <returns>生成后的二维码图片</returns>
           public static System.IO.MemoryStream GetQRCode(string code, int size)
           {
               QRCodeEncoder qrEntity = new QRCodeEncoder();
    
               qrEntity.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;//二维码编码方式
    
               qrEntity.QRCodeScale = 10;//每个小方格的宽度
    
               qrEntity.QRCodeVersion = 5;//二维码版本号
    
               qrEntity.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;//纠错码等级
    
               System.Drawing.Bitmap srcimage;
               //动态调整二维码版本号,上限40,过长返回空白图片,编码后字符最大字节长度2953
               while (true)
               {
                   try
                   {
                       srcimage = qrEntity.Encode(code, System.Text.Encoding.UTF8);
                       break; 
                   }
                   catch (IndexOutOfRangeException e)
                   {
                       if (qrEntity.QRCodeVersion < 40)
                       {
                           qrEntity.QRCodeVersion++;
                       }
                       else
                       {
                           srcimage = new Bitmap(100, 100);
                           break;
                       }
                   }
               }
               //为生成的二维码图像裁剪白边并调整为请求的高度
               return GetRealImage(srcimage, size);           
           }


    5

       System.IO.MemoryStream ms = new System.IO.MemoryStream();
    
                descode = "http://aaa.com/hh/“+id+".html";
    
                if (!string.IsNullOrEmpty(descode))
                {
                    ms = Common.Image.QRCode.GetQRCode(descode, size);
                }
  • 相关阅读:
    在 Debian 中安装 fcitx 输入法
    Windows XP字体模糊
    Aptana 行号
    硬盘安装Ubuntu 12.04
    更新系统时跳过某个软件包
    最小化安装CentOS 6.3
    使用config自定义配置
    获取指定文件夹内的文件
    把数据导出到的Excel文件
    web页面上通过后台弹出消息框的几种方式
  • 原文地址:https://www.cnblogs.com/judy0605/p/3340350.html
Copyright © 2011-2022 走看看