图像生成装置、图像生成方法及打印装置.pdf

上传人:r7 文档编号:4579329 上传时间:2018-10-21 格式:PDF 页数:45 大小:2.06MB
返回 下载 相关 举报
摘要
申请专利号:

CN200910133031.3

申请日:

2009.03.31

公开号:

CN101551912A

公开日:

2009.10.07

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

G06T11/00

主分类号:

G06T11/00

申请人:

兄弟工业株式会社

发明人:

宫崎贞明

地址:

日本爱知县名古屋市

优先权:

2008.3.31 JP 2008-093188

专利代理机构:

中原信达知识产权代理有限责任公司

代理人:

孙志湧;穆德骏

PDF下载: PDF下载
内容摘要

本发明提供了一种图像生成装置、图像生成方法及打印装置。图像生成装置包括:提取单元,其从用于绘制椭圆放射参数中提取指定椭圆形状和渐变图案的参数;变换矩阵生成单元,其基于所述参数生成用于将椭圆形状变换为正圆形状的变换矩阵;逆矩阵计算单元,其计算变换矩阵的逆矩阵;正圆参数计算单元,其基于所述参数计算指定每个正圆的正圆参数,其中在正圆形状的内部使用均一的色值进行绘制;椭圆参数计算单元,其通过使用逆矩阵对正圆参数进行逆变换来计算指定每个椭圆的椭圆参数,其中在椭圆形状的内部使用均一的色值进行绘制;以及渐变生成单元,其从椭圆参数和渐变图案参数生成椭圆放射渐变。

权利要求书

1.  一种图像生成装置,包括:
目标数据接收单元,所述目标数据接收单元接收包括用于绘制椭圆放射渐变的图像绘制指令的目标数据;
获取单元,所述获取单元从接收到的目标数据获取所述图像绘制指令;
提取单元,所述提取单元从获取的图像绘制指令提取指定所述椭圆放射渐变的椭圆形状的椭圆形状参数和指定要在所述椭圆形状中绘制的渐变图案的渐变图案参数;
变换矩阵生成单元,所述变换矩阵生成单元基于所述椭圆形状参数生成用于将所述椭圆形状变换为正圆形状的变换矩阵;
逆矩阵计算单元,所述逆矩阵计算单元计算所述变换矩阵的逆矩阵;
正圆参数计算单元,所述正圆参数计算单元假定在通过所述变换矩阵对所述椭圆形状进行变换获得的所述正圆形状中绘制要在所述椭圆形状中绘制的渐变图案,基于提取的参数来计算指定正圆的正圆参数,其中将要使用均一的颜色绘制所述正圆中的每一个;
椭圆参数计算单元,所述椭圆参数计算单元通过使用所述逆矩阵对计算的正圆参数进行逆变换来计算指定椭圆的椭圆参数,其中将要使用均一的颜色绘制所述椭圆中的每一个;以及
渐变生成单元,所述渐变生成单元基于由所述椭圆参数计算单元计算的所述椭圆参数和由所述提取单元提取的所述渐变图案参数生成所述椭圆放射渐变。

2.
  根据权利要求1所述的图像生成装置,其中:
所述渐变图案参数包括与在所述椭圆形状中绘制的渐变的中心有关的位置信息,并且
所述图像生成装置进一步包括:
变换单元,所述变换单元通过使用所述变换矩阵变换与所述渐变的中心有关的所述位置信息;以及
设置单元,所述设置单元将由变换后的位置信息确定的所述渐变的变换后的中心设置在与所述正圆形状的中心点相交的坐标轴上,并且
所述正圆参数计算单元通过计算要沿着所述坐标轴使用均一的颜色绘制的每个正圆的中心位置来计算指定所述正圆的所述正圆参数。

3.
  根据权利要求1所述的图像生成装置,其中:
所述目标数据接收单元被构造为接收根据XML文件规格描述的目标数据,并且
所述图像生成装置进一步包括指令判断单元,所述指令判断单元判断如果所述获取的图像绘制指令包括放射渐变画笔元素,则所述获取的图像绘制指令包括用于绘制所述椭圆放射渐变的指令,以及
所述提取单元从所述放射渐变画笔元素提取所述椭圆形状的中心坐标、长轴半径和短轴半径作为所述椭圆形状参数,同时提取所述渐变的中心坐标作为所述渐变图案参数。

4.
  根据权利要求1-3中的任何一项所述的图像生成装置,其中,所述正圆参数计算单元计算指定所述正圆的向量数据作为所述正圆参数。

5.
  一种打印装置,所述打印装置包括生成图像的图像生成单元和将由所述图像生成单元生成的图像打印在打印介质上的打印单元,其中所述图像生成单元包括:
目标数据接收单元,所述目标数据接收单元接收包括用于绘制椭圆放射渐变的图像绘制指令的目标数据;
获取单元,所述获取单元从接收到的目标数据获取所述图像绘制指令;
提取单元,所述提取单元从获取的图像绘制指令提取指定所述椭圆放射渐变的椭圆形状的椭圆形状参数和指定要在所述椭圆形状中绘制的渐变图案的渐变图案参数;
变换矩阵生成单元,所述变换矩阵生成单元基于所述椭圆形状参数生成用于将所述椭圆形状变换到正圆形状的变换矩阵;
逆矩阵计算单元,所述逆矩阵计算单元计算所述变换矩阵的逆矩阵;
正圆参数计算单元,所述正圆参数计算单元假定在通过所述变换矩阵对所述椭圆形状进行变换获得的所述正圆形状中绘制要在所述椭圆形状中绘制的渐变图案,基于提取的参数来计算指定正圆的正圆参数,其中将要使用均一的颜色绘制所述正圆中的每一个;
椭圆参数计算单元,所述椭圆参数计算单元通过使用所述逆矩阵对计算的正圆参数进行逆变换来计算指定椭圆的椭圆参数,其中将要使用均一的颜色绘制所述椭圆中的每一个;以及
渐变生成单元,所述渐变生成单元基于由所述椭圆参数计算单元计算的所述椭圆参数和由所述提取单元提取的所述渐变图案参数生成所述椭圆放射渐变。

6.
  根据权利要求5所述的打印装置,其中:
所述渐变图案参数包括与在所述椭圆形状中绘制的所述渐变的中心有关的位置信息,并且
所述图像生成单元进一步包括:
变换单元,所述变换单元通过使用所述变换矩阵变换与所述渐变的中心有关的所述位置信息;以及
设置单元,所述设置单元将由变换后的位置信息确定的所述渐变的变换后的中心设置在与所述正圆形状的中心点相交的坐标轴上,并且
所述正圆参数计算单元通过计算要沿着所述坐标轴使用均一的颜色绘制的每个正圆的中心位置来计算指定所述正圆的所述正圆参数。

7.
  根据权利要求5所述的打印装置,其中:
所述目标数据接收单元被构造为能够接收根据XML文件规格描述的目标数据,并且
所述图像生成单元进一步包括指令判断单元,所述指令判断单元判断如果所述获取的图像绘制指令包括放射渐变画笔元素,则所述获取的图像绘制指令包括用于绘制所述椭圆放射渐变的指令,并且
所述提取单元从所述放射渐变画笔元素提取所述椭圆形状的中心坐标、长轴半径和短轴半径作为所述椭圆形状参数,同时提取所述渐变的中心坐标作为所述渐变图案参数。

8.
  根据权利要求5-8中的任何一项所述的打印装置,其中所述正圆参数计算单元计算指定所述正圆的向量数据作为所述正圆参数。

9.
  一种图像生成方法,包括:
目标数据接收步骤,所述目标数据接收步骤接收包括用于绘制椭圆放射渐变的图像绘制指令的目标数据;
获取步骤,所述获取步骤从接收到的目标数据获取所述图像绘制指令;
提取步骤,所述提取步骤从获取的图像绘制指令提取指定所述椭圆放射渐变的椭圆形状的椭圆形状参数和指定要在所述椭圆形状中绘制的渐变图案的渐变图案参数;
变换矩阵生成步骤,所述变换矩阵生成步骤基于所述椭圆形状参数生成用于将所述椭圆形状变换到正圆形状的变换矩阵;
逆矩阵计算步骤,所述逆矩阵计算步骤计算所述变换矩阵的逆矩阵;
正圆参数计算步骤,所述正圆参数计算步骤假定在通过所述变换矩阵对所述椭圆形状进行变换获得的所述正圆形状中绘制要在所述椭圆形状中绘制的渐变图案,基于提取的参数来计算指定正圆的正圆参数,其中将要使用均一的颜色绘制所述正圆中的每一个;
椭圆参数计算步骤,所述椭圆参数计算步骤通过使用由所述逆矩阵计算步骤计算的所述逆矩阵对计算的正圆参数进行逆变换来计算指定椭圆的椭圆参数,其中将要使用均一的颜色绘制所述椭圆中的每一个;以及
渐变生成步骤,所述渐变生成步骤基于由所述椭圆参数计算步骤计算的所述椭圆参数和由所述提取步骤提取的所述渐变图案参数生成所述椭圆放射渐变。

