站长源码网(Downzz.com)
站长源码网(Downzz.com)
当前位置:首页 > 站长教程 > 开发编程 > Java编程
使用Java服务中的Zxing库从单个图像文件读取多个条形码
时间:2022-08-04 21:59:30 围观:25 来源:互联网

问题描述


[嗨,我已经创建了一个Java服务,用于在这里使用Zxing库从图像中读取图像的条形码,以便在此处解码文本。我面临的挑战是,如果单个条形码的文件工作正常,如果存在多个条形码,则产生不相关的结果,我给了我下面的代码。

pom.xml


        com.google.zxingcore3.4.0com.google.zxingjavase3.4.0

java服务

@GetMapping(value = "OCR/GetBarcodeRead")
    @ApiOperation(value = "Get result from Barcode Zxing library")
    public String GetBarcodeRead() throws Exception {

        InputStream barCodeInputStream = new FileInputStream("images/multiple.jpg");
        BufferedImage barCodeBufferedImage = ImageIO.read(barCodeInputStream);

        LuminanceSource source = new BufferedImageLuminanceSource(barCodeBufferedImage);
        BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(source));
        Reader reader = new MultiFormatReader();
        Result result = reader.decode(bitmap);

        return result.getText();

    }

结果是这样的

CODE93

具有多个条形码的图像

 

我应该如何使用Zxing库读取和检索给定图像中的所有条形码?有人可以帮助我实现这一目标吗?在此先感谢

思路:


您可以将阅读器包装到GenericMultipleBarcodeReader中,并使用decodeMultiple返回结果数组:

MultipleBarcodeReader multipleReader = new GenericMultipleBarcodeReader(reader);
Result[] results = multipleReader.decodeMultiple(bitmap);

Reference

以上就是关于使用Java服务中的Zxing库从单个图像文件读取多个条形码的全过程,更多与Java相关的编程可继续关注本站技术频道。

站长源码网(Downzz.com)所有资源均为互联网用户上传分享,未经允许不得传播。
若发现本文侵犯了您的权益,请点击后方链接查看并联系我们进行删除处理。 版权申明