使用ZXing绘制打印一维条码时如何消除两侧白边,降低条码长度的剧烈变化

本文介绍了在使用ZXing绘制一维条码时遇到的两侧白边和长度剧烈变化问题。通过理解条码宽度原理,分析了ZXing的编码逻辑,并提出了设置小尺寸(如width=1,height=1)生成‘创世条码’,然后放大的方法,以消除白边并降低长度变化。同时,讨论了这种方法可能带来的打印效果和内存消耗问题。
摘要由CSDN通过智能技术生成

前置知识

关于条码宽度:

条码宽度为什么不能随意调整 http://www.chongshang.com.cn/why_barcode_width.shtml

ZXing白边相关:

zxing设置条码两边空白(EncodeHintType.MARGIN)无效的分析(有效阐述了zxing生成的条码,多一个字符少一个字符,条码长度剧烈变化的原因)https://blog.csdn.net/sunshinwong/article/details/50156017

用zxing生成没有白边的条形码(网上使用的减少白边的方法) https://www.jianshu.com/p/a46b5aefa3ff

另外打印条码的时候,需要将图片的分辨率根据打印机的dpi换成成打印时的分辨率。

问题:

仓储在打印包裹标签的时候,低dpi打印机的情况下,遇到了条码长度剧烈变化的问题。 在某些场地低端的扫描设备对变短后的条码识别困难!。

网上的解决方法思路集中在更改zxing汇制条码的方法上,通过改写条码汇制逻辑,只绘制并保留条码部分返回

这样做的话需要有两步调整:

需要更改zxing源码, 将上述汇制逻辑在每一种条码内都重写一次
由于返回的条码图像小于(去除去了空白)原输入的参数长宽,也就是说不匹配计划要显示的面积

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值