Java 扫描识别条形码图片

1.条形码扫描识别的实现方法及步骤

本文以Java代码示例介绍如何来扫描和识别条形码图片。这里使用免费条码工具 Free Spire.Barcode for Java,调用BarcodeScanner类中的scan(java.lang.String fileName, BarCodeType barcodeType)方法扫描识别指定类型条码中包含的数据。在编辑代码前,先参考如下步骤手动将jar包导入Java程序:

完成导入:

【Java】

复制代码

import com.spire.barcode.*;

public class ScanBarcode {
    public static void main(String[] args)throws Exception{
        String[] datas = BarcodeScanner.scan("EAN_13.png", BarCodeType.EAN_13);
        System.out.print(datas[0]);
    }
}

复制代码

执行程序,扫描识别条形码图片,获取条码中包含的数据:

2.条形码扫描的方法归纳

这里的BarcodeScanner类提供了多个扫描图片的方法,见下表1

表格1:

Method Summary

 

static java.lang.String[]

scan(java.awt.image.BufferedImage bitmap)
          Scan barcode from bitmap.

Static java.lang.String[]

scan(java.awt.image.BufferedImage image, BarCodeType barcodeType)
          Scan barcode from image.

Static java.lang.String[]

scan(java.awt.image.BufferedImage bitmap, java.awt.Rectangle rect, BarCodeType barcodeType)
          Scans barcode from bitmap.

Static java.lang.String[]

scan(java.io.InputStream stream)
          Scan barcode from image stream.

Static java.lang.String[]

scan(java.io.InputStream stream, boolean IncludeCheckSum)
          Scan barcode from image stream.

Static java.lang.String[]

scan(java.lang.String fileName)
          Scan barcode from image file.

Static java.lang.String[]

scan(java.lang.String fileName, BarCodeType barcodeType)
          Scans barcode from image file.

Static java.lang.String[]

scan(java.lang.String fileName, boolean IncludeCheckSum)
          Scan barcode from image file.

Static java.lang.String

scanOne(java.awt.image.BufferedImage bitmap)
          Scan barcode from bitmap.

Static java.lang.String

scanOne(java.io.InputStream stream)
          Scan barcode from image stream.

Static java.lang.String

scanOne(java.io.InputStream stream, boolean IncludeCheckSum)
          Scan barcode from image stream.

Static java.lang.String

scanOne(java.lang.String fileName)
          Scan barcode from image file.

Static java.lang.String

scanOne(java.lang.String fileName, boolean IncludeCheckSum)
          Scan barcode from image file.

3. 条码生成及扫描类型汇总

因本次使用的是免费版的Barcode API,对支持生成的条码类型以及扫描的条码类型上有所限制,详细内容见下表2。在使用时,可根据自己的程序要求看条码类型是否支持。

表格-2

条形码类型

生成的条形码类型

扫描条形码类型

CODE 25

×

×

CODABAR

CODE 11

INTERLEAVED 25

×

×

CODE 39

CODE 39 EXTENDED

CODE 93

CODE 93 EXTENDED

CODE 128

EAN 8

EAN 13

EAN 128

×

EAN 14

SCC 14

SSCC 18

×

×

ITF 14

×

×

ITF 6

×

×

UPCA

×

×

UPCE

×

×

POST NET

×

SINGAPORE POST 4 STATE

×

×

PLANET

×

×

MSI

×

×

RSS 14

×

×

RSS 14 TRUNCATED

×

×

RSS LIMITED

×

×

RSS EXPANDED

×

×

USPS

×

×

SWISS POST PARCEL

×

×

PZN

×

×

OPC

×

×

DEUTSCHE POST IDENTCODE

×

×

DEUTSCHE POST LEITCODE

×

×

ROYAL MAIL 4 STATE

×

×

DATA MATRIX

×

×

QR CODE

×

PDF 417

×

×

PDF 417 MACRO

×

×

注释: √ 表示java教程支持,× 表示不支持

—End—

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值