利用ZXing.Net生成和识别二维码
ZXing.Net:ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库。
github:https://github.com/micjahn/ZXing.Net
直接将字符串生成的二维码输出在Image上,要引用ZXing,ZXing.Common,ZXing.QrCode三个命名空间
public void ShowQR(string str) { //设置二维码大小 Texture2D encoded = new Texture2D(512, 512); //二维码边框 BitMatrix BIT; Dictionary<EncodeHintType, object> hints = new Dictionary<EncodeHintType, object>(); //设置编码方式 hints.Add(EncodeHintType.CHARACTER_SET, "UTF-8"); BIT = new MultiFormatWriter().encode(str, BarcodeFormat.QR_CODE, 512, 512, hints); int width = BIT.Width; int height = BIT.Width; for (int x = 0; x < height; x++) { for (int y = 0; y < width; y++) { if (BIT[x, y]) { encoded.SetPixel(y, x, Color.black); } else { encoded.SetPixel(y, x, Color.white); } } } encoded.Apply(); qrImage.sprite = Sprite.Create(encoded,new Rect(0,0,encoded.width,encoded.height), Vector2.zero); }