Zxing - Обнаружение штрих-кода дополнения UPC +5

Я пытался использовать Zxing 2.3.0 для чтения изображений штрих-кодов UPC с дополнением +5 в java, однако я не могу прочитать дополнительную часть штрих-кода. Код успешно считывает только первую часть. После поиска на нескольких веб-сайтах я не могу найти никаких других указаний о том, как читать дополнение, кроме моего текущего метода. Любая помощь будет принята с благодарностью.

public static void main(String[] args) {
    decodeUPC5();
}

public static void decodeUPC5(){

    InputStream barCodeInputStream = null;
    try {
        barCodeInputStream = new FileInputStream("C:/Users/apoclyps/git/zxing-barcoder/Zxing-Test/img/upc5.png");
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }

    BufferedImage barCodeBufferedImage = null;
    try {
        barCodeBufferedImage = ImageIO.read(barCodeInputStream);
    } catch (IOException e) {
        e.printStackTrace();
    }

    LuminanceSource source = new BufferedImageLuminanceSource(barCodeBufferedImage);
    BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));

    // Attempting to read UPC + 5 Supplement
    GenericMultipleBarcodeReader  multiReader = new GenericMultipleBarcodeReader(new MultiFormatReader());
    try {
        multiReader.decodeMultiple(bitmap);
    } catch (NotFoundException e1) {
        e1.printStackTrace();
    }
    Result[] result = null;
    try {
        result = multiReader.decodeMultiple(bitmap);
    } catch (NotFoundException e) {
        e.printStackTrace();
    }

    System.out.println("Results length "+result.length);
    for(Result r : result ){
        System.out.println("Barcode text is " + r.toString());
    }
}

Изображение штрих-кода!

Длина результатов вывода 1 Текст штрих-кода: 9780735200449


person apoclyps    schedule 09.01.2014    source источник


Ответы (1)


Имейте в виду, что содержимое штрих-кода 9780735200449, а не 9780735200449 51299. Он всегда (правильно) будет возвращать 9780735200449 в качестве содержимого штрих-кода.

Расширение +5 возвращается как ResultMetadata под ключом ResultMetadatatype.UPC_EAN_EXTENSION.

Обратите внимание, что он по-прежнему будет возвращать штрих-код UPC, даже если он, очевидно, не видит расширения +5. Так что вполне возможно, что вы увидите, что он возвращается без расширения +5 на этом изображении. Однако у меня это работает с приложением, и поэтому можно предположить, что оно легко обнаруживает +5. (Если вы сканируете с помощью приложения, посмотрите слева на «Метаданные $ 12,99»)

person Sean Owen    schedule 09.01.2014