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

×

×

注释: √ 表示支持,× 表示不支持

—End—

Java 扫描识别条形码图片的更多相关文章

  1. Android实现OCR扫描识别数字图片之图片扫描识别

    [Android实例] Android实现OCR扫描识别数字图片之图片扫描识别 Android可以识别和扫描二维码,但是识别字符串呢? google提供了以下解决方案用的是原来HP的相关资料. 可以吧 ...

  2. Java 创建/识别条形码、二维码

    条形码(Barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符.常用于标示物品的生产国.制造厂家.商品名称.生产日期.图书分类号.邮件起止地点.类别.日期等 ...

  3. java指纹识别+谷歌图片识别技术_源代码

    主类: import java.awt.image.BufferedImage; import java.util.ArrayList; import java.util.List; public c ...

  4. java指纹识别+谷歌图片识别技术

    http://www.icodeguru.com/3/2451.html http://valseonline.org/thread-124-1-1.html

  5. c#OpenCVSharp+Zxing识别条形码

    参考博客:https://www.cnblogs.com/dengxiaojun/p/5278679.html,但是他的demo下载太贵了 可以下载这个https://download.csdn.ne ...

  6. HTML5实现扫描识别二维码/生成二维码

    扫描识别二维码 思路: 1. 操作摄像头,获取图片.HTML5 WEBRTC的navigator.getUserMedia方法去实时获取摄像头资源.  2. 利用canvas使用相关算法分析图片识别图 ...

  7. Android名片扫描识别系统SDK

    Android名片扫描识别系统SDK 一.Android名片扫描识别系统应用背景 这些年,随着移动互联的发展,APP应用成爆发式的增长,在很多APP中都涉及到对名片信息的录入,如移动CRM.移动端OA ...

  8. 手机摄像头扫描识别车牌号,移动端车牌识别sdk

    一.移动端车牌识别应用背景 (技术交流:18701686857  QQ:283870550) 随着经济水平的不断提高,汽车数量的不断激增为汽车管理带来了不小的难度.路边违章停车的现象越来越频繁.现在, ...

  9. JAVA验证码识别:基于jTessBoxEditorFX和Tesseract-OCR训练样本

    JAVA验证识别:基于jTessBoxEditorFX和Tesseract-OCR训练样本 工具准备: jTessBoxEditorFX下载:https://github.com/nguyenq/jT ...

随机推荐

  1. springboot+javafx所有依赖一起打包

     执行顺序: 1.使用清理插件:maven-clean-plugin:2.5执行清理删除已有target目录(版本2.5): 2.使用资源插件:maven-resources-plugin:2.6执行 ...

  2. 跟我一起写 Makefile(十三)

    五.定义模式规则 你可以使用模式规则来定义一个隐含规则.一个模式规则就好像一个一般的规则,只是在规则中,目标的定义需要有"%"字符."%"的意思是表示一个或多个 ...

  3. MyBatis学习05(多对一和一对多)

    8.多对一的处理 多对一的理解: 多个学生对应一个老师 如果对于学生这边,就是一个多对一的现象,即从学生这边关联一个老师! 数据库设计 CREATE TABLE `teacher` ( `id` IN ...

  4. 慕慕生鲜上线&&腾讯云服务器配置准备

    1.购买服务器并配置环境 1.1 购买 618购买了腾讯云服务器三年最低配置(1核2G 1Mbps 50G云盘),一时激动忘记了购买前领优惠券,痛失25元. 1.2 环境配置 系统是 CentOS L ...

  5. 【笔记】求数据前n个主成分以及对高维数据映射为低维数据

    求数据前n个主成分并进行高维数据映射为低维数据的操作 求数据前n个主成分 先前的将多个样本映射到一个轴上以求使其降维的操作,其中的样本点本身是二维的样本点,将其映射到新的轴上以后,还不是一维的数据,对 ...

  6. Java调用Zookeeper

    watch机制 Zookeeper watch是一种监听通知机制,可以随时监听一些数据的变化,从而实现数据的及时性. Zookeeper所有的读操作getData(), getChildren()和 ...

  7. windows中抓取hash小结(下)

    书接上回,windows中抓取hash小结(上) 指路链接 https://www.cnblogs.com/lcxblogs/p/13957899.html 继续 0x03 从ntds.dit中抓取 ...

  8. S3C2440—12.按键中断

    文章目录 一. 总体 二. CPSR设置 三. 中断源设置 四. 中断控制器设置 五. C中断处理函数 六. 汇编IRQ异常处理程序 七. 源码 一. 总体 要驱动按键中断控制LED亮灭,程序要进行如 ...

  9. STM32—驱动HC-SR04超声波测距模块

    文章目录 超声波测距原理 HC-SR04工作原理 STM32实现驱动 1.引脚的配置 2.时序控制 3.时间差测量 4.如何将距离测出来 超声波测距原理 利用HC-SR04超声波测距模块可以实现比较精 ...

  10. 超过Numpy的速度有多难?试试Numba的GPU加速

    技术背景 Numpy是在Python中非常常用的一个库,不仅具有良好的接口文档和生态,还具备了最顶级的性能,这个库很大程度上的弥补了Python本身性能上的缺陷.虽然我们也可以自己使用Cython或者 ...