• 做标签打印功能时遇到的问题
  • 发布于 1周前
  • 53 热度
    8 评论
  • Scys
  • 5 粉丝 46 篇博客
  •   
目前的技术栈是前端 element plus ,Vue3+TS ,后端 SpringBoot ,数据库 mysql

需要做一个标签打印功能(仓库使用):
1.支持设计标签模板(跟快递面单类似,有发货人,收货人,地区、箱数、商品信息、二维码等,模板样式自己设计,可能不同客户模板不同)
2.在系统中查询数据后,通过调用对应标签模板将指定数据进行批量打印,一条数据填充模板生成一个标签

现有问题:
以前开发系统时的打印功能都是调用浏览器直接选择打印机进行打印,没接触过标签打印的需求,比如标签尺寸 15mm*10mm, 不知道连接标签打印机进行打印是否需要其他操作,网上搜索了了一下,有的文章说标签打印机需要自己把标签数据转换为打印指令,传输给打印机?希望有相关经验的大佬不吝赐教
用户评论
  • 情人知己
  • 本地驱动 直接用 zpl 语言打,商用机基本上 ZPL 都是标配。网页要用 webusb 调用吧。要不就本地启动个 agent ,来接受网页上的命令调用驱动打
  • 2024/8/30 16:18:00 [ 0 ] [ 0 ] 回复
  • LoveC
  • 真是问到专业对口了。我是我们公司的嵌入式。我们公司是专门做标签打印机的,给你列如下几种方式。一般通用的比较小型的打印机可能不太会内置指令集:CPCL/ESC/ZPL/EPL/TSPL 我列出来的是几种常见的指令集。CPCL 、ZPL 、EPL 都是斑马公司,ESC 指令集是 EPSON 打印机的。这种都是开源的,可以直接去网上找标准的协议。

    在你开发自己 demo 前我可以给你推荐一些调试工具去测试这些指令是否健全。

    还有一些国产的做的很精美标签机,非常非常小,打印头为半寸的,这种大多都有自己的 app ,这种一般是把需要打印的样张转化为位图传输给打印机。这种如果你想做上位机驱动可能需要和对应打印机公司的 SDK 对接,比如使用他们现成的 SDK 文件。看你的需求,那种稍微大一点 2 寸 3 寸,或者大四寸,快递行业,大标签行业一般用 CPCL 指令集 ZPL/EPL 。

    小票多用 EPSON 的 ESC 指令集 它的原理为边收边打,那种非常小的因为硬件资源有限可能不会内置指令集,当然国外的我不清楚,毕竟我们公司做标签机+耗材,我也调研了不少国内的竞品,比较小的 半寸 一寸 很少有带指令集的,或者有的话也不是很全。主要也是用指令集中的位图指令。

    指令集的原理其实是上位机给打印机发送指令,真正生成图像是在打印机这一端,如果是传输位图,则上层就需要绘制好图像。如果你用指令集方式可能对自己生成图像的难度系数较小,如果是传输图像数据可能会涉及一维码/二维码库的调用,以及数据压缩,数据传输超时等等这些因素。

    当然这只是我从嵌入式方向给你的一些建议,毕竟我也不做 SDK ,我也不做 APP ,我只负责打印机固件端开发,能提供的建议只有这么多。有任何指令集相关的疑问,也可以私下问我,因为我是专门做打印机指令集开发的。
  • 2024/8/30 16:16:00 [ 0 ] [ 0 ] 回复
  • 麻辣码农
  • 标签软件可以读 mysql 的。 后端把数据发数据库。 标签软件设置好打印格式。 要打印时软件读取一下数据库现在的内容,就开始自动打印了。我公司目前是这样操作。
  • 2024/8/30 16:14:00 [ 0 ] [ 0 ] 回复
  • 回忆经典
  • 买个精臣的就行。电脑用 usb 连接,手机上可以做成小程序或 app ,使用低功耗蓝牙连接,按文档上操作就行,不会就加群问,他们技术和客服还是挺积极的,我之前做的时候不会原生安卓,他们还帮忙开发了 uniapp 插件。
  • 2024/8/30 16:12:00 [ 0 ] [ 0 ] 回复
  • 王晶
  • 做个 Excel 导出功能得了,有专门的标签设计打印软件 Bartender ,让客户用这个软件去打,这个软件支持通过 Excel 或者连接 MySQL 数据库后打印。
  • 2024/8/30 16:07:00 [ 0 ] [ 0 ] 回复
  • 卧龙生
  • 还是用原来 web 打印的方案,打印不同尺寸只是在打印机设置里面新增纸张大小,web 打印预览时选中不同的纸张就好
  • 2024/8/30 16:04:00 [ 0 ] [ 0 ] 回复