10.
  根据权利要求9所述的图像生成方法,其中:
所述渐变图案参数包括与在所述椭圆形状中绘制的所述渐变的中心有关的位置信息,并且
所述图像生成方法进一步包括:
变换步骤,所述变换步骤通过使用所述变换矩阵变换与所述渐变的中心有关的位置信息;以及
设置步骤,所述设置步骤将由所述变换后的位置信息确定的变换之后的所述渐变的中心位置设置在与所述正圆形状的中心点相交的坐标轴上,并且
所述正圆参数计算步骤通过计算要沿着所述坐标轴使用均一的色值绘制的每个正圆的中心位置来计算指定所述正圆的所述正圆参数。

11.
  根据权利要求9所述的图像生成方法,其中,
所述目标数据接收步骤被构造为接收根据XML文件规格描述的目标数据,并且
所述图像生成方法进一步包括指令判断步骤,所述指令判断步骤判断如果所述获取的图像绘制指令包括放射渐变画笔元素,则所述获取的图像绘制指令包括用于绘制所述椭圆放射渐变的指令,并且
所述提取步骤从所述放射渐变画笔元素提取所述椭圆形状的中心坐标、长轴半径和短轴半径作为所述椭圆形状参数,同时提取所述渐变的中心坐标作为所述渐变图案参数。

12.
  根据权利要求9-11中的任何一项所述的图像生成方法,其中,所述正圆参数计算步骤计算指定所述正圆的向量数据作为所述正圆参数。

说明书

