本发明涉及版式文档处理技术领域,具体涉及一种对ofd版式文件内容选择打印的方法。
背景技术:
传统的打印只能一整页打印,这时候假如需要不同的权限查看打印文档,我们必须修改文档,再打印,给打印操作带来了极大的不便。
对ofd版式文件内容选择打印的方法在我们深知ofd底层核心的基础上,对ofd文件进行了解析,此时打印可以进行内容抓取进而进行选择打印。可以做到不需要修改文件即可不同内容的打印和套打。
技术实现要素:
本发明的目的提供一种对ofd版式文件内容选择打印的方法,解决上述现有技术问题中的一个或者多个。
根据本发明的一个方面,一种对ofd版式文件内容选择打印的方法,包括以下步骤:
s1.文件阅读器打开解析ofd文件并获取每个元素数据的数据坐标和数据内容;
s2.对数据内容和打印方式进行选择,计算出选择内容的选择区域;
s3.判断选择内容是否为打印内容;
s4.将选择区域与数据内容进行遍历匹配,将匹配出的打印数据发送至内存中存储;
s5.将内存中的打印数据发送至打印机进行打印。
在某些实施方式中,遍历ofd文件的所有xml文件并进行解析,每个元素生成为内存对象,内存对象包含元素的坐标、长度和宽度。
在某些实施方式中,步骤s2中以多区域选择或者不规则图形选择的方式的得到选择内容,确认选择内容是否为选择区域。
在某些实施方式中,若选择内容有多个区域时,可对选择内容通过ofd版式文件自带的分层进行选择形成分层选择数据。
在某些实施方式中,步骤s3的具体方法,包括以下步骤:
若选择内容是为打印内容,则选择内容进入步骤s4;
若选择内容是非打印内容,则未被选择的所有非选择内容进入步骤s4。
在某些实施方式中,步骤s4的具体方法,包括以下步骤:
若打印内容为选择内容,则将选择内容中元素的数据坐标进行遍历匹配,匹配成功的数据内容放入内存的打印数组中;
若打印内容为非选择内容,则将选择内容中元素的数据坐标进行遍历匹配,匹配不成功的数据内容放入内存的打印数组中
在某些实施方式中,打印数据包含打印数组和分层选择数据。
在某些实施方式中,打印机依据分层数据将打印数组的内容打印至不同页面。
本发明提供的一种对ofd版式文件内容选择打印的方法,其优点在于:
1、不需要修改文件就可以控制打印文件。
2、可以选择部分进行内容抓取再进行分层打印。
附图说明
图1为本发明的一种实施方式的一种对ofd版式文件内容选择打印的流程示意图;
图2为本发明的一种实施方式的一种对ofd版式文件内容选择打印的数据流程图;
图3为本发明的一种实施方式的一种对ofd版式文件内容选择打印的打印内容判断流程图。
具体实施方式
下面结合说明书附图,对本发明进行进一步详细的说明。
如图1所示,一种对ofd版式文件内容选择打印的方法,包括以下步骤:
s1.文件阅读器打开解析ofd文件并获取每个元素数据的数据坐标和数据内容;
s2.对数据内容和打印方式进行选择,计算出选择内容的选择区域;
s3.判断选择内容是否为打印内容;
s4.将选择区域与数据内容进行遍历匹配,将匹配出的打印数据发送至内存中存储;
s5.将内存中的打印数据发送至打印机进行打印。
如图2所示,文件阅读器遍历ofd里面每一页xml文件进行解析,对每个元素生成为内存对象,对象包含横坐标x,纵坐标y,元素宽度width,元素高度height,用于后续的匹配操作。
其中,在本实施例中选择对文件内容进行选择时,确认选择区域分为多种方式,一种通过鼠标手动选择单独或多个区域,还可以通过不规则图形选择所需要的内容。
实施例1
通过区域选择的方式进行打印选择的方法,包括以下步骤:
s1.文件阅读器打开需要打印的ofd文件,解析ofd文件并获取每个元素数据的数据坐标和数据内容;
s2.使用鼠标拖动选择出一个或者多个区域,计算出选择内容的选择区域;
s3.若选择内容是为打印内容,则选择内容进入步骤s4;若选择内容是非打印内容,则未被选择的所有非选择内容进入步骤s4;
s4.若打印内容为选择内容,则将选择内容中元素的数据坐标进行遍历匹配,匹配成功的数据内容放入内存的打印数组中;若打印内容为非选择内容,则将选择内容中元素的数据坐标进行遍历匹配,匹配不成功的数据内容放入内存的打印数组中;
s5.将内存中的打印数据发送至打印机进行打印。
实施例2
通过不规则图形选择的方式进行打印选择的方法,包括以下步骤:
s1.文件阅读器打开需要打印的ofd文件,解析ofd文件并获取每个元素数据的数据坐标和数据内容;
s2.使用不规则画图的方式选择出一个或者多个区域,计算出选择内容的选择区域;
s3.若选择内容是为打印内容,则选择内容进入步骤s4;若选择内容是非打印内容,则未被选择的所有非选择内容进入步骤s4;
s4.若打印内容为选择内容,则将选择内容中元素的数据坐标进行遍历匹配,匹配成功的数据内容放入内存的打印数组中;若打印内容为非选择内容,则将选择内容中元素的数据坐标进行遍历匹配,匹配不成功的数据内容放入内存的打印数组中;
s5.将内存中的打印数据发送至打印机进行打印。
其中步骤s2画图可通过画图插件进行圆形、矩形和星形等不规则的图形对文件内容进行框选。
在本实施例中,若不规则图形的边线与ofd文件的文字内容产生交集,则判定该文字被选中进入选择区域;若不规则图形的边线与ofd文件的图片、背景线条之类的元素产生交集,则判定该元素在不规则图片中的部分被选中进入选择区域;若不规则图形的边线与ofd文件的矢量签批图片产生交集,则判定该矢量签批图片在不规则图片中的部分被选中进入选择区域,即除了文字都是部分选中区域,只有文字相交都在区域里。
其中由于ofd文件常用作公文文件,会出现手写签批的情况,所以手写签批的部位则产生矢量签批图片。
若选择内容有多个区域时,可对选择内容进行编组分层形成分层选择数据,标准ofd版式文件自带分层设置如标题、正文、底层背景之类,打印时选择需要的分层选择进行套打,此分层数据打印时传输至打印机。例如需要将进已经打印出来的证件或者公文打印需要进行部分部位进行套打,可以通过选区域或不规则选取打印内容,在ofd版式文件的分层中将背景等分层取消,此时只会打印出已选的打印内容。
如图3所示,当对选择内容的选择区域计算完成后,需选择区域是否是打印进内容进行判断。
若选择内容是为打印内容,则选择内容进入步骤s4;
若选择内容是非打印内容,则未被选择的所有非选择内容进入步骤s4。
其中,将选中的选择区域,与当前页码内容元素的坐标进行遍历匹配,将该区域内的内容放入内存的打印数组中,每一次遍历只要在区域内就塞入该数组中,如果是非选中区域打印,即为匹配不成功的内容放入内存的打印数组中。
当对所有内容匹配完成后,将打印数组和分层数据传输至打印机进行分层打印。
此项技术支持“版式数据流文件系统及其操作装置”,作为其功能的组成部分。
以上仅是本发明的优选方式,应当指出,对于本领域普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干相似的变形和改进,这些也应视为本发明的保护范围之内。
1.一种对ofd版式文件内容选择打印的方法,其特征在于,包括以下步骤:
s1.文件阅读器打开解析ofd文件并获取每个元素数据的数据坐标和数据内容;
s2.对数据内容和打印方式进行选择,计算出选择内容的选择区域;
s3.判断选择内容是否为打印内容;
s4.将选择区域与数据内容进行遍历匹配,将匹配出的打印数据发送至内存中存储;
s5.将内存中的打印数据发送至打印机进行打印。
2.根据权利要求1的方法,步骤s1的具体方法,其特征在于,遍历ofd文件的所有xml文件并进行解析,每个元素生成为内存对象,内存对象包含元素的坐标、长度和宽度。
3.根据权利要求1的方法,其特征在于,步骤s2中以多区域选择或者不规则图形选择的方式得到选择内容,确认选择内容是否为选择区域。
4.根据权利要求3的方法,其特征在于,若选择内容有多个区域时,可对选择内容通过ofd版式文件自带的分层进行选择形成分层选择数据。
5.根据权利要求4的方法,其特征在于,步骤s3的具体方法,其特征在于,包括以下步骤:
若选择内容是为打印内容,则选择内容进入步骤s4;
若选择内容是非打印内容,则未被选择的所有非选择内容进入步骤s4。
6.根据权利要求5的方法,步骤s4的具体方法,其特征在于,包括以下步骤:
若打印内容为选择内容,则将选择内容中元素的数据坐标进行遍历匹配,匹配成功的数据内容放入内存的打印数组中;
若打印内容为非选择内容,则将选择内容中元素的数据坐标进行遍历匹配,匹配不成功的数据内容放入内存的打印数组中。
7.根据权利要求6的方法,其特征在于,打印数据包含打印数组和分层选择数据。
8.根据权利要求7的方法,其特征在于,打印机依据分层数据将打印数组的内容打印至不同页面。
技术总结