C#QRコードの実装

必要なインポートライブラリ

using System;
using System.Drawing;
using System.Text;
using ThoughtWorks.QRCode.Codec; // 第三方类库,C#类库中不存在

オブジェクト指向の方法で生成メソッド/関数を呼び出す

/// <summary>
/// 生成二维码
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btn_CreateQRCode_Click(object sender, EventArgs e)
{
    
    
	// str 二维码的内容
    CreateQRImg(str);
}

コアコード

ThoughtWorks.QRCode.dll2次元コードライブラリ実装を呼び出して、一般的な2次元コードを実現する

コメントは比較的明確で、あまり繰り返さない

/// <summary>
/// 生成并保存二维码图片的方法
/// </summary>
/// <param name="str">输入的内容</param>
private void CreateQRImg(string str)
{
    
    
    Bitmap bt;
    string enCodeString = str;
    //生成设置编码实例
    QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
    //设置二维码的规模 默认 4
    qrCodeEncoder.QRCodeScale = 4;
    //设置二维码的版本 默认 7
    qrCodeEncoder.QRCodeVersion = 7;
    //设置错误检验级别 默认为中等
    qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;
    //生成二维码图片
    bt = qrCodeEncoder.Encode(enCodeString, Encoding.UTF8);
    //二维码图片名称
    string filename = DateTime.Now.ToString("[名字最好用时间防重]");
    //保存二维码图片在photos路径下
    bt.Save(Server.MapPath("~/photos/") + filename + ".jpg");
    //图片控件要显示的二维码图片路径
    this.img_QRImag.ImageUrl = "~/photos/" + filename + ".jpg";
}
  • ここで使用するのは、デモ用のキーボード入力値を取得することです
  • 実用的なアプリケーションstrは自動的に生成された値である必要があります
  • ThoughtWorks.QRCode.dllクラスライブラリは、自分でダウンロードするNuGetダウンロードです。
  • プロジェクトはオープンソースとしてダウンロードできます

PS: 通常、QRコードは写真なので、メインプログラムはC / SまたはB / Sアプリケーションにする必要があります

おすすめ

転載: blog.csdn.net/qq_43562262/article/details/105988725