CN117971138A - 一种打印控制方法及系统 - Google Patents
一种打印控制方法及系统 Download PDFInfo
- Publication number
- CN117971138A CN117971138A CN202311735953.8A CN202311735953A CN117971138A CN 117971138 A CN117971138 A CN 117971138A CN 202311735953 A CN202311735953 A CN 202311735953A CN 117971138 A CN117971138 A CN 117971138A
- Authority
- CN
- China
- Prior art keywords
- file
- printing
- configuration information
- visual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007639 printing Methods 0.000 title claims abstract description 178
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000000007 visual effect Effects 0.000 claims abstract description 87
- 238000012015 optical character recognition Methods 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 claims description 6
- 230000002159 abnormal effect Effects 0.000 abstract description 7
- 230000000694 effects Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 10
- 230000004048 modification Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000012800 visualization Methods 0.000 description 7
- 230000005856 abnormality Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000003631 expected effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
Landscapes
- Record Information Processing For Printing (AREA)
Abstract
本申请公开了一种打印控制方法及系统,其中方法包括:获取待解析的订单源文件和打印配置信息;根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件;保存所述第一可视化调试文件和第一打印预览文件。根据所述第一可视化调试文件或第一打印预览文件,更新所述打印配置信息;根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件;通过本申请,可以对打印异常的订单小票进行可视化的自动解析、调试、预览、编辑和打印。
Description
技术领域
本申请涉及计算机领域,具体而言,涉及一种打印控制方法及系统。
背景技术
小票又称为购物收据,是指在消费者购物时由商场或其他商业机构给用户留存的销售凭据。目前市场上的收银系统都支持小票打印功能,包括前台收款结算时的购物小票打印。
现有技术中,小票一般是根据对应的订单信息,配合指定的模板,自动生成的,在打印过程中不能可视化体现,当遇到一个打印异常的订单时,很难快速准确地定位问题所在,导致订单打印出错的原因很多,比如编码格式不匹配、EPOS指令使用不当、指令类型不匹配等。例如,因行间距设置过大导致小票过长。
对于用户来说,想要对小票的数据进行修改或对模板进行编辑,则需要通过直接修改源数据的方法。尤其是在小票打印异常且只有小票图片样例,或需要重新创建模板的情况下,这种编辑小票的方式对普通用户来说并不友好,且不易于操作。例如,需要开发人员远程获取客户的订单内容,并逐字节地对该订单的十六进制数据进行解析并分析异常原因。这不仅需要对不同种类指令所对应的字节范围进行手动切分,而且对于一些复杂指令还需要对照EPOS指令集去比对分析。同时订单文件通常是KB甚至MB级别大小,这给开发人员带来了很大的工作量,整个过程中的进制转换和大量的重复动作导致解析效率很低。因此需要提供一种可视化、易于操作的交互方式供用户对小票的内容进行自主修改或对小票模板进行自主编辑。
发明内容
为了解决上述技术问题,本申请提供一种打印控制方法及系统,通过本申请,可以对打印异常的订单小票进行自动解析、调试、预览、编辑和打印。
具体的,本申请的技术方案如下:
第一方面,本申请公开一种打印控制方法,包括:
获取待解析的订单源文件和打印配置信息;
根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件;
保存所述第一可视化调试文件和第一打印预览文件。
在一些实施方式中,所述的一种打印控制方法,还包括:
根据所述第一可视化调试文件,更新所述打印配置信息;
根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件;
或,根据所述第一打印预览文件,更新所述打印配置信息;
根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件;
保存所述第二可视化调试文件和第二打印预览文件。
在一些实施方式中,所述获取打印配置信息,包括:
接收来自用户的打印指令;根据所述打印指令选择对应的通道与打印机连接;
获取所述打印机的第一配置信息,并将所述第一配置信息返回至软件页面;
对所述第一配置信息进行自动/手动修改,得到所述打印配置信息;所述打印配置信息包括编码格式、纸张宽度、打印浓度的一个或多个。
在一些实施方式中,所述的根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件,包括:
根据所述打印配置信息获取所述订单源文件的编码格式;
通过字符解析及解码操作获取订单信息集;所述订单信息集包括字符数据、二维码、条形码、光栅位图的一个或多个;
通过EPOS指令解析规则解析所述订单源文件获取指令信息集;所述指令信息集为所述订单源文件中EPOS指令的集合;
根据所述订单信息集和所述指令信息集生成第一可视化调试文件,所述第一可视化调试文件中,所述指令信息集中的指令信息元素与所述订单信息集中的订单信息元素一一对应;
根据所述打印配置信息,生成所述订单源文件的第一打印预览文件。
在一些实施方式中,所述订单源文件为Hex文件格式;
所述订单源文件的所述编码格式为十六进制编码;
所述EPOS指令,包括段落和文字属性设置指令、条形码/二维码和光栅位图指令、打印并走纸指令和设置绝对打印位置指令的一个或多个。
在一些实施方式中,所述的根据所述第一可视化调试文件或所述第一打印预览文件,更新所述打印配置信息,包括:
通过调用:点行换算/偏移模块、字体倍高图片生成模块、打印设置更新模块、光栅位图生成模块、条形码生成模块、二维码生成模块中的一个或多个,实现对所述打印配置信息的调整,使得所述第二打印预览文件符合预期设置。
在一些实施方式中,所述的一种打印控制方法,还包括:
获取小票图片,采用光学字符识别技术OCR识别所述小票图片中的相关数据,并生成第三可视化电子模块和第三打印预览文件;
所述相关数据包括:文字、符号、图标以及版面信息;
对所述相关数据进行调整,根据调整后的所述相关数据生成第四可视化电子模块和第四打印预览文件;
保存所述第四可视化电子模块和第四打印预览文件。
第二方面,本申请还公开一种打印控制系统,其特征在于,用于执行上述任一实施方式中所述的一种打印控制方法,包括:
获取模块,用于获取待解析的订单源文件和打印配置信息;
解析模块,用于根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件;
存储模块,用于保存所述第一可视化调试文件和第一打印预览文件。
在一些实施方式中,所述的一种打印控制系统,还包括:
更新模块,用于根据所述第一可视化调试文件,更新所述打印配置信息;根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件;
或,所述更新模块,还用于根据所述第一打印预览文件,更新所述打印配置信息;根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件。
在一些实施方式中,所述获取模块,还用于获取小票图片;
所述解析模块,还用于采用光学字符识别技术OCR识别所述小票图片中的相关数据,并生成第三可视化电子模块和第三打印预览文件;所述相关数据包括:文字、符号、图标以及版面信息;
所述更新模块,还用于对所述相关数据进行调整,根据调整后的所述相关数据生成第四可视化电子模块和第四打印预览文件;
所述存储模块,还用于保存所述第四可视化电子模块和第四打印预览文件。
与现有技术相比,本申请至少具有以下一项有益效果:
1、本申请提供的一种打印控制方法和系统能够对本地导入的订单文件按照指定的编码格式和打印设置进行解析,并生成与实际打印小票相近的Word文档以便预览打印效果。遇到打印小票的排版布局不符合预期时,可以快速准确地分析异常原因。便于技术支持人员帮助客户分析处理相关客诉问题。并且可以借助本申请提供的打印平台更方便地设计订单排版布局,降低因较长的抽象指令导致后期打印出错的可能性。
2、本申请提供的打印平台支持调试模式和标准模式这两种工作模式,在调试模式下,可以在标准模式基础上打印出所有指令信息集的注释,生成可视化调试文件。本申请提供的打印平台将自动解析、调试、预览、编辑和打印这些功能被整合为一个独立页面,更方便使用。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对本申请的上述特性、技术特征、优点及其实现方式予以进一步说明。
图1为本申请提供的一个方法实施例的步骤流程图;
图2为本申请提供的实施例中调试模式下可视化调试文件的示意图;
图3为本申请提供的实施例中预览效果与实际打印效果的对比图;
图4为本申请提供的另一个方法实施例的流程示意图;
图5为本申请提供的一个系统实施例中打印平台的结构框图;
图6为本申请提供的另一个系统实施例中打印平台的结构示意图;
图7为本申请提供的另一个系统实施例中打印平台各模块之间调用逻辑的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其他实施例中也可以实现本申请。在其他情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所述描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其他特征、整体、步骤、操作、元素、组件和/或集合的存在或添加。
为使图面简洁,各图中只示意性地表示出了与发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在本文中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体的连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
具体实现中,本申请实施例中描述的终端设备包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机、家教机或平板计算机之类的其他便携式设备。还应当理解的是,在某些实施例中,所述终端设备并非便携式通信设备,而是具有触摸敏感表面(例如:触摸屏显示器和/或触摸板)的台式计算机。
另外,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对照附图说明本申请的具体实施方式。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
客户在打印排版异常时通常很难定位问题所在,需要开发人员远程获取客户的订单内容,并逐字节地对该订单的十六进制数据进行解析并分析异常原因。这不仅需要对不同种类指令所对应的字节范围进行手动切分,而且对于一些复杂指令还需要对照EPOS指令集去比对分析。同时订单文件通常是KB甚至MB级别大小,这给开发人员带来了很大的工作量,整个过程中的进制转换和大量的重复动作导致解析效率很低。
导致订单打印出错的原因很多,比如编码格式不匹配、EPOS指令使用不当、指令类型不匹配等。例如,因行间距设置过大导致小票过长。
综上,当遇到一个打印异常的订单时,很难快速准确地定位问题所在,这对开发人员的指令解析经验和熟练度要求很高。因此,有必要开发一款能够实现对订单内容自动解析的工具。
参考说明书附图1,本申请提供的一种打印控制方法的一个实施例,由打印平台执行,所述打印平台包含调试模式和标准模式。包括如下步骤:
S100,获取待解析的订单源文件和打印配置信息。
具体的,所述获取拟定的打印配置信息,包括:S110,接收来自用户的打印指令。S120,根据用户的打印指令选择对应的通道与打印机连接。S130,获取并修改所述已连接的打印机配置信息。更优的,S130:获取当前打印机的第一配置信息,并将所述第一配置信息返回至软件页面,调整所述第一配置信息生成拟定运行打印配置信息。
S200,根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件。具体的,包括:通过EPOS指令解析规则解析所述订单源文件获取指令信息集,通过字符解析及解码获取订单信息集。其中,所述指令信息集中的指令信息元素与所述订单信息集中的订单信息元素一一对应。
所述待解析的订单源文件为Hex格式。所述打印配置信息包括编码方式、纸张宽度、打印浓度的一个或多个。所述订单信息集包括字符数据、二维码、条形码、光栅位图的一个或多个。
所述指令信息集,也就是所述EPOS指令,包括段落和文字属性设置指令、条形码/二维码和光栅位图指令、打印并走纸指令和设置绝对打印位置指令的一个或多个。
S300,保存所述第一可视化调试文件和第一打印预览文件。
具体的,可视化调试文件为Word文档格式或图片格式。
在所述调试模式下,将所述订单信息集写入所述可视化调试文件。将所述指令信息集中的信息元素标注至所述订单信息集中对应的信息元素处,生成所述可视化调试文件。切换至所述标准模式,生成所述打印预览文件。
本申请一种打印控制方法的另一个实施例,在上述实施例的基础上,还包括:S400,根据所述第一可视化调试文件,更新所述打印配置信息。根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件。保存所述第二可视化调试文件和第二打印预览文件。
本实施例的另一实施方式中:S400,根据所述第一打印预览文件,更新所述打印配置信息。根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件。保存所述第二可视化调试文件和第二打印预览文件。
更优的,修改可视化调试文件或打印预览文件,使得所述打印预览文件符合预期设置,并根据所述修改后的可视化调试文件生成新的指令信息集,以便打印机进行打印。
具体的,在所述调试模式下,调用点行换算/偏移模块、字体倍高图片生成模块、打印设置更新模块、光栅位图生成模块、条形码生成模块、二维码生成模块的一个或多个调整所述订单信息集及所述指令信息集,使得所述打印预览文件符合预期设置并保存当前指令信息,以便打印机进行打印。
本申请一种打印控制方法的另一个实施例,具体包括以下步骤:
S100,接收第一使能指令,控制所述打印平台的工作模式切换为调试模式。具体的,本申请提供的打印平台支持调试模式和标准模式这两种工作模式。
S200,获取待解析的订单源文件,将所述订单源文件按照指定的编码格式和打印设置进行解析。解析得到EPOS指令并保存本地,并生成可视化调试文件。
具体的,所述的将所述订单源文件按照指定的编码格式和打印设置进行解析,包括:S210,按照标准EPOS指令集或特定的云打印机指令集的规则进行解析。S220,所述订单源文件中被解析为EPOS指令的数据为正常数据。S230,将所述订单源文件中无法被解析的数据标为异常数据,预估异常原因并提供对应解决方法。更优的,若能按照标准指令解析全部小票内容,则表示所述订单源文件中并没有错误,或是错误已成功修改。解析不成功是指小票的数据中存在不符合EPOS指令标准的情况,实际打印基本都会出现乱码。可视化异常后,通过查看调试文档可以找到异常数据和修改建议,修改后可以再次解析直到成功或者退出。在本实施例的其他实施方式中,还可以通过第二次解析来验证错误是否成功修改。
所述订单源文件为Hex格式文件。所述EPOS指令,包括段落和文字属性设置指令、条形码/二维码和光栅位图指令、打印并走纸指令和设置绝对打印位置指令。EPOS指令,该打印控制命令是EPSON公司自己制定的针式打印机的标准化指令集,现在已成为针式打印机控制语言事实上的工业标准。EPOS打印命令集是ESC/POS打印控制命令的简化版本,现在大多数票据打印都采用EPOS指令集。其显著特征是:其中很大一部分指令都是以ESC控制符开始的一串代码。
S240,将解析到的所述EPOS指令,在所述订单源文件的相应位置进行批注,得到可视化调试文件。具体的,新建空白文件,逐段写入所述订单源文件的数据,每写入一段数据后,标注当前数据中累计的EPOS指令名称和指令值,以及该段数据所对应的Hex字节数据串。写入完成后,得到可视化调试文件。具体的,可视化调试文件如说明书附图2所示,其中包括十六进制的订单源文件和解析后的EPOS指令,在调试模式(debug模式)下,可视化调试文件可视化体现在将小票16进制数据转换为直观的查看的图像。好处是1、避免通过人工一个字节一个字节的解析小票内容,可以直接生成模拟打印的图片或文档。debug模式还可以将小票中的EPOS指令解释并输出到图片或文档中,方便快速定位问题。2、编辑、调整小票模板时更方便,使用者不用考虑EPOS指令的编辑,关注排版即可。
S300,对所述可视化调试文件进行调试,同时生成打印预览文档以确定修改是否达到预期效果。修改后得到新的EPOS指令。具体的,所述打印预览文档与实际打印小票相近,以便预览打印效果。所述打印预览文档一般为word格式、图片格式等。预览效果与实际打印效果的对比图如图3所示,具体的,预览效果可以在word/html/图片等格式的文档上直观地呈现模拟打印效果,好处是方便动态修改和异常分析。
S400,向打印机下发所述新的EPOS指令。以便所述打印机打印订单小票。
购物小票不单单提供给财务做账使用,也提供给顾客当做消费凭证。传统的收银小票打印机需要连接电脑下载驱动才能使用,随着云打印机的诞生,小票机不再需要电脑,而是通过无线网络远程遥控打印指令。云打印机打印小票的原理是通过服务器下达打印指令,然后通过WIFI传递给打印机,从而实现云打印。具体来说,服务器通过软件开发工具包SDK下达打印指令,将需要打印的内容发送给云打印机,云打印机接收到指令后,将内容解析并打印出来。因为云打印机支持WIFI连接,所以可以实现无线打印,方便快捷。
本申请一种打印控制方法的另一个实施例,如说明书附图4所示,为了更加快速准确地解析订单内容,并更加直观地可视化实际打印效果,我们提供一种能够自动解析并预览订单内容的工具,并将其整合到云打印平台(cloud-printer-utility)工具中。该自动解析工具能够将输入订单文件按照指定的编码格式和打印设置进行解析,并生成与实际打印小票相近的Word文档以便预览打印效果。因此,该工具的实际使用场景可分为如下几类:1、对开发人员:遇到打印小票的排版布局不符合预期时,开发人员可使用该自动解析工具快速准确地分析异常原因。
2、对技术支持人员:该工具便于技术支持人员帮助客户分析处理相关客诉问题。
3、对于客户:客户可以借助该自动解析工具更方便地设计订单排版布局,降低因较长的抽象指令导致后期打印出错的可能性。
具体的,实现步骤如下:S1、云打印平台接收来自用户的打印指令,选择对应的通道与打印机连接。
具体的,web交互界面作为云打印平台(cloud-printer-utility)的一个独立界面,自动解析工具主要由文件选择、打印参数设置以及开始解析三部分组成。
S2、连接成功后,云打印平台(cloud-printer-utility)获取所述打印机的配置信息并进行修改。
具体的:云打印平台获取当前打印机的第一配置信息,并将所述第一配置信息返回显示到软件页面上,以便用户对所述第一配置信息进行修改。
S3、保存修改后的打印机第二配置信息。并将所述第二配置信息写入所述打印机内。写入后获取当前打印机的第二配置信息,并将所述第二配置信息返回显示到软件页面上。所述配置信息包括编码方式、纸张宽度、打印浓度。
具体来说,点击文件夹图标按钮选中订单文件后,会显示该路径以及文件大小(字节),并提供了reload按钮重新加载订单文件。然后可根据云打印机当前设置选择设置相关参数(编码方式、纸张宽度、打印浓度和解析模式),最后点击Parse按钮进行解析,生成的可视化Word文件自动保存在该订单文件同级目录下。
S4、用户向所述云打印平台上传本地订单文件并选择解析模式,经所述打印平台解析后将可视化调试文件保存至本地。经过对比分析,用户对所述可视化调试文件修改后重新向所述打印机下发EPOS指令,以便打印机打印小票。
更优的,步骤细节和上一个实施例相同,在此不再重复。
本申请一种打印控制方法的另一个实施例,在上述任意一个方法实施例的基础上,还包括如下步骤:
S510,获取小票图片,采用光学字符识别技术OCR识别所述小票图片中的相关数据,并生成第三可视化电子模块和第三打印预览文件。
S520,所述相关数据包括:文字、符号、图标以及版面信息。
S530,对所述相关数据进行调整,根据调整后的所述相关数据生成第四可视化电子模块和第四打印预览文件。
S540,保存所述第四可视化电子模块和第四打印预览文件。
具体的,如果需要改动预览文档,可以改动原小票数据,也可以保存为模板后通过模板调整。模板保存在调试工具所在的电脑,后续也可以保存在云端。模板生成后,可以本地直接填写信息比如商品名称、价格后打印,也可以给app、web端使用。本实施例中,对预览文档进行模板调整的过程中同样可视化,包括技术手段如下:
1、小票数据按照EPOS指令规则解析后将内容输入word/html/图片,模拟小票打印时的效果。比如解析内容通过python-docx输出到word文档。
2、小票模板是对EPOS指令抽象后使用的场景。模板的组件是由一组或多组EPOS指令实现,组件显示的内容可以动态修改,通过多个组件构成可视化的小票模板。需要打印时通过“生成小票”功能将模板转换为实际打印的小票数据。可视化工具面向开发人员和使用人员。
基于相同的技术构思,本申请还公开了一种打印控制系统,该系统可用于实现上述任意一种打印控制方法,具体的,本申请的一种打印控制系统实施例,如说明书附图5所示,包括:上述方法实施例中任一项所述的打印平台和打印机。
所述打印平台用于对打印异常的订单源文件按照指定的编码格式和打印设置进行解析,生成与实际打印小票相近的Word文档以便预览打印效果,生成可视化调试文件以便对打印异常数据进行调试。所述打印平台还用于生成动态编辑模板,以便对小票进行管理。打印机与所述打印平台信号连接,用于按照预设的打印设置打印订单小票。更优的,所述打印机为云打印机。
具体的,所述打印平台,具体包括:
获取模块10,用于获取待解析的订单源文件和打印配置信息。
具体的,获取模块10选择对应的通道与打印机连接,连接成功后,获取所述打印机的配置信息并进行修改,获取当前打印机的第一配置信息,并将所述第一配置信息返回至软件页面,调整所述第一配置信息生成拟定运行打印配置信息。所述配置信息包括编码方式、纸张宽度、打印浓度。
解析模块20,用于根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件。
具体的,解析模块20通过获取模块10获取到的待解析的订单源文件和拟定运行打印配置信息。按照指定的编码格式和打印配置信息,解析所述订单源文件,获取订单信息集及指令信息集。编辑所述订单信息集和所述指令信息集生成调试模式下的可视化调试文件,及对应的标准模式下的打印预览文件。所述订单源文件为Hex格式文件。所述EPOS指令,包括段落和文字属性设置指令、条形码/二维码和光栅位图指令、打印并走纸指令和设置绝对打印位置指令。具体的,所述解析模块,还用于按照标准EPOS指令集或特定的云打印机指令集的规则进行解析。所述订单源文件中被解析为EPOS指令的数据为正常数据。将所述订单源文件中无法被解析的数据标为异常数据,预估异常原因并提供对应解决方法。
更优的,所述可视化单元用于将解析到的所述EPOS指令,在所述订单源文件的相应位置进行批注,得到可视化调试文件。具体的,执行如下步骤:新建空白文件,逐段写入所述订单源文件的数据,每写入一段数据后,标注当前数据中累计的EPOS指令名称和指令值,以及该段数据所对应的Hex字节数据串。写入完成后,得到可视化调试文件。
存储模块30,用于保存所述第一可视化调试文件和第一打印预览文件。
本实施例的另一实施方式中,所述的一种打印控制系统,还包括:
更新模块40,用于根据所述第一可视化调试文件,更新所述打印配置信息。根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件。
或,所述更新模块40,还用于根据所述第一打印预览文件,更新所述打印配置信息。根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件。
具体的,更新模块40,用于对所述可视化调试文件进行修改,使得所述打印预览文件符合预期设置,并根据所述修改后的可视化调试文件生成新的指令信息。所述解析模块20中的预览单元生成与实际打印小票相近的打印预览文档以便预览打印效果。
本申请提供的一种打印控制系统的另一实施例,所述获取模块,还用于获取小票图片。
所述解析模块,还用于采用光学字符识别技术OCR识别所述小票图片中的相关数据,并生成第三可视化电子模块和第三打印预览文件。所述相关数据包括:文字、符号、图标以及版面信息。
所述更新模块,还用于对所述相关数据进行调整,根据调整后的所述相关数据生成第四可视化电子模块和第四打印预览文件。
所述存储模块,还用于保存所述第四可视化电子模块和第四打印预览文件。
具体的,如果需要改动预览文档,可以改动原小票数据,也可以保存为模板后通过模板调整。模板保存在调试工具所在的电脑,后续也可以保存在云端。模板生成后,可以本地直接填写信息比如商品名称、价格后打印,也可以给app、web端使用。本实施例中,对预览文档进行模板调整的过程中同样可视化。
本申请提供的一种打印控制系统的另一实施例,如说明书附图6所示,在上述系统实施例的基础上,所述一种打印控制系统包括:
1、配置读取模块,用于根据打印机当前打印设置生成预览文件。
具体的,支持用户根据云打印机当前打印设置手动配置。支持读取云打印机的当前打印设置。
2、指令解析模块(解析模块),用于准确解析EPOS指令和订单内容。
具体的,支持对常用EPOS指令的解析,例如段落/文字属性设置指令、条形码/二维码/光栅位图指令、打印并走纸指令和设置绝对打印位置指令等。支持页模式相关指令。支持对其他语言内容的解析。
3、可视化模块,用于方便用户预览可视化结果。
具体的,支持标准和调试(debug)两种模式,在订单同目录下生成Word文档。支持点击界面按钮直接打开生成的Word文档。
4、Qt界面模块(QT应用),用于方便用户使用该工具。
具体的,支持文件选择、模式选择和打印设置选择。支持显示并修改云打印机当前的打印相关设置。
更优的,可视化功能和打印预览功能都是基于基础组件的功能实现,基础组件包括:点行换算/偏移模块、光栅位图生成模块、字体倍高图片生成模块、条形码生成模块、打印设置更新模块、二维码生成模块、Word写入模块、Word页面初始化模块。
具体的,当用户选择解析功能时,解析模块线程调用python脚本执行订单解析操作,模块间的调用逻辑如说明书附图7所示:
读入订单文件后,由解析模块解读订单内容数据,解读得到EPOS指令和订单内容数据,所述订单内容数据包括字符数组、二维码、条形码、光栅位图。获取预先设置的打印设置数据,所述打印设置数据包括行间距、对齐方式字体大小/加粗下划线/颜色等。共同写入Word文档(预览文档)。
将Word文档保存为模板后,再通过:行信息更新模块、点行换算/偏移模块、字符写入模块、字体倍高图片生成模块、注释打印模块,对模板进行调整,最后保存Word至本地。
本申请的一种打印控制方法及系统具有相同的技术构思,二者的实施例的技术细节可相互适用,为减少重复,此次不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的程序模块完成,即将所述装置的内部结构划分成不同的程序单元或模块,以完成以上描述的全部或者部分功能。实施例中的各程序模块可以集成在一个处理单元中,也可是各个单元单独物理存在,也可以两个或两个以上单元集成在一个处理单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序单元的形式实现。另外,各程序模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述或记载的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件,或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其他的方式实现。示例性的,以上所描述的装置实施例仅仅是示意性的,示例性的,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,示例性的,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性、机械或其他的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可能集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种打印控制方法,其特征在于,包括:
获取待解析的订单源文件和打印配置信息;
根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件;
保存所述第一可视化调试文件和第一打印预览文件。
2.如权利要求1所述的一种打印控制方法,其特征在于,还包括:
根据所述第一可视化调试文件,更新所述打印配置信息;
根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件;
或,根据所述第一打印预览文件,更新所述打印配置信息;
根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件;
保存所述第二可视化调试文件和第二打印预览文件。
3.如权利要求1所述的一种打印控制方法,其特征在于,所述获取打印配置信息,包括:
接收来自用户的打印指令;根据所述打印指令选择对应的通道与打印机连接;
获取所述打印机的第一配置信息,并将所述第一配置信息返回至软件页面;
对所述第一配置信息进行自动/手动修改,得到所述打印配置信息;所述打印配置信息包括编码格式、纸张宽度、打印浓度的一个或多个。
4.如权利要求1到3任一项所述的一种打印控制方法,其特征在于,所述的根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件,包括:
根据所述打印配置信息获取所述订单源文件的编码格式;
通过字符解析及解码操作获取订单信息集;所述订单信息集包括字符数据、二维码、条形码、光栅位图的一个或多个;
通过EPOS指令解析规则解析所述订单源文件获取指令信息集;所述指令信息集为所述订单源文件中EPOS指令的集合;
根据所述订单信息集和所述指令信息集生成第一可视化调试文件,所述第一可视化调试文件中,所述指令信息集中的指令信息元素与所述订单信息集中的订单信息元素一一对应;
根据所述打印配置信息,生成所述订单源文件的第一打印预览文件。
5.如权利要求4所述的一种打印控制方法,其特征在于,所述订单源文件为Hex文件格式;
所述订单源文件的所述编码格式为十六进制编码;
所述EPOS指令,包括段落和文字属性设置指令、条形码/二维码和光栅位图指令、打印并走纸指令和设置绝对打印位置指令的一个或多个。
6.如权利要求2所述的一种打印控制方法,其特征在于,所述的根据所述第一可视化调试文件或所述第一打印预览文件,更新所述打印配置信息,包括:
通过调用:点行换算/偏移模块、字体倍高图片生成模块、打印设置更新模块、光栅位图生成模块、条形码生成模块、二维码生成模块中的一个或多个,实现对所述打印配置信息的调整,使得所述第二打印预览文件符合预期设置。
7.如权利要求1所述的一种打印控制方法,其特征在于,还包括:
获取小票图片,采用光学字符识别技术OCR识别所述小票图片中的相关数据,并生成第三可视化电子模块和第三打印预览文件;
所述相关数据包括:文字、符号、图标以及版面信息;
对所述相关数据进行调整,根据调整后的所述相关数据生成第四可视化电子模块和第四打印预览文件;
保存所述第四可视化电子模块和第四打印预览文件。
8.一种打印控制系统,其特征在于,用于执行权利要求1-7中任一项所述的一种打印控制方法,包括:
获取模块,用于获取待解析的订单源文件和打印配置信息;
解析模块,用于根据所述打印配置信息,解析所述订单源文件得到第一可视化调试文件和第一打印预览文件;
存储模块,用于保存所述第一可视化调试文件和第一打印预览文件。
9.如权利要求8所述的一种打印控制系统,还包括:
更新模块,用于根据所述第一可视化调试文件,更新所述打印配置信息;根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件;
或,所述更新模块,还用于根据所述第一打印预览文件,更新所述打印配置信息;根据更新后的所述打印配置信息,生成第二可视化调试文件和第二打印预览文件。
10.如权利要求9所述的一种打印控制系统,其特征在于:
所述获取模块,还用于获取小票图片;
所述解析模块,还用于采用光学字符识别技术OCR识别所述小票图片中的相关数据,并生成第三可视化电子模块和第三打印预览文件;所述相关数据包括:文字、符号、图标以及版面信息;
所述更新模块,还用于对所述相关数据进行调整,根据调整后的所述相关数据生成第四可视化电子模块和第四打印预览文件;
所述存储模块,还用于保存所述第四可视化电子模块和第四打印预览文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311735953.8A CN117971138A (zh) | 2023-12-18 | 2023-12-18 | 一种打印控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311735953.8A CN117971138A (zh) | 2023-12-18 | 2023-12-18 | 一种打印控制方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117971138A true CN117971138A (zh) | 2024-05-03 |
Family
ID=90857055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311735953.8A Pending CN117971138A (zh) | 2023-12-18 | 2023-12-18 | 一种打印控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117971138A (zh) |
-
2023
- 2023-12-18 CN CN202311735953.8A patent/CN117971138A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6384571B2 (ja) | 端末の制御方法 | |
CA3060951A1 (en) | Printing data processing method and apparatus, electronic invoice generating method and server | |
CN101183360B (zh) | 字符输入编辑方法 | |
CN110865775B (zh) | 一种基于web进行在线设计与预览的打印方法 | |
US20130155464A1 (en) | Print application | |
US20120038940A1 (en) | Mobile Printing Solution | |
CN104583931A (zh) | 语义打印选项 | |
CN111783414A (zh) | 标签打印模板生成方法及装置 | |
CN111062195A (zh) | 一种文件处理的方法、文件处理装置、设备及存储介质 | |
CN111881054B (zh) | 用户界面自动化测试方法、系统、设备及存储介质 | |
CN113449236A (zh) | 一种银行系统电子协议的生成和存储方法及装置 | |
CN113177390A (zh) | 文档的智能处理方法、装置、计算机可读介质及电子设备 | |
CN102193758B (zh) | 用于打印驱动程序和打印后台处理程序的方法和装置 | |
CN117971138A (zh) | 一种打印控制方法及系统 | |
CN103034990A (zh) | 出版物校验的方法和装置 | |
CN105005889A (zh) | 一种快速低成本获取收银数据的方法 | |
CN112926294A (zh) | 一种模板文件的生成方法和装置 | |
CN116795243A (zh) | 标贴打印方法及系统、计算机设备及介质 | |
CN114356250A (zh) | 一种标签打印系统和方法 | |
US20190179877A1 (en) | Information processing system, control method, and storage medium | |
CN113836092A (zh) | 基于rpa和ai的文件比对方法、装置、设备及存储介质 | |
US8582129B2 (en) | Apparatus and method for presentation of application printing notes for a printer driver | |
CN113419711A (zh) | 页面引导方法、装置、电子设备及存储介质 | |
EP3336684B1 (en) | Comparing printer models | |
CN112230913A (zh) | 富文本内容的处理方法与装置、存储介质、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |