一种打印方法及装置的制作方法

文档序号:6424176阅读:134来源:国知局
专利名称:一种打印方法及装置的制作方法
技术领域
本发明涉及计算机领域,特别涉及一种打印方法及装置。
背景技术
目前像淘宝这类提供网络零售服务的网站得到了快速地发展,这类网站每天都会产生大量的订单。用户可以选择订单,并利用打印快递单的软件将选择的订单打印成快递单。其中,技术人员在开发该软件时,事先开发一个打印模板;另外,每个订单中的每个打印内容都对应该打印模板内的一个打印元素;当用户利用该软件将订单打印成快递单时,该软件将该订单中的每个打印内容分别与每个打印内容对应的打印元素进行结合,得到该订单对应的待布局的打印元素,根据该订单对应的待布局的打印元素将该订单打印成 快递单。在实现本发明的过程中,发明人发现现有技术至少存在以下问题技术人员开发出打印模板后,用户不可以在该打印模板中添加、删除或修改打印元素,使得用户无法根据自身的需要去修改打印模板,降低用户体验。

发明内容
为了能够使用户根据需要修改打印模板并提高用户体验,本发明提供了一种打印方法及装置。所述技术方案如下一种打印方法,所述方法包括当用户修改完打印模板时,根据所述打印模板中发生变化的打印元素更新所述打印模板的XML(Extensible Markup Language,可扩展标记语言)配置文件,所述XML配置文件用于存储所述打印模板中各打印元素的配置信息;当所述用户选择需要打印的订单后,接收所述用户提交的打印请求消息,将所述订单包括的每项打印内容分别与所述XML配置文件中对应的打印元素结合得到所述订单的待布局的打印元素;根据所述待布局的打印元素获取所述订单的打印任务并对所述订单的打印任务进行调度打印。所述XML配置文件以树的形式存储所述打印模板中的打印元素的配置信息,以及所述配置信息至少包括打印元素的标识、位置区域和打印内容;相应地,根据所述打印模板中发生变化的打印元素更新所述打印模板的扩展标记语言XML配置文件,包括如果所述发生变化的打印元素为用户添加到所述打印模板的新打印元素,则获取所述新打印元素的配置信息以及所属的元素组,从所述XML配置文件中的树的根节点开始遍历,直到遍历到所述元素组对应的节点,将所述新打印元素的配置信息作为所述元素组对应的节点的子节点并添加到所述树中;
如果所述发生变化的打印元素为用户修改所述打印模板中已存在的打印元素,则获取所述修改的打印元素的配置信息,从所述根节点开始遍历直到遍历到所述修改的打印元素对应的节点,将所述遍历的节点中的配置信息更新为所述修改的打印元素的配置信息;如果所述发生变化的打印元素为用户从所述打印模板中删除的打印元素,则从所述根节点开始遍历,直 到遍历到所述删除的打印元素对应的节点,删除所述删除的打印元素对应的节点。所述将所述订单包括的每项打印内容分别与所述XML配置文件中对应的打印元素结合得到所述订单的待布局的打印元素,包括获取用户选择的订单,读取所述订单中的每项打印内容的标识;从所述XML配置文件中读取每个打印元素的配置信息,并缓存所述每个打印元素的配置信息;根据所述每项打印内容的标识,从缓存所述每个打印元素的配置信息中查找出每项打印内容对应的打印元素的配置信息;将所述每项打印内容分别与所述每项打印内容对应的打印元素的配置信息进行结合,将缓存的所述每个打印元素作为所述订单的待布局的打印元素。将所述每项打印内容分别与所述每项打印内容对应的打印元素的配置信息进行结合,包括在缓存所述每个打印元素的配置信息中,将所述查找出的每个打印元素的配置信息中的打印内容替换为所述每个打印元素对应所述订单中的打印内容。根据所述待布局的打印元素获取所述订单的打印任务,包括扫描所述待布局的打印元素中的每个打印元素的配置信息;根据所述配置信息包括的位置区域,将所述配置信息包括的打印内容映射到已创建的打印页中,得到所述订单的打印页;将所述订单的打印页与已创建的虚拟打印机进行构造得到所述订单的打印任务。根据所述配置信息包括的位置区域,将所述配置信息包括的打印内容映射到已创建的打印页中,包括判断所述已创建的打印页中的空闲空间是否大于所述配置信息包括的位置区域的大小;如果是,则根据所述配置信息包括的位置区域在所述已创建的打印页中映射出相同的位置区域,将所述配置信息包括的打印内容放置在所述映射的位置区域中;如果否,则创建新的打印页,根据所述配置信息包括的位置区域在所述新的打印页中映射出相同的位置区域,将所述配置信息包括的打印内容放置在所述映射的位置区域中。对所述订单的打印任务进行调度打印,包括设置所述订单的打印任务的优先级,根据所述优先级将所述订单的打印任务插入到打印任务列表中;从所述打印线程列表中获取空闲的打印线程,从所述打印任务列表中取出打印任务,通过所述空闲的打印线程对所述取出的打印任务进行打印。
一种打印装置,所述方法包括更新模块,用于当用户修改完打印模板时,根据所述打印模板中发生变化的打印元素更新所述打印模板的XML配置文件,所述XML配置文件用于存储所述打印模板中各打印元素的配置信息;结合模块,用于当所述用户选择需要打印的订单后,接收所述用户提交的打印请求消息,将所述订单包括的每项打印内容分别与所述XML配置文件中对应的打印元素结合得到所述订单的待布局的打印元素;获取模块,用于根据所述待布局的打印元素获取所述订单的打印任务;打印模块,用于对所述订单的打印任务进行调度打印。所述XML配置文件以树的形式存储所述打印模板中的打印元素的配置信息,以及 所述配置信息至少包括打印元素的标识、位置区域和打印内容;相应地,所述更新模块包括添加单元,用于如果所述发生变化的打印元素为用户添加到所述打印模板的新打印元素,则获取所述新打印元素的配置信息以及所属的元素组,从所述XML配置文件中的树的根节点开始遍历,直到遍历到所述元素组对应的节点,将所述新打印元素的配置信息作为所述元素组对应的节点的子节点并添加到所述树中;更新单元,用于如果所述发生变化的打印元素为用户修改所述打印模板中已存在的打印元素,则获取所述修改的打印元素的配置信息,从所述根节点开始遍历直到遍历到所述修改的打印元素对应的节点,将所述遍历的节点中的配置信息更新为所述修改的打印元素的配置信息;删除单元,用于如果所述发生变化的打印元素为用户从所述打印模板中删除的打印元素,则从所述根节点开始遍历,直到遍历到所述删除的打印元素对应的节点,删除所述删除的打印元素对应的节点。所述结合模块包括获取单元,用于获取用户选择的订单,读取所述订单中的每项打印内容的标识;缓存单元,用于从所述XML配置文件中读取每个打印元素的配置信息,并缓存所述每个打印元素的配置信息;查找单元,用于根据所述每项打印内容的标识,从缓存所述每个打印元素的配置信息中查找出每项打印内容对应的打印元素的配置信息;结合单元,用于将所述每项打印内容分别与所述每项打印内容对应的打印元素的配置信息进行结合,将缓存的所述每个打印元素作为所述订单的待布局的打印元素。所述结合单元,用于在缓存所述每个打印元素的配置信息中,将所述查找出的每个打印元素的配置信息中的打印内容替换为所述每个打印元素对应所述订单中的打印内容。所述获取模块包括扫描单元,用于扫描所述待布局的打印元素中的每个打印元素的配置信息;映射单元,用于根据所述配置信息包括的位置区域,将所述配置信息包括的打印内容映射到已创建的打印页中,得到所述订单的打印页;构造单元,用于将所述订单的打印页与已创建的虚拟打印机进行构造得到所述订单的打印任务。所述映射单元包括判断子单元,用于判断所述已创建的打印页中的空闲空间是否大于所述配置信息包括的位置区域的大小;第一映射子单元,用于如果是,则根据所述配置信息包括的位置区域在所述已创建的打印页中映射出相同的位置区域,将所述配置信息包括的打印内容放置在所述映射的位置区域中;第二映射子单元,用于如果否,则创建新的打印页,根据所述配置信息包括的位置
区域在所述新的打印页中映射出相同的位置区域,将所述配置信息包括的打印内容放置在所述映射的位置区域中。所述打印模块包括插入单元,用于设置所述订单的打印任务的优先级,根据所述优先级将所述订单的打印任务插入到打印任务列表中;打印单元,用于从所述打印线程列表中获取空闲的打印线程,从所述打印任务列表中取出打印任务,通过所述空闲的打印线程对所述取出的打印任务进行打印。在本发明中,当用户修改完打印模板时,根据用户修改的打印模板中发生变化的打印元素更新在XML配置文件中存储的打印元素的配置信息,当用户选择订单时将该订单中的每个打印内容与XML配置文件中对应的打印元素的配置信息结合得到待布局的打印元素,根据待布局的打印元素获取该订单的打印任务并对该打印任务进行调度打印。如此,使得用户可以根据自身的需要去修改打印模板,提高了用户体验。


图I是本发明实施例I提供的一种打印方法流程图;图2是本发明实施例2提供的一种打印方法流程图;图3是本发明实施例2提供的一种打印模板示意图;图4是本发明实施例2提供的XML配置文件的整体结构图;图5是本发明实施例2提供的元素组根节点的结构原型图;图6是本发明实施例2提供的字符串类打印元素text的结构原型图;图7是本发明实施例3提供的一种打印装置示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。实施例I如图I所示,本发明实施例提供了一种打印方法,包括步骤101 :当用户修改完打印模板时,根据打印模板中发生变化的打印元素更新打印模板的XML配置文件,该XML配置文件用于存储打印模板中各打印元素的配置信息;步骤102 :当用户选择需要打印的订单后,接收用户提交的打印请求消息,将该订单包括的每项打印内容分别与XML配置文件中对应的打印元素结合得到该订单的待布局的打印元素;步骤103 :根据待布局的打印元素获取该订单的打印任务并对该订单的打印任务进行调度打印。在本发明实施例中,当用户编辑完打印模板时,获取用户编辑的打印模板中的每个打印元素的配置信息,并将每个打印元素的配置信息存储在XML配置文件中,当用户选择订单时将该订单中的每个打印内容与XML配置文件中对应的打印元素的配置信息结合得到待布局的打印元素,根据待布局的打印元素获取得该订单的打印任务并对该打印任务进行调度打印。如此,使得用户可以根据自身的需要去修改打印模板,提高了用户体验。实施例2本发明实施例提供了一种打印方法。其中,用户先修改打印模板并选择订单,再利用本实施提供的打印方法将选择的订单打印成快递单。参见图2,该方法包括
步骤201 :当用户编辑完打印模板后,接收用户提交用于请求保存打印模板的保存请求消息;其中,打印模板由一个或多个元素组组成,每个元素组由一个或多个打印元素组成,每个元素组都有自己的位置区域,且每个元素组的位置区域包括每个元素组包括的每个打印元素占用的位置区域之和,每个打印元素都有自身的配置信息,且每个打印元素的配置信息至少包括标识、打印内容和位置区域,其中,每个打印元素在打印模板中所占的位置区域为矩形,因此可以用位置区域的任一对对角点中的两个对角点的坐标表示一个位置区域;另外,每个打印元素的标识由技术人员进行分配且分配之后每个打印元素的标识固定不变。其中,打印元素包括字符串类打印元素、线条类打印元素和图片类打印元素。字符串类打印元素的打印内容为字符串类打印元素的标题,且字符串类打印元素的配置信息至少包括打印元素的标识、标题和位置区域,还可以包括字体和/或大小等信息,字符串类打印元素包括说明类打印元素和填充类打印元素,说明类打印元素与填充类打印元素一一对应,说明类打印元素的标题用于解释填充类打印元素的含义,填充类打印元素的标题用于替换订单中的打印内容;线条类打印元素的打印内容为线条,且线条类打印元素的配置信息至少包括标识、线条和位置区域,还可以包括线条的宽度和/或颜色等信息,图片类打印元素的打印内容为图片,且图片类打印元素的配置信息至少包括标识、图片和位置区域,还可以包括图片的大小和画笔等信息。例如,如图3所示的打印模板,该打印模板内包括两个元素组,分别为卖家元素组和买家元素组,卖家元素组包括的字符串类元素分别为“寄件人姓名”、“卖家姓名”、“电话”、“卖家电话”、“单位名称”、“卖家单位名称”、“地址”和“卖家地址”;其中,“寄件人姓名”、“电话”、“单位名称”和“地址”都为说明类打印元素,且“寄件人姓名”、“电话”、“单位名称”和“地址”的标识分别为ID11、ID12、ID13和ID14 ;“卖家姓名”、“卖家电话”、“卖家单位名称”和“卖家地址”都为填充类打印元素,且“卖家姓名”、“卖家电话”、“卖家单位名称”和“卖家地址”的标识分别为ID21、ID22、ID23和ID24 ;“寄件人姓名”与“卖家姓名” 一一对应,“电话”与“卖家电话” 一一对应、“单位名称”与“卖家单位名称” 一一对应以及“地址”与“卖家地址” 一一对应,其中,说明类打印元素“寄件人姓名”用于解释其对应的填充类打印元素“卖家姓名”的含义,填充类打印元素“卖家姓名”的标题用于替换订单中的卖家姓名。买家元素组包括的打印元素分别为“收件人姓名”、“买家姓名”、“电话”、“买家电话”、“单位名称”、“买家单位名称”、“地址”和“买家地址”。其中,“收件人姓名”、“电话”、“单位名称”和“地址”都为说明类打印元素,且“收件人姓名”、“电话”、“单位名称”和“地址”的标识分别为ID31、ID32、ID33和ID34 ;“买家姓名”、“买家电话”、“买家单位名称”和“买家地址”都为填充类打印元素,且“买家姓名”、“买家电话”、“买家单位名称”和“买家地址”的标识分别为ID41、ID42、ID43和ID44 ;“收件人姓名”与“买家姓名” 一一对应、“电话”与“买家电话” 一一对应、“单位名称”与“买家单位名称” 一一对应以及“地址”与“买家地址”--对应。其中,在本实施例中,技术人员事先设置一个打印模板,该打印模板包括一个或多个元素组且该打印模板中的每个元素组可以为空;另外,技术人员还为每个元素组设置好各种打印元素。
其中,用户可以根据需要修改技术人员设置好的打印模板,具体为用户可以根据需要从技术人员设置好的打印元素中,为该打印模板中的每个元素组选择打印元素,将每个元素组的打印元素分别添加到每个元素组中。对于已经修改好的打印模板,用户还可以根据需要随时对打印模板进行修改,例如,可以向打印模板中元素组中添加新打印元素、修改打印模板中已存在的打印元素的位置区域和/或大小等配置信息或者删除打印模板中已存在的打印元素。其中,用户向打印模板中添加新打印元素时,用户还可以设置新打印元素的配置信息,具体为,如果新的打印元素为字符串类打印元素,则用户可以设置新的打印元素的标题,还可以设置新的打印元素的字体、字体颜色和/或字体大小等配置信息;如果新的打印元素为线条类打印元素,则用户可以设置新的打印元素的线条宽宽和/或颜色等配置信息;如果新的打印元素为图片,则用户可以设置新的打印元素的图片大小和/或画笔等配置信息。其中,用户在编辑打印模板时,会在屏幕中显示编辑的模板,屏幕自身有一个屏幕坐标系且屏幕坐标系以像素为单位,所以表示每个打印元素所占位置区域的坐标都为屏幕坐标系中的坐标。另外,用户修改完打印模板后,用户可以提交用于请求保存打印模板的保存请求消息。步骤202 :获取该打印模板中发生变化的打印元素,根据发生变化的打印元素更新XML配置文件,该XML配置文件中存储该打印模板中的每个打印元素的配置信息;其中,在本实施例中,XML配置文件可以采用树的形式来存储打印模板中的每个打印元素的配置信息,且每个打印元素的配置信息存储在XML配置文件中的树的叶子节点中。如图4所示的XML配置文件的整体结构,XML配置文件采用的数据结构为树,树的根节点template包括四个属性值分别为x轴偏移量xoffset、y轴偏移量yoffset、宽度width和高度height,根节点temlpate下有字体父节点fonts、画笔父节点pens、元素组父节点groups和背景父节点backgroud等节点。如图5所示的元素组父节点groups的结构原型图。其中,元素组父节点groups下由一个或多个元素组节点group组成,在元素组节点group下面可以包含多个打印元素,元素组节点group下的子节点都为元素组包括的打印元素,例如,一个元素组节点group可以包括字符串类打印元素text、线条类打印元素line、图片类打印元素barcode,元素组节点group可以嵌套元素组节点group,另外,元素组节点group还存在元素组的属性值可以包括标识Id、绝对值absolute和可见值visible等,以及元素组节点group还存储元素组占用的位置区域rect。其中,位置区域rect能包含元素组内的所有成员所占的位置区域之和。如图6所示的字符串类打印元素text节点的结构原型图。在字符串类打印元素text节点内存储包括标识ID、标题title、字体标识fontid、自动缩放singleline、高度lheight、对齐方式align、可见值visible、位置区域rect、字体颜色txtcolor和背景颜色bkcolor等配置信息。具体地,如果发生变化的打印元素为用户添加到打印模板中的新打印元素,则获取新打印元素的配置信息以及新打印元素所属的元素组,从XML配置文件中的树的根节点 开始遍历,直到遍历到新打印元素所属的元素组对应的节点,将新打印元素的配置信息作为遍历的节点的子节点并添加到树中;如果发生变化的打印元素为用户修改打印模板中的打印元素,则获取修改的打印元素的配置信息,从XML配置文件中的树的根节点开始遍历,直到遍历到修改的打印元素对应的节点,将遍历的节点中存储的配置信息更新为获取的配置信息;如果发生变化的打印元素为用户从打印模板中删除的打印元素,则从XML配置文件中的树的根节点开始遍历,直到遍历到删除的打印元素对应的节点,删除遍历的节点。其中,如果发生变化的打印元素为字符串类打印元素,则从发生变化的字符串类打印元素中读取字符串类打印元素的标识、标题以及根据字符串类打印元素在打印模板中占用的位置区域获取表示占用的位置区域的坐标等配置信息;如果发生变化的打印元素为线条类打印元素,则从线条类打印元素中读取打印元素的标识、线条以及根据线条类打印元素在打印模板中占用的位置区域获取表示占用的位置区域的坐标等信息;如果发生变化的打印元素为图片类打印元素,则读取打印元素的标识、图片以及根据图片类打印元素在打印模板中占用的位置区域获取表示占用的位置区域的坐标等信
肩、O其中,打印模板采用屏幕坐标系,而在XML配置文件中可以采用逻辑坐标系来存储表示打印元素的位置区域的坐标。相应地,根据字符串类打印元素在打印模板中占用的位置区域获取表示位置区域的坐标的操作可以具体为根据字符串类打印元素在打印模板中占用的位置区域,读取表示字符串类打印元素所占位置区域在屏幕坐标系中的坐标,按如下的公式(I)将表示位置区域在屏幕坐标系中的坐标转换为在逻辑坐标系中的坐标。Li = Pi Xmmm...... ( I )
Pm其中,Pm为屏幕显示器的像素,Lm为屏幕显示器的尺寸,Pi为表示打印元素所占位置区域在屏幕坐标系中的坐标,Li为表示打印元素所占位置区域在逻辑坐标系中的坐标。根据线条类打印元素在打印模板中占用的位置区域获取表位置区域的坐标的操作可以具体为根据线条类打印元素在打印模板中占用的位置区域,读取表示线条类打印元素所占位置区域在屏幕坐标系中的坐标,按公式(I)将表示位置区域在屏幕坐标系中的坐标转换为在逻辑坐标系中的坐标。以及,根据图片类打印元素在打印模板中占用的位置区域获取表示位置区域的坐标的操作可以具体为根据图片类打印元素在打印模板中占用的位置区域,读取表示图片类打印元素所占位置区域在屏幕坐标系中的坐标,按公式(I)将表示位置区域在屏幕坐标系中的坐标转换为在逻辑坐标系中的坐标。其中,当用户需要打印快递单时,用户选择一个订单,然后提交打印请求消息。订单包括一个或多个打印内容,且每个打印内容对应打印模板内的一个打印元素,且订单中的每个打印内容都包括每个打印内容对应的打印元素的标识。例如,某个订单包括的打印内容分别包括卖家姓名为“Namel”且其对应的打印元素的标识为ID21,卖家电话为“Telephonel”且其对应的打印元素的标识为ID22,卖家单位名称为“Companyl”且其对应 的打印元素的标识为ID23,卖家地址为“Addressl”且其对应的打印元素的标识为ID24、买家姓名为“Name2”且其对应的打印元素的标识为ID41,买家电话为“Telephone〗”且其对应的填充类打印元素的标识为ID42、买家单位名称为“Company2”且其对应的填充类打印元素的标识为ID43以及买家地址为“AddreSS2”且其对应的填充类打印元素的标识为ID44。步骤203 :当用户选择订单后,接收用户提交的打印请求消息;步骤204 :获取用户选择的订单,将获取的订单中的每个打印内容与XML配置文件中其对应的打印元素的配置信息进行结合得到该订单对应的待布局的打印元素;具体地,获取用户选择的订单,读取该订单中的每项打印内容对应打印元素的标识;从XML配置文件中读取每个打印元素的配置信息,并将每个打印元素的配置信息缓存在内存中,根据该订单中的每项打印内容对应打印元素的标识,内存中缓存的每个打印元素的配置信息中查找出每项打印内容对应的打印元素的配置信息;在内存中缓存的每个打印元素的配置信息中,将每项打印内容分别与每项打印内容对应的打印元素的配置信息进行结合,结合后将内存中缓存的每个的打印元素作为该订单的待布局的打印元素。其中,在XML配置文件中将每项打印内容分别与每项打印内容对应的打印元素的配置信息进行结合的步骤可以具体为在XML配置文件中将查找出的每个打印元素的配置信息中的打印内容替换为每个打印元素对应订单中的打印内容。其中,订单中的每项打印内容对应的打印元素为填充类打印元素;因此,在XML配置文件中将查找出的每项打印元素的配置信息中的标题替换为每项打印元素对应的打印内容。例如,对于订单中的卖家姓名为“Namel”,根据卖家姓名“Namel”对应的打印元素的标识为ID21,从XML配置文件中查找出对应的打印元素为“卖家姓名”,在XML配置文件中将打印元素“卖家姓名”的标题“卖家姓名”替换为该项打印内容“ Name I ”;对订单中的其他每项打印内容,也按上述相同的方法与XML配置文件中对应的填充类打印元素的配置信息进行结合,得到的结果为如表I所示。表I
权利要求
1.一种打印方法,其特征在于,所述方法包括 当用户修改完打印模板时,根据所述打印模板中发生变化的打印元素更新所述打印模板的扩展标记语言XML配置文件,所述XML配置文件用于存储所述打印模板中各打印元素的配置信息; 当所述用户选择需要打印的订单后,接收所述用户提交的打印请求消息,将所述订单包括的每项打印内容分别与所述XML配置文件中对应的打印元素结合得到所述订单的待布局的打印元素; 根据所述待布局的打印元素获取所述订单的打印任务并对所述订单的打印任务进行调度打印。
2.如权利要求I所述的方法,其特征在于,所述XML配置文件以树的形式存储所述打印模板中的打印元素的配置信息,以及所述配置信息至少包括打印元素的标识、位置区域和打印内容; 相应地,根据所述打印模板中发生变化的打印元素更新所述打印模板的扩展标记语言XML配置文件,包括 如果所述发生变化的打印元素为用户添加到所述打印模板的新打印元素,则获取所述新打印元素的配置信息以及所属的元素组,从所述XML配置文件中的树的根节点开始遍历,直到遍历到所述元素组对应的节点,将所述新打印元素的配置信息作为所述元素组对应的节点的子节点并添加到所述树中; 如果所述发生变化的打印元素为用户修改所述打印模板中已存在的打印元素,则获取所述修改的打印元素的配置信息,从所述根节点开始遍历直到遍历到所述修改的打印元素对应的节点,将所述遍历的节点中的配置信息更新为所述修改的打印元素的配置信息; 如果所述发生变化的打印元素为用户从所述打印模板中删除的打印元素,则从所述根节点开始遍历,直到遍历到所述删除的打印元素对应的节点,删除所述删除的打印元素对应的节点。
3.如权利要求I所述的方法,其特征在于,所述将所述订单包括的每项打印内容分别与所述XML配置文件中对应的打印元素结合得到所述订单的待布局的打印元素,包括 获取用户选择的订单,读取所述订单中的每项打印内容的标识; 从所述XML配置文件中读取每个打印元素的配置信息,并缓存所述每个打印元素的配置信息; 根据所述每项打印内容的标识,从缓存所述每个打印元素的配置信息中查找出每项打印内容对应的打印元素的配置信息; 将所述每项打印内容分别与所述每项打印内容对应的打印元素的配置信息进行结合,将缓存的所述每个打印元素作为所述订单的待布局的打印元素。
4.如权利要求3所述的方法,其特征在于,将所述每项打印内容分别与所述每项打印内容对应的打印元素的配置信息进行结合,包括 在缓存所述每个打印元素的配置信息中,将所述查找出的每个打印元素的配置信息中的打印内容替换为所述每个打印元素对应所述订单中的打印内容。
5.如权利要求I所述的方法,其特征在于,根据所述待布局的打印元素获取所述订单的打印任务,包括扫描所述待布局的打印元素中的每个打印元素的配置信息; 根据所述配置信息包括的位置区域,将所述配置信息包括的打印内容映射到已创建的打印页中,得到所述订单的打印页; 将所述订单的打印页与已创建的虚拟打印机进行构造得到所述订单的打印任务。
6.如果权利要求5所述的方法,其特征在于,根据所述配置信息包括的位置区域,将所述配置信息包括的打印内容映射到已创建的打印页中,包括 判断所述已创建的打印页中的空闲空间是否大于所述配置信息包括的位置区域的大小; 如果是,则根据所述配置信息包括的位置区域在所述已创建的打印页中映射出相同的位置区域,将所述配置信息包括的打印内容放置在所述映射的位置区域中; 如果否,则创建新的打印页,根据所述配置信息包括的位置区域在所述新的打印页中映射出相同的位置区域,将所述配置信息包括的打印内容放置在所述映射的位置区域中。
7.如权利要求I所述的方法,其特征在于,对所述订单的打印任务进行调度打印,包括 设置所述订单的打印任务的优先级,根据所述优先级将所述订单的打印任务插入到打印任务列表中; 从所述打印线程列表中获取空闲的打印线程,从所述打印任务列表中取出打印任务,通过所述空闲的打印线程对所述取出的打印任务进行打印。
8.—种打印装置,其特征在于,所述方法包括 更新模块,用于当用户修改完打印模板时,根据所述打印模板中发生变化的打印元素更新所述打印模板的扩展标记语言XML配置文件,所述XML配置文件用于存储所述打印模板中各打印元素的配置信息; 结合模块,用于当所述用户选择需要打印的订单后,接收所述用户提交的打印请求消息,将所述订单包括的每项打印内容分别与所述XML配置文件中对应的打印元素结合得到所述订单的待布局的打印元素; 获取模块,用于根据所述待布局的打印元素获取所述订单的打印任务; 打印模块,用于对所述订单的打印任务进行调度打印。
9.如权利要求8所述的装置,其特征在于,所述XML配置文件以树的形式存储所述打印模板中的打印元素的配置信息,以及所述配置信息至少包括打印元素的标识、位置区域和打印内容; 相应地,所述更新模块包括 添加单元,用于如果所述发生变化的打印元素为用户添加到所述打印模板的新打印元素,则获取所述新打印元素的配置信息以及所属的元素组,从所述XML配置文件中的树的根节点开始遍历,直到遍历到所述元素组对应的节点,将所述新打印元素的配置信息作为所述元素组对应的节点的子节点并添加到所述树中; 更新单元,用于如果所述发生变化的打印元素为用户修改所述打印模板中已存在的打印元素,则获取所述修改的打印元素的配置信息,从所述根节点开始遍历直到遍历到所述修改的打印元素对应的节点,将所述遍历的节点中的配置信息更新为所述修改的打印元素的配置信息;删除单元,用于如果所述发生变化的打印元素为用户从所述打印模板中删除的打印元素,则从所述根节点开始遍历,直到遍历到所述删除的打印元素对应的节点,删除所述删除的打印元素对应的节点。
10.如权利要求8所述的装置,其特征在于,所述结合模块包括 获取单元,用于获取用户选择的订单,读取所述订单中的每项打印内容的标识; 缓存单元,用于从所述XML配置文件中读取每个打印元素的配置信息,并缓存所述每个打印元素的配置信息; 查找单元,用于根据所述每项打印内容的标识,从缓存所述每个打印元素的配置信息中查找出每项打印内容对应的打印元素的配置信息; 结合单元,用于将所述每项打印内容分别与所述每项打印内容对应的打印元素的配置信息进行结合,将缓存的所述每个打印元素作为所述订单的待布局的打印元素。
11.如权利要求10所述的装置,其特征在于, 所述结合单元,用于在缓存所述每个打印元素的配置信息中,将所述查找出的每个打印元素的配置信息中的打印内容替换为所述每个打印元素对应所述订单中的打印内容。
12.如权利要求8所述的装置,其特征在于,所述获取模块包括 扫描单元,用于扫描所述待布局的打印元素中的每个打印元素的配置信息; 映射单元,用于根据所述配置信息包括的位置区域,将所述配置信息包括的打印内容映射到已创建的打印页中,得到所述订单的打印页; 构造单元,用于将所述订单的打印页与已创建的虚拟打印机进行构造得到所述订单的打印任务。
13.如权利要求12所述的装置,其特征在于,所述映射单元包括 判断子单元,用于判断所述已创建的打印页中的空闲空间是否大于所述配置信息包括的位置区域的大小; 第一映射子单元,用于如果是,则根据所述配置信息包括的位置区域在所述已创建的打印页中映射出相同的位置区域,将所述配置信息包括的打印内容放置在所述映射的位置区域中; 第二映射子单元,用于如果否,则创建新的打印页,根据所述配置信息包括的位置区域在所述新的打印页中映射出相同的位置区域,将所述配置信息包括的打印内容放置在所述映射的位置区域中。
14.如权利要求8所述的装置,其特征在于,所述打印模块包括 插入单元,用于设置所述订单的打印任务的优先级,根据所述优先级将所述订单的打印任务插入到打印任务列表中; 打印单元,用于从所述打印线程列表中获取空闲的打印线程,从所述打印任务列表中取出打印任务,通过所述空闲的打印线程对所述取出的打印任务进行打印。
全文摘要
本发明公开了一种打印方法及装置,属于计算机领域。所述方法包括当用户修改完打印模板时,根据所述打印模板中发生变化的打印元素更新所述打印模板的扩展标记语言XML配置文件,所述XML配置文件用于存储所述打印模板中各打印元素的配置信息;当所述用户选择需要打印的订单后,接收所述用户提交的打印请求消息,将所述订单包括的每项打印内容分别与所述XML配置文件中对应的打印元素结合得到所述订单的待布局的打印元素;根据所述待布局的打印元素获取所述订单的打印任务并对所述订单的打印任务进行调度打印。所述装置包括更新模块、结合模块、获取模块和打印模块。本发明能够使用户根据需要修改打印模板并提高用户体验。
文档编号G06F3/12GK102789372SQ20111012535
公开日2012年11月21日 申请日期2011年5月16日 优先权日2011年5月16日
发明者侯锦坤, 邹传毅 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1