CN102541477B - 一种打印数据处理设备、数据打印方法和*** - Google Patents
一种打印数据处理设备、数据打印方法和*** Download PDFInfo
- Publication number
- CN102541477B CN102541477B CN201010590985.XA CN201010590985A CN102541477B CN 102541477 B CN102541477 B CN 102541477B CN 201010590985 A CN201010590985 A CN 201010590985A CN 102541477 B CN102541477 B CN 102541477B
- Authority
- CN
- China
- Prior art keywords
- instruction
- data
- printer
- printing
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1218—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
- G06F3/122—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1211—Improving printing performance
- G06F3/1212—Improving printing performance achieving reduced delay between job submission and print start
- G06F3/1213—Improving printing performance achieving reduced delay between job submission and print start at an intermediate node or at the final node
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
- G06F3/1247—Job translation or job parsing, e.g. page banding by conversion to printer ready format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1284—Local printer device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Record Information Processing For Printing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
本发明公开了一种打印数据处理设备、数据打印方法和***,该设备包括:应用模块,包括用于生成需要打印的原始数据的数据生成模块;打印机驱动模块,用于所述原始数据生成以打印机语言描述的PLD数据,所述PLD数据包括用于对打印内容进行定义的打印内容指令和用于控制打印机运作的打印控制指令;设备驱动模块,包括指令解析器和通信驱动部,所述指令解析器用于对PLD数据中打印内容指令进行解析得到光栅数据,所述通信驱动部用于将所述光栅数据和所述打印控制指令发送给打印机。本发明能够在降低打印机进行指令解析的处理负担的同时,降低对打印机硬件的性能要求。
Description
技术领域
本发明涉及数据打印技术领域,尤其涉及一种打印数据处理设备、数据打印方法和***。
背景技术
计算机能够完成数值计算、数据处理和过程控制等工作都是在一种或多种计算机语言的指挥下进行的。同样,打印机各种部件的打印动作的实现、在各种介质上打印出图形和字符,也是由一套能为打印机所识别的打印机语言来进行控制的。
打印机语言是含多个指令的指令集,这些指令告诉打印机如何组织被打印的文档,通常情况下,指令集中的指令可以分为两大类,分别是对打印内容进行定义的打印内容指令和控制打印机动作的打印控制指令。打印机语言有很多种,常用的打印机语言包括EPSON公司的ESC/P(EPSON StandardCode forPrinter)语言和ESC/PK语言等。
现有打印机的工作过程是,主机将原始数据生成以各种打印机语言描述的数据(Printer Language Description数据,PLD数据),如以ESC/P语言描述的ESC/P数据、以ESC/PK语言描述的ESC/PK数据等,这使得打印机在进行数据打印的同时还需要对PLD数据中的各种指令进行解析,把以打印内容指令定义的数据,如字符、条码等,转换为光栅数据,根据打印控制指令通过打印机的打印头进行打印,因此打印机要具有较高的数据处理能力。
随着人们对快速打印的渴求,需要不断提高打印机的打印速度,而打印速度的提高不仅需要打印机使用性能更强的处理器对PLD数据进行快速指令解析,而且需要大容量的内存存储解析后的大量数据,导致打印机的硬件成本不断提高,如何在不提高打印机硬件成本的情况下还能提高打印机的打印速度成为一个亟需解决的问题。
为了解决上述问题,通常的解决办法是在主机中实现对PLD数据的指令解析,利用主机中的中央处理单元CPU的强大处理能力根据打印内容指令生成光栅数据,及利用主机中的大容量内存存储解析后的光栅数据,从而降低对打印机CPU处理能力、内存容量等的要求。
如图1所示,利用主机实现的打印***包括应用模块101、打印机驱动模块102和设备驱动模块103,应用模块101用于生成需要进行打印的原始数据,打印机驱动模块102用于将所述原始数据生成以打印机语言描述的PLD数据,所述PLD数据包括打印内容指令和打印控制指令;打印机驱动模块102还用于将生成的PLD数据进行指令解析,根据打印内容指令生成光栅数据并输出到设备驱动模块;设备驱动模块103用于将打印机驱动模块102输出的光栅数据和打印控制指令通过通信接口发送给打印机。
在实际应用中,由于用户使用需求不同,因此,应用模块101中运行的程序根据用户需求不同而不同,即应用模块101包括多个实现不同功能的应用子模块。如在办公领域的用户使用的应用子模块1为实现word字符处理的word字符处理软件,在超市领域的用户使用的应用子模块2为超市收银软件,在餐饮行业的用户使用的应用子模块3为餐饮收费软件等。因此,为了配合应用模块101的正常工作,打印机驱动模块102包括与不同应用子模块对应的驱动子模块,如应用子模块1调用的驱动子模块为Windows Driver程序,应用子模块2调用的驱动子模块为打印机软件指令库、应用子模块3调用的驱动子模块为OPOS/XFS。
因此,当在原有的打印机驱动模块102中增加对生成的PLD数据进行解析的功能时,需要对打印机驱动模块102中的所有驱动子模块进行重新设计,使每个驱动子模块具有对PLD数据进行指令解析的功能,如修改WindowsDriver、软件指令库、OPOS/XFS等程序,以适用不同应用子模块的需要,不仅软件开发成本高,而且通用性不强。
发明内容
本发明提供一种打印数据处理设备、数据打印方法和***,用以在降低打印机进行指令解析的处理负担的同时,降低对打印机硬件的性能要求。
本发明提供一种打印数据处理设备,所述打印数据处理设备为一个主机,包括:
应用模块,包括用于生成需要打印的原始数据的数据生成模块和用于根据打印机驱动模块所使用的打印机语言设置语言类型标识的语言类型设定器;
打印机驱动模块,用于将所述原始数据生成以打印机语言描述的PLD数据,所述PLD数据包括用于对打印内容进行定义的打印内容指令和用于控制打印机运作的打印控制指令;
设备驱动模块,包括指令解析器、通信驱动部以及解析器切换部,所述指令解析器有多个,每个指令解析器仅用于对一种打印机语言描述的PLD数据中打印内容指令进行解析得到光栅数据,所述通信驱动部用于将所述光栅数据和所述打印控制指令发送给打印机,所述解析器切换部用于根据所述语言类型设定器设置的语言类型标识,在多个指令解析器中选择对所述语言类型标识对应的打印机语言描述的PLD数据解析的指令解析器,对从打印机驱动模块接收的PLD数据中的打印内容指令进行解析。
本发明还提供另一种打印数据处理设备,所述打印数据处理设备为一个主机,包括:
应用模块,包括用于生成需要打印的原始数据的数据生成模块、用于设定在设备驱动模块进行解析的打印内容指令类型的指令类型设定器以及用于根据打印机驱动模块所使用的打印机语言设置语言类型标识的语言类型设定器;
打印机驱动模块,用于将接收的原始数据生成以打印机语言描述的PLD数据,所述PLD数据包括用于对打印内容进行定义的打印内容指令和用于控制打印机运作的打印控制指令,其中不同类型的打印内容采用不同类型的打印内容指令进行定义;
设备驱动模块,包括指令解析器、通信驱动部以及解析器切换部,所述指令解析器有多个,每个指令解析器仅用于对一种打印机语言描述的PLD数据进行解析;所述指令解析器包括多个用于分别解析不同类型的打印内容指令的指令解析部,所述指令解析器根据指令类型设定器的设定选择对应的指令解析部对PLD数据中设定的打印内容指令进行解析;所述通信驱动部用于将指令解析部解析后得到的光栅数据、未解析的打印内容指令和打印控制指令发送给打印机,所述解析器切换部用于根据所述语言类型设定器设置的语言类型标识,在多个指令解析器中选择对所述语言类型标识对应的打印机语言描述的PLD数据解析的指令解析器,对从打印机驱动模块接收的PLD数据中的打印内容指令进行解析。
本发明还提供一种数据打印***,包括:
上述第一种打印数据处理设备;
打印机,包括存储器、控制器和打印部,所述控制器将从所述打印数据处理设备接收的光栅数据和打印控制指令存放在存储器中,并根据打印部的打印要求处理所述光栅数据;所述打印部用于根据打印控制指令对控制器处理后的光栅数据进行打印。
本发明还提供一种基于上述数据打印***的数据打印方法,包括:
应用模块生成需要打印的原始数据并将其输出到打印机驱动模块;
所述打印机驱动模块将接收的原始数据生成以打印机语言描述的PLD数据;
设备驱动模块中指令解析器对打印机驱动模块生成的PLD数据中打印内容指令进行解析得到光栅数据;
通信驱动部将所述指令解析器解析得到的光栅数据,和打印机驱动模块输出的打印控制指令发送给打印机;
所述打印机中的所述控制器将从打印数据处理设备接收的光栅数据和打印控制指令存放在存储器中,并根据打印部的打印要求处理所述光栅数据;
所述打印机中的打印部根据打印控制指令对控制器处理后的光栅数据进行打印。
本发明还提供另一种数据打印***,包括:
上述第二种打印数据处理设备;
打印机,包括剩余指令解析器、存储器、控制器和打印部,所述控制器将从打印数据处理设备接收的所有数据存放在存储器中;所述剩余指令解析器,用于确定所述存储器中有未解析的打印内容指令时,对所述打印内容指令解析并将解析后得到的光栅数据存放在存储器中;所述控制器根据打印部的打印要求处理所述存储器中存放的光栅数据;所述打印部用于根据打印控制指令对控制器处理后的光栅数据进行打印。
本发明还提供一种上述数据打印***的数据打印方法,包括:
应用模块生成需要打印的原始数据并发送到打印机驱动模块;
所述打印机驱动模块将接收的原始数据生成以打印机语言描述的PLD数据;
设备驱动模块中的指令解析器根据指令类型设定器的设定选择对应的指令解析部,对PLD数据中设定的打印内容指令进行解析;
设备驱动模块中的通信驱动部将指令解析部解析后得到的光栅数据、未解析的打印内容指令和打印控制指令发送给打印机;
所述打印机的控制器将接收的所有数据存放在存储器中;
所述打印机的剩余指令解析器在确定所述存储器中有未解析的打印内容指令时,对所述打印内容指令解析并将得到的光栅数据存放在存储器中;
所述控制器根据打印部的打印要求处理存储器中存放的光栅数据;
所述打印部根据打印控制指令对控制器处理后的光栅数据进行打印。
本发明提供的打印数据处理设备、数据打印方法和***,具有以下有益效果:由设备驱动模块对PLD数据中的打印内容指令进行解析,降低了打印机进行指令解析的处理负担,从而降低了对打印机处理器的性能要求,能够在实现高速打印的同时,不提高打印机的成本;由于设备驱动模块与应用模块运行的程序不相关,使得在设备驱动模块中进行指令解析具有更好的通用性,不必对不同的应用程序开发相应的设备驱动模块,降低软件开发成本。
附图说明
图1为现有技术的打印***的软件模块图;
图2为本发明第一实施例中提供的第一种打印数据处理设备结构图;
图3为本发明第一实施例中指令解析器的内部结构图;
图4为本发明第一实施例中提供的第二种打印数据处理设备结构图;
图5为本发明第一实施例中提供的数据打印***结构图;
图6为本发明第一实施例中提供的数据打印方法流程图;
图7是本发明第二实施例提供的第一种打印数据处理设备结构图;
图8是本发明第二实施例提供的第二种打印数据处理设备结构图;
图9为本发明第二实施例提供的数据打印***结构图;
图10为本发明第二实施例提供的数据打印方法流程图;
图11为本发明第二实施例提供的采用语言类型设定器时对应的数据打印方法流程图;
图12为本发明实施例中使用的打印机语言示意图;
图13为本发明实施例中使用的打印内容指令示意图;
图14是本发明实施例中的PLD数据和打印票样示意图。
具体实施方式
下面结合附图和实施例对本发明提供的打印数据处理设备、数据打印方法和***进行更详细地说明。
依照本发明的第一实施例中,提供一种打印数据处理设备,如图2所示,该设备包括:
应用模块10,包括用于生成需要打印的原始数据51的数据生成模块11,这里的原始数据51不能被打印机进行识别,所以需要进行一步处理;
打印机驱动模块20,用于所述原始数据生成以打印机语言描述的PLD数据52,生成的PLD数据52包括用于对打印内容进行定义的打印内容指令和用于控制打印机运作的打印控制指令;打印机驱动模块20使用的打印机语言,可以是现有打印机语言的任一种,如ESC/P语言、ESC/PK语言、BPLA语言等,打印机语言是一个指令集,通过各种指令组织要打印的文档,将原始数据转换为打印机能够识别的PLD数据过程为现有技术,这里不再详述。打印内容指令是指对打印内容进行定义的指令,不同类型的打印内容采用不同类型的打印内容指令进行定义,如用于定义打印内容为条码的条码指令、定义打印内容为图形的绘图指令和定义打印内容为字符的字符指令等。
设备驱动模块30,包括指令解析器32和通信驱动部38,指令解析器32用于对PLD数据52中打印内容指令进行解析得到光栅数据58,通信驱动部38用于将指令解析器32解析得到的光栅数据58和打印机驱动模块20输出的打印控制指令发送给打印机,本实施例中称光栅数据58和打印控制指令为复合数据59。指令解析器32对PLD数据52中的打印内容指令进行解析,把以打印内容指令定义的数据转换为光栅数据,如把绘图指令定义的图形转换为光栅数据表示的图形、把条码指令定义的条码转换为光栅数据表示的条码等。
生成的PLD数据中,打印内容指令可能有多种类型,优选地,本实施例中指令解析器包括多个用于分别解析不同类型的打印内容指令的指令解析部,即每一个指令解析部仅分析指定的一种类型的打印内容指令。如图3所示,指令解析器32包括:条码指令解析部321,用于对PLD数据中的条码指令进行解析,把以条码指令定义的条码转换为以光栅数据表示的条码;绘图指令解析部322,用于对PLD数据中的绘图指令进行解析,把以绘图指令定义的图形转换为以光栅数据标识的图形;字符指令解析部323,用于对PLD数据中的字符指令进行解析,把以字符指令定义的字符数据,如把单字节、双字节或四字节表示的中文字符或英文字符,转换为以光栅数据标识的字符。当然,指令解析器可以根据需要增加用于解析其他类型的打印内容指令的指令解析部,从而对新增类型的打印内容指令进行解析。
在本发明提供的上述打印数据处理设备,具体实施时作为主机,由主机的设备驱动模块对PLD数据中的打印内容指令进行解析,降低了打印机进行指令解析的处理负担,从而降低了对打印机处理器的性能要求,能够在实现高速打印的同时,不提高打印机的成本;由于设备驱动模块与主机中的应用模块运行的程序不相关,使得在设备驱动模块中进行指令解析具有更好的通用性,不必对不同的应用程序开发相应的设备驱动程序,降低软件开发成本。
优选地,为了进一步实现能够对使用不同类型语言描述的PLD数据中的指令进行解析功能,如图4所示,本发明实施例中的设备驱动模块30包括多个指令解析器,每个指令解析器仅对一种打印机语言描述的PLD数据进行解析;如第一指令解析器34、第二指令解析器35、第三指令解析器36…第N指令解析器37,N为大于等于4的整数。每个指令解析器所解析的打印机语言不同,如第一指令解析器34解析ESC/P语言的打印内容指令、第二指令解析器35解析ESC/PK语言的打印内容指令等;应用模块10还包括语言类型设定器12,用于根据打印机驱动模块20所使用的打印机语言设置语言类型标识,该语言类型标识所标识的打印机语言与打印机驱动模块20所使用的打印机语言一致;设备驱动模块30还包括:解析器切换部33,用于根据语言类型设定器12设置的语言类型标识,在多个指令解析器中选择对所述语言类型标识对应的打印机语言描述的PLD数据解析的指令解析器,对从打印机驱动模块接收的PLD数据中的打印内容指令进行解析。由于一个设备驱动模块30能够对多种打印机语言的指令进行解析,不必因打印机语言的不同而使用不同的设备驱动模块,不仅扩大了设备驱动模块的应用范围,还提高了本发明提供方法的易用性。
本发明实施例中还提供一种数据打印***,如图5所示,该***包括打印数据处理设备1和打印机2,数据处理设备1的结构具体采用本发明上述第一实施例所描述的结构,既可以是图2所描述的结构,也可以是图4所描述的结构,这里不再详述;数据处理设备1通过通信接口(图中未示出)向打印机2发送复合数据59,该复合数据59包括光栅数据和打印控制指令,其中的光栅数据为字符、图形、条码等以象素阵列形式表示的数据,其中的打印控制指令为控制打印机运作的指令,如切纸指令、换行指令、打印参数设置指令等。常用的通信接口包括USB口、网络接口及串口。
打印机2,包括存储器41、控制器42和打印部43,控制器42将从打印数据处理设备1接收的复合数据59存放在存储器41中,并根据打印部43的打印要求处理存储器41中的光栅数据;存储器41,存储打印机2使用的各种数据,包括从打印数据处理设备1接收的复合数据59;打印部43,根据打印控制指令对控制器42处理后的光栅数据进行打印。打印部43,通常包括打印头、压纸件和输送机构,其中打印头和压纸件相对设置,打印介质从打印头和压纸件之间通过,在输送机构驱动过程中,打印头把图形、条码和字符等光栅数据打印在介质上。
本发明的第一实施例中一种基于上述数据打印***的数据打印方法,如图6所示,包括:
步骤S601,打印数据处理设备1中的应用模块10生成需要打印的原始数据并将其输出到打印机驱动模块20;
步骤S602,打印机驱动模块20将接收的原始数据生成以打印机语言描述的PLD数据,如把原始数据转换为以ESC/P语言描述的PLD数据;
步骤S603,设备驱动模块30中的指令解析器32对打印机驱动模块20生成的PLD数据中打印内容指令进行解析,即把打印内容指令定义的数据转换为光栅数据,如对使用ESC/P语言的打印数据进行转换,对其中的打印内容指令进行解析,如对绘图指令、字符指令等进行解析等,把PLD数据转换为复合数据,该复合数据中包括光栅数据和打印控制指令等。
步骤S604,通信驱动部38将指令解析器32解析得到的光栅数据,和打印机驱动模块20输出的打印控制指令,即复合数据发送给打印机2;
步骤S605,打印机中的控制器42将从打印数据处理设备1接收的光栅数据和打印控制指令存放在存储器41中,并根据打印部43的打印要求处理光栅数据;
步骤S606,打印机中1的打印部43根据打印控制指令对控制器42处理后的光栅数据进行打印,由复合数据中的打印控制指令控制打印数据在介质中的打印位置、控制介质的切纸位置等。
优选地,打印数据处理设备1采用图4所示的结构时,该方法的步骤S603中还包括:设备驱动模块30中的解析器切换部33根据语言类型设定器12设定语言类型标识,在多个指令解析器中选择对语言类型标识对应的打印机语言描述的PLD数据解析的指令解析器,由该指令解析器对从打印机驱动模块接收的PLD数据中的打印内容指令进行解析。
本发明第一实施例,在设备驱动模块中实现对PLD数据中所有类型打印内容指令进行解析,通过选择语言类型使设备驱动模块能够对不同类型打印机语言描述的PLD数据中的指令进行解析。
本发明的第二实施例中,通过结构改进可以实现在设备驱动模块中对PLD数据中部分类型打印内容指令的解析,其余类型打印内容指令的解析工作交给打印机来进行。
如图7所示,本实施例提供的打印数据处理设备包括:应用模块10,包括用于生成需要打印的原始数据51的数据生成模块11和用于设定在设备驱动模块30进行解析的打印内容指令类型的指令类型设定器13;打印机驱动模块20,用于将接收的原始数据51生成以打印机语言描述的PLD数据,PLD数据包括用于对打印内容进行定义的打印内容指令和用于控制打印机运作的打印控制指令,其中不同类型的打印内容采用不同类型的打印内容指令进行定义;设备驱动模块30,包括指令解析器32和通信驱动部38,所述指令解析器32包括多个用于分别解析不同类型的打印内容指令的指令解析部,所述指令解析器根据指令类型设定器的设定选择对应的指令解析部对PLD数据中设定的打印内容指令进行解析;通信驱动部38用于将指令解析部解析后得到的光栅数据、未解析的打印内容指令和打印控制指令发送给打印机。
优选地,指令解析器可以采用图3所示的结构。
本实施例与本发明第一实施例给出的第一种结构相比,应用模块10还包括指令类型设定器13,可以灵活设定设备驱动模块30中指令解析器要解析的打印内容指令类型,即从指令解析器的条码指令解析部321、绘图指令解析部322、字符指令解析部323中选择一个或多个,对PLD数据52中的字符指令、绘图指令、条码指令中的一个类型或多个类型的指令进行解析。通常分配关系由用户根据需要确定,或者由打印数据处理设备1根据自身的性能、工作状态及打印机2的工作状态按照设定规则确定。比如,如果打印数据处理设备1处于空闲状态,则由打印数据处理设备1完成所有的打印内容指令解析工作;如果打印数据处理设备1处于忙状态,则打印数据处理设备1只完成部分的打印内容指令解析工作,其余部分的打印内容指令解析工作由打印机完成。
优选地,如图8所示,本实施例中的设备驱动模块包括多个指令解析器,如包括第一指令解析器34、第二指令解析器35、第三指令解析器36…第N指令解析器37,N为大于等于4的整数。每个指令解析器仅对一种打印机语言描述的PLD数据进行解析,如第一指令解析器34解析ESC/P语言的指令、第二指令解析器35解析ESC/PK语言的指令等,每个指令解析器可以采用图3所示的结构;应用模块10还包括语言类型设定器12,用于根据打印机驱动模块20所使用的打印机语言设置语言类型标识。从而使设备驱动模块30中的指令解析器与打印机驱动模块20所使用的打印机语言相匹配。
设备驱动模块30还包括:解析器切换部33,用于根据语言类型设定器12设置的语言类型标识,在多个指令解析器中选择对所述语言类型标识对应的打印机语言描述的PLD数据解析的指令解析器,对从打印机驱动模块20接收的PLD数据中打印内容指令进行解析。如语言类型设定器12设定的语言类型为ESC/PK语言,则解析器切换部33选择第二指令解析器35对PLD数据52中的指令进行解析。被选择的指令解析器根据应用模块10中指令类型设定器13设定的打印内容指令类型,在多个指令解析部中选择相应的指令解析部对PLD数据52中相应类型的打印内容指令进行解析,如指令类型设定器13设定的指令类型为绘图指令、条码指令,则被选择的指令解析器,如第二指令解析器35,则选择第二指令解析器35中的绘图指令解析部和条码指令解析部分别解析PLD数据52中的绘图指令、条码指令,而指令解析器35中的字符指令解析部则不工作,即不对PLD数据52中的字符指令进行解析。此时,由PLD数据52转换后生成的复合数据59除包括光栅数据、打印控制指令外,还包括未解析的打印内容指令,如未解析的字符指令。
本发明的第二实施例中,还提供一种数据打印***,如图9所示,包括:本发明第二实施例中提供的打印数据处理设备1和打印机2。其中,打印机2包括剩余指令解析器32’、存储器41、控制器42和打印部43,控制器42将从打印数据处理设备接收的所有数据存放在存储器41中;剩余指令解析器32’,用于确定存储器41中有未解析的打印内容指令时,对打印内容指令解析并将解析后得到的光栅数据存放在存储器中41;控制器42根据打印部43的打印要求处理存储器41中存放的光栅数据;打印部43用于根据打印控制指令对控制器42处理后的光栅数据进行打印。
本实施例与第一实施例中的***相比,打印机2中还包括剩余指令解析器32’,对从打印数据处理设备1接收的复合数据59中未解析的打印内容指令进行解析,虚线框表示,该剩余指令解析器32’是否工作是可选的。如果打印数据处理设备1中的指令类型设定器13设定为对所有类型的打印内容指令进行解析,则由打印数据处理设备1中的指令解析器对所有类型的打印内容指令进行解析,打印机2中的剩余指令解析器32’不需要工作;如果打印数据处理设备1中的指令类型设定器13设定为只对某些类型的打印内容指令进行解析,则由打印机2中的剩余指令解析器32’对指令类型设定器13未选择类型的打印内容指令进行解析。如PLD数据52包括绘图指令、条码指令和字符指令,指令类型设定器13设定的指令类型为绘图指令和条码指令,则由打印数据处理设备1中的指令解析器32对绘图指令和条码指令进行解析生成光栅数据,设备驱动模块30中的通信驱动部38把包括光栅数据、未解析的打印内容指令及打印控制指令的复合数据发送给打印机2,由打印机2中的剩余指令解析器32’对复合数据59中未解析的打印内容指令,即字符指令进行解析。打印机2中的剩余指令解析器32’将字符指令解析后生成光栅数据,由控制器42对生成的光栅数据进行处理后发送到打印部43,由打印部43进行打印。
本发明的第二实施例中,还提供一种基于上述***的数据打印方法,如图10所示,包括:
步骤S101,应用模块的数据生成模块生成需要打印的原始数据并发送到打印机驱动模块;
步骤S102,打印机驱动模块将接收的原始数据生成以打印机语言描述的PLD数据;
步骤S103,设备驱动模块中的指令解析器根据指令类型设定器的设定,选择对应的指令解析部对PLD数据中设定的打印内容指令进行解析;
步骤S104,设备驱动模块中的通信驱动部将指令解析部解析后得到的光栅数据、未解析的打印内容指令和打印控制指令发送给打印机;
步骤S105,打印机的控制器将接收的所有数据存放在存储器中;
步骤S106,打印机的剩余指令解析器在确定所述存储器中有未解析的打印内容指令时,对所述打印内容指令解析并将得到的光栅数据存放在存储器中;
步骤S107,控制器根据打印部的打印要求处理存储器中存放的光栅数据;
步骤S108,打印部根据打印控制指令对控制器处理后的光栅数据进行打印。
优选地,在打印数据处理设备采用图8所示的结构,本实施例中的数据打印方法如图11所示,包括:
步骤S20,设置语言类型标识和打印内容指令类型;
用户根据打印机驱动模块20使用的打印机语言,通过应用模块10的语言类型设定器12指定指令解析器32的打印机语言类型。打印机语言类型如图12所示,表中的第一列为各种打印机语言类型的序号,表中的第二列为指令解析器能够解析的各种类型打印机语言的名称,打印机语言包括ESC/P、ESC/PK、BPLA等。由于每个指令解析器只能解析一种打印机语言的指令,因此,用户通过应用模块10的语言类型设定器12只能指定一种打印机语言类型。
根据打印数据处理设备1和打印机2之间打印指令解析工作的分配关系,由指令类型设定器13设定要在打印数据处理设备1中解析的打印内容指令的类型,指令类型设定器13未设定的打印内容指令则在打印机中进行解析。具体操作为,由指令类型设定器13设定设备驱动模块30中所选择的指令解析器对PLD数据52中打印内容指令进行解析时所解析指令的指令类型,打印内容指令如图13所示,表中的第一列为各种打印内容指令的序号,表中的第二列为各种打印内容指令的具体说明,打印内容指令包括字符指令、绘图指令及条码指令等。其中,字符指令为对各种字符进行定义的指令,如中文字符、英文字符等指令;绘图指令为对各种图形进行定义的指令,如定义要打印图形的高度、宽度、打印密度、起始坐标等;条码指令为对各种条码进行定义的指令,包括对条码种类、条码高度、条码宽度等的定义,条码种类包括常用的一维条码、二维条码;设定的指令类型可以为条码指令、字符指令、绘图指令等的一种或多种。本实施例通过指令类型设定器13对打印数据处理设备1和打印机2的指令解析工作进行分配,可以充分利用打印数据处理设备和打印机的数据处理能力,提高指令解析的效率,从而提高打印机的打印速度。
打印数据处理设备保存设定的语言类型和指令类型,当应用模块运行时,如果用户没有设定语言类型和指令类型,可以使用已保存的语言类型和指令类型选择指令解析器和指令解析器需要解析的指令类型,当然,用户也可以根据需要重新设定语言类型和指令类型。
步骤S21,生成PLD数据。
由打印数据处理设备1中应用模块10生成原始数据,由打印机驱动模块20对原始数据进行处理,把原始数据转换为其所使用打印机语言,如ESC/P语言的PLD数据。如图14所示,生成的PLD数据52包括打印内容指令55和打印控制指令56,其中,打印内容指令55包括字符指令、绘图指令、条码指令;打印控制指令56,其控制打印机进行除打印之外的其它操作,如使用连续纸时的切纸指令、使用标记纸时的标记定位指令等,因此,打印控制指令不需要指令解析器进行解析。由于不同类型的打印机语言所使用的打印内容指令有一定的差异,因此,对应不同的语言类型,PLD数据52包括的内容也有所增删。
步骤S22,对PLD数据中的打印内容指令进行解析。
由设备驱动模块30中的解析器切换部33根据语言类型设定器12设定的语言类型在多个指令解析器中选择对该语言类型指令进行解析的指令解析器,如第一指令解析器34解析ESC/P语言的指令、第二指令解析器35解析ESC/PK语言的指令、第三指令解析器36解析BPLA语言的指令,如当语言类型为ESC/P语言时,则由第一指令解析器34进行指令解析。
设备驱动模块根据指令类型设定器13设定的指令类型选择指令解析器所要解析的打印内容指令,如图14所示,如果设定的指令类型为绘图指令、条码指令,则由第一指令解析器34的绘图指令解析部对PLD数据52中的绘图指令552进行绘图指令解析,由第一指令解析器34的条码指令解析部对条码指令553进行条码指令解析,把以指令定义的图形、条码等转换为第一光栅数据652、第二光栅数据653,而不对字符指令进行解析,因此,生成的复合数据中包含未解析的字符指令,如图14所示,复合数据59包括第一光栅数据652、第二光栅数据653、第一字符指令551、第二字符指令554、以及打印控制指令56等。
步骤S23,向打印机发送复合数据。
由设备驱动模块30中的通信驱动部38根据打印数据处理设备1中的通信接口驱动相应的通信接口设备,把复合数据59发送到打印机2。
步骤S24,打印机进行数据打印。
打印机2接收打印数据处理设备1发送的复合数据59,把复合数据59中的光栅数据存储在存储器41中,由控制器42对光栅数据进行处理后,生成适合打印部43打印的数据,发送到打印部43据进行打印,并由复合数据59中的打印控制指令控制打印数据在介质中的打印位置、控制介质的切纸位置等。
当复合数据59中还包括未解析的指令时,由打印机中的剩余指令解析器32’对未解析的打印内容指令进行解析,生成光栅数据。由控制器42对打印数据处理设备1中的指令解析器生成的光栅数据和打印机2中的剩余指令解析器生成的光栅数据进行处理后,生成适合打印部打印的数据,然后发送到打印部43据进行打印,并由复合数据59中的打印控制指令控制打印数据在介质中的打印位置、控制介质的切纸位置等。
如图14中所示,复合数据59包括第一光栅数据652、第二光栅数据653、未解析的第一字符指令551、第二字符指令554以及打印控制指令56。由打印机中的剩余指令解析器32’对未解析的第一字符指令551及第二字符指令554进行解析,并把解析后生成的第三光栅数据和第四光栅数据存储在存储器41中,由控制器42对存储器41中的第一光栅数据652、第二光栅数据653、第三光栅数据和第四光栅数据进行处理后,生成适合打印部43打印的数据,然后由打印部43进行打印。复合数据和该复合数据的打印票样如图14所示,票样80包括第一字符区82、图形84、条码86、第二字符区88,以及标记90和切纸位置92。其中,图形84为第一光栅数据652所表示图形的打印效果,条码86为第二光栅数据653所表示条码的打印效果,第一字符区82、第二字符区88为第一字符指令551、第二字符指令554经打印机中的剩余指令解析器32’解析生成的第三光栅数据和第四光栅数据的打印效果,切纸位置92、打印区域(即第一字符区82、图形84、条码86及第二字符区88组成的区域)相对标记90的起始打印位置等由打印控制指令56控制。
本发明由打印数据处理设备如主机中的设备驱动模块对PLD数据中的指令进行解析,能够充分利用主机中CPU的强大处理能力,在不影响主机处理速度及不提高打印机成本的情况下,提高了打印机的打印速度,当打印速度不变时,则可以大大降低了打印机的硬件成本;通过应用程序选择不同类型的打印机语言,使设备驱动模块能够对不同应用程序产生的、使用不同打印机语言的指令进行解析,在降低软件开发成本的同时,设备驱动模块还具有较好的通用性,方便使用者使用。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (9)
1.一种打印数据处理设备,其特征在于,所述打印数据处理设备为一个主机,包括:
应用模块,包括用于生成需要打印的原始数据的数据生成模块和用于根据打印机驱动模块所使用的打印机语言设置语言类型标识的语言类型设定器;打印机驱动模块,用于将所述原始数据生成以打印机语言描述的PLD数据,所述PLD数据包括用于对打印内容进行定义的打印内容指令和用于控制打印机运作的打印控制指令;
设备驱动模块,包括指令解析器、通信驱动部以及解析器切换部,所述指令解析器有多个,每个指令解析器仅用于对一种打印机语言描述的PLD数据中打印内容指令进行解析得到光栅数据,所述通信驱动部用于将所述光栅数据和所述打印控制指令发送给打印机,所述解析器切换部用于根据所述语言类型设定器设置的语言类型标识,在多个指令解析器中选择对所述语言类型标识对应的打印机语言描述的PLD数据解析的指令解析器,对从打印机驱动模块接收的PLD数据中的打印内容指令进行解析。
2.如权利要求1所述的设备,其特征在于,不同类型的打印内容采用不同类型的打印内容指令进行定义,所述指令解析器包括多个用于分别解析不同类型打印内容指令的指令解析部。
3.如权利要求2所述的设备,其特征在于,所述不同类型的打印内容指令包括用于定义打印内容为条码的条码指令、定义打印内容为图形的绘图指令和定义打印内容为字符的字符指令,所述指令解析器包括:
条码指令解析部,用于对PLD数据中的条码指令进行解析得到以光栅数据表示的条码;
绘图指令解析部,用于对PLD数据中的绘图指令进行解析得到以光栅数据表示的图形;
字符指令解析部,用于对PLD数据中的字符指令进行解析得到以光栅数据表示的字符。
4.一种打印数据处理设备,其特征在于,所述打印数据处理设备为一个主机,包括:
应用模块,包括用于生成需要打印的原始数据的数据生成模块、用于设定在设备驱动模块进行解析的打印内容指令类型的指令类型设定器以及用于根据打印机驱动模块所使用的打印机语言设置语言类型标识的语言类型设定器;
打印机驱动模块,用于将所述原始数据生成以打印机语言描述的PLD数据,所述PLD数据包括用于对打印内容进行定义的打印内容指令和用于控制打印机运作的打印控制指令,其中不同类型的打印内容采用不同类型的打印内容指令进行定义;
所述设备驱动模块,包括指令解析器、通信驱动部以及解析器切换部,所述指令解析器有多个,每个指令解析器仅用于对一种打印机语言描述的PLD数据进行解析;所述指令解析器包括多个用于分别解析不同类型的打印内容指令的指令解析部,所述指令解析器根据指令类型设定器的设定选择对应的指令解析部对PLD数据中设定的打印内容指令进行解析;所述通信驱动部用于将指令解析部解析后得到的光栅数据、未解析的打印内容指令和打印控制指令发送给打印机,所述解析器切换部用于根据所述语言类型设定器设置的语言类型标识,在多个指令解析器中选择对所述语言类型标识对应的打印机语言描述的PLD数据解析的指令解析器,对从打印机驱动模块接收的PLD数据中的打印内容指令进行解析。
5.如权利要求4所述的设备,其特征在于,所述不同类型的打印内容指令包括用于定义打印内容为条码的条码指令、定义打印内容为图形的绘图指令和定义打印内容为字符的字符指令,指令解析器包括:
条码指令解析部,用于对PLD数据中的条码指令进行解析得到以光栅数据表示的条码;
绘图指令解析部,用于对PLD数据中的绘图指令进行解析得到以光栅数据表示的图形;
字符指令解析部,用于对PLD数据中的字符指令进行解析得到以光栅数据表示的字符。
6.一种数据打印***,其特征在于,包括权利要求1~3任一所述的打印数据处理设备,还包括打印机;
所述打印机,包括存储器、控制器和打印部,所述控制器将从所述打印数据处理设备接收的光栅数据和打印控制指令存放在存储器中,并根据打印部的打印要求处理所述光栅数据;所述打印部用于根据打印控制指令对控制器处理后的光栅数据进行打印。
7.一种基于权利要求6所述***的数据打印方法,其特征在于,包括:
应用模块生成需要打印的原始数据并将其输出到打印机驱动模块;
所述打印机驱动模块将接收的原始数据生成以打印机语言描述的PLD数据;
设备驱动模块中指令解析器对打印机驱动模块生成的PLD数据中打印内容指令进行解析得到光栅数据;
通信驱动部将所述指令解析器解析得到的光栅数据,和打印机驱动模块输出的打印控制指令发送给打印机;
所述打印机中的所述控制器将从打印数据处理设备接收的光栅数据和打印控制指令存放在存储器中,并根据打印部的打印要求处理所述光栅数据;
所述打印机中的打印部根据打印控制指令对控制器处理后的光栅数据进行打印。
8.一种数据打印***,其特征在于,包括权利要求4或5所述的打印数据处理设备,还包括打印机;
所述打印机,包括剩余指令解析器、存储器、控制器和打印部,所述控制器将从打印数据处理设备接收的所有数据存放在存储器中;所述剩余指令解析器,用于确定所述存储器中有未解析的打印内容指令时,对所述打印内容指令解析并将解析后得到的光栅数据存放在存储器中;所述控制器根据打印部的打 印要求处理所述存储器中存放的光栅数据;所述打印部用于根据打印控制指令对控制器处理后的光栅数据进行打印。
9.一种基于权利要求8所述***的数据打印方法,其特征在于,包括:
应用模块生成需要打印的原始数据并发送到打印机驱动模块;
所述打印机驱动模块将接收的原始数据生成以打印机语言描述的PLD数据;
设备驱动模块中的指令解析器根据指令类型设定器的设定选择对应的指令解析部,对PLD数据中设定的打印内容指令进行解析;
设备驱动模块中的通信驱动部将指令解析部解析后得到的光栅数据、未解析的打印内容指令和打印控制指令发送给打印机;
所述打印机的控制器将接收的所有数据存放在存储器中;
所述打印机的剩余指令解析器在确定所述存储器中有未解析的打印内容指令时,对所述打印内容指令解析并将得到的光栅数据存放在存储器中;
所述控制器根据打印部的打印要求处理存储器中存放的光栅数据;
所述打印部根据打印控制指令对控制器处理后的光栅数据进行打印。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010590985.XA CN102541477B (zh) | 2010-12-16 | 2010-12-16 | 一种打印数据处理设备、数据打印方法和*** |
PCT/CN2011/082631 WO2012079445A1 (zh) | 2010-12-16 | 2011-11-22 | 一种打印数据处理设备、数据打印方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010590985.XA CN102541477B (zh) | 2010-12-16 | 2010-12-16 | 一种打印数据处理设备、数据打印方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102541477A CN102541477A (zh) | 2012-07-04 |
CN102541477B true CN102541477B (zh) | 2014-12-24 |
Family
ID=46244075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010590985.XA Active CN102541477B (zh) | 2010-12-16 | 2010-12-16 | 一种打印数据处理设备、数据打印方法和*** |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102541477B (zh) |
WO (1) | WO2012079445A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095348A (zh) * | 2016-06-08 | 2016-11-09 | 福建联迪商用设备有限公司 | 自动化打印条码的方法及*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1734412A (zh) * | 2004-08-10 | 2006-02-15 | 兄弟工业株式会社 | 状态信息处理器 |
CN101370070A (zh) * | 2007-08-14 | 2009-02-18 | 柯尼卡美能达商用科技株式会社 | 图像形成***以及图像形成方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100727927B1 (ko) * | 2004-11-02 | 2007-06-13 | 삼성전자주식회사 | 오더링 파일을 이용한 프린트 방법과 그 방법을 이용한프린트 시스템, 이미지 공급장치 및 프린트 장치 |
JP4656642B2 (ja) * | 2005-06-30 | 2011-03-23 | キヤノン株式会社 | 情報処理装置及び状態表示方法とプログラム |
-
2010
- 2010-12-16 CN CN201010590985.XA patent/CN102541477B/zh active Active
-
2011
- 2011-11-22 WO PCT/CN2011/082631 patent/WO2012079445A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1734412A (zh) * | 2004-08-10 | 2006-02-15 | 兄弟工业株式会社 | 状态信息处理器 |
CN101370070A (zh) * | 2007-08-14 | 2009-02-18 | 柯尼卡美能达商用科技株式会社 | 图像形成***以及图像形成方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2012079445A1 (zh) | 2012-06-21 |
CN102541477A (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104385787B (zh) | 一种激光打标机的控制方法及激光打标机 | |
CN109491623A (zh) | 打印数据处理方法和装置、电子***生成方法和服务器 | |
JP6760419B2 (ja) | プリンタモデルリコメンデーションメカニズム | |
CN103383633A (zh) | 简档设置装置、简档设置方法、存储介质和简档管理*** | |
CN102708142A (zh) | 一种通过sql定制模板获取后台数据的方法和*** | |
US20200081667A1 (en) | Information processing apparatus and non-transitory computer readable medium | |
CN1936823A (zh) | 一种生成大版点阵数据的方法及大版点阵数据生成装置 | |
CN102541477B (zh) | 一种打印数据处理设备、数据打印方法和*** | |
US7839511B2 (en) | Method, systems of devices, and computer program product for the document-related extension of a resource-structured document data flow | |
CN1991740B (zh) | 打印***、打印数据提供装置、其控制方法 | |
US9547462B2 (en) | System and method for printing | |
CN102541483B (zh) | 用于书籍数码印刷的方法和*** | |
CN103164176A (zh) | 印刷***、印刷装置、图像处理装置和数据转换方法 | |
CN101334716B (zh) | 印刷控制装置和印刷*** | |
EP2720136A1 (en) | Distributed digital inkjet printing method and system supporting variable data | |
CN116484038A (zh) | 一种svg测井数据交互管理软件方法及*** | |
CN101131628A (zh) | 选择打印机语言的打印数据输出设备及其方法 | |
CN104238965A (zh) | 一种选择打印方法及电子设备 | |
CN105677263A (zh) | 打印设置方法、打印设置装置、打印***及执行打印设置方法的方法 | |
CN116009793A (zh) | 一种打印方法 | |
CN104461406B (zh) | 一种打印输出方法及装置 | |
CN102455881A (zh) | 图像处理装置、图像输出设备、和图像处理方法 | |
CN102968414A (zh) | 基于不同字段类型的高效单据录入方法 | |
CN104850366A (zh) | 一种打印机的打印任务生成及控制*** | |
CN102385488B (zh) | 打印控制装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |