帆软的一维码设置不够用?引入外部条码实现自定义需求【handcode128】

楼主
我是社区第566249位番薯,欢迎点我头像关注我哦~
 

背景:

项目标签要求在35个字符串的一维条码显示长度在7cm左右,目前帆软自带的条码功能不支持修改为更小的条码密度,需要新开发帆软插件引入条码支持此修改需求;

最初的方案是通过调整打印时纸张的缩放实现,但是在实际打印中有诸多不便如:字体变小,布局错乱,打印跨页,空白页等问题,,调整十分耗时;于是有了如下方案——自定义开发引入外部条码。

 

引入条码工具类型:barcode4j Welcome to Barcode4J

自定义函数文档:自定义函数 - FineReport帮助文档 - 全面的报表使用教程和学习资料 (fanruan.com)

基本原理:

1.将条码生成为图片;

2.调整图片缩放,匹配目前单元格大小;

可实现任意条码长度需求。

 

 

 

使用方法如下:

HandCode128(string1,number):生成条形码,避免字符串过长,生成的条形码显示不全,string1为所要转换的条码字符串;number1为高度,默认值为50

 

示例:

HandCode128('abcdefghijklmn',30)生成宽度为30的条形码,扫描结果为abcdefghijklmn的条形码

 

 

 

案例:

 XXX条码标签——需要在7cm左右显示35位字符串

a.  设置容纳条码的单元格宽度为80mm,在其中输入如下公式将字符串转换为条码;

b.  设置单元格图片布局为“适应”

c.  打印预览和实际打印如图

不同字符串长度效果如下,与图片自适应缩放效果相同,但条码过程也会导致扫码困难。

以上,条码长度满足需求,打印可使用手机和PDA正常扫码,无需调整页面缩放。

分享扩散:

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0回帖数 1关注人数 2752浏览人数
最后回复于:2023-4-27 14:26

返回顶部 返回列表