热敏打印机的打印方法和装置转让专利

申请号 : CN201710076960.X

文献号 : CN106919350B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘伟李鑫

申请人 : 百富计算机技术(深圳)有限公司

摘要 :

本发明涉及一种热敏打印机的打印方法,所述方法包括:获取待打印数据,将所述待打印数据备份到存储器中;开始打印并在打印过程中获取当前打印位置对应的行数,将所述行数备份到存储器中;当打印机出现异常重启后,获取存储器中备份的当前打印位置对应的行数和待打印数据,从所述当前打印位置对应的行数开始继续打印所述待打印数据。解决了待打印数据丢失的问题,防止打印一半的文件作废,且无需使用备用电源,节省成本,节约资源,适合广泛使用。

权利要求 :

1.一种热敏打印机的打印方法,所述方法包括:获取待打印数据,将所述待打印数据备份到存储器中;

开始打印并在打印过程中按照预设时间间隔获取当前打印位置对应的行数,将所述行数备份到存储器中;行数是用于标识正在打印数据的数值;

当打印机出现异常重启后,获取存储器中备份的当前打印位置对应的行数和待打印数据,从所述当前打印位置对应的行数开始继续打印所述待打印数据。

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据所述待打印数据判断所述当前打印位置对应的行数是否为最后一行,若是,则停止打印,否则继续打印。

3.根据权利要求2所述的方法,其特征在于,所述方法还包括:当判断到所述当前打印位置对应的行数为最后一行时,则不再将所述行数备份到存储器中。

4.根据权利要求2所述的方法,其特征在于,在所述停止打印的步骤之后,还包括:删除所述存储器中备份的待打印数据和当前打印位置对应的行数;

关闭打印机电源。

5.一种热敏打印机的打印装置,其特征在于,所述装置包括:数据备份模块,用于获取待打印数据,将所述待打印数据备份到存储器中;

打印模块,用于开始打印并在打印过程中按照预设时间间隔获取当前打印位置对应的行数;数据备份模块还用于将所述行数备份到存储器中;行数是用于标识正在打印数据的数值;

数据获取模块,用于当打印机出现异常重启后,获取存储器中备份的当前打印位置对应的行数和待打印数据,从所述当前打印位置对应的行数开始继续打印所述待打印数据。

6.根据权利要求5所述的装置,其特征在于,所述装置还包括:判断模块,用于根据所述待打印数据判断所述当前打印位置对应的行数是否为最后一行,若是,则停止打印,否则继续打印。

7.根据权利要求6所述的装置,其特征在于,所述判断模块还用于当判断到所述当前打印位置对应的行数为最后一行时,则不再将所述行数备份到存储器中。

8.根据权利要求6所述的装置,其特征在于,所述装置还包括:删除模块,用于删除所述存储器中备份的待打印数据和当前打印位置对应的行数;

电源开关模块,用于控制打印机电源开关。

说明书 :

热敏打印机的打印方法和装置

技术领域

[0001] 本发明涉及打印机技术领域,特别是涉及一种热敏打印机的打印方法和装置。

背景技术

[0002] 在热敏打印机打印文件时,有时会因为异常原因造成打印机重启,使得打印机停止运行,这种情况下会造成待打印数据的丢失,或者使打印一半的文件作废,浪费资源。传统技术是采用安装备用电源的方式来解决上述问题,然而备用电源成本高昂,不适合广泛使用。

发明内容

[0003] 基于此,有必要针对上述问题,提供一种能节省成本的热敏打印机的打印方法和装置。
[0004] 一种热敏打印机的打印方法,所述方法包括:
[0005] 获取待打印数据,将所述待打印数据备份到存储器中;
[0006] 开始打印并在打印过程中获取当前打印位置对应的行数,将所述行数备份到存储器中;
[0007] 当打印机出现异常重启后,获取存储器中备份的当前打印位置对应的行数和待打印数据,从所述当前打印位置对应的行数开始继续打印所述待打印数据。
[0008] 在其中一个实施例中,所述获取当前打印位置对应的行数,将所述行数备份到存储器中,包括:
[0009] 在打印机打印过程中按照预设时间间隔获取当前打印位置对应的行数,将所述行数备份到存储器中。
[0010] 在其中一个实施例中,所述方法还包括:
[0011] 根据所述待打印数据判断所述当前打印位置对应的行数是否为最后一行,若是,则停止打印,否则继续打印。
[0012] 在其中一个实施例中,所述方法还包括:
[0013] 当判断到所述当前打印位置对应的行数为最后一行时,则不再将所述行数备份到存储器中。
[0014] 在其中一个实施例中,所述停止打印的步骤之后,还包括:
[0015] 删除所述存储器中备份的待打印数据和当前打印位置对应的行数;
[0016] 关闭打印机电源。
[0017] 一种热敏打印机的打印装置,所述装置包括:
[0018] 数据备份模块,用于获取待打印数据,将所述待打印数据备份到存储器中;
[0019] 打印模块,用于开始打印并在打印过程中获取当前打印位置对应的行数;数据备份模块还用于将所述行数备份到存储器中;
[0020] 数据获取模块,用于当打印机出现异常重启后,获取存储器中备份的当前打印位置对应的行数和待打印数据,从所述当前打印位置对应的行数开始继续打印所述待打印数据。
[0021] 在其中一个实施例中,所述数据备份模块还用于在打印机打印过程中按照预设时间间隔获取当前打印位置对应的行数,将所述行数备份到存储器中。
[0022] 在其中一个实施例中,所述装置还包括:
[0023] 判断模块,用于根据所述待打印数据判断所述当前打印位置对应的行数是否为最后一行,若是,则停止打印,否则继续打印。
[0024] 在其中一个实施例中,所述判断模块还用于当判断到所述当前打印位置对应的行数为最后一行时,则不再将所述行数备份到存储器中。
[0025] 在其中一个实施例中,所述装置还包括:
[0026] 删除模块,用于删除所述存储器中备份的待打印数据和当前打印位置对应的行数;
[0027] 电源开关模块,用于控制打印机电源开关。
[0028] 上述热敏打印机的打印方法和装置,将待打印数据保存在存储器中,通过获取和更新当前打印位置对应的行数掌握打印进度,在热敏打印机由于异常原因重启的情况下,暂停打印,待异常原因消除后,获取存储器中的当前打印位置对应的行数和待打印数据,根据当前打印位置对应的行数和待打印数据继续打印。解决了待打印数据丢失的问题,防止打印一半的文件作废,且无需使用备用电源,节省成本,节约资源,适合广泛使用。

附图说明

[0029] 图1为一个实施例中热敏打印机的打印方法的流程图;
[0030] 图2为另一个实施例中热敏打印机的打印方法的流程图;
[0031] 图3为一个实施例中热敏打印机的打印装置的结构框图;
[0032] 图4为另一个实施例中热敏打印机的打印装置的结构框图。

具体实施方式

