Java 生成、识别条形码

颈椎病专家
• 阅读 7419

条形码是由一定的字符,数字及符号组成,用以表达一组信息的图形标识符。它可以标出物品的商品名称、生产日期、图书分类号,邮件起止地点等。因而在商品流通、图书管理、邮政管理等许多领域得以广泛的应用。本文将通过使用Java程序来详细介绍如何生成和识别一些常见的一维和二维条形码。

使用工具:Free Spire.Barcode for Java (免费版)

Jar文件获取及导入:

方法1:通过官网下载获取jar包。解压后将lib文件夹下的Spire.Barcode.jar文件导入Java程序。(如下图)
Java 生成、识别条形码

方法2:通过maven仓库安装导入。具体安装教程详见此网页

下表为免费版本支持的条形码类型。

Java 生成、识别条形码

P.S.获取更多条形码类型,请参考使用Spire.Barcode for Java 商业版

【示例1】生成条形码

生成条形码中涉及到两个重要的类,一个是BarcodeSettings,另一个是BarcodeGenerator。BarcodeSettings是用来设置条形码的类型、数据、大小、颜色等。BarcodeGenerator则是根据BarcodeSettings的设定来创建图像数据。代码参考如下:

import com.spire.barcode.BarCodeGenerator;  
import com.spire.barcode.BarCodeType;  
import com.spire.barcode.BarcodeSettings;  
import javax.imageio.ImageIO;  
import javax.imageio.stream.ImageOutputStream;  
import java.awt.image.BufferedImage;  
import java.io.File;  
import java.io.IOException;  
  
public class GenerateBarcode {  
public static void main(String[] args) throws IOException {  
//创建BarcodeSettings实例  
BarcodeSettings settings = new BarcodeSettings();  
//设置条形码类型  
settings.setType(BarCodeType.Code_39);  
//设置条形码数据  
settings.setData("ZXC98-HK");  
//设置条形码显示数据  
settings.setData2D("ZXC98-HK");  
//在底部显示数据  
settings.setShowTextOnBottom(true);  
//设置边框为不可见  
settings.hasBorder(false);  
//根据settings生成图像数据,创建BarCodeGenerator实例  
BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);  
//生成条形码数据  
  BufferedImage bufferedImage = barCodeGenerator.generateImage();  
//保存为PNG图片  
  ImageIO.write(bufferedImage, "png", new File("output/Code39.png"));  
    }  
}

条形码生成效果:
Java 生成、识别条形码

【示例2】识别条形码

import com.spire.barcode.BarcodeScanner;  
  
public class ReadBarcode {  
public static void main(String[] args) throws Exception {  
//从图片中识别Code 39条形码  
String data =BarcodeScanner.scanOne("C:\\Users\\Test1\\Desktop\\Code39.png");  
System.out.print(data);  
    }  
}

条形码识别效果:

Java 生成、识别条形码

(本文完)

点赞
收藏
评论区
推荐文章
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表之条形码单元格
打开或新建一张报表,右键单击报表的某个单元格,设置该单元格的类型为“条形码类型”,则与该单元格相关的设置显示在属性视图中,如下图所示:​同其他类型单元格相比,条形码单元格有它特有的“条形码”属性。条形码类型:该属性用来定义条形码的类型,皕杰报表提供四种类型供用户选择,分别是“39码”、“128码”、“交叉25码”、“库德巴码”和“二维码”。"39码"是一
Stella981 Stella981
4年前
Bartender教程 检验数字
‍‍BarTender条形码(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.bartender.cc%2F)‍‍检验数字是指条形码末尾附加的额外字符,其值为条形码前面字符的值的和(或加权和)。 使用“检验数字”选项可以指定是否在条形码中添加检验位。检验数字也就是大家所熟
Stella981 Stella981
4年前
BarTender 10.1空白区如何利用
在每个条形码符号体系的规范中,每个条形码符号体系都需要在条形码周围有空白区(或空白空间),用于帮助条形码阅读器识别条形码的开始位置。在BarTender10.1中,使用查看菜单中的“条形码空白区”选项或使用键盘快捷键CtrlQ,即可轻松地查看BarTender10.1条形码空白区。!(http://static.oschina.net/up
Stella981 Stella981
4年前
BarTender中的防护码你都不会用?
说到条形码防护条,大家应该不陌生,常用的UPC/EAN/JAN符号体系就有。UPC/EAN/JAN标准包括某些条在条形码的主体下进行扩展的规格,这些条就是防护条,或者可以叫为警戒栏,是用来充当扫描设备的参考点的。下面小编给大家讲讲这个BarTender条形码中的防护条。在BarTender10.1中,BarTender条形码(http
Wesley13 Wesley13
4年前
C# 生成条形码、二维码随笔
一、什么是条形码条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符.条形码可以标出物品的生产国、制造厂商、商品名称、生产日期、日期等信息,因此得到了广泛应用.条形码的编码规则唯一性:同种规格同种产品对应同一个产品代码,同种产品不同规格应对应不同的产品代码.永久性
Stella981 Stella981
4年前
C++之条形码,windows下zint库的编译及应用(二)
zint库是一个开源的第三方库,提供了生成条形码、二维码等功能。本文主要介绍zint库的生成及简单应用。0windows下zint库的编译及应用(一)(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fjingyan.baidu.com%2Farticle%2Fc910274ba507
Wesley13 Wesley13
4年前
C# 生成条形码
C生成条形码  上一篇分享了关于二维码的生成,本篇将分享条形码。  该方法需要引用  BarcodeLib.dll(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fpan.baidu.com%2Fs%2F1GhEG9UDa32bSoT62zkA)   
分布式系统的主键生成方案对比 | 京东云技术团队
UUID​UUID(通用唯一识别码)是由32个十六进制数组成的无序字符串,通过一定的算法计算出来。为了保证其唯一性,UUID规范定义了包括网卡MAC地址、时间戳、名字空间(Namespace)、随机或伪随机数、时序等元素,以及从这些元素生成UUID的算法。
绣鸾 绣鸾
2年前
Barcode 2 for mac(条形码生成器)
是一款专业的条形码制作应用程序,支持所有主要类型的条形码。与同类其他软件相比,BarcodeMac提供专业功能,如专色和条宽调整支持。它还提供许多条形码自定义选项,用户只需输入所需的文本或数据,选择条码类型和样式,即可生成高质量的条码图像。无论是个人用户还
流浪剑客 流浪剑客
2年前
Bartender 5 菜单栏图标管理工具 支持M1
是一款功能强大的条形码打印软件,专为标签打印设计。它可以帮助用户快速创建和打印各种类型的条形码标签,适用于各种行业和场景。Bartender5具有简单易用的界面和多种实用功能,使得用户可以轻松地创建自定义的条形码标签。它支持多种条形码类型,包括Code12