图像生成装置、图像生成方法及打印装置
技术领域
本发明涉及一种图像生成装置、图像生成方法及打印装置。
背景技术
随着近年来使用计算机的文档准备系统和文档打印系统的高性能的发展,越来越多的用户要求实现复杂的绘图表现。例如,使用了大量的渐变(在规定的绘制区域中逐渐地改变颜色),用于表现效果、表现三维形状等等。
为了使用打印机打印此种渐变(即,具有渐变的图像)或者在显示器上显示此种渐变,必需生成位图格式的渐变图案并且将渐变图案绘制在页存储器或者帧存储器上。通过连续地绘制(重叠)在色值上略微不同的多个区域,同时逐渐地位移每个区域的绘制位置来执行渐变的绘制。由于不得不为绘制确定和指定(要用同一(均一的)色值绘制的)这样的区域中的每一个,所以这样的渐变的绘制要求复杂的计算。
在这样的情况下,已经提出了各种装置,以便于绘制渐变,同时减少与渐变的绘制有关的负荷。例如,在日本专利临时公开HEI11-31231(在下文中称其为“专利文献#1”)中描述的图像形成装置(能够绘制同心圆渐变)通过如下地执行渐变绘制来减少用于渐变绘制的负荷:首先为每根扫描线确定颜色变化点(在所述颜色变化点中的每个点处色值发生变化),然后用均一的色值绘制(在扫描线上的)两个颜色变化点之间的每根线段。
同时,近来已经将XML文件规格(在下文中简单地称其为“XPS”)制定为用于描述电子文档的PDL(页面描述语言),并且大量支持XPS的产品被投入市场。在XPS中,放射渐变画笔元素能够在文档中被描述为用于绘制椭圆放射渐变的图像绘制指令,由此使得更复杂的渐变表现成为可能。
发明内容
但是,虽然在专利文献#1中详细说明了绘制同心圆渐变的方法,但是文档(在下文中,也将会称其为目标数据)没有包括关于用于绘制椭圆放射渐变的技术的描述。如果在绘制椭圆放射渐变的处理中基于椭圆形状的轨迹计算颜色变化点(在颜色变化点周围,使用不同的色值来绘制),则由于表示椭圆形状的轨迹的等式已经很复杂了所以需要进行极其复杂的计算,由此与椭圆放射渐变的绘制有关的(绘制渐变的)装置上的负荷变得极重。
考虑到上述问题的做出的本发明在下述方面是有优势的,即,能够提供图像生成装置、图像生成方法及打印装置,其能够生成椭圆放射渐变,同时减少与渐变的绘制相关的负荷。
根据本发明的一方面,提供了一种图像生成装置,该图像生成装置被设置有:目标数据接收单元,该目标数据接收单元接收包括用于绘制椭圆放射渐变的图像绘制指令的目标数据;获取单元,该获取单元从接收到的目标数据获取图像绘制指令;提取单元,该提取单元从获取的图像绘制指令提取指定椭圆放射渐变的椭圆形状的椭圆形状参数和指定要在椭圆形状中绘制的渐变图案的渐变图案参数;变换矩阵生成单元,该变换矩阵生成单元基于椭圆形状参数生成用于将椭圆形状变换为正圆形状的变换矩阵;逆矩阵计算单元,该逆矩阵计算单元计算变换矩阵的逆矩阵;正圆参数计算单元,该正圆参数计算单元假定在通过变换矩阵对椭圆形状进行变换获得的正圆形状中绘制要在椭圆形状中绘制的渐变图案,基于提取的参数来计算指定正圆的正圆参数,将要使用均一的色值绘制正圆中的每一个;椭圆参数计算单元,该椭圆参数计算单元通过使用逆矩阵对计算的正圆参数进行逆变换来计算指定椭圆的椭圆参数,将要使用均一的色值绘制椭圆中的每一个;以及渐变生成单元,该渐变生成单元基于由椭圆参数计算单元计算的椭圆参数和由提取单元提取的渐变图案参数生成椭圆放射渐变。
使用如上所构造的图像生成装置,当用于绘制椭圆放射渐变的指令被输入作为图像绘制指令时,不直接根据从图像绘制指令提取的(指定椭圆形状的)椭圆形状参数计算椭圆参数(其指定下述椭圆,在椭圆形状的内部使用均一的色值(当使用多种颜色时的规定颜色的均一色值)绘制所述椭圆中的每一个),而是通过首先用正圆参数计算单元计算指定正圆(在通过从椭圆形状的变换获得的正圆形状内部使用均一的色值绘制所述正圆中的每一个)的正圆参数(例如,向量数据)然后用椭圆参数计算单元对获得的正圆参数进行逆变换来进行上述椭圆参数的计算。由于不得不考虑每个椭圆的长轴半径和短轴半径,所以根据(指定椭圆形状的)椭圆形状参数的椭圆参数(其指定下述椭圆,使用均一的色值绘制所述椭圆中的每一个)的直接计算要求复杂的计算。相反地,由于只需要考虑每个正圆的半径,所以能够容易地执行用于通过对椭圆形状进行变换获得的正圆形状的正圆参数(其指定下述正圆,其中的每一个被使用均一的色值绘制)的计算。还能够通过在椭圆形状的长轴方向或者短轴方向的简单扩大/缩小而容易地执行(从椭圆形状到正圆形状的)变换和(从正圆参数到椭圆参数的)逆变换。因此,能够显著地减少与椭圆放射渐变的绘制有关的负荷。由于从通过椭圆参数计算单元计算的(指定椭圆的)椭圆参数和通过提取单元提取的(指定渐变图案的)渐变图案参数,通过渐变生成单元生成椭圆放射渐变,所以能够容易地生成根据由被包括在图像绘制指令中的参数指定的渐变图案和椭圆形状的椭圆放射渐变。因此,能够生成椭圆放射渐变,同时减少与渐变的绘制有关的负荷。
优选地,渐变图案参数包括与在椭圆形状中绘制的渐变的中心有关的位置信息,并且图像生成装置进一步包括:变换单元,该变换单元通过使用变换矩阵变换与渐变的中心有关的位置信息,和设置单元,该设置单元将由变换后的位置信息确定的渐变的变换后的中心设置在与正圆形状的中心点相交的坐标轴上。正圆参数计算单元通过沿着坐标轴计算要使用均一的颜色绘制的每个正圆的中心位置来计算指定正圆的正圆参数。
使用如上所构造的图像生成装置,能够实现以下效果。在与在椭圆形状中绘制的渐变的中心有关的位置信息被包括在指定渐变图案的渐变图案参数中的情况下,通过设置单元将(由通过变换单元进行变换之后的(与渐变的中心有关的)位置信息确定的)变换之后的渐变的中心位置设置在与通过变换矩阵对椭圆形状进行变换获得的正圆形状的中心相交的坐标轴上。通过沿着坐标轴计算正圆的中心位置由正圆参数计算单元计算指定正圆(使用均一的色值绘制其中的每一个)的正圆参数。用该构造,能够通过使用由坐标轴(的坐标值)表示的一维函数计算正圆(使用均一的色值绘制其中的每一个)的中心位置。因此,能够减少(指定正圆的)正圆参数的计算所需要的计算量,从而,能够进一步减少与放射渐变的绘制有关的负荷。
优选地,目标数据接收单元被构造为接收根据XML文件规格描述的目标数据,并且图像生成装置进一步包括指令判断单元,该指令判断单元判断如果获取的图像绘制指令包括放射渐变画笔元素,则获取的图像绘制指令包括用于绘制椭圆放射渐变的指令。此外,提取单元从放射渐变画笔元素提取椭圆形状的中心坐标、长轴半径和短轴半径作为椭圆形状参数,同时提取渐变的中心坐标作为渐变图案参数。
使用如上所构造的图像生成装置,能够实现下面的效果。在由文档接收单元接收根据XPS(XML文件规格)描述的文档并且由获取单元从文档获取的图像绘制指令是放射渐变画笔元素的情况下,由指令判断单元判断图像绘制指令是用于绘制椭圆放射渐变的指令。由提取单元从放射渐变画笔元素提取椭圆形状的中心坐标、长轴半径和短轴半径作为(指定椭圆形状的)椭圆形状参数,同时提取渐变的中心坐标作为(指定要在椭圆形状中绘制的渐变图案)渐变图案参数。通过此种构造,当由文档接收单元接收的XPS文档中存在放射渐变画笔元素时,能够生成由放射渐变画笔元素指定的椭圆放射渐变,同时减少与渐变的绘制有关的负荷。
根据本发明的另一方面,提供了一种打印装置,该打印装置被设置有生成图像的图像生成单元和将由图像生成单元生成的图像打印在打印介质上的打印单元。该图像生成单元包括:目标数据接收单元,该目标数据接收单元接收包括用于绘制椭圆放射渐变的图像绘制指令的目标数据;获取单元,该获取单元从接收到的目标数据获取图像绘制指令;提取单元,该提取单元从获取的图像绘制指令提取指定椭圆放射渐变的椭圆形状的椭圆形状参数和指定要在椭圆形状中绘制的渐变图案的渐变图案参数;变换矩阵生成单元,该变换矩阵生成单元基于椭圆形状参数生成用于将椭圆形状变换到正圆形状的变换矩阵;逆矩阵计算单元,该逆矩阵计算单元计算变换矩阵的逆矩阵;正圆参数计算单元,该正圆参数计算单元假定在通过变换矩阵对椭圆形状进行变换获得的正圆形状中绘制要在椭圆形状中绘制的渐变图案基于提取的参数来计算指定下述正圆的正圆参数,将要使用均一的色值绘制正圆中的每一个;椭圆参数计算单元,该椭圆参数计算单元通过使用逆矩阵对计算的正圆参数进行逆变换来计算指定下述椭圆的椭圆参数,将要使用均一的色值绘制椭圆中的每一个;以及渐变生成单元,该渐变生成单元基于由椭圆参数计算单元计算的椭圆参数和由提取单元提取的渐变图案参数生成椭圆放射渐变。
使用如上所构造的打印装置,能够在打印介质(例如,纸)上打印椭圆放射渐变,同时获得与上面所描述的图像生成装置相类似的效果。
根据本发明的另一方面,提供了一种图像生成方法,该图像生成方法包括:目标数据接收步骤,该目标数据接收步骤接收包括用于绘制椭圆放射渐变的图像绘制指令的目标数据;获取步骤,该获取步骤从接收到的目标数据获取图像绘制指令;提取步骤,该提取步骤从获取的图像绘制指令提取指定椭圆放射渐变的椭圆形状的椭圆形状参数和指定要在椭圆形状中绘制的渐变图案的渐变图案参数;变换矩阵生成步骤,该变换矩阵生成步骤基于椭圆形状参数生成用于将椭圆形状变换到正圆形状的变换矩阵;逆矩阵计算步骤,该逆矩阵计算步骤计算变换矩阵的逆矩阵;正圆参数计算步骤,该正圆参数计算步骤假定在通过变换矩阵对椭圆形状进行变换获得的正圆形状中绘制要在椭圆形状中绘制的渐变图案,基于提取的参数来计算指定正圆的正圆参数,将要使用均一的色值绘制正圆中的每一个;椭圆参数计算步骤,该椭圆参数计算步骤通过使用由逆矩阵计算步骤计算的逆矩阵对计算的正圆参数进行逆变换来计算指定椭圆的椭圆参数,将要使用均一的颜色绘制椭圆中的每一个;以及渐变生成步骤,该渐变生成步骤基于由椭圆参数计算步骤计算的椭圆参数和由提取步骤提取的渐变图案参数生成椭圆放射渐变。
优选地,渐变图案参数包括与在椭圆形状中绘制的渐变的中心有关的位置信息,图像生成方法进一步包括变换步骤,该变换步骤通过使用变换矩阵变换与渐变的中心有关的位置信息,和设置步骤,该设置步骤将变换之后的渐变的中心位置设置在与正圆形状的中心点相交的坐标轴上,由变换后的位置信息确定该渐变的中心位置。正圆参数计算步骤通过沿着坐标轴计算要使用均一的色值绘制的每个正圆的中心位置来计算指定正圆的正圆参数。
优选地,目标数据接收步骤被构造为接收根据XML文件规格描述的目标数据,图像生成方法进一步包括指令判断步骤,该指令判断步骤判断如果获取的图像绘制指令包括放射渐变画笔元素,则获取的图像绘制指令包括用于绘制椭圆放射渐变的指令,并且提取步骤从放射渐变画笔元素提取椭圆形状的中心坐标、长轴半径和短轴半径作为椭圆形状参数,同时提取渐变的中心坐标作为渐变图案参数。
使用如上所构造的图像生成方法,能够达到与上面所描述的图像生成装置相类似的效果。
结合附图从下面详细描述的考虑,本发明的其它目的、优点和特征将更明显。
附图说明
图1是示出根据本发明实施例的(包括打印机控制单元的)打印机的电气构造的框图。
图2A是示出放射渐变画笔元素的示例和由该元素指定的参数的示意图。
图2B是示出根据由放射渐变画笔元素指定的参数绘制的椭圆放射渐变的示例的示意图。
图3A-3E是用于解释实施例中采用的用于绘制椭圆放射渐变的原理的示意图。
图4是用于解释计算正圆形状中的放射渐变中的正圆形状(在正圆形状内部用均一的颜色绘制正圆形状中的每一个)中的每一个的向量数据的方法的示意图。
图5是由打印机控制单元执行的打印处理的流程图。
图6是由打印机控制单元执行的椭圆放射渐变光栅化处理的流程图。
具体实施方式
现在参考附图,将会详细地描述根据本发明的优选实施例。图1是示出根据本发明的实施例的(包括打印机控制单元10的)打印机1的电气构造的框图。
打印机1(装备有喷墨头19的喷墨打印机)是一种用于通过从喷墨头19的喷嘴朝向片材(例如,纸)排出墨滴来执行打印的外围装置。打印机控制单元10是用于控制打印机1的全部操作同时生成打印机1要打印的图像数据的单元。
经由通信电缆或者无线通信将打印机1连接至PC(个人计算机)100。当接收到从PC 100传输的打印命令时,分析和打印命令一起从PC 100传输的数据(例如,根据XPS描述的电子文档(在下文中被称为“XPS文档”))并且由打印机控制单元10生成根据数据(例如,XPS文档)的图像数据,然后通过喷墨头19将根据生成的图像数据的图像打印在片材上。
在这样的情况下,如果放射渐变画笔元素(指示椭圆放射渐变的绘制的图像绘制指令)被包括在XPS文档中,则由打印机1的打印机控制单元10生成由放射渐变画笔元素指定的椭圆放射渐变。
打印机控制单元10被构造为能够生成椭圆放射渐变,同时减少与椭圆放射渐变的绘制有关的负荷。顺便说明,“椭圆放射渐变”意指椭圆形状中的渐变(即,具有渐变的图像),其中,从渐变的中心到椭圆形状的外围,色值放射状地变化(有多个椭圆区域,在每个椭圆区域中,使用均一的色值来绘制)。
接下来,将会在下面描述本实施例的打印机1的详细构造。如图1中所示,打印机装备有操作面板14、LCD(液晶显示器)15、馈送电机(LF电机)16、馈送电机驱动电路17、喷墨头19、头驱动器20和接口21、以及打印机控制单元10。
在这些组件之中,经由I/O端口23将操作面板14、LCD 15、馈送电机驱动电路17、头驱动器20以及接口21连接至打印机控制单元10。将馈送电机16连接至馈送电机驱动电路17。将喷墨头19连接至头驱动器20。
打印机控制单元10包括通过总线22连接在一起的CPU(中央处理器)11、ROM(只读存储器)12和RAM(随机读取存储器)13。总线22连接至I/O端口23,经由总线22在打印机控制单元10和被连接至I/O端口23的每个组件之间通信信号。
CPU 11是下述处理器,该处理器用于根据存储在ROM 12和RAM13中的程序和定值(数据)、经由接口21从PC 100接收到的各种信号等等控制打印机1并且生成要由打印机1打印的图像数据。
ROM 12是存储要由CPU 11执行的控制程序12a、要由控制程序12a参考的定值等等的不可重写的非易失性存储器。在控制程序12a中包括了执行打印处理(在图5的流程图中示出)和椭圆放射渐变光栅化处理(在图6的流程图中示出)所需要的程序。
当经由接口21从PC 100接收到打印命令时,由CPU 11运行用于打印处理(图5的流程图)的程序,由此分析和打印命令(例如,XPS文档)一起从PC 100接收到的数据并且生成根据数据的图像(图像数据)。
同时,在从PC 100接收到XPS文档并且接收到的XPS文档包括放射渐变画笔元素作为用于绘画椭圆放射渐变的指令的情况下,由CPU 11运行用于椭圆放射渐变光栅化处理(图6的流程图)的程序作为用于打印处理(图5)的程序的子程序。
通过运行用于椭圆放射渐变光栅化处理(图6)的程序,CPU 11生成用于由放射渐变画笔元素指定的椭圆形状到正圆形状(其中心位于原点)的仿射变换的变换矩阵,然后假定在通过椭圆形状的仿射变换获得的正圆形状中绘制要在椭圆形状中绘制的渐变图案,计算指定正圆(用均一的色值(即,均一的红/绿/蓝色值)绘制正圆中的每一个)中的每一个。CPU 10还计算生成的变换矩阵的逆矩阵,并且通过使用逆矩阵对正圆(在正圆形状内部使用均一的色值绘制正圆中的每一个)的向量数据进行逆仿射变换来计算指定椭圆(在椭圆形状内部使用均一的色值绘制椭圆中的每一个)的每一个的向量数据。通过基于椭圆的向量数据使用相应的色值(红/绿/蓝色值)连续地绘制椭圆中的每一个的内部,生成由放射渐变画笔元素指定的椭圆放射渐变。稍后将会参考图3A-3E详细地解释本实施例中采用的椭圆放射渐变的绘制的原理。
RAM 13是用于暂时地存储各种数据的可重写的易失性存储器。在RAM中保留诸如XPS数据存储器13a、渐变参数存储器13b、变换矩阵存储器13c以及页存储器13d的存储区域。
XPS数据存储器13a是用于暂时地存储和打印命令一起从PC 100接收到的XPS文档的存储器(存储区域)。在从PC 100接收到XPS文档之后,借助于DMA(直接存储器存取),接口21将接收到的XPS文档传输至RAM 13的XPS数据存储器13a,由此从PC 100接收到的XPS文档被存储在XPS数据存储器13a中。
当执行打印处理(请参见图5,稍后解释)时,由CPU 11读出被存储在XPS数据存储器13a中的XPS文档并且分析XPS文档的内容。CPU 11通过根据XPS文档的内容执行图像绘制处理来生成要由打印机1打印的图像数据,并且将生成的图像数据存储在页存储器13d中。
渐变参数存储器13b是用于存储被包括在XPS文档中的放射渐变画笔元素(作为指示椭圆放射渐变的绘制的图像绘制指令)的(指定椭圆形状的)椭圆形状参数和(指定要在椭圆形状中绘制的渐变图案的)渐变图案参数。
当放射渐变画笔元素被包括在存储在XPS数据存储器13a中的XPS文档中时,CPU 11执行椭圆放射渐变光栅化处理(图6)作为打印处理(图5)的一个步骤,由此从放射渐变画笔元素中提取(指定椭圆形状的)椭圆形状参数和(指定要在椭圆形状中绘制的渐变图案的)渐变图案参数并且将提取的参数存储在渐变参数存储器13b中。稍后将会参考图2A和图2B详细地解释被包括在XPS文档中的放射渐变画笔元素和被包括在该元素中的参数。
在存储在渐变参数存储器13b中的参数当中,(指定椭圆形状的)椭圆形状参数用于生成用于椭圆形状到正圆形状(其中心位于原点)的仿射变换的变换矩阵。
在存储在渐变参数存储器13b中的参数当中,通过使用上述变换矩阵对包括在(指定要在椭圆形状中绘制的渐变图案的)渐变图案参数中的渐变中心坐标(请参见图2A和图2B)进行仿射变换。
基于存储在渐变参数存储器13b中的渐变图案参数(包括进行仿射变换之后的渐变中心坐标),计算指定正圆(在通过仿射变换获得的正圆形状内部使用均一的色值绘制正圆中的每一个)中的每一个的向量数据。
变换矩阵存储器13c是用于存储用于从(由XPS文档中的放射渐变画笔元素指定的)椭圆形状到正圆形状的仿射变换的变换矩阵。通过执行椭圆放射渐变光栅化处理(请参见图6,稍后解释),CPU 11基于存储在渐变参数存储器13b中的椭圆形状参数生成用于从椭圆形状到正圆形状(其中心位于原点)的仿射变换的变换矩阵,然后将生成的变换矩阵存储在变换矩阵存储器13c中。
存储在变换矩阵存储器13c中的变换矩阵用于在存储在渐变参数存储器13b中的渐变图案参数中包括的渐变中心坐标(请参见图2A和图2B)的仿射变换。
在这样的情况下,如果仿射变换之后的渐变中心坐标不在Y轴的非负部分,则CPU 11通过将旋转元素添加至原始的变换矩阵来生成新的变换矩阵使得仿射变换之后的渐变中心坐标将会被放置在Y轴的非负部分。通过覆写原始的变换矩阵将最新生成的变换矩阵存储在变换矩阵存储器13c中。稍后将会参考图3A-3E解释旋转元素(其被添加至原始的变换矩阵)。
通过使用最终存储在变换矩阵存储器13c中的变换矩阵(即,已经添加了旋转元素的变换矩阵)再次对存储在渐变参数存储器13b中的渐变中心坐标(参见图2A和图2B)进行仿射变换。基于存储在渐变参数存储器13b中的渐变图案参数(包括再次经历仿射渐变之后的渐变中心坐标),计算指定正圆(在通过仿射变换获得的正圆形状内部,使用均一的色值绘制正圆中的每一个)中的每一个的向量数据。
对于最终存储在变换矩阵存储器13c中的变换矩阵(即,已经添加了转动元素的变换矩阵),由CPU 11计算逆矩阵。通过使用计算的逆矩阵对正圆(在正圆形状内部,使用均一的色值绘制正圆中的每一个)中的每一个的向量数据进行逆仿射变换,能够获得指定椭圆(在由放射渐变画笔元素指定的椭圆形状中使用均一的色值绘制椭圆中的每一个)中的每一个的向量数据。
页存储器13d是用于以位图格式存储要由打印机1打印的(由打印机控制单元10生成的)图像数据。在页存储器13d上光栅化通过椭圆放射渐变光栅化处理(图6)生成的椭圆放射渐变和根据数据(例如,XPS文档)生成的其它图像数据。
当通过根据和打印命令一起从PC 100接收到的数据的打印处理(图5),要由打印机1打印的图像数据已经在页存储器13d上被光栅化时,CPU 11驱动馈送电机驱动电路17和头驱动器20,并从而将与存储在(光栅化在)页存储器13d中的图像数据相对应的图像打印在片材上(例如,纸)。
操作面板14是包括用于让用户进行打印机设置、输入指令等等的输入按钮的用户接口。LCD 15是用于取决于操作面板14上的用户操作而显示各种信息(菜单、打印机1的操作状态等等)的显示装置。
馈送电机(LF电机)16是用于在馈送方向的下游或者上游传送(被放置在打印机中/上的规定位置的)片材的步进电机。由馈送电机驱动器电路17根据来自于CPU 11的指令执行馈送电机16的驱动控制。通过驱动馈送电机16,片材被传送到喷墨头19的下表面(面对喷嘴的尖头)。
作为具有多个喷嘴(未示出)和致动器(未示出)的打印头的喷墨头19,装备有与四种颜色的墨水(青色、洋红色、黄色、黑色)相对应的四个喷墨头单元。头驱动器20是用于驱动喷墨头19的致动器的驱动电路。
CPU 11基于存储在页存储器13d中的图像数据生成与四种颜色的墨水(青色、洋红色、黄色、黑色)相对应的多值数据并且经由门阵列(未示出)将生成的多值数据发送至头驱动器20。头驱动器20生成与从CPU 11供给的多值数据相对应的驱动脉冲并且将驱动脉冲供给与喷嘴相对应的致动器,由此选择性地从喷嘴排出墨滴并且将与存储在页存储器13d中的图像数据相对应的图像打印在片材上。
接口21是用于控制打印机1和PC 100之间的数据通信的单元。打印机1经由接口21从PC 100接收打印命令和指定要被打印的图像的数据(例如,XPS文档)。
在从PC 100接收了打印命令之后,接口21将(用于报告打印命令的接收的)中断信号发送至CPU 11。在从PC 100接收了XPS文档之后,接口21借助于DAM(直接存储器存取)将接收到的XPS文档传输至RAM 13中的XPS数据存储器13a。
在下文中,将会参考图2A和图2B解释被包括在XPS文档中的放射渐变画笔元素的细节。图2A是示出放射渐变画笔元素的示例和由该元素指定的参数的示意图。图2B是示出根据由放射渐变画笔元素指定的参数绘制的椭圆放射渐变的示例的示意图。
如图2A中所示,放射渐变画笔元素由多个属性和子元素组成。在属性和子元素当中,“中心(CENTER)”属性31、“半径X(RadiusX)”属性33和“半径Y(RadiusY)”属性34给出椭圆形状参数(指定椭圆形状)。同时,“渐变原点(Gradientorigin)”属性32和放射渐变画笔.渐变停止(RadialGradientBrush.GradientStop)元素35给出(指定要在椭圆形状中绘制的渐变图案的)渐变图案参数。
“中心”属性31指定图2B中所示的椭圆形状的中心的坐标(Cx,Cy)。这里,“椭圆形状的中心”意指椭圆形状的长轴和短轴彼此相交的点。
“渐变原点”属性32指定图2B中所示的渐变的中心的坐标(Gx,Gy)(即,渐变中心坐标)。这里,“渐变的中心”意指放射渐变的颜色变化开始的点(即,渐变的开始点)。
放射渐变表现为使得其颜色从其中心到由放射渐变画笔元素指定的椭圆形状的外围上的点(作为渐变中颜色变化的终点(渐变的终点))逐渐地变化。
附带地,按照由在由XPS文档指定的打印区域的左上角处限定的原点处以直角彼此相交的两个坐标轴(X轴,Y轴)表示的正交坐标系描述由“中心”属性31和“渐变原点”属性32给出的参数(请参见图2B)。
在该正交坐标系中,(正)X轴在打印区域的水平方向上(从左到右)延伸,而(正)Y轴在打印区域的竖直方向上(从上到下)延伸。
在图2A中所示的放射渐变画笔元素的示例中,通过“中心”属性31将椭圆形状的中心坐标指定为(150,150),而通过“渐变原点”属性32将渐变的中心坐标指定为(200,170)。
同时,“半径X”属性33指定X轴方向上的椭圆形状的半径Rx(在下文中被称为“X半径”),并且“半径Y”属性34指定Y轴方向上的椭圆形状的半径Ry(在下文中被称为“Y半径”)。
附带地,在X轴方向和Y轴方向上设置(由“半径X”属性33和“半径Y”属性34的参数指定的)椭圆形状的长/短轴。
因此,Rx或者Ry中较小的一个表示椭圆形状的短轴半径,而Rx或者Ry中的较大的一个表示椭圆形状的长轴半径。如图2B中所示,X轴方向和Y轴方向上的椭圆形状的长度分别为2Rx和2Ry。
在图2A中所示的放射渐变画笔元素的示例中,通过“半径X”属性33将X半径指定为“140”,并且通过“半径Y”属性34将Y半径指定为“100”。
同时,放射渐变画笔.渐变停止元素35给出指定渐变的色值的参数。元素35包括两个子元素:渐变停止(GradientStop)元素35a和35b。每个渐变停止元素(35a和35b)包括“颜色(color)”属性和“偏移量(offset)”属性。
“颜色”属性指定在由“偏移量”属性指定的点处的红色、绿色以及蓝色的色值。在“颜色”属性中,色值被描述为六位十六进制数字,其中,最高有效位的两位指定红色值(Rs或者Re),接下来的两位指定绿色值(Gs或者Ge),并且最低有效位的两位指定蓝色值(Bs或者Be)。
“偏移量”属性指定具有由“颜色”属性指定的色值的点。例如,当“偏移量”属性的值为“0”时,意味着由“颜色”属性指定的色值是渐变的中心(起点)处的色值。当“偏移量”属性的值为“1”时,意味着由“颜色”属性指定的色值是由放射渐变画笔元素指定的椭圆形状的外围上的点处(即,在渐变的终点处)的色值。
因此,由渐变停止元素35a指定渐变的中心(起点)处红色、绿色以及蓝色的色值(Rs,Gs,Bs)(请参见图2B),而由(渐变停止元素35b指定椭圆形状的外围上的点处(即,在渐变的终点处)的红色、绿色以及蓝色的色值(Re,Ge,Be)(请参见图2B)。
在图2A中所示的放射渐变画笔元素的示例中,通过渐变停止元素35a将渐变的中心(起点)处的红/绿/蓝色值(Rs,Gs,Bs)指定为(FF)16,(FF)16和(00)16。同时,通过渐变停止元素35b将椭圆形状的外围上的点处(即,渐变的终点处)的红/绿/蓝色值(Re,Ge,Be)指定为(00)16,(00)16和(FF)16。附带地,值“(FF)16”表示十六进制表示法中的“FF”(十进制表示法中的“255”),并且值“(00)16”表示十六进制表示法中的“00”(十进制表示法中的“0”)。
使用包括这样的属性和子元素的放射渐变画笔元素,从由“中心”属性31给出的椭圆形状的中心坐标(Cx,Cy)确定(由“中心”属性31给出的椭圆形状的中心坐标(Cx,Cy)指定)打印区域中的椭圆形状的绘制位置,并且从由“半径X”属性33和“半径Y”属性34给出的椭圆形状的X半径和Y半径确定(由“半径X”属性33和“半径Y”属性34给出的椭圆形状的X半径和Y半径指定)椭圆形状的外围的形状和尺寸,如图2B中所示。从上述信息,确定了打印区域中椭圆形状的外围上的点的位置。
同时,由“渐变原点”属性32给出的渐变中心坐标(Gx,Gy)来确定(指定)打印区域中渐变的中心的位置。
取决于渐变的中心和椭圆形状的外围上的各个点之间的距离,通过使用由渐变停止元素35a指定的渐变的中心(起点)处的红/绿/蓝色值(Rs,Gs,Bs)和由渐变停止元素35b指定的椭圆形状的外围上的点处(即,渐变的终点处)的红/绿/蓝色值(Re,Ge,Be)通过插值确定椭圆形状中的渐变图案。
在下面,将会参考图3A-3E解释本实施例中采用的用于椭圆放射渐变的绘制的原理。图3A-3E是用于解释椭圆放射渐变的绘制的原理的示意图。在下述解释中,下面所示的3×3矩阵将被表示为(a,b,c,d,e,f)。
(a,b,c,d,e,f)=a,b,0c,d,0e,f,1]]>
在本实施例中,当和打印命令一起从PC 100接收到的数据是XPS文档并且XPS文档包括放射渐变画笔元素时,打印机控制单元10首先从放射渐变画笔元素提取图3A中所示的参数,即,指定椭圆形状的椭圆形状参数(即,椭圆形状的中心坐标(Cx,Cy)、X半径Rx和Y半径Ry)以及指定要在椭圆形状中绘制的渐变图案的渐变图案参数(即,渐变的中心坐标(Gx,Gy),渐变的中心(起点)处的色值(Rs,Gs,Bs)以及椭圆形状的外围(渐变的终点)处的色值(Re,Ge,Be))(图3A中的S1)。
附带地,图3A是示出根据由放射渐变画笔元素指定的参数绘制的椭圆放射渐变的示例的示意图(几乎与图2B相同)。
接下来,根据下面的等式(1),通过使用提取的椭圆形状参数,打印机控制单元10生成用于将图3A中所示的椭圆形状到图3B中所示的正圆形状(其半径是Rx且中心坐标是(0,0))的仿射变换的变换矩阵A(图3B中的S2):
A=(1,0,0,Rx/Ry,-Cx,-(Rx/Ry)·Cy)       …(1)
附带地,虽然在本实施例中解释了将图3A中所示的椭圆形状仿射变换成图3B中所示的正圆形状(具有半径Rx和中心坐标(0,0))的情况,但是图3A中所示的椭圆形状也可以被仿射变换成具有半径Ry和中心坐标(0,0)的正圆形状,或者具有半径R(任意值)和中心坐标(0,0)的正圆形状。
在前一种的情况下,根据下面的等式(2)生成变换矩阵A。在后一种情况下,根据下面的等式(3)生成变换矩阵A。
A=(Ry/Rx,0,0,1,-(Ry/Rx)·Cx,-Cy)    …(2)
A=(R/Rx,0,0,R/Ry,-(R/Rx)·Cx,-(R/Ry)·Cy)    …(3)
接下来,打印机控制单元10使用由等式(1)生成的变换矩阵A对图3A中所示的渐变中心坐标(Gx,Gy)进行仿射变换(图3B中的S3)。然后,打印机控制单元10判断仿射变换之后的渐变的中心(请参见图3B)是否位于Y轴的非负部分上。如果仿射变换之后的渐变中心不在Y轴的非负部分上,则打印机控制单元10计算正Y轴与连接原点(0,0)和渐变中心的线段之间的角度θ(请参见图3B)(图3B中的S4)。
接下来,根据下面的等式(4)打印机控制单元10生成用于围绕原点旋转角度θ(仿射变换)的变换矩阵B1,然后如下面等式(5)所示,通过将变换矩阵A乘以变换矩阵B1生成变换矩阵B(即,已经添加了旋转元素的变换矩阵A)(图3C中的S5)。
B1=(cosθ,sinθ,-sinθ,cosθ,0,0)   …(4)
B=A·B1   …(5)
另一方面,如果使用由等式(1)生成的变换矩阵A进行的仿射变换之后的渐变中心位于Y轴的非负部分上,则等式(1)的变换矩阵A直接被用作变换矩阵B。
接下来,打印机控制单元10通过使用变换矩阵B再次仿射变换图3A中所示的渐变中心坐标(Gx,Gy),由此图3A中所示的椭圆形状被变换成具有半径Rx和中心坐标(0,0)的正圆形状,并且渐变中心被放置在如图3C中所示的Y轴的非负部分。
接下来,假定为图3C中所示的正圆形状(在图3C中所示的正圆形状中)绘制要在椭圆形状中绘制的渐变图案,打印机控制单元10计算指定正圆中的每一个的向量数据,在正圆形状内部使用均一的色值绘制该正圆中的每一个(图3C中的S6)。
将每个正圆的向量数据和用于每个正圆内部的绘制的色值(即,红/绿/蓝色值)存储在RAM 13中,同时使它们与每个正圆相关联。附带地,稍后将会参考图4解释计算正圆(在正圆形状的内部使用均一的色值绘制正圆中的每一个)的向量数据的方法。
接下来,打印机控制单元10从RAM 13中读出已经为图3C中所示的正圆形状所计算的正圆(在正圆形状的内部使用均一的色值绘制正圆中的每一个)的向量数据,并且对该向量数据进行逆仿射变换(图3C中的S7)。使用作为变换矩阵B(用于图3A中所示的椭圆形状到图3C中所示的正圆形状的仿射变换)的逆的变换矩阵执行逆仿射变换。
因此,通过对已经为图3C中所示的正圆形状所计算的正圆(在正圆形状的内部使用均一的色值绘制正圆中的每一个)中的每一个的向量数据进行逆仿射变换,获得了指定椭圆(在由放射渐变画笔元素指定的椭圆形状内部使用均一的色值绘制椭圆中的每一个)中的每一个的向量数据,如图3D中所示。
接下来,打印机控制单元10(基于获得的椭圆的向量数据识别椭圆中的每一个)如下地执行光栅化:读出用于每个椭圆的色值(红/绿/蓝色值)(其已经被存储在RAM 13中,同时与按照逆仿射变换对应于椭圆的正圆相关联),使用从RAM 13中读出的色值连续地绘制每个椭圆的内部,并且将绘制的结果(即,图3E中所示的椭圆放射渐变)以位图的格式存储在页存储器13d中(图3D中的S8)。
如上,通过使用变换矩阵B的仿射变换将由放射渐变画笔元素指定的椭圆形状变换成正圆形状,并且计算正圆(在正圆形状的内部使用均一的色值绘制正圆中的每一个)中的每一个的向量数据。通过使用变换矩阵B的逆矩阵对计算的正圆中的每一个的向量数据进行逆仿射变换,获得椭圆(在由放射渐变画笔元素指定的椭圆形状内部使用均一的色值绘制椭圆中的每一个)中的每一个的向量数据。
因此,通过基于获得的椭圆的向量数据用相应的色值连续地绘制椭圆中的每一个的内部,能够生成由放射渐变画笔元素指定的椭圆放射渐变。
在这里,将会参考图4解释计算指定正圆形状中的放射渐变中的正圆(在正圆形状内部用均一的色值绘制正圆中的每一个)中的每一个的向量数据的方法。图4是用于解释计算正圆中的每一个的向量数据的方法的示意图。
独立地生成红色、绿色以及蓝色(光的三原色)的放射渐变,以生成放射渐变。在下面的描述中,将会描述计算用于生成红色放射渐变的正圆的向量数据的方法。对于绿色放射渐变和蓝色放射渐变,以相同的方式执行正圆的向量数据的计算,并从而为了简明扼要省略了重复的解释。
在正圆(在正圆形状的内部使用均一的色值绘制正圆中的每一个)的向量数据的计算中,在椭圆放射渐变中渐变中心(起点)处的(红)色值Rs被认为是(被放置在Y轴的非负部分上的)正圆放射渐变中仿射变换之后的渐变中心(起点)处的(红)色值。
类似地,在椭圆放射渐变中椭圆形状的外围(渐变的终点)处的(红)色值Re被认为是正圆放射渐变中由仿射变换获得的正圆形状的外围(渐变的终点)处的(红)色值。
在本实施例中,通过从正圆形状的外围连续地计算(要使用均一的色值绘制的)每个正圆的中心坐标和半径,然后基于该中心坐标和半径计算每个正圆上的每个点的坐标,从而获得正圆的向量数据。
具体地,打印机控制单元10首先将正圆形状(正圆0)的外围的中心坐标C0和半径r0分别确定为(0,0)和Rx。接下来,打印机控制单元10通过基于中心坐标C0和半径r0计算正圆0上的每个点的坐标来计算正圆0的向量数据。同时,打印机控制单元10将用于正圆0的内部的绘制的(红)色值R0设置为正圆形状的外围(渐变的终点)处的色值Re。
接下来,打印机控制单元10通过使用下面的等式(6)-(9)计算内正圆1(其就在正圆0的内部并且不同于正圆0的色值R0的色值R1被用于所述内正圆1)的中心坐标C1(C1x,C1y)、半径r1和色值R1:
C1x=0  …(6)
C1y=G′y·k/(Re-Rs)  …(7)
r1=r0-r0·k/(Re-Rs)  …(8)
R1=Re-k  …(9)
其中,“G′y”表示通过变换矩阵B进行的仿射变换之后的渐变中心的Y坐标,并且“k”表示在两个相邻的正圆之间的色值中的变化(差)。
在本实施例中,当渐变中心处的色值Rs大于正圆形状的外围处的色值Re时色值变化k被设为负值(例如,-1),或者当渐变中心处的色值Rs小于正圆形状的外围处的色值Re时色值变化k被设为正值(例如,+1)。附带地,考虑到人类感觉、颜色空间的特性、打印机1的颜色重现性能等等,可以适当地设置色值变化k的绝对值使得渐变中的颜色变化看起来平滑。
接下来,打印机控制单元10通过基于由等式(6)-(8)计算的正圆1的中心坐标C1(C1x,C1y)和半径r1计算正圆1上的每个点的坐标来计算正圆1的向量数据。
此后,打印机控制单元10从外部开始连续地计算每个后面的(里面的)正圆(2,3,......,n,......)的中心坐标、半径和色值,并且通过基于正圆的中心坐标和半径计算正圆上的每个点的坐标来计算每个正圆(2,3,......,n,......)的向量数据。重复该处理直到完成了用色值Rs绘制的正圆的向量数据的计算。附带地,通过使用下面的等式(10)-(13)计算每个(里面的)正圆n的中心坐标(Cnx,Cny)、半径rn和色值Rn:
Cnx=0  …(10)
Cny=G′y·n·k/(Re-Rs)  …(11)
rn=r0-r0·n·k/(Re-Rs)  …(12)
Rn=Re-n·k  …(13)
每个正圆n的向量数据和色值Rn被存储在RAM 13中作为如上所述的正圆n的参数。
通过上述方法计算指定正圆形状中放射渐变中的正圆(在正圆形状内部使用均一的色值绘制正圆中的每一个)中的每一个的向量数据。在本实施例中,通过使用变换矩阵B进行仿射变换之后已经将正圆放射渐变中的渐变中心放置在Y轴的非负部分,并从而在具有均一的色值的每个正圆的中心坐标的计算中能够将X坐标固定为“0”。
换言之,要使用均一的色值绘制的每个正圆形状的中心坐标能够被作为一维函数(仅使用Y坐标)来计算,由此能够减少每个正圆的向量数据的计算所需要的计算量,由此能够适当地减少与放射渐变的绘制有关的负荷。
此外,通过由通过变换矩阵B进行的仿射变换使渐变中心被放置在Y轴的非负部分,仿射变换之后的渐变中心能够被固定在正圆形状的中心或者正圆形状的中心的正侧上的位置。
在下面,将会参考图5描述由打印机控制单元10执行的打印处理的处理流程。图5是打印处理的流程图。当CPU 11检测到(从接口21发送的用于通知CPU 11打印命令的接收的)中断信号时,启动下述打印处理,所述打印处理用于基于经由接口21从PC 100(伴随着打印命令)接收到的数据生成要由打印机1打印的图像数据并且打印出生成的图像数据。
在打印处理的开始,打印机控制单元10判断从PC 100伴随着打印命令接收到的数据是否为XPS文档(根据XPS描述的文档)(S11)。当数据是XPS文档(S11:是)时,打印机控制单元10(CPU 11)从XPS数据存储器13a读出(已经借助于DMA(直接存储器存取)从接口21传输到XPS数据存储器13a的)XPS文档,分析XPS文档的内容,并且获取包括在XPS文档中的一个元素(S12)。
接下来,打印机控制单元10判断S12中获取的元素是否为放射渐变画笔元素(S13)。当获取的元素是放射渐变画笔元素(S13:是)时,(判断获取的元素是用于绘制椭圆放射渐变的指令时)打印机控制单元10执行将会在后面加以描述的椭圆放射渐变光栅化处理(图6)(S14)。
通过椭圆放射渐变光栅化处理,能够生成由放射渐变画笔元素指定的椭圆放射渐变,同时减少与椭圆放射渐变的绘制有关的负荷。在页存储器13d上光栅化生成的椭圆放射渐变。在步骤S14之后,处理进入步骤S16。
另一方面,当在S12中获取的元素不是放射渐变画笔元素(S13:否)时,打印机控制单元10执行与获取的元素相对应的光栅化处理,将通过光栅化处理生成的图像数据存储在页存储器13d中(S15),并且进入步骤S16。
在步骤S16中,打印机控制单元10判断XPS文档是否还包括在S12中还没有提取的(获取的)元素。当XPS文档包括还没有提取的元素(S16:是)时,打印机控制单元10返回到步骤S12以为下一个元素重复步骤S12-S16。
重复步骤S12-S16直到在S12中提取了XPS文档中包括的所有元素并且为所有的元素完成了光栅化处理(S14或者S15)(S16:否),由此由XPS文档指定的图像数据在页存储器13d上被光栅化。
在S12中已经提取了XPS文档中包括的所有元素并且已经为所有的元素完成了光栅化处理(S14或者S15)的情况下(S16:否),处理进入步骤S18。
同时,当在S11中从PC 100伴随着打印命令接收到的数据不是XPS文档(S11:否)时,打印机控制单元10根据伴随着打印命令接收到的数据的内容生成(用于打印的)图像数据,然后将生成的图像数据存储在页存储器13d中(S17)。其后,处理进入步骤S18。
[00124]在步骤S18中,打印机控制单元10基于在S11-S17中生成并存储在页存储器13d中的图像数据将信号发送到馈送电机驱动电路17和头驱动器20,由此驱动馈送电机16和喷墨头19并且将根据图像数据的图像打印在片材上(图5的打印处理完成)。
通过上面解释的打印处理(图5),在从PC 100接收了打印命令之后,基于伴随着打印命令的数据能够生成图像数据,并且能够将根据生成的图像数据的图像打印在片材上。
在打印处理中,当从PC 100接收XPS文档作为伴随着打印命令的数据时,分析XPS文档。当放射渐变画笔元素被包括在XPS文档中时,执行椭圆放射渐变光栅化处理(在下面解释),由此允许打印机控制单元10生成由放射渐变画笔元素指定的椭圆放射渐变,同时减少与椭圆放射渐变的绘制有关的负荷。
接下来,将会参考图6解释由打印机控制单元10执行的作为图5中的步骤S14的椭圆放射渐变光栅化处理。图6是椭圆放射渐变光栅化处理的流程图。
当在由打印机控制单元10(CPU 11)执行的打印处理(图5)中伴随着打印命令的数据是XPS文档并且放射渐变画笔元素被包括在XPS文档中描述的元素中时,执行用于生成由被包括在XPS文档中的放射渐变画笔元素指定的椭圆放射渐变的椭圆放射渐变光栅化处理。将会在下面联系用于图3A-3E中所示的椭圆放射渐变的绘制的前述原理来解释椭圆放射渐变光栅化处理(图6)。
在椭圆放射渐变光栅化处理的开始,打印机控制单元10从放射渐变画笔元素中提取椭圆形状的中心坐标(Cx,Cy)、X半径Rx以及Y半径Ry(请参见图2A和图2B)作为(指定椭圆形状的)椭圆形状参数,并且将提取的参数存储在渐变参数存储器13b中(S21)。
接下来,打印机控制单元10从放射渐变画笔元素中提取渐变的中心坐标(Gx,Gy)、渐变的中心(起点)处的红/绿/蓝色值(Rs,Gs,Bs)和椭圆形状的外围(渐变的终点)处的红/绿/蓝色值(Re,Ge,Be)(请参见图2A和图2B)作为(指定要在椭圆形状中绘制的渐变图案的)渐变图案参数并且将提取的参数存储在渐变参数存储器13b中(S22)。这些步骤S21和S22对应于图3A中所示的步骤S1。
接下来,打印机控制单元10读出存储在渐变参数存储器13b中的椭圆形状参数,并且通过使用等式(1)生成用于从由放射渐变画笔元素指定的椭圆形状(请参见图3A)到具有半径Rx和中心坐标(0,0)的正圆形状(参见图3B)的仿射变换的变换矩阵A,并且将生成的变换矩阵A存储在变换矩阵存储器13c中(S23)。
附带地,步骤S23可以被构造为通过使用等式(2)生成不同的变换矩阵A并且将生成的变换矩阵A存储在变换矩阵存储器13c中以便于将椭圆形状仿射变换到具有半径Ry和中心坐标(0,0)的正圆形状,如上所述。
步骤S23也可以被构造为通过使用等式(3)生成不同的变换矩阵A并且将生成的变换矩阵A存储在变换矩阵存储器13c中以便于将椭圆形状仿射变换到具有半径R(任意值)和中心坐标(0,0)的正圆形状,如上所述。
该步骤S23对应于图3B中所示的步骤S2。
在生成变换矩阵A并且将其存储在变换矩阵存储器13c中(S23)之后,打印机控制单元10使用存储在变换矩阵存储器13c中的变换矩阵A对存储在渐变参数存储器13b中的渐变中心坐标(Gx,Gy)进行仿射变换(S24)。该步骤S24对应于图3B中所示的步骤S3。
接下来,打印机控制单元10判断通过S24的仿射变换获得的渐变中心坐标是否位于Y轴的非负部分上(S25)。当仿射变换之后的渐变中心坐标位于Y轴的非负部分上(S25:是)时,为了使用变换矩阵A直接作为变换矩阵B,打印机控制单元10保持变换矩阵A存储在变换矩阵存储器13c中(S26)。其后,处理进入步骤S28。
另一方面,当仿射变换之后的渐变中心坐标没有位于Y轴的非负部分上(S25:否)时,打印机控制单元10计算正Y轴和连接仿射变换之后的渐变中心与原点(0,0)的线段之间的角度θ(请参见图3B)(图3B中所示的步骤S4),通过使用等式(4)和(5)将围绕原点(0,0)旋转角度θ的旋转操作(即,前述的旋转元素)添加至存储在变换矩阵存储器13c中的变换矩阵A来生成变换矩阵B(图3C中所示的步骤S5),并且通过覆写变换矩阵A将生成的变换矩阵B存储在变换矩阵存储器13c中(S27)。其后,处理进入步骤S28。
通过如上地执行步骤S25-S27,能够生成变换矩阵B,该变换矩阵B用于将由放射渐变画笔元素指定的椭圆形状(请参见图3A)仿射变换到具有半径Rx和中心坐标(0,0)的正圆形状并且将渐变中心放置在Y轴的非负部分上(请参见图3C)。
在步骤S28中,打印机控制单元10通过这次使用变换矩阵B对存储在渐变参数存储器13b中的渐变中心坐标(Gx,Gy)进行仿射变换,由此将渐变的中心放置在Y轴的非负部分上。
接下来,假定在图3C中所示的正圆形状(具有半径Rx和中心坐标(0,0))中绘制要在椭圆形状中绘制的渐变图案,打印机控制单元10计算指定正圆中的每一个的向量数据,在正圆形状内部使用均一的色值绘制所述正圆中的每一个(S29)。
在该步骤中,打印机控制单元10从渐变参数存储器13b中读出位于渐变的中心(起点)处的红/绿/蓝色值(Rs,Gs,Bs),并且将色值(Rs,Gs,Bs)作为仿射变换之后被放置在Y轴的非负部分上的渐变的中心(起点)处的红/绿/蓝色值。
同时,打印机控制单元10还从渐变参数存储器13b中读出椭圆形状的外围(即,渐变的终点)处的红/绿/蓝色值(Re,Ge,Be),并且将色值(Re,Ge,Be)作为通过仿射变换获得的正圆形状的外围(即,渐变的终点)处的红/绿/蓝色值。
通过参考图4的上面解释的计算方法,打印机控制单元10计算正圆(在正圆形状的内部使用均一的色值绘制正圆中的每一个)的向量数据并且将每个正圆的向量数据和用于每个正圆内部的绘制的色值(红/绿/蓝色值)存储在RAM 13中同时使它们与每个正圆相关联。该步骤S29对应于图3C中所示的步骤S26。
在接下来的步骤S30中,打印机控制单元10计算在S26或者S27中已经被保持或者保存在变换矩阵存储器13c中的变换矩阵B的逆矩阵C。通过使用逆矩阵C,打印机控制单元10对在S29中存储在RAM13中的每个正圆的向量数据进行逆仿射变换(S31),由此获得指定与图3D中所示的椭圆(在由放射渐变画笔元素指定的椭圆形状内部使用均一的色值绘制椭圆中的每一个)类似的椭圆中的每一个的向量数据。该步骤S31对应于图3C中所示的步骤S7。
其后,(基于通过仿射变换获得的向量数据识别椭圆(使用均一的色值绘制椭圆中的每一个)中的每一个的)打印机控制单元10读出用于每个椭圆的色值(红/绿/蓝色值)(其已经被存储在RAM13中,同时与按照逆仿射变换与椭圆对应的正圆相关联)并且使用从RAM 13中读出的色值连续地绘制每个椭圆的内部(S32)。
通过此步骤,能够生成由放射渐变画笔元素指定的椭圆放射渐变,如图3E中所示。通过以位图的格式将放射渐变存储在页存储器13d中执行光栅化。该步骤S32对应于图3D中所示的步骤S8。
如上,在由打印机控制单元10执行的椭圆放射渐变光栅化处理中,计算正圆(使用均一的色值绘制正圆中的每一个)的向量数据用于通过对椭圆形状的仿射变换获得的正圆形状。如果从放射渐变画笔元素中提取的参数直接计算椭圆(在椭圆形状的内部使用均一的色值绘制)中的每一个的向量数据,需要复杂的计算(考虑每个椭圆的长轴半径和短轴半径)。在本实施例中,由于只考虑了每个正圆的半径,所以能够容易地执行(每个正圆的)向量数据的计算。通过在椭圆形状的长轴方向或者短轴方向简单扩大/缩小和简单旋转能够容易地执行仿射变换(从椭圆形状到正圆形状)和逆仿射变换(从正圆的向量数据到椭圆的向量数据)。因此,能够显著地减少与椭圆放射渐变的绘制有关的负荷。
因为通过使用相应的色值(红/绿/蓝色值)绘制(由通过对正圆的向量数据进行仿射变换获得的椭圆的向量数据确定的)椭圆中的每一个的内部来生成椭圆放射渐变,所以能够容易地生成由放射渐变元素指定的椭圆放射渐变。
因此,在根据XPS描述的文档中存在放射渐变画笔元素的情况下,能够生成由放射渐变画笔元素指定的椭圆放射渐变,同时减少与渐变的绘制有关的负荷。
此外,由于仿射变换之后的渐变的中心被放置在Y轴的非负部分上,因此在沿着Y轴计算正圆的中心位置(中心坐标)的同时计算正圆(使用均一的色值绘制正圆中的每一个)的向量数据。通过此种方法,能够通过使用由中心位置的Y坐标表示的一维函数来计算正圆(使用均一的色值绘制正圆中的每一个)的中心位置。因此,能够进一步地减少正圆的向量数据的计算所需要的计算量,从而能够进一步减少与放射渐变的绘制有关的负荷。
如上所述,在用于生成椭圆放射渐变的处理中,根据本实施例的打印机1的打印机控制单元10,通过将(由放射渐变画笔元素指定的)椭圆形状仿射变换成正圆形状,计算指定正圆(使用均一的色值绘制正圆中的每一个)的向量数据并且对正圆的向量数据进行逆变换,来计算指定椭圆(在椭圆放射渐变中使用均一的色值绘制椭圆中的每一个)的向量数据。因此,能够生成椭圆放射渐变,同时减少与放射渐变的绘制有关的负荷。
此外,利用根据本实施例的打印机1,当伴随着打印命令从PC 100接收到的数据包括用于绘制椭圆放射渐变的指令时,由上述打印机控制单元10基于绘制指令生成椭圆放射渐变。因此,能够通过生成椭圆放射渐变,同时减少与放射渐变的绘制有关的负荷来执行椭圆放射渐变的打印。
虽然在上面已经给出了根据本发明的优选实施例,但是本发明不限于特别示出的实施例,并且在不偏离由权利要求中所描述的本发明的范围和精神的情况下,各种的修改、设计变化等等都是可能的。
例如,虽然在上面实施例中,由XPS文档的放射渐变画笔元素(图像绘制指令)指定的椭圆形状的长轴和短轴被设置在X轴方向和Y轴方向中,但是椭圆形状的长轴和短轴可以被设置在任意方向。
在该情况下,能够首先对由图像绘制指令指定的椭圆形状执行旋转仿射变换以便于将其长轴和短轴设置在X轴方向和Y轴方向,根据参考图3A-3E解释的绘制原理生成椭圆放射渐变,并且最终对获得的椭圆放射渐变执行逆旋转仿射变换以将(旋转的)椭圆形状的长轴和短轴返回到由图像绘制指令指定的原始方向。
虽然在以上实施例中,由包括在放射渐变画笔元素中的放射渐变画笔.渐变停止元素指定渐变的中心(起点)处的色值和椭圆形状的外围处(渐变的终点处)的色值,但是上述实施例也可应用于放射渐变画笔.渐变停止元素进一步包括指定渐变的起点和终点之间的任意点处的色值的渐变停止元素的情况。
在这样的情况下(当起点与位于从起点延伸并且经过任意点的线上的渐变的终点之间的距离被归一化为“1”时),由指定任意点处的色值的渐变停止元素的“偏移量”属性表示的值表示渐变的起点和由渐变停止元素指定色值的任意点之间的(相对)距离d。因此,能够通过将(离开正圆放射渐变的中心(起点)(相对)距离d的)相应的点的色值设置为由渐变停止元素指定的任意点的色值来执行在正圆形状中的放射渐变(正圆放射渐变)中的色值的设置。
虽然在上述实施例中在椭圆放射渐变光栅化处理(图6)中在计算指定用于正圆形状的指定正圆(使用均一的色值绘制正圆中的每一个)中的每一个的向量数据之后计算变换矩阵B的逆矩阵C,但是逆矩阵计算的时序不限于上述实施例;可以在生成变换矩阵B之后并且对正圆的向量数据进行逆仿射变换之前的任何时间计算逆矩阵C。
虽然在上述实施例中当伴随着打印命令从PC 100接收到的数据是XPS文档并且放射渐变画笔元素(作为用于绘制椭圆放射渐变的指令)被包括在XPS文档中时(在伴随着打印命令从PC 100接收到的数据是XPS文档并且放射渐变画笔元素(作为用于绘制椭圆放射渐变的指令)被包括在XPS文档中的情况下),执行椭圆放射渐变光栅化处理(图6),但是用于执行椭圆放射渐变光栅化处理的情况不限于本实施例。可以在用于绘制椭圆放射渐变的指令被包括在伴随着打印命令从PC100接收到的PDL数据(PDL(页面描述语言)中描述的数据)中时的任何时候,执行椭圆放射渐变光栅化处理。
虽然在上述实施例的打印机1的内部提供了打印机控制单元10,但是可以在打印机1的外部提供打印机控制单元10并且经由通信电缆或者无线通信将其连接至打印机1。也可以在PC 100的内部提供打印机控制单元10。
虽然在以上实施例中,由打印机控制单元10执行椭圆放射渐变光栅化处理(图6)以生成要由打印机1打印的椭圆放射渐变,但是不仅可以通过这样的打印机控制单元执行椭圆放射渐变光栅化处理而且可以通过控制用于输出椭圆放射渐变的装置的任何单元/装置来执行椭圆放射渐变光栅化处理。
例如,在使用显示器来显示椭圆放射渐变的情况下,用于控制显示器的显示控制单元可以执行椭圆放射渐变光栅化处理(图6)并且在用于存储要在显示器上显示的图像数据的帧存储器上光栅化通过该处理生成的椭圆放射渐变。
虽然在上述实施例中打印机1将图像(例如,椭圆放射渐变)打印在作为打印介质的片材(例如,纸)上,但是打印机1也可以被构造为在其它类型的打印介质(织物、塑料、乙烯基等等)上执行打印。
虽然在上述实施例中生成变换矩阵B以便于将仿射变换之后的渐变的中心放置在Y轴的非负部分上,但是也可以生成变换矩阵B以便于将(仿射变换之后的)渐变中心放置在Y轴的非正部分。也可以生成变换矩阵B以便于将(仿射变换之后的)渐变中心放置在X轴的非负部分或者X轴的非正部分上。

图像生成装置、图像生成方法及打印装置.pdf_第1页
第1页 / 共45页
图像生成装置、图像生成方法及打印装置.pdf_第2页
第2页 / 共45页
图像生成装置、图像生成方法及打印装置.pdf_第3页
第3页 / 共45页
点击查看更多>>
资源描述

《图像生成装置、图像生成方法及打印装置.pdf》由会员分享,可在线阅读,更多相关《图像生成装置、图像生成方法及打印装置.pdf(45页珍藏版)》请在专利查询网上搜索。

本发明提供了一种图像生成装置、图像生成方法及打印装置。图像生成装置包括:提取单元,其从用于绘制椭圆放射参数中提取指定椭圆形状和渐变图案的参数;变换矩阵生成单元,其基于所述参数生成用于将椭圆形状变换为正圆形状的变换矩阵;逆矩阵计算单元,其计算变换矩阵的逆矩阵;正圆参数计算单元,其基于所述参数计算指定每个正圆的正圆参数,其中在正圆形状的内部使用均一的色值进行绘制;椭圆参数计算单元,其通过使用逆矩阵对正。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1