[0033] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0034] 如图1所示,在一个实施例中,提供了一种热敏打印机的打印方法,包括:
[0035] 步骤102,获取待打印数据,将待打印数据备份到存储器中。
[0036] 本实施例中,备份指的是为应付数据丢失或损坏等可能出现的意外情况,将设备中的数据复制到存储设备中,本实施例中指的是将待打印数据复制到存储器中。
[0037] 步骤104,开始打印并在打印过程中获取当前打印位置对应的行数,将行数备份到存储器中。
[0038] 本实施例中,打印机是将数据输出在纸张等相关介质上的输出设备,按照打印机的工作原理来说,选用的打印机包括但是不限于针式打印机、喷墨式打印机、激光式打印机、热敏式打印机、字模式打印机、热转印式打印机、LED(Light Emitting Diode,发光二极管)式打印机、LCS(LCS,液晶光栅)式打印机、电灼式打印机、磁式打印机和荧光式打印机,其中,热敏打印机指的是打印机的打印头上安装有半导体加热元件,通过加热半导体原件可以将文本或图案打印在热敏打印纸上,例如票据机、银行系统中的打印机和医疗仪器中的打印机。行数是用于标识正在打印数据的数值,通过行数可以找到正在打印的数据具体对应的打印位置。
[0039] 步骤106,当打印机出现异常重启后,获取存储器中备份的当前打印位置对应的行数和待打印数据,从当前打印位置对应的行数开始继续打印待打印数据。
[0040] 本实施例中,打印机出现的异常状况指的是任何使得打印机停止工作并且不重新启动,就无法重新工作的情况,包括但是不限于打印机断电、打印机宕机、人为原因、机械故障或打印机卡纸等。
[0041] 上述热敏打印机的打印方法和装置,将待打印数据保存在存储器中,通过获取和更新当前打印位置对应的行数掌握打印进度,在热敏打印机由于异常原因重启的情况下,暂停打印,待异常原因消除后,获取存储器中的当前打印位置对应的行数和待打印数据,根据当前打印位置对应的行数和待打印数据继续打印。解决了待打印数据丢失的问题,防止打印一半的文件作废,无需使用备用电源,节省成本,节约资源,适合广泛使用。
[0042] 如图2所示,在一个实施例中,提供了一种热敏打印机的打印方法,包括:
[0043] 步骤202,获取待打印数据,将待打印数据备份到存储器中。
[0044] 本实施例中,存储器是现代信息技术中用于保存信息的记忆设备。存储器可以选用非易失性存储器,非易失性存储器指的是所有形式的固态存储器,不用定期地刷新存储器内容,在设备断开电源时,其存储的内容不会丢失。非易失性存储器包括但是不限于可编程只读存储器(PROM)、可擦可编程只读存储器(EPROM)、电可擦除只读存储器(EEPROM)和闪存(Flash Memory)。其中闪存可以是资料存储型闪存(NAND Flash),NAND Flash是Flash Memory的一种,其内部采用非线性宏单元模式,提供了极高的单元密度,可以达到高存储密度,使得存储容量较大,读写速度快。
[0045] 步骤204,开始打印。
[0046] 本实施例中,开始打印指的是打印机接收到打印的指令,根据该指令执行将数据输出在纸张等相关介质上的过程。具体的,打印机在执行打印工作时,首先获取到待打印数据,将待打印数据保存在设备主板内存中,在打印过程中根据内存中的数据进行打印。需要说明的是,设备主板内存采用的是易失性存储器,在设备出现异常重启后,会丢失内存中的数据。正常的打印工作中不会用到备份到非易失性存储器中的待打印数据,只有在内存中的数据丢失的情况下,才需要获取非易失性存储器中的备份数据,以完成打印工作。
[0047] 步骤206,在打印机打印过程中按照预设时间间隔获取当前打印位置对应的行数,将行数备份到存储器中。
[0048] 本实施例中,预设时间间隔和打印机的打印速度都可以通过系统设置进行调整,一般情况下,设置预设时间间隔小于打印机打印一行数据花费的时间,这样可以准确的获取打印机正在打印的数据对应的打印位置,防止出现行数遗漏的情况。例如在使用热敏打印机打印凭证的情况下,打印一行数据花费的时间是300MS(Millisecond,毫秒),这时可以设置获取行数的时间间隔为100MS,尽可能的保证在每打完一行数据的时候,可以获取到新的行数,将新的行数备份到存储器中。
[0049] 步骤208,判断行数是否为最后一行,若是,则执行步骤212,否则执行步骤206和步骤210。
[0050] 本实施例中,打印机在打印过程中,需要根据待打印数据判断当前打印位置对应的行数是否为最后一行,若否,则继续打印并继续按照预设时间间隔获取当前打印位置对应的行数,将行数备份到存储器中;若是,则停止打印。
[0051] 步骤210,继续打印。
[0052] 本实施例中,当打印机判断当前打印位置对应的行数不是最后一行时,打印机继续打印,直到待打印数据打印完成。
[0053] 步骤212,停止打印,不再将行数备份到存储器中。
[0054] 本实施例中,当打印机判断当前打印位置对应的行数是最后一行时,打印机停止打印,并且停止按照预设时间间隔获取当前打印位置对应的行数,将行数备份到存储器中。具体的,在打印机完成打印工作后,再获取的当前打印位置对应的行数与存储器中存储的行数是相同的,停止按照预设时间间隔获取当前打印位置对应的行数,可以避免打印机重复无意义的操作,以达到节约系统资源的目的。
[0055] 步骤214,删除存储器中备份的待打印数据和当前打印位置对应的行数;关闭打印机电源。
[0056] 本实施例中,在打印机完成打印工作后,自动删除存储器中备份的待打印数据和当前打印位置对应的行数,使得以后使用打印机打印数据时,存储器有足够的空间备份数据,避免存储空间不足造成的数据丢失。通过关闭打印机电源,避免不必要的能源浪费。例如在使用POS机(point of sales terminal,销售点情报管理系统)时,当用户通过POS机进行交易时,需要通过POS机打印出相应的凭证,用于获取用户的签名,在POS打印凭证时,首先将待打印凭证的数据备份到存储器中,开始打印,并且在打印过程中按照预设时间间隔获取当前打印位置对应的行数,将行数备份到存储器中;然后在打印过程中每打完一行数据判断当前打印位置对应的行数是否为凭证的最后一行,若否,则继续打印和获取当前位置对应的行数,若是,则停止打印,不再将行数备份到存储器中;最后删除存储器中备份的待打印凭证的数据和当前打印位置对应的行数,断开POS机对打印装置的供电,并使POS机进入待机状态。
[0057] 由于POS机打印的凭证属于一次使用的票据,而且在交易完成后,POS机会将产生的交易数据和打印数据上传至对应的服务器,所以POS机上的打印装置在打印完成后没有必要将数据一直保存在POS机的存储器中,删除备份的数据,可以节约存储器的存储空间。在其他打印机的场景中,待打印数据一般都预先保存在智能终端中,也无需通过存储器长期保存。此外,本实施例中删除存储器中备份的数据和关闭打印机电源的功能,可以通过打印机的系统设置选择开启或是关闭。
[0058] 在一个实施例中,在获取待打印数据之前,若打印机处于电源关闭的状态,可以通过打印机中的智能电源开关模块打开打印机的电源。
[0059] 本实施例中,智能电源开关模块可以是利用控制板和电子元器件的组合和编译,以实现对打印机电源打开和关闭进行控制的单元。
[0060] 在一个实施例中,当打印机出现异常重启后,获取存储器中备份的当前打印位置对应的行数和待打印数据,从当前打印位置对应的行数开始继续打印待打印数据。
[0061] 本实施例中,打印机出现的异常状况指的是任何使得打印机停止工作并且不重新启动,就无法重新工作的情况,包括但是不限于打印机断电、打印机宕机、人为原因、机械故障和打印机卡纸。打印机断电是最常见的异常状况,会造成正在打印文件的数据丢失,并且打印中的文件作废,例如在使用POS机的过程中,如果POS机突然断电,则会使得正在进行中的交易中断,若用户已经刷了银行卡并输入了密码,但是确没有打印出相应的凭证,用户无法在凭证上签名,这种情况下,即使POS机重新连接上电源,如果没有相应的防止数据丢失的机制,也无法再次执行打印出相应凭证的工作。这种情况下,用户的资金已经从银行账户中划走,用户不会同意再次支付,而商家也没有取得合法的权利凭证,使得交易关系处于不稳定的状态。
[0062] 打印机宕机指的是打印机由于系统无法从一个系统错误中恢复过来或是系统硬件层面出现问题,以致系统长时间无响应,而不得不重新启动系统的现象。人为原因指的是操作人的误操作造成打印机关闭或是重新启动,或是由于长时间缺纸等情况,操作人主动关闭打印机等。打印机卡纸指的是严重的卡纸情况,在不关闭电源的情况下,不能解决卡纸的问题。机械故障指的是由于打印机硬件在使用过程中出现异常,使得打印机功能失常,不能完成打印工作,这种情况下需要进行相应的修理一般需要关闭电源,在没有防止数据丢失的配置的情况下,会造成数据丢失。
[0063] 如图3所示,在一个实施例中,提供了一种热敏打印机的打印装置,包括:
[0064] 数据备份模块302,用于获取待打印数据,将待打印数据备份到存储器中;
[0065] 打印模块304,用于开始打印并在打印过程中获取当前打印位置对应的行数;数据备份模块302还用于将行数备份到存储器中。
[0066] 数据获取模块306,用于当打印机出现异常重启后,获取存储器中备份的当前打印位置对应的行数和待打印数据,从当前打印位置对应的行数开始继续打印待打印数据。
[0067] 如图4所示,在一个实施例中,热敏打印机的打印装置还包括:
[0068] 判断模块308,用于根据待打印数据判断当前打印位置对应的行数是否为最后一行,若是,则停止打印,否则继续打印。
[0069] 删除模块310,用于删除存储器中备份的待打印数据和当前打印位置对应的行数;
[0070] 电源开关模块312,用于控制打印机电源开关。
[0071] 本实施例中,电源开关模块312可以选用智能电源开关模块,用于控制打印机电源打开或关闭。
[0072] 在一个实施例中,数据备份模块302还用于在打印机打印过程中按照预设时间间隔获取当前打印位置对应的行数,将行数备份到存储器中。
[0073] 在一个实施例中,判断模块308还用于当判断到当前打印位置对应的行数为最后一行时,则不再将行数备份到存储器中。
[0074] 以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0075] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。