Unity3d创建二维码(利用zxing2.2)

发布时间 2023-04-04 17:06:33作者: 多见多闻

首先 下载ZXing.Net.0.12.0.0.zip,下载地址为http://zxingnet.codeplex.com/

然后找到其中的unity文件夹,将文件夹放到Unity的工程内。

脚本:

using UnityEngine;
using System.Collections;
using ZXing;
using ZXing.QrCode;
public class BarcodeCam: MonoBehaviour 
{
void Start () 
    {
        encoded = new Texture2D(256, 256);
        Lastresult = "https://www.baidu.com";
}

    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);
    }

void Update () 
    {
        var textForEncoding = Lastresult;
        if (textForEncoding != null)
        {
            var color32 = Encode(textForEncoding, encoded.width, encoded.height);
            encoded.SetPixels32(color32);
            encoded.Apply();
        } 
}
    void OnGUI()
    {
        GUI.DrawTexture(new Rect(100, 100,256,256), encoded);
    }
    public Texture2D encoded;
    public string Lastresult;
}

将脚本挂在一个空物体上、运行、即可生成二维码