java生成的条形码扫不了_JAVA 生成扫描条形码
声明:转载为个人学习收藏,如有侵权,请及时联系本人删除,转载地址:https://www.cnblogs.com/MariaWang/p/10837641.html
条形码是一种可视化、机器可读的数据,这些数据通常描述了携带该条码的物品的相关信息。条形码已经广泛被应用在商品流通,图书管理,邮政管理和银行系统等领域。在这篇文章中,将介绍如何生成和扫描一些常见的一维和二维条形码。
所需工具:
Free Spire.Barcode for Java 1.3(免费版)
Intellij IDEA
Jar包文件导入:
方式(一):首先,官网获取jar包
Step 1: 下载Jar包之后解压,进入“Project Structure” 界面。(以下是三种在IDEA中快速打开Project Structure界面的方式,可任意选择一种方式)
Step 2:按以下操作步骤进行导入。
① 选择“Modules”—“Dependencies”,添加外置jar包;② 进入"Attach File or Directories"界面选择jar文件路径,然后点击“OK”;③ 勾选jar路径选项,点击”OK”/”Apply”;④ 导入完成。如下图:
下面是免费版本支持的条形码类型列表:
Barcode生成:
生成条形码涉及到两个重要的类,一个是BarcodeSettings,另一个是BarcodeCenerator。BarcodeSettings是用来定制条形码的特定类型,数据,大小,颜色等。BarcodeCenerator以BarcodeSettings为基础,用来创建图像数据。上表所支持的部分条形码的生成如下所示:
Codebar:
public class CODABAR {
public static void main(String[] args) throws Exception {
//创建BarcodeSettings实例
BarcodeSettings settings = new BarcodeSettings();
//设置条形码数据
settings.setData("2030405060");
//设置符号属性
settings.setType(BarCodeType.CODABAR);
//设置底部显示文本
settings.setShowTextOnBottom(true);
//设置边框可见
settings.hasBorder(true);
//设置CodabarStartChar和CodabarStopChar
settings.setCodabarStartChar(CodabarChar.B);
settings.setCodabarStopChar(CodabarChar.D);
//创建条形码生成器对象
BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
//从条形码生成器中获取图像
BufferedImage bufferedImage = barCodeGenerator.generateImage();
//保存图像
ImageIO.write(bufferedImage,"png",new File("CODABAR.png"));
}
}
运行效果:
Code11:
public class CODE_11 {
public static void main(String[] args) throws IOException {
//创建BarcodeSettings实例
BarcodeSettings settings = new BarcodeSettings();
//设置条形码数据
settings.setData("12345-67890");
//设置符号属性
settings.setType(BarCodeType.CODE_11);
//设置底部文本
settings.setShowTextOnBottom(true);
//设置边框可见
settings.hasBorder(true);
//创建条码生成器对象
BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
//从条码生成期中获取图像
BufferedImage bufferedImage = barCodeGenerator.generateImage();
//保存图像
ImageIO.write(bufferedImage,"png",new File("CODE_11.png"));
}
}
运行效果:
Code 39:
public static void main(String[] args) throws IOException {
//创建BarcodeSettings
BarcodeSettings settings = new BarcodeSettings();
//设置条形码数据
settings.setData("ABC 123456789");
//设置符号属性
settings.setType(BarCodeType.CODE_39);
//在底部设置显示文本位置
settings.setShowTextOnBottom(true);
//设置边框可见
settings.hasBorder(true);
//创建条形码生成器实例
BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
//从条形码生成器中获取图像
BufferedImage bufferedImage = barCodeGenerator.generateImage();
//保存图像
ImageIO.write(bufferedImage,"png",new File("CODE_39.png"));
}
运行效果:
Code 128:
public class CODE_128 {
public static void main(String[] args) throws IOException {
//创建BarcodeSettings
BarcodeSettings settings = new BarcodeSettings();
//设置条形码数据
settings.setData("ABCD 12345 abcd");
//设置符号属性
settings.setType(BarCodeType.CODE_128);
//在底部设置显示文本位置
settings.setShowTextOnBottom(true);
//设置边界可见
settings.hasBorder(true);
//创建条形码生成器实例
BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
//从条形码生成器获取图像
BufferedImage bufferedImage = barCodeGenerator.generateImage();
//保存图像
ImageIO.write(bufferedImage,"png",new File("CODE_128.png"));
}
运行效果
QR_Code:
public class QR_CODE {
public static void main(String[] args) throws IOException {
//创建BarcodeSettings
BarcodeSettings settings = new BarcodeSettings();
//设置条形码数据
settings.setData("ABC 123456789");
//设置符号属性
settings.setType(BarCodeType.QR_CODE);
//在底部设置ShowText位置
settings.setShowTextOnBottom(true);
//设置边框是可见的
settings.hasBorder(true);
//创建BarCodeGenerator实例
BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
//从条形码生成器获取图像
BufferedImage bufferedImage = barCodeGenerator.generateImage();
//保存图像
ImageIO.write(bufferedImage,"png",new File("QR_CODE.png"));
}
}
运行效果:
Barcode扫描:
下面我们将尝试将将几个条形码的合集放在一起扫描,使用BarcodeScanner 类的scan()方法读取多个条形码数据。图像和代码如下所示:
public class Scan {
public static void main(String[] args) throws Exception {
//从要扫描的图像中获取信息
String[] s= BarcodeScanner.scan("C:\\Users\\Administrator\\Desktop\\Barcode.png");
for (int i=0;i< s.length ;i++){
System.out.println(s[i]);
}
}
}
运行效果:
java生成的条形码扫不了_JAVA 生成扫描条形码相关推荐
- java随机产生100个大小写字母_Java生成固定长度的随机字符串(以大小写字母和数字)...
packageorg.jimmy.autosearch2019.test;importjava.util.ArrayList;importjava.util.Random;/***@authorラピス ...
- java获取大乐透开奖_java生成大乐透中奖号码
这段时间吃完饭都会来一两注大乐透! 然后心血来潮的用java写了个简单的随机生成大乐透号码 先晒代码: public class RandomUtil { //前区1-35个号码 private st ...
- java项目的秘钥怎么保存_java生成秘钥key,并保存秘钥到文件中
本例子采用的是Java的对称加密其中的一种方式(3DES),其他的加密方式也类似.生成一个key秘钥,发送方使用生成的key秘钥进行加密操作,然后把生成的key秘钥保存到文件中,提供给需要解密的一方使 ...
- java生成6随机数字和字母_Java生成含字母和数字的6位随机字符串
本文实例为大家分享了Java生成6位随机字符串的实现代码,具体内容如下 package com.amos.tools; import java.util.ArrayList; import java. ...
- java生成永远不重复的随机数_java生成不重复随机数的方法
java生成不重复随机数的方法 发布时间:2020-07-01 11:00:00 来源:亿速云 阅读:225 作者:Leah java怎么实现生成不重复随机数 ?针对这个问题,这篇文章详细介绍了相对应 ...
- java怎么把随机数放入数组_JAVA 生成随机数数组 | 学步园
一.JAVA获取随机数的方法 //使用java.lang.Math类的random()方法 double a = Math.random(); System.out.println("0.0 ...
- java生成验证码图片中仅有线条_java生成验证码步骤归纳总结
1.serialVersionUID private static final long serialVersionUID = -8501285780349046114L; Java的序列化机制是通过 ...
- java生成8位自增编号_Java生成8位数字按照从0开始到自己设置循环好多次
展开全部 建议使用java8的新特性 stream很快就能生成 示例代码如下int cycleTimes = 1000; int numLength = 8; Stream.iterate(1,ite ...
- html手机扫描条形码,在HTML5/JavaScript中扫描条形码
我正在寻找扫描条形码并根据是否收到条形码返回响应的方式.我可以找到唯一的结果指向英特尔XDK.我不能在这个特定的项目中使用它,所以没有它可以做到这一点? 如何使用HTML5/JavaScript扫描条 ...
- java项目生成多个条码_java – 生成随机条形码 – 一个设计问题
我正在修复生成条形码的java代码中的错误(线程问题).根据设计,条形码只是一个数字,下一个"未使用"条形码是序列中的下一个.有990亿可能的数字. 首先,由于安全问题,我不喜欢自 ...
最新文章
- 移动4G打造排污视频监控系统助力咸宁环保建设
- 使用mysql-proxy 快速实现mysql 集群 读写分离
- python中使用 protocol buffer(Protobuf)
- python词性标注_文本分类的词性标注
- ubuntu java7安装_Ubuntu下安装配置 JDK 7
- WebHttpBinding的流传输模式让我头大了
- JMeter中3种参数值的传递
- Linux_学习_Day3_bash
- 实践单元测试(2) - 大话单元测试
- NOIP2017普及组-1. 成绩
- 力扣-1557. 可以到达所有点的最少点数目
- 基于python的新闻发布系统
- Python轻松制作王者荣耀自动刷金币脚本
- 需要查询前一次该厂商,料号的单价, 这个sql语句很难写,你碰到过没有
- APM(应用性能管理)与Dapper原理介绍
- 创建菜单栏、菜单、菜单项
- 造成BGA焊接不良问题有哪些?
- 文本溢出隐藏显示... 鼠标移动到元素显示全部内容
- 仓库管理怎么做?这5大仓库管理软件能帮到你
- 服务器锁定文件,BEA-141297 - 无法获取服务器文件锁定(BEA-141297 - Could not get the server file lock)...