Unity生成和識別二維碼

首先需要下載一個ZXing庫(下載地址:http://zxingnet.codeplex.com/

using UnityEngine;
using ZXing;
using ZXing.QrCode;

/// <summary>二維碼管理</summary>
public class QRcode : MonoBehaviour
{
    /// <summary>
    /// 生成二維碼 
    /// </summary>
    /// <param name="textForEncoding">需要生產二維碼的字符串</param>
    /// <param name="width">寬</param>
    /// <param name="height">高</param>
    private static Color32[] Encode(string textForEncoding, int width, int height)
    {
        var writer = new BarcodeWriter
        {
            Format = BarcodeFormat.QR_CODE,
            Options = new QrCodeEncodingOptions
            {
                Height = height,
                Width = width
            }
        };
        return writer.Write(textForEncoding);
    }

    private static BarcodeReader m_Reader;
    /// <summary>
    /// 識別二維碼
    /// </summary>
    /// <param name="colors">需要識別的圖片</param>
    /// <param name="width">寬</param>
    /// <param name="height">高</param>
    /// <returns></returns>
    public static string Decode(Color32[] colors, int width, int height)
    {
        var result = m_Reader.Decode(colors, width, height);
        if (result != null)
        {
            return result.Text;
        }
        return null;
    }

}
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章