计算机系统、打印数据产生方法和介质的制作方法

文档序号:6651312阅读:149来源:国知局
专利名称:计算机系统、打印数据产生方法和介质的制作方法
技术领域
本发明涉及一种具有打印机驱动程序的计算机系统、使用该打印机驱动程序的打印数据产生方法以及记录该打印机驱动程序的介质。具体地说,本发明涉及一种具有通过使用一种或多种压缩方法来单独压缩包括在要打印的数据中的图像数据而最小化打印数据的打印机驱动程序的计算机系统、使用该打印机驱动程序的打印数据产生方法以及记录该打印机驱动程序的介质。
背景技术
如图1所示,被构造成可用于打印的传统计算机系统包括计算机100和连接到计算机100的打印机200。在计算机100中,存储有用于写文档的应用程序110和打印机驱动程序120。
如果用户试图打印使用计算机100上的应用程序110写的文档,则当应用程序110操作时,该用户向计算机100输入打印命令。由于该打印命令的输入,应用程序110调用打印机驱动程序120并将打印命令传送给打印机驱动程序120。参看图1和2,打印机驱动程序120的确定部分121接收数据以便在操作S110根据应用程序110进行打印并在操作S120确定所接收的数据是否是图像数据。如果待打印的数据被确定为是诸如文本数据的非图像数据,则在操作S140通过转换部分123将该数据直接转换成打印数据并在操作S150处发送给打印机200。
如果确定部分121确定待打印的数据是图像数据,则压缩部分122在操作130压缩该图像数据。在操作S140转换部分123将图像数据转换成打印数据之后,在操作S150处将打印数据发送给打印机200。压缩部分122使用诸如联合图像专家组(JPEG)的压缩方法压缩图像数据。这样,当由于图像数据等产生大量待发送给打印机的打印数据时,打印机驱动程序120通过压缩和发送图像数据来防止打印速度的降低。
但是,传统的打印机驱动程序使用单一的压缩方法对所有类型的图像数据进行压缩。尽管可以通过适当的压缩方法来压缩单一图像数据以实现高压缩比,但是只使用一种复杂的压缩方法会产生大量不必要的打印数据并且因此降低了打印速度。

发明内容
因此,本发明的一个示例性方面是提供一种具有通过最小化通过压缩和转换图像数据而产生的打印数据量来提高打印速度的打印机驱动程序的计算机系统、使用该打印机驱动程序的打印数据产生方法以及记录该打印机驱动程序的介质。
本发明的附加方面和/或优点部分地将在下面加以描述,部分地可以从该描述中明显看出,或从本发明的实践中学习到。
本发明前述和/或其它示例性方面可以通过提供一种具有根据用户的打印命令将所接收的数据转换成打印数据的打印机驱动程序的计算机系统,其中所述打印机驱动程序包括确定部分,用于确定所接收的数据是否是图像数据;图像分析部分,用于根据构成图像数据的像素数据之间的变化量将图像数据划分成一个或多个细节区域,并且从多个压缩程序中选择用于每个细节区域的最佳压缩程序;压缩部分,用于使用所选择的用于那个细节区域的压缩程序来压缩每个细节区域;和转换部分,用于将对应于由压缩部分产生的每个细节区域的压缩数据转换成打印数据。
根据本发明的另一示例性方面,所述确定部分还可操作来当所接收的数据被确定为不是图像数据时将所接收的数据直接发送给转换部分。
根据本发明的另一示例性方面,所述图像分析部分还可操作来逐行地分析所述图像数据。
根据本发明的另一示例性方面,经过图形设备接口(GDI)接收所述图像数据,所述图像分析部分可操作来将索引值和红/绿/蓝或RGB值中的至少一个读到构成所述图像每一行的像素中,并通过测量邻近像素之间索引值或RGB值的变化来设置与多个压缩程序的最佳一个对应的细节区域。
根据本发明的另一示例性方面,如果相同的索引值或RGB值被重复,则图像分析部分可操作来将所述细节区域设置为行程长度编码区域。
根据本发明的另一示例性方面,当所测量的行间值没有变化时,图像分析部分可操作,以便将所述细节区域设置为Delta Row压缩区域。
根据本发明的另一示例性方面,当图像分析部分确定所述细节区域具有像素之间的大变化值时,图像分析部分可操作来将所述细节区域设置为联合图像专家组(JPEG)压缩区域。
根据本发明的另一示例性方面,所述打印机驱动程序被构造成产生和显示允许用户选择第一模式和第二模式之一的菜单,当操作于第一模式时,打印机驱动程序使用单一的压缩方法,和当操作于第二模式时,打印机驱动程序划分图像数据并从多个压缩程序当中进行选择。
根据本发明的另一示例性方面,所述计算机系统还包括从打印机驱动程序接收打印数据并打印该打印数据的打印装置。
本发明的上面和/或其他示例性方面也可以通过提供一种用于存储打印机驱动程序的存储介质来实现,所述存储介质包括第一组指令,用于确定要打印的数据是否是图像数据;第二组指令,用于根据构成该图像数据的像素数据之间的变化量将图像数据划分成一个或多个细节区域;第三组指令,用于从多个压缩程序中选择用于每个细节区域的压缩程序;第四组指令,用于使用所选择的压缩程序来压缩每个细节区域;和第五组指令,用于将由压缩程序产生的数据转换成打印数据。
本发明的上面和/或其他示例性方面也可以通过提供一种打印数据产生方法来实现,所述方法包括下述步骤确定要打印的数据是否是图像数据;根据构成图像数据的像素数据之间的变化量,将图像数据划分成一个或多个细节区域;从多个压缩程序中选择将被用于每个细节区域的压缩程序;使用所选择的压缩程序来压缩每个细节区域;和将在压缩步骤中产生的数据转换成打印数据。
根据本发明的另一示例性方面,所述划分步骤还包括逐行分析图像数据的步骤。
根据本发明的另一示例性方面,所述划分步骤还包括下述步骤将索引值和红/绿/蓝或RGB值中的至少一个读到构成图像每一行的像素中;和通过测量邻近像素之间索引值或RGB值的变化,设置对应于多个压缩程序中最佳一个的细节区域。
根据本发明的另一示例性方面,所述划分步骤还包括步骤如果相同的索引值或RGB值被重复,将所述细节区域设置为行程长度编码(RLE)区域。
根据本发明的另一示例性方面,所述划分步骤还包括步骤当所测量的行间值没有变化时,将所述细节区域设置为Delta Row压缩区域。
根据本发明的另一示例性方面,所述划分步骤还包括步骤当细节区域具有大的像素间变化值时,将所述细节区域设置为联合图像专家组压缩区域。
根据本发明的另一示例性方面,所述打印数据产生方法还包括下述步骤产生和显示允许用户选择第一模式和第二模式之一的菜单;当从该菜单中选择第一模式时,使用单一的压缩方法;和当从该菜单中选择第二模式时,划分图像数据并从多个压缩程序当中进行选择。


