具体实施方式
下面将参考附图并结合实施例,来详细说明本发明。
图1示出了根据本发明实施例的可变条码的光栅化方法的流程图,包括:
在PDF数据中加入可变条码对象和光栅字库,光栅字库支持以多种分辨率描述可变条码对象;
获取打印设备的分辨率;
对PDF数据进行光栅化,其中,以打印设备的分辨率调用光栅字库以描述可变条码对象。
本实施例在PDF数据中加入了支持以多种分辨率描述可变条码对象的光栅字库,利用光栅字库的高速解析、动态支持多分辨率的特点,能够快速地生成高精度的光栅化可变条码,从而克服了现有技术的可变条码光栅化精度较低的问题。
优选地,在PDF数据中加入可变条码对象包括:在生成PDF数据时,对可变条码对象和可变数据字段进行绑定,可变数据字段所标识的实际数据内容从可变数据源中获取。
优选地,光栅字库支持以多种分辨率描述可变条码对象包括:在光栅字库中包含多种分辨率的字符点阵,字符点阵用于构成光栅化可变条码对象的可变条码点阵;在PDF数据中加入元数据,元数据用于记录字符点阵同分辨率之间的对应关系。
优选地,以打印设备的分辨率调用光栅字库以描述可变条码对象包括:从元数据记录的对应关系中,确定打印设备的分辨率在光栅字库中所对应的字符点阵;以对应的字符点阵描述可变条码对象,得到光栅数据。
优选地,本方法还包括:将光栅数据存入用于输出的页面缓冲中。后端PDFRIP光栅化器对所生成的PDF进行光栅化时,这些可变条码对象将不再进行矢量光栅化或图像变换操作,直接把动态条码字库中对应的光栅数据放置到要输出的页面缓冲中,保证了可变条码的输出精度。
PDFRIP是一种用于光栅化处理的软件,用于对PDF文件的光栅化处理,以生成设备相关的光栅化点阵数据,在生成可变条码在海量数据处理的前提下还会导致所生成的PDF数据量过大和PDFRIP在光栅化时处理速度的下降,最终导致发送到设备上的速度不能匹配喷墨数码印刷机的输出速度。而本实施例采用动态字库的描述方式提高了PDF文件光栅化的速度,从而提升了系统的整体效率。
图2示出了根据本发明实施例的可变条码的光栅化装置的示意图,包括:
可变数据排版模块10,用于在PDF数据中加入可变条码对象和光栅字库,光栅字库支持以多种分辨率描述可变条码对象;
获取模块20,用于获取打印设备的分辨率;
光栅化器30,用于对PDF数据进行光栅化,其中,以打印设备的分辨率调用光栅字库以描述可变条码对象。
优选地,可变数据排版模块在生成PDF数据时,对可变条码对象和可变数据字段进行绑定,可变数据字段所标识的实际数据内容从可变数据源中获取。
优选地,可变数据排版模块在光栅字库中包含多种分辨率的字符点阵,字符点阵用于构成光栅化可变条码对象的可变条码点阵;在PDF数据中加入元数据,元数据用于记录字符点阵同分辨率之间的对应关系。
优选地,光栅化器从元数据记录的对应关系中,确定打印设备的分辨率在光栅字库中所对应的字符点阵;以对应的字符点阵描述可变条码对象,得到光栅数据。
优选地,本装置还包括:输出模块,用于将光栅数据存入用于输出的页面缓冲中。
图3示出了根据本发明实施例的软件实现的流程图,包括:
步骤302,根据设备所支持的多种分辨率在可变数据排版模块中增加对多种分辨率的设置。
步骤304,使用可变数据排版模块进行版面设计,可变数据排版模块将把所设计的版面内容生成到PDF数据中。
步骤306,判断版面设计内容中是否包含可变条码对象。
步骤308,如果包含,则根据所设置的需要支持的多种分辨率的列表,针对条码类型生成多种分辨率下的条码光栅化内容。
步骤310,把这些数据组织成条码光栅字库。
步骤312,把条码光栅字库写入到PDF数据中。
步骤314,同时还需要把分辨率和条码光栅字库的匹配关系写入到PDF的元数据中。
步骤316,把可变条码对象引用条码光栅字库的编码数据写入到PDF数据中。
步骤318,如果可变数据排版模块设计的版面内容没有包含可变条码对象,则按照正常方式直接把对应对象的数据写入到PDF数据中。该部分在操作系统中表现为独立的运行进程。
步骤320,生成好的PDF数据送到PDFRIP光栅化器中进行处理。该部分不但支持正常的PDF数据的光栅化处理,也可以支持包含可变条码对象的PDF数据。当PDFRIP光栅化器在遇到包含可变条码对象的PDF数据时,将从PDF元数据中根据条码的类型解析所连接的设备分辨率和可变条码光栅字库之间的匹配关系。
步骤322,PDFRIP光栅化器根据匹配关系获取相应的条码光栅字库,并依此进行可变条码的光栅化处理。光栅化后的数据送入到对应的页面点阵缓冲中。
步骤324,当PDF光栅化器处理其它对象的PDF数据时,则按照正常的处理方式对对象解析光栅化处理。光栅化后的数据送入到对应的页面点阵缓冲中。
步骤326,光栅化后的页面点阵的数据将送到连接的多种不同分辨率的打印设备上进行输出。该部分在操作系统中表现为独立的运行进程。
优选地,可变数据排版模块在操作系统中表现为独立的运行进程。该模块用于制作可变数据的处理模板,模板支持多种不同分辨率的设置,模板中包含对可变条码对象的支持,并把可变条码生成到PDF数据中。该模块在生成PDF数据时自动将排版模板中可变条码同可变数据字段进行绑定。可变数据字段所标识的实际数据内容将在生成PDF数据时动态从可变数据源中获取。
当在可变数据排版模块中设置了多种不同分辨率后,版面中的可变条码排版元素在生成PDF数据时就可以生成包含不同分辨率的条码光栅数据,这些条码的光栅数据以字库的方式并提供给可变数据排版模块。可变数据排版模块在生成可变条码PDF数据时,根据多种分辨率和不同的条码类型生成条码光栅字库,条码光栅字库将写入到PDF数据中,在PDF数据中可变条码对象通过编码的方式引用对应条码光栅字库中的内容。多种不同分辨率和条码光栅字库的对应关系写入到PDF的元数据中。
优选地,PDFRIP光栅化器在操作系统中表现为独立的运行进程。该模块用于光栅化步骤所生成的含有多种不同分辨率的可变条码对象的PDF数据。光栅化后的数据将送到所连接的真实物理打印设备上。PDFRIP光栅化器负责对PDF数据进行光栅化处理,当PDF数据中包含可变条码对象时,PDFRIP光栅化器将从PDF元数据中获取不同分辨率和光栅条码字库的对应关系,通过该对应关系PDFRIP光栅化器可以在条码光栅字库中获取特定分辨率下的条码编码所对应的光栅数据,并把光栅数据放入到需要输出的页面缓冲中,从而完成对可变条码对象的光栅化处理。
由于光栅条码字库所缓冲的条码字符的光栅数据的分辨率和设备分辨率相同,PDFRIP在进行光栅化处理时将直接从字库缓冲中获取条码字符的光栅数据并放入到对应的输出页面缓冲中,不需要再进行光栅图像变倍或其它的矢量操作处理。这样保证了条码输出到设备上的精度。同时由于采用光栅化字库缓冲的方式,PDFRIP光栅化器不需要多次重复地解释和光栅化可变条码对象,这也提高了PDFRIP光栅化器的处理速度。
一旦PDF数据光栅化结束,则光栅化后的组装页面就可以送到所连接的各种不同分辨率的喷墨数码印刷机设备上进行输出。
从以上的描述中可以看出,本发明所述的可变条码的光栅化方式具有很大的灵活性,通过绑定多种分辨率可以实现生成的包含可变条码对象的PDF数据能够适应在多种不同分辨率的印刷机或同一印刷机的多种分辨率的条件下进行输出,保证了可变条码的输出精度和处理速度。
本发明可以在对外的接口上保持原有的可变数据排版模块和PDFRIP光栅化器接口的兼容性,对用户进行可变数据的版面设计和光栅化后数据在连接设备上输出上没有任何变化,用户对整体系统的使用和操作方式仍然和以前一致,有效地保护了用户的软件和硬件投资。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。