Я пытаюсь использовать единственную версию zxing для декодирования QR-кода.zxing QR decoding return null
Вот код:
текстуры = gameObject.GetComponent();
//texture.pixelInset = new Rect(Screen.width/4, Screen.height/4, Screen.width/2, Screen.height/2);
int imageSize = 100;
Texture2D text2D = new Texture2D(imageSize, imageSize);
text2D = (Texture2D)texture.texture;
Debug.Log("text2D.GetPixels32().Length " + text2D.GetPixels32().Length);
//Debug.Log("text2D.GetRawTextureData().Length " + text2D.GetRawTextureData().Length);
Color32LuminanceSource source = new Color32LuminanceSource(text2D.GetPixels32(), imageSize, imageSize);
RGBLuminanceSource source1 = new RGBLuminanceSource(text2D.GetRawTextureData(), imageSize, imageSize);
Debug.Log(GetString(source.Matrix));
BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
BinaryBitmap bitmap1 = new BinaryBitmap(new HybridBinarizer(source1));
QRCodeReader reader = new QRCodeReader();
BarcodeReader reader1 = new BarcodeReader();
DecodingOptions options = new DecodingOptions();
options.TryHarder = true;
Result resultQRCodeReader = reader.decode(bitmap, options.Hints);
Result resultQRCodeReader1 = reader.decode(bitmap1, options.Hints);
Result resultBarcodeReader = reader1.Decode(source);
Result resultBarcodeReader1 = reader1.Decode(source1);
Проблема - это все «результат» от обоих считывателей, и оба источника возвращают пустую строку. Я пробовал несколько примеров qrcode, который я тестировал в инструменте штрих-кода zxing - https://zxing.org/w/decode.jspx, и все они в порядке.
Не могу понять, что я делаю неправильно.
Для какой объект этот сценарий присоединен к? Попробуйте распечатать несколько строк из массива text2D.GetPixels32(), чтобы узнать, есть ли у него хорошие значения. Вы также можете использовать text2D.GetPixels32() непосредственно в файле reader.decode (color32array, width, height) – mgear