通过下面结合附图对实施例的详细描述,本发明的上述和/或其它方面和优点将会变得明显和更加容易理解。其中图1的框图示出了传统的计算机系统;图2的流程图示出了图1的计算机系统的操作顺序;图3的框图示出了根据本发明一实施例的计算机系统;图4示出了将被使用图3的计算机系统打印的示例性数据;和图5的流程图示出了图3的计算机系统的操作顺序。
具体实施例方式
下面将参照附图中所示出的例子对本发明的实施例进行详细的描述,其中,在整个附图中,相同的附图标记表示相同的元素。
如图3所示,根据本发明一示例性实施例的计算机系统包括计算机300和连接到计算机300的打印机400。计算机300包括作为输入装置的键盘和鼠标、作为显示装置的监视器,和具有控制和存储设备的计算机主体。在计算机300中,存储有用于写文档的应用程序310。应用程序310可以是用于产生具有普通文本、描述、图表和图形等文档的任何一种类型的程序。
另外,在计算机300中,存储有打印机驱动程序320,用于将打印数据发送给打印机400。打印机驱动程序320将从应用程序310接收的数据转换成可由打印机400识别的打印数据,并将打印数据发送给打印机400。
如果用户希望打印由计算机300上的应用程序310写的文档,则当运行应用程序310时,用户向计算机400输入打印命令。在接收该打印命令之后,应用程序310调用打印机驱动程序320并传送一打印命令。
打印机驱动程序320包括确定部分321,用于确定从应用程序310接收的数据是否是图像数据;图像分析部分322,用于根据所选择的并且最好是最佳压缩方法(即,最佳压缩方法是能够给出用于特定类型数据的所希望的压缩比的压缩方法)将图像数据划分成细节区域;压缩部分323,用于使用所存储的多种压缩方法之一压缩所述细节区域;和转换部分324,用于将由压缩部分323压缩的数据转换成打印数据。
确定部分321从应用程序310接收要打印的数据,并确定所接收的数据是否是图像数据。如果确定部分321确定要打印的数据不是图像数据而是例如文本数据,则确定部分321将该数据直接发送给转换部分324。然后,转换部分324将该数据转换成打印数据并将该打印数据发送给打印机400。如果确定部分321确定要打印的数据是图像数据,则图像分析部分322分析该图像数据。图像分析部分322最好逐行地分析该图像数据。例如,通过逐行读出经过图形设备接口(GDI)接收的图像数据,图像分析部分322将调色板(pallet)的索引值或RGB值读到构成每行图像的像素中,并通过测量相邻像素之间的索引值或RGB值的变化来设置对应于最佳压缩方法的压缩区域。作为测量的结果,如果相同的索引值或RGB值被重复,则图像分析部分322将所述区域设置为行程长度编码(RLE)区域。当邻近和类似的数据被重复示出时,RLE压缩方法可以更简单地压缩数据。此外,当行之间的值没有变化时,图像分析部分322将所述区域设置为Delta Row压缩区域。Delta Row压缩方法是一种比较行间的图像的方法,并且当行间的数据值彼此之间没有不同时,该方法简单地压缩与该行对应的数据。同时,当图像数据具有未经上述两种压缩方法之一压缩的数据值时,图像分析部分322确定该区域在像素之间具有大的变化值并将该区域设置为联合图像专家组(JPEG)压缩区域。当增大复杂图像数据的压缩比时,JPEG压缩方法与其它两种压缩方法相比较是有优势的。
虽然上述示例性的实施例只使用了三种压缩方法并从这三种方法当中进行选择,但是根据打印机语言和所希望的压缩方法的压缩比,可以使用任何数量和各种类型的压缩方法。但是,当具有太多压缩方法时或当具有很多具有不同压缩方法的细节区域时,打印速度可能变得比仅使用一种压缩方法的情况要慢。因此,图像数据中细节部分的数目最好是3或4。在将图像数据划分成多于一个压缩区域的细节区域之后,压缩部分323通过所选择的并且最好是最佳或适当(例如,最佳)的压缩方法来压缩每个被划分的细节区域。
由于在该示例性实施例中示出了三种压缩方法,所以压缩部分323存储了所述RLE、Delta Row和JPEG压缩程序以执行适当的压缩操作。
由压缩部分323压缩的图像数据被转换部分324转换成打印数据,并被发送给打印机400。
下面参照图5解释由上述打印机驱动程序执行的打印数据产生方法的示例性实施例,其中,假设由应用程序310传送图4所示打印文档的打印命令。
当用户希望打印由图3中计算机300上的预定应用程序310写的文档时,用户输入打印命令给特定的应用程序310。然后,应用程序310调用打印机驱动程序320并命令打印该文档。
当(在图5中的操作S310处)从应用程序310接收到打印命令时,打印机驱动程序320在监视器上显示诸如与当前连接的打印机对应的打印机信息、欲打印纸张的尺寸、欲打印的张数等注册信息。如果用户经过所显示的注册信息选择打印条件并给出打印命令,则打印机驱动程序320接收该命令并开始操作。首先,确定部分321将从应用程序310接收到的文档数据中的文本部分510(例如,如图4所示)直接发送给转换部分324,以将该文本部分转换成打印数据。同时,对于图像520(再次参见图4),图像分析部分322逐个像素地读出图像520并将其划分成细节区域。图像部分520的划分可以如图4中的分解图所示地实现。当在区域A和区域C中的行之间重复相同的图像时,可以应用RLE和Delta Row压缩方法。在本发明的该示例性实施例中,Delta Row压缩方法被作为最好的方法采用。另外,对于区域B,由于构成该图像的像素之间的变化更加复杂,所以,JPEG压缩方法被作为最好的方法采用(操作S340)。
一旦对于图像数据细节区域选择了最好压缩方法,图像分析部分322将所述细节区域发送给压缩部分323以压缩该图像数据(操作S350)。压缩部分323使用Delta Row压缩方法来压缩区域A,使用JPEG压缩方法来压缩区域B,最后使用Delta Row压缩方法来压缩区域C。在转换部分324中将在压缩部分323中压缩的数据转换成打印数据(操作S360),并且在操作S370将该打印数据发送给打印机200。
上述打印机驱动程序的压缩过程可以被设置为一种可以根据用户的选择而配置的选择。即,当通过从应用程序310接收打印命令来调用该打印机驱动程序时,它可以在监视器上显示具有注册信息的菜单,例如“图像自动划分压缩”。如果用户选择“图像自动划分压缩”选项,则根据上述本发明使用多于一种的压缩方法。如果用户没有从菜单中选择“图像自动划分压缩”选项,则使用传统的单一压缩方法来压缩所述图像数据。
尽管已经示出和描述了本发明的几个示例性实施例,但是,本领域的普通技术人员应当理解,在不脱离由所附权利要求及其等效物定义的本发明的精神和范围的前提下,可以对这些示例性实施例做出修改。
权利要求
1.一种具有根据用户的打印命令将所接收的数据转换成打印数据的打印机驱动程序的计算机系统,其中所述打印机驱动程序包括确定部分,用于确定所接收的数据是否是图像数据;图像分析部分,用于根据构成图像数据的像素数据之间的变化量将图像数据划分成一个或多个细节区域,并且从多个压缩程序中选择用于每个细节区域的最佳压缩程序;压缩部分,用于使用所选择的用于那个细节区域的压缩程序来压缩每个细节区域;和转换部分,用于将对应于由压缩部分产生的每个细节区域的压缩数据转换成打印数据。
2.如权利要求1所述的计算机系统,其中,所述确定部分还可操作来当所接收的数据被确定为不是图像数据时将所接收的数据直接发送给转换部分。
3.如权利要求1所述的计算机系统,其中,所述图像分析部分还可操作来逐行地分析所述图像数据。
4.如权利要求3所述的计算机系统,其中,经过图形设备接口接收所述图像数据,所述图像分析部分可操作来将索引值和红/绿/蓝或RGB值中的至少一个读到构成所述图像每一行的像素中,并通过测量邻近像素之间索引值或RGB值的变化来设置与多个压缩程序的最佳一个对应的细节区域。
5.如权利要求4所述的计算机系统,其中,如果相同的索引值或RGB值被重复,则图像分析部分可操作来将所述细节区域设置为行程长度编码区域。
6.如权利要求3所述的计算机系统,其中,当行之间所测量的值没有变化时,图像分析部分可操作,以便将所述细节区域设置为Delta Row压缩区域。
7.如权利要求3所述的计算机系统,其中,当图像分析部分确定所述细节区域具有像素之间的大变化值时,图像分析部分可操作来将所述细节区域设置为联合图像专家组压缩区域。
8.如权利要求1所述的计算机系统,其中,所述打印机驱动程序被构造成产生和显示允许用户选择第一模式和第二模式之一的菜单,当操作于第一模式时,打印机驱动程序使用单一的压缩方法,和当操作于第二模式时,打印机驱动程序划分图像数据并从多个压缩程序当中进行选择。
9.如权利要求1所述的计算机系统,还包括从打印机驱动程序接收打印数据并打印该打印数据的打印装置。
10.一种用于存储打印机驱动程序的存储介质,包括第一组指令,用于确定要打印的数据是否是图像数据;第二组指令,用于根据构成该图像数据的像素数据之间的变化量将图像数据划分成一个或多个细节区域;第三组指令,用于从多个压缩程序中选择用于每个细节区域的压缩程序;第四组指令,用于使用所选择的压缩程序来压缩每个细节区域;和第五组指令,用于将由压缩程序产生的数据转换成打印数据。
11.一种打印数据产生方法,包括下述步骤确定要打印的数据是否是图像数据;根据构成图像数据的像素数据之间的变化量,将图像数据划分成一个或多个细节区域;从多个压缩程序中选择将被用于每个细节区域的压缩程序;使用所选择的压缩程序来压缩每个细节区域;和将在压缩步骤中产生的数据转换成打印数据。
12.如权利要求11所述的打印数据产生方法,其中,所述划分步骤还包括逐行分析图像数据的步骤。
13.如权利要求12所述的打印数据产生方法,其中,所述划分步骤还包括下述步骤将索引值和红/绿/蓝或RGB值中的至少一个读到构成图像每一行的像素中;和通过测量邻近像素之间索引值或RGB值的变化,设置对应于多个压缩程序中最佳一个的细节区域。
14.如权利要求13所述的打印数据产生方法,其中,所述划分步骤还包括步骤如果相同的索引值或RGB值被重复,将所述细节区域设置为行程长度编码区域。
15.如权利要求12所述的打印数据产生方法,其中,所述划分步骤还包括步骤当所测量的行间值没有变化时,将所述细节区域设置为Delta Row压缩区域。
16.如权利要求12所述的打印数据产生方法,其中,所述划分步骤还包括步骤当细节区域具有大的像素间变化值时,将所述细节区域设置为联合图像专家组压缩区域。
17.如权利要求11所述的打印数据产生方法,还包括下述步骤产生和显示允许用户选择第一模式和第二模式之一的菜单;当从该菜单中选择第一模式时,使用单一的压缩方法;和当从该菜单中选择第二模式时,划分图像数据并从多个压缩程序当中进行选择。
全文摘要
本发明涉及一种具有根据用户的打印命令将所接收的数据转换成打印数据的打印机驱动程序的计算机系统,其中,打印机驱动程序包括确定部分,用于确定所接收的数据是否是图像数据;图像分析部分,用于根据构成图像数据的像素数据之间的变化量将图像数据划分成一个或多个细节区域,并从多个压缩程序中选择用于每个细节区域的最佳压缩程序;压缩部分,用于使用所选择的用于那个细节区域的压缩程序压缩每个细节区域;和转换部分,用于将由压缩部分产生的对应于每个细节区域的压缩数据转换成打印数据。
文档编号G06F3/12GK1794164SQ200510129748
公开日2006年6月28日 申请日期2005年12月6日 优先权日2004年12月20日
发明者申成龙 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1