CN109254740A - 打印方法、***和电子设备 - Google Patents

打印方法、***和电子设备 Download PDF

Info

Publication number
CN109254740A
CN109254740A CN201811018565.7A CN201811018565A CN109254740A CN 109254740 A CN109254740 A CN 109254740A CN 201811018565 A CN201811018565 A CN 201811018565A CN 109254740 A CN109254740 A CN 109254740A
Authority
CN
China
Prior art keywords
print command
programming language
instruction
printing
mistake
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
Application number
CN201811018565.7A
Other languages
English (en)
Inventor
宋金明
王彪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201811018565.7A priority Critical patent/CN109254740A/zh
Publication of CN109254740A publication Critical patent/CN109254740A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1297Printer code translation, conversion, emulation, compression; Configuration of printer parameters
    • G06F3/1298Printer language recognition, e.g. programme control language, page description language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

本公开提供了一种打印方法,包括获得第一编程语言形式的第一打印指令,将所述第一打印指令转换为第二编程语言形式的第二打印指令,以及将所述第二打印指令发送到打印设备。本公开还提供了一种打印***、一种电子设备以及一种计算机可读介质。

Description

打印方法、***和电子设备
技术领域
本公开涉及电子技术领域,更具体地,涉及一种打印方法、***和电子设备。
背景技术
在实际生活中,每种标签都有自己特定的打印尺寸,样式和打印内容。且每张标签数据行数不同。为了打印这些标签,通常要使用原厂提供的标签设计软件进行标签样式设计,该些软件最终输出专用于打印设备的编程语言形式(例如CPCL)的命令用于控制打印设备打印。
但由于标签设计软件的功能有限,不能很好地满足用户的需求,因此,为了实现更多的功能,开发人员还要花费时间去学习了解专用于打印设备的编程语言,对标签设计软件输出的结果进行修改,这导致开发人员花费大量时间和精力去解决打印样式问题,影响工作效率。
发明内容
有鉴于此,本公开提供了一种打印方法、***和电子设备。
本公开的一个方面提供了一种打印方法,包括获得第一编程语言形式的第一打印指令,将所述第一打印指令转换为第二编程语言形式的第二打印指令,将所述第二打印指令发送到打印设备。
根据本公开实施例,所述第一编程语言包括JAVA编程语言,所述第二编程语言包括CPCL打印机指令编程语言。
根据本公开实施例,所述将所述第一打印指令转换为第二编程语言形式的第二打印指令包括,检测所述第一打印指令中是否存在预定错误集合中的错误,在所述第一打印指令中存在预定错误集合中的错误的情况下,基于预定规则,修正所述错误,以及生成第二编程语言形式的第二打印指令。
根据本公开实施例,所述方法还包括对至少一个打印内容的至少一个打印属性提供有限个备选参数,以限制所述第一打印指令的开发过程。
根据本公开实施例,所述第一打印指令包括指令头、指令体以及指令尾,所述指令头包括标签指令、打印纸指令和/或打印编码指令中的至少一种,所述指令体包括至少一个打印内容以及所述打印内容的格式信息,所述指令尾用于组合所述指令头和指令体,以及/或者,用于确定是否换页。
本公开的另一个方面提供了一种打印***,包括获得模块、转换模块以及发送模块。获得模块,用于获得第一编程语言形式的第一打印指令。转换模块,用于将所述第一打印指令转换为第二编程语言形式的第二打印指令。发送模块,用于将所述第二打印指令发送到打印设备。
根据本公开实施例,所述第一编程语言包括JAVA编程语言,所述第二编程语言包括CPCL打印机指令编程语言。
根据本公开实施例,所述转换模块包括检测子模块、修正子模块以及转换子模块。检测子模块,用于检测所述第一打印指令中是否存在预定错误集合中的错误。修正子模块,用于在所述第一打印指令中存在预定错误集合中的错误的情况下,基于预定规则,修正所述错误。转换子模块,用于生成第二编程语言形式的第二打印指令。
根据本公开实施例,所述***还包括限制子模块,用于对至少一个打印内容的至少一个打印属性提供有限个备选参数,以限制所述第一打印指令的开发过程。
根据本公开实施例,所述第一打印指令包括指令头、指令体以及指令尾,所述指令头包括标签指令、打印纸指令和/或打印编码指令中的至少一种。所述指令体包括至少一个打印内容以及所述打印内容的格式信息。所述指令尾用于组合所述指令头和指令体,以及/或者用于确定是否换页。
本公开的另一个方面提供了一种电子设备,包括,至少一个处理器以及至少一个存储器,用于存储一个或多个计算机可读指令,其中,当所述一个或多个计算机可读指令被所述至少一个处理器执行时,使得所述处理器执行如上所述的方法。
本公开的另一个方面提供了一种计算机可读介质,其上存储有计算机可读指令,该指令被执行时使处理器执行如上所述的方法。
本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
该方法通过将第一编程语言形式的第一打印指令转换为第二编程语言形式的第二打印指令,使得开发人员无需掌握第二编程语言,也能够设计标签样式,降低学习成本,提高工作效率。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的打印方法的应用场景;
图2示意性示出了根据本公开实施例的打印方法的流程图;
图3示意性示出了根据本公开实施例的将所述第一打印指令转换为第二编程语言形式的第二打印指令的流程图;
图4示意性示出了根据本公开实施例的第一打印指令的示意图;
图5示意性示出了根据本公开实施例的打印***的框图;
图6示意性示出了根据本公开实施例的转换模块的框图;以及
图7示意性示出了根据本公开实施例的适于实现打印方法和***的计算机***的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的***”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的***等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的***”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的***等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“A或B”应当被理解为包括“A”或“B”、或“A和B”的可能性。
图1示意性示出了根据本公开实施例的打印方法的应用场景。需要注意的是,图1所示仅为可以应用本公开实施例的应用场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、***、环境或场景。
如图1所示,控制设备110可以与打印设备120通信,以实现对打印设备120的控制。在一些场景下,例如标签打印,通常需要固定打印样式,而这些打印样式往往因具体的业务场景的不同而不同。即使在同一场景下,由于业务的调整或者管理方式的更新,打印样式经常也需要变化。
为了改变打印样式,通常需要用户使用原厂提供的标签设计软件进行标签样式设计,该些软件最终输出专用于打印设备的编程语言形式(例如CPCL)的命令用于控制打印设备。一方面,用户在使用不同厂家的标签设计软件时需要适应不同的界面;另一方面,由于标签设计软件的功能有限,往往不能很好地满足用户的需求,因此,为了实现更多的功能,开发人员还要花费时间去学习了解专用于打印设备的编程语言,对标签设计软件输出的结果进行修改。因此,开发人员通常需要花费大量时间和精力去解决打印样式问题,影响工作效率。
本公开的实施例提供了一种打印工具包,用户在使用该工具包设计打印样式时,无需适应不同界面,也无需学习打印设备的专用编程语言,仅仅通过该用户熟悉的另一种编程语言(例如JAVA语言)即可进行打印样式设计。
本公开的实施例提供的打印方法包括,获得第一编程语言形式的第一打印指令,将所述第一打印指令转换为第二编程语言形式的第二打印指令,以及将所述第二打印指令发送到打印设备。
下面结合图2~图4对本公开实施例的打印方法进行说明。
图2示意性示出了根据本公开实施例的打印方法的流程图。
如图2所示,该方法包括操作S210~S230。
在操作S210,获得第一编程语言形式的第一打印指令。
在操作S220,将所述第一打印指令转换为第二编程语言形式的第二打印指令。
在操作S230,将所述第二打印指令发送到打印设备。
通常地,开发人员比较熟悉通用的高级编程语言,例如JAVA,C++,C#等,而不会过多地了解打印设备专用编程语言,例如CPCL打印机指令编程语言。因此,所述第一编程语言例如可以是JAVA编程语言,所述第二编程语言例如可以是CPCL打印机指令编程语言。
根据本公开实施例,开发人员在使用第一编程语言编写第一打印指令后,根据打印工具包中的规则,可以自动地将第一打印指令转换为第二编程语言形式的第二打印指令,并将第二打印指令而不是第一打印指令发送到打印设备,完成打印。
该方法通过将第一编程语言形式的第一打印指令转换为第二编程语言形式的第二打印指令,使得开发人员无需掌握第二编程语言,也能够设计标签样式,降低学习成本,提高工作效率。
根据本公开实施例,打印工具包还提供一些预防已知错误的功能,能够降低经验不足的用户在设计过程中产生错误的概率。
例如,打印设备通常支持有限的几种字体,若在使用CPCL开发的过程中,设置了该几种字体以外的其他字体,则在打印过程中会出现打印结果与预想的结果不一致的情况,需要重新设计重新测试,浪费纸张。
根据本公开实施例,所述方法可以包括对至少一个打印内容的至少一个打印属性提供有限个备选参数,以限制所述第一打印指令的开发过程。例如,在打印工具包中,文本的字体选项通过将可用的字体以选项的方式呈现,而不是任由用户随意设置,可以避免此类错误的发生。
图3示意性示出了根据本公开实施例的将所述第一打印指令转换为第二编程语言形式的第二打印指令的流程图。
如图3所示,该方法包括操作S310~S330。
在操作S310,检测所述第一打印指令中是否存在预定错误集合中的错误。
在操作S320,在所述第一打印指令中存在预定错误集合中的错误的情况下,基于预定规则,修正所述错误。
在操作S330,生成第二编程语言形式的第二打印指令。
根据本公开实施例,在获得第一打印指令后,可以检查第一打印指令中是否存在预定错误集合中的错误。该预定错误集合例如可以由经验丰富的打印样式设计人员提供,包含一些经常容易出现的错误的情况,以及与该些错误对应的解决方式。例如,在使用第一编程语言编辑第一打印指令时,设置的页边距小于打印设备的最小页边距,而该错误属于预定错误集合中的错误,那么,本公开实施例的方法可以直接将页边距修改为最小页边距以克服该错误,并生成第二编程语言形式的第二打印指令。
该方法可以对一些常见错误进行识别,使得即使是经验较少的开发人员也能够轻松地进行开发,减少了反复调试的负担。
图4示意性示出了根据本公开实施例的第一打印指令的示意图。
如图4所示,根据本公开实施例,所述第一打印指令可以包括指令头410、指令体420以及指令尾430。
根据本公开实施例,指令头410包括标签指令、打印纸指令和/或打印编码指令中的至少一种。
其中,标签指令可以用于设置打印设备横向偏移量,横向DPI,纵向DPI,最大高度以及打印数量等,以上参数也可以不进行设置而使用默认值。
打印纸指令可以用于设置页面宽度以及最大页面高度。其中,由于打印会话的最大高度由页面宽度和可用打印内存决定,在打印内存一定的情况下,可以通过仅指定页面宽度来改变最大页面高度。页面宽度可以默认设置为打印设备的完整宽度,最大页面高度也可以相应地确定。
打印编码指令可以用于指定要发送到打印设备的数据的编码形式,例如可以指定中文编码、UTF-8编码或ASCII编码。
根据本公开实施例,指令头中的各项设置可以具有默认值,因此,在一些实施例中,第一打印指令可以不具有指令头,而采用默认值,避免用户每次编辑都需要设置该些参数。
根据本公开实施例,指令体420包括至少一个打印内容以及所述打印内容的格式信息。例如,以文本为例,在指令体中不仅可以编辑文本的内容,还可以编辑文本方向、字体、字号、打印位置的设置、是否增加下划线等,其中,除了文本的内容外,其他参数都可以设置默认值,当用户不进行设置时采用默认值,减轻了命令的复杂度,同时极大减轻了用户的操作成本,降低了出现错误的概率。
根据本公开实施例,指令尾430用于组合指令头410和指令体420,指令尾430还可以用于确定是否换页。
根据本公开实施例,由于使用第一编程语言编辑第一打印指令,因此可以在第一打印指令中加入条件语句、循环语句等以简化开发过程,生成一系列动态化的第二打印指令,降低操作成本。
根据本公开实施例,本公开实施例的方法还可以提供显示第二打印指令以及显示第二打印指令说明的工具。用户在使用第一编程语言编辑第一打印指令时,可以随时通过该工具查看对应的第二打印指令以及第二打印指令说明。
图5示意性示出了根据本公开实施例的打印***500的框图。
如图5所示,该打印***500包括获得模块510、转换模块520以及发送模块530。
获得模块510,例如执行上文参考图2描述的操作S210,用于获得第一编程语言形式的第一打印指令。
转换模块520,例如执行上文参考图2描述的操作S220,用于将所述第一打印指令转换为第二编程语言形式的第二打印指令。
发送模块530,例如执行上文参考图2描述的操作S230,用于将所述第二打印指令发送到打印设备。
根据本公开实施例,所述第一编程语言包括JAVA编程语言,所述第二编程语言包括CPCL打印机指令编程语言。
图6示意性示出了根据本公开实施例的转换模块520的框图。
如图6所示,该转换模块520包括检测子模块610、修正子模块620以及转换子模块630。
检测子模块610,例如执行上文参考图3描述的操作S310,用于检测所述第一打印指令中是否存在预定错误集合中的错误。
修正子模块620,例如执行上文参考图3描述的操作S320,用于在所述第一打印指令中存在预定错误集合中的错误的情况下,基于预定规则,修正所述错误。
转换子模块630,例如执行上文参考图3描述的操作S330,用于生成第二编程语言形式的第二打印指令。
根据本公开实施例,所述***还包括限制子模块,用于对至少一个打印内容的至少一个打印属性提供有限个备选参数,以限制所述第一打印指令的开发过程。
根据本公开实施例,所述第一打印指令包括指令头、指令体以及指令尾,所述指令头包括标签指令、打印纸指令和/或打印编码指令中的至少一种。所述指令体包括至少一个打印内容以及所述打印内容的格式信息。所述指令尾用于组合所述指令头和指令体,以及/或者,用于确定是否换页。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上***、基板上的***、封装上的***、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,获得模块510、转换模块520、发送模块530、检测子模块610、修正子模块620、转换子模块630以及限制子模块中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,获得模块510、转换模块520、发送模块530、检测子模块610、修正子模块620、转换子模块630以及限制子模块中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上***、基板上的***、封装上的***、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,获得模块510、转换模块520、发送模块530、检测子模块610、修正子模块620、转换子模块630以及限制子模块中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图7示意性示出了根据本公开实施例的适于实现打印方法和***的计算机***700的方框图。图7示出的计算机***仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。图7示出的计算机***可以实现为电子设备,包括至少一个处理器(例如处理器701)以及至少一个存储器(例如存储部分708)。
如图7所示,根据本公开实施例的计算机***700包括处理器701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。处理器701例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器701还可以包括用于缓存用途的板载存储器。处理器701可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 703中,存储有***700操作所需的各种程序和数据。处理器701、ROM 702以及RAM 703通过总线704彼此相连。处理器701通过执行ROM 702和/或RAM 703中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 702和RAM 703以外的一个或多个存储器中。处理器701也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,***700还可以包括输入/输出(I/O)接口707,输入/输出(I/O)接口707也连接至总线704。***700还可以包括连接至I/O接口707的以下部件中的一项或多项:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口707。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被处理器701执行时,执行本公开实施例的***中限定的上述功能。根据本公开的实施例,上文描述的***、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备/装置/***中所包含的;也可以是单独存在,而未装配入该设备/装置/***中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线、光缆、射频信号等等,或者上述的任意合适的组合。
例如,根据本公开的实施例,计算机可读介质可以包括上文描述的ROM 702和/或RAM 703和/或ROM 702和RAM 703以外的一个或多个存储器。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (12)

1.一种打印方法,包括:
获得第一编程语言形式的第一打印指令;
将所述第一打印指令转换为第二编程语言形式的第二打印指令;
将所述第二打印指令发送到打印设备。
2.根据权利要求1所述的方法,其中,所述第一编程语言包括JAVA编程语言,所述第二编程语言包括CPCL打印机指令编程语言。
3.根据权利要求1所述的方法,其中,所述将所述第一打印指令转换为第二编程语言形式的第二打印指令包括:
检测所述第一打印指令中是否存在预定错误集合中的错误;
在所述第一打印指令中存在预定错误集合中的错误的情况下,基于预定规则,修正所述错误;以及
生成第二编程语言形式的第二打印指令。
4.根据权利要求1所述的方法,还包括:
对至少一个打印内容的至少一个打印属性提供有限个备选参数,以限制所述第一打印指令的开发过程。
5.根据权利要求1所述的方法,其中,所述第一打印指令包括指令头、指令体以及指令尾:
所述指令头包括标签指令、打印纸指令和/或打印编码指令中的至少一种;
所述指令体包括至少一个打印内容以及所述打印内容的格式信息;
所述指令尾用于组合所述指令头和指令体,以及/或者,用于确定是否换页。
6.一种打印***,包括:
获得模块,用于获得第一编程语言形式的第一打印指令;
转换模块,用于将所述第一打印指令转换为第二编程语言形式的第二打印指令;
发送模块,用于将所述第二打印指令发送到打印设备。
7.根据权利要求6所述的***,其中,所述第一编程语言包括JAVA编程语言,所述第二编程语言包括CPCL打印机指令编程语言。
8.根据权利要求6所述的***,其中,所述转换模块包括:
检测子模块,用于检测所述第一打印指令中是否存在预定错误集合中的错误;
修正子模块,用于在所述第一打印指令中存在预定错误集合中的错误的情况下,基于预定规则,修正所述错误;以及
转换子模块,用于生成第二编程语言形式的第二打印指令。
9.根据权利要求6所述的***,还包括:
限制子模块,用于对至少一个打印内容的至少一个打印属性提供有限个备选参数,以限制所述第一打印指令的开发过程。
10.根据权利要求6所述的***,其中,所述第一打印指令包括指令头、指令体以及指令尾:
所述指令头包括标签指令、打印纸指令和/或打印编码指令中的至少一种;
所述指令体包括至少一个打印内容以及所述打印内容的格式信息;
所述指令尾用于组合所述指令头和指令体,以及/或者,用于确定是否换页。
11.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个计算机程序,
其中,当一个或多个计算机程序被一个或多个处理器执行时,使得一个或多个处理器实现权利要求1至5中任一项的方法。
12.一种计算机可读介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至5中任一项的方法。
CN201811018565.7A 2018-08-31 2018-08-31 打印方法、***和电子设备 Pending CN109254740A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811018565.7A CN109254740A (zh) 2018-08-31 2018-08-31 打印方法、***和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811018565.7A CN109254740A (zh) 2018-08-31 2018-08-31 打印方法、***和电子设备

Publications (1)

Publication Number Publication Date
CN109254740A true CN109254740A (zh) 2019-01-22

Family

ID=65050464

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811018565.7A Pending CN109254740A (zh) 2018-08-31 2018-08-31 打印方法、***和电子设备

Country Status (1)

Country Link
CN (1) CN109254740A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110347351A (zh) * 2019-06-10 2019-10-18 平安科技(深圳)有限公司 文件打印方法、***、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232550A (zh) * 2007-01-26 2008-07-30 富士施乐株式会社 打印设置指示装置、***和方法以及打印处理***
CN102202904A (zh) * 2008-10-27 2011-09-28 株式会社佐藤知识财产研究所 使用程序脚本语言的标识打印机api
US20120194841A1 (en) * 2011-02-01 2012-08-02 Ricoh Company, Ltd. Computer readable information recording medium storing printing control program, printing control apparatus, printing control method and printing system
CN103168288A (zh) * 2010-08-19 2013-06-19 软件成像技术有限公司 打印应用
CN106528006A (zh) * 2015-09-10 2017-03-22 阿里巴巴集团控股有限公司 一种页面打印方法及装置
CN107771316A (zh) * 2015-07-01 2018-03-06 多韦欧洲有限公司 用于在至少一个信息载体上打印打印信息的工业打印机及其中的方法
CN107908377A (zh) * 2017-11-16 2018-04-13 理光图像技术(上海)有限公司 打印语言中字体编码信息的解析方法及其装置和应用

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232550A (zh) * 2007-01-26 2008-07-30 富士施乐株式会社 打印设置指示装置、***和方法以及打印处理***
CN102202904A (zh) * 2008-10-27 2011-09-28 株式会社佐藤知识财产研究所 使用程序脚本语言的标识打印机api
CN103168288A (zh) * 2010-08-19 2013-06-19 软件成像技术有限公司 打印应用
US20120194841A1 (en) * 2011-02-01 2012-08-02 Ricoh Company, Ltd. Computer readable information recording medium storing printing control program, printing control apparatus, printing control method and printing system
CN107771316A (zh) * 2015-07-01 2018-03-06 多韦欧洲有限公司 用于在至少一个信息载体上打印打印信息的工业打印机及其中的方法
CN106528006A (zh) * 2015-09-10 2017-03-22 阿里巴巴集团控股有限公司 一种页面打印方法及装置
CN107908377A (zh) * 2017-11-16 2018-04-13 理光图像技术(上海)有限公司 打印语言中字体编码信息的解析方法及其装置和应用

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110347351A (zh) * 2019-06-10 2019-10-18 平安科技(深圳)有限公司 文件打印方法、***、设备及存储介质

Similar Documents

Publication Publication Date Title
CN109086199B (zh) 一种自动化生成测试脚本的方法、终端和可存储介质
JP5377685B2 (ja) 画像形成装置及び画像形成プログラム
WO2017054629A1 (zh) 一种基于pos终端的打印凭条编辑方法和装置
US8681368B2 (en) Method for delivering radio frequency identification device control and data signals
CN109857388A (zh) 代码生成方法、装置、服务器及计算机可读介质
US20060227366A1 (en) Method and apparatus for controlling radio frequency identification device apparatus in a printer
CN109254740A (zh) 打印方法、***和电子设备
US9665807B2 (en) Raster processing method and apparatus of transparent form
US8325376B2 (en) Image-forming device having index printing function
US9111198B2 (en) Print control method, print control device, and storage medium
JP6566850B2 (ja) 情報処理システム、情報処理システムの制御方法、情報処理装置およびプログラム
JP2010262559A (ja) Gui調整プログラム、gui調整装置、情報処理方法。
JP2011175629A (ja) 印刷可能データのレンダリングに関するシステムおよび方法
US8817285B2 (en) Method and apparatus for printing HTML content
JP2016532190A (ja) 文書フォーマット変換装置及び方法
US20210165949A1 (en) Information processing apparatus, information processing method, and recording medium
CN106598510A (zh) 兼容两种打印方式的方法及装置
CN104461406B (zh) 一种打印输出方法及装置
JP7318351B2 (ja) 制御プログラム、および情報処理装置
US20120072827A1 (en) Information processing apparatus, page description method, and storage medium
JP2001260498A (ja) 印刷装置及びその制御方法
EP2284689B1 (en) PDL data processing device
US8386922B2 (en) Information processing apparatus and information processing method
JP5600960B2 (ja) ホストコンピュータ、印刷データ生成方法およびプログラム
JP2009269179A (ja) 印刷装置、プログラム及び記録媒体

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination