一种动态打印方法及系统与流程

文档序号:37154032发布日期:2024-02-26 17:12阅读:18来源:国知局
一种动态打印方法及系统与流程

本发明涉及动态打印,尤其涉及一种动态打印方法及系统。


背景技术:

1、每个品牌都有成百上千门店,每个门店都有自己的收银终端,在商家的日常经营中,小票打印的场景无处不在,顾客的每笔消费都会收到商家打印出的消费小票,这个是顾客的消费凭证,所以小票的内容对顾客和商家都尤为重要,故而诸多业务场景都需要提供相应的小票打印能力。

2、当前传统的小票及杯贴打印的技术架构,主要是客户端基于驱动,或者esc的打印指令落存在客户端侧,客户端可简单的调整或者更换下打印模板,上述模式存在如下问题:

3、1、门店有多终端,每个端各自实现一套打印流程,方案不统一,导致每次修改都会多端修改,而且各端依赖发版才可上线,不具有动态性,而且研发效率比较低;

4、2、打印小票的业务场景比较多,每个业务都自己实现模板封装及打印逻辑,模板及逻辑不统一,维护成本大;

5、3、多种小票设备的适配,对于每个端来说都要适配一遍;

6、4、品牌门店对小票的调整诉求比较高,无法高效的满足高频的调整诉求。


技术实现思路

1、本发明要解决的技术问题是克服现有技术存在的缺陷,本发明提出了一种将多终端的打印逻辑进行统一化、动态化的动态打印方法及系统。

2、为解决上述技术问题,本发明采用的技术方案是:一种动态打印方法,包括如下步骤:

3、s1、在平台创建js引擎并输入模板以及业务数据,js引擎对业务数据进行解析过滤并将过滤后的业务数据与模板进行整合;

4、s2、平台依据打印机类型选择对应的parser,将整合后的数据转换排版后发送至打印终端,其中,整合后的数据包括图片与一维码,

5、当数据为图片时,平台内通过otsu算法实现图片打印,具体包括,获取原图像的灰度图,灰度直方统计,求解使类间方差最大的阈值,

6、当数据为一维码时,平台对一维码进行识别解码并与图片数据对应并排版;

7、s3、打印终端处理图片和一维码,输出打印指令并结束。

8、进一步地,所述步骤s1中,过滤数据包括"\\"、"\n"与"\b",当解析数据过程出错时,反馈异常给平台移动端。

9、进一步地,所述步骤s2中,当整合后的数据为图片时,js引擎通过esc指令与打印终端通信。

10、进一步地,所述步骤s2中,otsu算法具体包括,

11、对于图像i(x,y),目标和背景的分隔阈值记作t,属于前景的像素点数占整幅图像的比例记作ω0,其平均灰度记作μ0,背景像素点数占整幅图像的比例为ω1,其平均灰度为μ1,图像的总体平均灰度记作μ,类间方差记作g,

12、定义暗背景下图像大小为m×n,图像中像素的灰度值小于阈值t的像素个数记作n0,像素灰度大于等于阈值t的像素个数记作n1,则有

13、

14、

15、n0+n1=m×n       (3)

16、ω0+ω1=1       (4)

17、g=ω0*ω1*(μ0-μ1)2+ω1*(μ1-μ)2      (5)

18、g=ω0*ω1*(μ0-μ1)2          (6)。

19、进一步地,所述步骤s2中平台识别一维码的具体步骤包括,

20、获取当前一维码中条和空的总个数,将总个数与预设值比较以筛除;

21、对筛除后一维码的条和空的宽度进行区域值分隔,提取灰度值特征;

22、将灰度值特征与一维码数据库中对应的数据识别输出。

23、进一步地,所述步骤s1中,平台包括ios、安卓、windows与云端服务器。

24、进一步地,所述步骤s2中,打印终端包括蓝牙打印机、内置打印机、wifi打印机与一体式打印机。

25、一种动态打印系统,包括:

26、控制模块,用以js引擎平台化的构建,同时负责平台、js引擎以及打印终端的通信;

27、js引擎模块,用以接收所述控制模块输入的模块以及业务数据,同时对业务数据进行解析过滤并将过滤后的业务数据与模板进行整合;

28、打印模块,用以实现终端对整合后的数据进行打印。

29、一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述所述的动态打印方法的步骤。

30、一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时用于实现上述所述的动态打印方法的步骤。

31、与现有技术相比,本发明的有益效果包括:

32、1)打印模板和能力可满足实时场景和千人千变的场景的打印需求,系统可以稳定运行并在实际场景中,可以做到实时修改实时下发实时同步;

33、2)基于打印中心的装修的轻代码模式的打印组装方案,极大的提升了打印模板的多样化;

34、3)一次调整,多端适用,同时支持对安卓、windows和ipad三端的打印能力的支持。



技术特征:

1.一种动态打印方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的一种动态打印方法,其特征在于:所述步骤s1中,过滤数据包括″\\″、″\n″与″\b″,当解析数据过程出错时,反馈异常给平台移动端。

3.根据权利要求1所述的一种动态打印方法,其特征在于:所述步骤s2中,当整合后的数据为图片时,js引擎通过esc指令与打印终端通信。

4.根据权利要求1所述的一种动态打印方法,其特征在于:所述步骤s2中,otsu算法具体包括,

5.根据权利要求1所述的一种动态打印方法,其特征在于:所述步骤s2中平台识别一维码的具体步骤包括,

6.根据权利要求1所述的一种动态打印方法,其特征在于:所述步骤s1中,平台包括ios、安卓、windows与云端服务器。

7.根据权利要求1所述的一种动态打印方法,其特征在于:所述步骤s2中,打印终端包括蓝牙打印机、内置打印机、wifi打印机与一体式打印机。

8.一种动态打印系统,其特征在于,包括:

9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于:所述处理器执行所述程序时实现如权利要求1至6任一项所述的动态打印方法的步骤。

10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时用于实现上述权利要求1至6任一项所述的动态打印方法的步骤。


技术总结
本发明提出了一种终端小票动态打印方法及系统,解决了门店终端不同小票打印模版难以统一的问题,其主要方案包括:S1、在平台创建JS引擎并输入模板以及业务数据,JS引擎对业务数据进行解析过滤并将过滤后的业务数据与模板进行整合;S2、平台依据打印机类型选择对应的parser,将整合后的数据转换排版后发送至打印终端,其中,整合后的数据包括图片与一维码,当数据为图片时,平台内通过OTSU算法实现图片打印,具体包括,获取原图像的灰度图,灰度直方统计,求解使类间方差最大的阈值,当数据为一维码时,平台对一维码进行识别解码并与图片数据对应并排版;S3、打印终端处理图片和一维码,输出打印指令并结束。

技术研发人员:王友运
受保护的技术使用者:企迈科技有限公司
技术研发日:
技术公布日:2024/2/25
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1