发明内容
本发明的目的在于提供一种混合拼版方法及***,可以对不同格式类型的页面描述语言文件进行拼版,提高混合拼版的效率。
为达到上述发明目的,本发明的混合拼版方法采用以下技术方案。
一种混合拼版方法,包括以下步骤:
分别设置解释模块、组装模块、共享存储单元;
为所述解释模块设置并分配拼版参数,并为所述解释模块分配小页页面;
所述解释模块根据设置的拼版参数,对小页页面进行语法解释,生成中间文件;
所述组装模块组装所述中间文件,生成大版版面点阵;
将所述大版版面点阵存储到所述共享存储单元中。
上述解释模块是至少两种不同格式类型的解释模块。
上述解释模块根据设置的拼版参数,对小页页面进行语法解释,生成中间文件的步骤还包括:
所述各解释模块每解释完一个小页页面后,返回该小页页面所包括的解释信息,并在所有小页页面解释完成后,返回解释完成控制信号;
根据返回的解释信息,确定组装参数,生成组装控制命令,并将组装参数及组装控制命令发送给所述组装模块。
其中,解释信息包括小页页面包含的色面个数以及色面名称。
组装参数包括:每次组装段的段高,总的分段数,每段每色面需要内存大小,每段总共需要内存大小。
上述组装模块组装所述中间文件,生成大版版面点阵的步骤具体为:
组装模块组装所述中间文件,生成大版版面点阵,并根据所述中间文件生成低分辨率预览图。
上述拼版参数包括:大版版面参数、小页页面输出信息。
上述大版版面参数包括:大版版心大小,输出设备分辨率,输出设备位深,输出设备是否支持专色;
小页页面输出信息是指小页页面在大版版面的位置信息;所述位置信息通过一坐标变换矩阵获得,所述的坐标变换矩阵的形式为:
[1 0 0 1 tx ty],
其中,tx,ty是在用户坐标系下,小页页面相对大版版面坐标系在x,y方向进行的平移量。
为达到上述目的,本发明的混合拼版***采用以下技术方案:
一种混合拼版***,包括:
解释模块分配单元,用于为解释模块设置拼版参数,并分配所述拼版参数、小页页面;
解释模块,与所述解释模块分配单元连接,用于根据设置的拼版参数,对小页页面进行语法解释,生成中间文件;
组装模块,与所述解释模块连接,用于组装所述解释模块生成的中间文件,并生成大版版面点阵;
共享存储单元,与所述组装模块连接,用于存储大版版面点阵。
上述解释模块为至少两种不同格式类型的解释模块。
所述的混合拼版***还包括预览模块,与所述解释模块连接,用于读取所述解释模块生成的中间文件,生成低分辨率预览图。
所述的混合拼版***还包括打印控制单元,所述的打印控制单元包括:
解释控制模块,与所述解释模块分配单元连接,用于产生分配控制命令;
组装控制模块,与所述解释模块和组装模块分别连接,用于根据解释模块输出的解释信息以及解释完成控制信号,确定组装参数,生成组装控制命令。
其中,所述各解释模块输出的解释信息包括:小页页面包含的色面个数以及色面名称。
所述组装控制模块确定的组装参数包括:每次组装段的段高,总的分段数,每段每色面需要内存大小,每段总共需要内存大小。
上述解释模块分配单元所分配的拼版参数包括:大版版面参数以及小页页面输出信息。
上述大版版面参数包括:大版版心大小,输出设备分辨率,输出设备位深,输出设备是否支持专色;
所述小页页面输出信息是指小页页面在大版版面的位置信息;所述位置信息通过一坐标变换矩阵获得,所述的坐标变换矩阵的形式为:
[1 0 0 1 tx ty],
其中,tx,ty是在用户坐标系下,小页页面相对大版版面坐标系在x,y方向进行的平移量。
与光栅化前拼版方法相比,本发明所述混合拼版方法,对输入的各小页页面的格式类型没有限制,通过各解释模块对各小页页面进行语法解释,生成各中间文件,因此这就突破了光栅化前拼版***在一次光栅化的过程中,只能对同一格式类型的小页页面进行语法解释,而不能同时对多种格式类型的小页页面进行语法解释的限制,从而提高混合拼版的效率,提高了混合拼版的兼容性和扩展性。另外,作为对本发明所述混合拼版方法的进一步改进,在解释各种不同格式类型的小页页面的过程中,可以利用对应生成的中间文件生成低分辨率的预览图,而能够进行拼版正确性的判断,进而在光栅化前可对解释不正确的小页页面重新进行解释,从而降低了最终输出的大版版面出错的概率,提高了拼版的效率。
同时,与光栅化后拼版方法相比,本发明所述混合拼版方法,在形成最终的大版版面的过程中,由组装模块读取各中间文件,生成大版版面点阵,并将大版版面点阵存储在共享存储单元中,因此,这就可以输出共享存储单元中存储的大版版面点阵到输出设备上,从而避免了对计算机内存或硬盘的反复读写操作,最大程度地提高了混合拼版的效率。
与光栅前拼版***相比,由于本发明所述混合拼版***设置了至少两种不同类型的解释模块,使得该混合拼版***可以对不同格式类型的小页页面进行语法解释,并生成各中间文件,因此这就突破了光栅化前拼版***在一次光栅化的过程中,只能对同一格式类型的小页页面进行语法解释,而不能同时对多种格式类型的小页页面进行语法解释的限制,从而提高混合拼版的效率。另外,作为对本发明中所述组装模块的功能完善,所述组装模块还用于读取各中间文件,生成低分辨率预览图,在这种情况下,该混合拼版***可根据中间文件生成低分辨率的预览图,从而能及早的判断各解释模块对各小页页面的解释是否正确,进而在光栅化前可对解释不正确的小页页面重新进行解释,避免了光栅化前拼版方式在某小页解释出错后只能对整个大版页面进行解释的情况,进一步的提高混合拼版***的拼版效率。
同时,与光栅化后拼版***相比,本发明所述混合拼版***,在拼版过程中,由组装模块读取各解释模块生成的各中间文件,组装生成大版版面点阵,并将大版版面点阵存储在共享存储单元中,这就使得该混合拼版***可将共享存储单元中存储的大版版面点阵输出到输出设备上。因此,这就避免了光栅化后拼版在组装过程中,需要分别对每个小页页面的光栅化数据不断的进行对计算机内存或硬盘的读写操作的情况,从而提高了混合拼版***的拼版效率。
具体实施方式
下面结合附图和实施方式对本发明的技术方案作详细的说明。
如图3所示的是本发明的混合拼版方法的流程图。这里的混合拼版,是指对输入的各种格式类型小页页面(如PostScript语言描述的小页页面、PDF格式类型的小页页面、PCL格式类型的小页页面、TIFF格式类型等)进行拼版的过程。
该方法主要包括如下步骤:
(S1)分别设置解释模块,组装模块,共享存储单元;
(S2)为解释模块设置并分配拼版参数,并为解释模块分配小页页面;
(S3)解释模块根据设置的拼版参数,对小页页面进行语法解释,生成中间文件;
(S4)所述组装模块组装中间文件,生成大版版面点阵;
(S5)将大版版面点阵存储到共享存储单元中。
在上述步骤(S1)中,可设置解释模块为至少两种不同格式类型的解释模块。这里每种格式类型的解释模块分别对应一种格式类型的小页页面,如PostScript格式类型的小页页面对应PS格式类型的解释模块,PDF格式类型的小页页面对应PDF格式类型的解释模块,PCL格式类型的解释模块对应PCL格式类型的解释模块,TIFF格式类型的小页页面对应TIFF格式类型的解释模块等。
上述步骤中,形成最终的大版版面点阵并将该大版版面点阵存储到共享存储单元的过程,对输入的各小页页面的格式类型没有限制。本发明所述的方法通过各解释模块对各种格式类型的小页页面进行语法解释,生成各中间文件,因此这就突破了光栅化前拼版***在一次光栅化的过程中,只能对同一格式类型的小页页面进行语法解释,而不能同时对多种格式类型的小页页面进行语法解释的限制,从而提高混合拼版的效率,提高了混合拼版的兼容性和扩展性。
在上述步骤(S2)中,所述的拼版参数包括:大版版面参数以及各种格式类型的小页页面输出信息。
所述大版版面参数包括:大版版心大小,输出设备分辨率,输出设备位深,输出设备是否支持专色。
所述各种格式类型的小页页面输出信息是指各种格式类型的小页页面在大版版面的位置信息;所述位置信息通过一坐标变换矩阵获得。
在页面描述文件中,所描述的所有图元基于的坐标系称之为用户坐标系***(User Coordinate System),且该用户坐标***是与输出设备无关的。小页页面相对于大版版面的坐标***可能存在X,Y方向的偏移,这个偏移操作可通过变换矩阵CTM(Transformation Matrix)实现。变换矩阵的数学描述的形式如下:
[1 0 0 1 tx ty]
其中,tx,ty就是在用户坐标系下,小页页面相对于大版版面坐标系下在x,y方向需要进行的平移量。
需要拼版的各种格式类型的小页页面在大版版面中的位置坐标的计算方式如下:
x’=x+tx
y’=y+ty
其中,x,y是小页页面中的坐标值,x’,y’是大版版面中的坐标值。小页页面中的坐标值是已知的,该小页页面在大版版面中的坐标值可以由用户设置,这样就可以很方便的计算出在用户坐标系下,小页页面相对于大版版面坐标系下在x,y方向需要进行的平移量tx,ty。
在将各种格式类型的小页页面、大版版面信息发送给各解释模块的同时,将各种格式类型的小页页面对应的变换矩阵同时发送,从而能够保证各小页页面在大版版面中获得正确的位置。
步骤(S2)中所述的为各解释模块分配小页页面的具体过程为:为每种格式类型的解释模块,分配与其格式类型相对应的小页页面,例如为PDF解释模块分配PDF格式的小页页面,为PS解释模块分配PS格式的小页页面等等。这样,就可对输入的多种格式类型的小页页面进行语法解释。
在上述步骤(S3)中,通过语法解释,可以将小页页面的页面内容分解为独立的一系列的基本图元对象,如文字对象,图形对象,图像对象,渐变对象以及它们的组合体。
所述中间文件,可以理解为能够被组装模块识别的一种类似于页面描述语言格式的文件。中间文件是独立于原始的各种格式类型的小页页面的,也就是说,该中间文件包含了其对应的解释模块所输入的原始小页页面的信息。
另外,各解释模块每解释完一个小页页面后,输出该小页页面所包括的解释信息,并在所有小页页面解释完成后,输出解释完成控制信号。
根据各解释模块输出的解释信息,确定组装参数,生成组装控制命令,并将组装参数及组装控制命令发送给所述组装模块。
所述解释信息包括各种格式类型的小页页面分别包含的色面个数以及色面名称。
所述组装参数包括:每次组装段的段高,总的分段数,每段每色面需要内存大小,每段总共需要内存大小。
根据计算机***资源情况,计算各个组装参数。每个组装段的大小主要根据计算机可用内存的大小来确定。
上述(S4)中,组装模块组装中间文件,生成大版版面点阵的具体过程包括;
(S41)计算每次组装段的高度Hs:
Hs=M/X/n
其中,Hs是每次组装段的高度,单位:象素;
M是计算机可用物理内存的大小,单位:兆字节;
X是最终物理大版版面X方向的宽度,单位:象素;
n是最终物理大版版面包含的色面个数。
(S42)组装控制模块根据计算出的分段组装中每次组装段的高度,结合大版版面的物理版心大小,可进一步计算出:总共分段数,每段每色面所需要内存大小,以及总共需要段内存的大小。下面描述一下这些参数的计算方法。
总共分段数Ns:
Ns=H/Hs 当H是Hs整数倍时;
Ns=H/Hs+1 其它。
其中,Ns是总段数;
H是大版版面物理版心的高度,单位:象素;
Hs是每次组装段的高度,单位:象素。
每段每色面需要内存大小Ms:
Ms=(W*B+7)/8
其中,Ms是每段每色面需要内存大小,单位:字节;
B是输出设备位深,一般取值为:1或8;
W是大版版面物理版心的宽度,单位:象素。
每段总共需要内存大小Mt:
Mt=Ms*n
其中,Mt是每段总共需要内存的大小,单位:字节;
Ms是每段每色面需要内存大小,单位:字节;
N是最终物理大版版面包含的色面个数。
在计算、申请分配完内存空间后,先对内存空间进行初始化。该初始化的工作只在组装模块进行组装前进行一次,之后的操作过程中并不进行初始化的工作。
所述步骤(S4)中,在组装模块组装各中间文件,生成大版版面点阵的过程中需要注意的是,组装模块只负责组装,并不对计算机内存进行任何初始化的操作。因此,在后一小页页面的类描述语言文件存储到存储单元中时,之前存储的小页页面的中间文件不会被覆盖,从而保证之前的其它小页页面的组装结果的有效性。
作为进一步优化,组装模块在进行分段组装时可以只对和当前组装段有交的小页页面进行点阵的组装,从而避免了组装过程中反复的扫描工作,提高混合拼版的效率。
组装过程中,组装模块根据所述组装参数,依次对组装段中的相应的小页页面的中间文件进行组装,并且每段组装的结果采用共享点阵的方式。这也就避免了光栅化后拼版***中,需要不断的对每个小页页面的光栅化数据进行反复读写计算机内存或硬盘的操作。
共享点阵的含义是指,每段组装的结果,即点阵数据,都将存放在共享存储单元中预先为其指定的内存中,即各大版版面点阵在存储到共享存储单元中时,按照已经确定的各小页页面在大版版面中的位置排列。最后将存储的大版版面点阵输出到输出设备上。
所述步骤(S5)还包括:在生成大版版面点阵后,还可读取各中间文件生成低分辨率预览图。通过此步骤,能及早地判断各解释模块对各小页页面的解释是否正确,进而在光栅化前可对解释不正确的小页页面重新进行解释,避免了光栅化前拼版方式在某小页解释出错后只能对整个大版页面进行解释的情况,进一步的提高混合拼版***的拼版效率。
同时,在现有技术中,对PDF文件和PostScript标记文件的解释,分别是由PDF光栅图像处理器的解释模块和PostScript光栅图像处理器的解释模块完成的。由于两种不同的光栅图像处理器的解释模块之间缺少必要的连接,这样,传统的光栅化处理方式无法将两者的功能结合起来,也就无法实现对PDF文件光栅化的同时添加PostScript标记。
但是,根据本发明所述方法,由于可以同时对PDF文件和PostScript标记文件进行解释,并生成统一格式的中间文件,因此,在解释模块进行解释的时候,就可以把PostScript标记加入到PDF文件中。
与本发明的混合拼版方法相对应,本发明还提供了一种混合拼版的***。
图4是本发明混合拼版***的结构图。如图4所示,本发明的混合拼版***包括:
解释模块分配单元,用于为解释模块设置拼版参数,并分配所述拼版参数、小页页面;
解释模块,与所述解释模块分配单元连接,用于根据设置的拼版参数,对小页页面进行语法解释,生成中间文件;
组装模块,与所述解释模块连接,用于组装所述解释模块生成的中间文件,并生成大版版面点阵;
共享存储单元,与所述组装模块连接,用于存储大版版面点阵。
其中,所述解释模块为至少两种不同格式类型的解释模块。
所述解释模块分配单元设置的拼版参数包括:大版版面参数以及各种格式类型的小页页面输出信息。所述的各种格式类型的小页页面输出信息是指各种格式类型的小页页面在大版版面的位置信息。计算各种格式类型的小页页面在大版版面的位置信息的过程如下:
各种格式类型的小页页面相对于大版版面的坐标***可能存在x,y方向的偏移,这个偏移操作可通过变换矩阵CTM(Transformation Matrix)实现。变换矩阵的数学描述形式如下:
[1 0 0 1 tx ty]
其中,tx,ty就是在用户坐标系下,小页页面相对于大版版面坐标系下在x,y方向需要进行的平移量。
需要拼版的各种格式类型的小页页面在大版版面中的位置坐标(x’,y’)的计算方式如下:
x’ =x+tx
y’ =y+ty
其中,x,y是小页页面中的坐标值,x’,y’是大版版面中的坐标值。小页页面中的坐标值是已知的,该小页页面在大版版面中的坐标值可以由用户设置。这样就可以很方便的计算出在用户坐标系下,小页页面相对于大版版面坐标系下在x,y方向需要进行的平移量tx,ty。根据计算出的各种格式类型的小页页面对应的变换矩阵,能够保证各小页页面在大版版面中获得正确的位置。
与光栅前拼版***相比,由于本发明所述混合拼版***设置了至少两种不同类型的解释模块,使得该混合拼版***可以对不同格式类型的小页页面进行语法解释,并生成各中间文件,因此这就突破了光栅化前拼版***在一次光栅化的过程中,只能对同一格式类型的小页页面进行语法解释,而不能同时对多种格式类型的小页页面进行语法解释的限制,从而提高混合拼版的效率。
与光栅化后拼版***相比,在拼版过程中,由组装模块读取各解释模块生成的各中间文件,组装生成大版版面点阵,并将大版版面点阵存储在共享存储单元中,这就使得该混合拼版***可将共享存储单元中存储的大版版面点阵输出到输出设备上。因此,这就避免了光栅化后拼版在组装过程中,需要分别对每个小页页面的光栅化数据不断的进行对计算机内存或硬盘的读写操作的情况,从而提高了混合拼版***的拼版效率。
如图5所示,在图4所示的混合拼版***的基础上,所述混合拼版***还包括打印控制单元、预览模块、存储控制单元。
其中,所述打印控制单元包括:
解释控制模块,与所述解释模块分配单元连接,用于确定拼版参数,并产生分配控制命令;
组装控制模块,与所述各解释模块连接,用于根据各解释模块输出的解释信息以及解释完成控制信号,确定组装参数,生成组装控制命令。
所述各解释模块输出的解释信息包括:小页页面包含的色面个数以及色面名称。
所述组装控制模块确定的组装参数包括:每次组装段的段高,总的分段数,每段每色面需要内存大小和每段总共需要内存大小。
计算所述组装参数的计算方式如下:
(1)计算每次组装段的高度Hs:
Hs=M/X/n
其中,Hs是每次组装段的高度,单位:象素;
M是计算机可用物理内存的大小,单位:兆字节;
X是最终物理大版版面X方向的宽度,单位:象素;
n是最终物理大版版面包含的色面个数。
(2)组装控制模块根据计算出的分段组装中每次组装段的高度,结合大版版面的物理版心大小,可进一步计算出:总共分段数,每段每色面所需要内存大小,以及总共需要段内存的大小。
总共分段数Ns:
Ns=H/Hs 当H是Hs整数倍时;
Ns=H/Hs+1 其它。
其中,Ns是总段数;
H是大版版面物理版心的高度,单位:象素;
Hs是每次组装段的高度,单位:象素。
每段每色面需要内存大小Ms:
Ms=(W*B+7)/8
其中,Ms是每段每色面需要内存大小,单位:字节;
B是输出设备位深,一般取值为:1或8;
W是大版版面物理版心的宽度,单位:象素。
每段总共需要内存大小Mt:
Mt=Ms*n
其中,Mt是每段总共需要内存的大小,单位:字节;
Ms是每段每色面需要内存大小,单位:字节;
N是最终物理大版版面包含的色面个数。
作为进一步改进,组装模块在进行分段组装时可以只对和当前组装段有交的小页页面进行点阵的组装,从而避免了混合拼版***反复的扫描工作,提高混合拼版的效率。
在本发明的混合拼版***中,各解释模块和组装模块在工作过程中彼此独立,不存在任何依赖关系。只有提交小页页面或者触发解释模块进行解释或组装模块进行组装,解释模块或组装模块才会开始工作。解释模块解释结束完一个小页页面后即刻停止解释,除非再有另一个小页页面提交;组装模块在组装完指定段中的小页页面内容后停止组装,除非接收到另一个组装触发。组装过程中,组装模块根据所述组装参数,依次对组装段中的相应的小页页面的中间文件进行组装,并且每段组装的结果采用共享点阵的方式。共享点阵的含义是指,每段组装的结果,即点阵数据,都将存放在共享存储单元中预先为其指定的内存中。
所述预览模块,与所述解释模块连接,用于读取各中间文件,生成低分辨率预览图,在这种情况下,该混合拼版***可根据中间文件生成低分辨率的预览图,及早的判断各解释模块对各小页页面的解释是否正确,进而在光栅化前可对解释不正确的小页页面重新进行解释,避免了光栅化前拼版方式在某小页解释出错后只能对整个大版页面进行解释的情况,进一步的提高混合拼版***的拼版效率。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。