首先下载zxing.unity.dll这个Dell文件,网盘下载地址 链接: http://pan.baidu.com/s/1slnT70h 密码: nqx2
在Unity创建如下界面:
生成二维码脚本如下:
using UnityEngine;
using System.Collections;
using ZXing;
using ZXing.QrCode;
using UnityEngine.UI;
public class Demo : MonoBehaviour
{
//需要生产二维码的字符串
string QrCodeStr;
//在屏幕上显示二维码
public RawImage image;
//存放二维码
Texture2D encoded;
// Use this for initialization
void Start () {
encoded = new Texture2D(256, 256);
}
// Update is called once per frame
void Update () {
}
//定义方法生成二维码
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);
}
/// <summary>
/// 生成二维码
/// </summary>
public void Btn_CreatQr()
{
QrCodeStr = GameObject.Find("InputField").GetComponent<InputField>().text;
if (QrCodeStr.Length > 1)
{
//二维码写入图片
var color32 = Encode(QrCodeStr, encoded.width, encoded.height);
encoded.SetPixels32(color32);
encoded.Apply();
//生成的二维码图片附给RawImage
image.texture = encoded;
}
else
{
GameObject.Find("InputField").GetComponent<InputField>().text = "没有生成信息";
}
}
}