将图像数据包适应打印头属性的制作方法

文档序号:6552925阅读:191来源:国知局
专利名称:将图像数据包适应打印头属性的制作方法
技术领域
本公开涉及用于打印图像的系统、计算机程序产品和技术。
背景技术
当打印诸如图片或者文本页之类的图像时,图像数据通常由软件翻译为打印设备(即打印机)可理解的格式,并且中继到与该打印设备相关联的打印缓冲器。打印缓冲器接收经翻译的图像数据,并且存储至少一部分图像数据用于随后由打印设备打印。
许多打印设备包括多个离散的打印元件(例如,用于喷墨打印机的喷嘴)。可以将打印元件部署为打印图像的选定分量。例如,选定打印元件可以被部署为在工件上的选定位置处打印。作为另一个示例,在彩色打印中,选定的打印元件可以被部署为打印选定颜色。来自打印缓冲器的图像数据可以由控制电子设备使用来协调由所部署的打印元件进行的图像打印。
打印设备中的打印元件可以布置为称为打印模块(例如,喷墨喷嘴的物理组)的组。模块中的打印元件可以根据组成元件的部署而分组。例如,在选定位置阵列处打印的打印元件可以分组在一打印模块中。作为另一个示例,打印选定颜色(在选择的位置阵列处)的打印元件可以分组在一打印模块中。
单个打印头通常由多个打印模块形成,每个模块可以具有不同的属性。另外,就诸如每模块喷墨喷嘴数目以及喷嘴间距而言,一个打印系统中的打印头可以不同于另一个系统中的打印头。为了补偿这些差别,控制打印系统的软件需要进行剪裁以适应特定的打印头配置。

发明内容
此处描述了便于图像打印的、包括计算机程序产品的方法和系统。在一个实现中,在包括一个或多个打印设备如打印头的打印系统的控制模块中,图像数据包配置模块为了与该打印设备的属性相对应的信息,查询该系统中的打印设备。该信息可以包括该打印设备的特定配置参数或者与该打印设备相关联的标识符,配置模块可以使用该标识符来查找该打印设备的配置参数。配置模块还可以接收标识多个打印设备之间关系的信息。
配置模块使用所标识的配置参数来将图像划分为图像数据包,每个数据包包括一个或多个图像部分。配置模块可以使用表格驱动的处理例程来划分图像。控制模块然后将该图像数据包传输到打印设备以便打印。
配置模块通过在连接控制模块和打印设备的控制通道上传输包括查询的控制包,可以查询打印设备。控制模块可以经由图像数据通道将图像数据包传输回打印设备。
可以实现所述生成图像数据包的系统、计算机程序产品和技术来实现一个或者多个下列优点。打印系统中的控制软件基于由打印头经由双向控制通道提供的信息,可以自动配置本身。这消除了进行手动编码以便为特定打印头配置剪裁软件的需要。该技术便于升级和替换打印系统中的各打印头,并且便于打印系统之间的可移值性。
在附图和下面的描述中阐述了一个或者多个实现的细节。根据描述和附图以及权利要求,本发明的其它特征和优点将会明显。


图1是打印系统的框图。
图2和3说明了图1的打印系统中打印模块和打印元件的安排。
图4示出了打印系统实现的示意表示。
图5是根据实施例、用于在设备之间传输图像和控制数据的系统的框图。
图6A和6B包括描述根据实施例的图像数据包生成处理的流程图。
在各个附图中的类似参考符号指示类似的元件。
具体实施例方式
图1是打印系统100的框图。打印系统100包括工件传送器105和也被称为打印头的打印机壳(printer housing)110。工件传送器105在一系列工件115、120、125、130、135、140、145和打印头110之间产生相对运动。特别地,工件传送器105沿着方向D传送工件115、120、125、130、135、140和145穿过打印头110的面部150。工件传送器105可以包括步进或者连续马达,其移动在传送期间保持工件115、120、125、130、135、140和145的辊、带、或者其它元件。工件115、120、125、130、135、140和145可以是任意多个不同的、系统100要在其上进行打印的基板。例如,工件115、120、125、130、135、140和145可以是纸张、纸板、微电子学设备、或者食品。
打印头110包含工件检测器155。工件检测器155可以检测一个或者多个工件115、120、125、130、135、140、145的位置。例如,工件检测器155可以是激光/光电检测器组件,其检测工件115、120、125、130、135、140、145的边缘通过面部150上的某点。
远离该打印头110定位控制电子设备160。控制电子设备160通过电缆195(例如光缆)和小型电子设备190与打印头110接口。控制电子设备160控制由系统100进行打印操作的性能。控制电子设备160可以包括一个或多个数据处理设备,其根据一组机器可读指令的逻辑执行操作。控制电子设备160可以是例如个人计算系统,其运行图像处理软件和用于控制在打印头110打印的软件。
打印图像缓冲器165位于控制电子设备160内。打印图像缓冲器165是存储用于由打印元件打印的图像数据的一个或多个数据存储设备。例如,打印图像缓冲器165可以是随机存取存储器(RAM)设备的集合。打印图像缓冲器165可以由控制电子设备160访问来存储和检索图像数据。
控制电子设备160经由电缆195和小型电子设备190与打印头110接口。控制电子设备160可以经由电缆195发送数据,而且小型电子设备190可以接收用于在打印头110打印的数据。控制电子设备160可以具有特定电路(例如,如参考图4更详细描述的数据泵)用于生成数据以便发送到打印头110。小型电子设备190可以是,例如包括微处理器、收发信机和小型存储器的现场可编程门阵列(FPGA)。小型电子设备190可以连接到打印头110,以便如果改变打印头110和/或打印头110中的硬件,则可以容易地断开小型电子设备190的连接。例如,如果用包含较新打印模块的较新打印头替换打印头110,则小型电子设备190可以从较旧的打印头110断开连接,并且连接到较新的打印头。
图像的打印在控制电子设备160和小型电子设备190之间分割,以便控制电子设备执行图像处理和控制打印,而小型电子设备190接收经由电缆195接收的数据,并且使用该数据使打印头110处的打印元件的启动。因此,例如,可以将图像数据转换为喷图(jetmap)图像数据,这可以包括将图像数据划分为离散单元(例如,下面更详细描述的图像缓冲器),作为转换为喷像数据的处理一部分;可以在图像数据中插入延迟(例如,插入对应于打印元件关联(associations)的部署的延迟);而且可以在恰当的时间由控制电子设备160发送图像数据(例如,编码图像数据的数据包并且由接收器发送);而小型电子设备190可以仅仅接收图像数据(例如,解码通过电缆195发送的图像数据包)并且中继该图像数据,以便在工件上打印该图像数据(例如,根据该图像数据使喷墨喷嘴启动)。控制电子设备160可以同步在打印头110的图像打印。跟随前例,控制电子设备160通过接收工件前沿的指示,并且通过电缆195发送图像数据以引起在打印头110的图像打印,可以同步图像打印。
控制电子设备160可以高数据速率将图像数据发送到打印头110,以允许在工件沿着工件传送器105移动时在工件上进行图像的“即时(just-in-time)”打印。在即时打印的一个实现中,图像数据到打印头110的传输可以起触发的作用,该触发导致在包中的图像数据到达打印头110处时“基本上立即”打印该数据。在这个实现中,图像数据在打印该图像数据之前可以不存储在打印头上的存储组件上,而可以在数据到达打印头时被打印。即时打印还可指基本上在图像数据到达打印头的时刻打印该图像数据。
在即时打印的另一个实现中,打印头处收到的数据存储在一个或者多个锁存器中,而且在打印头处收到的新的或者后续数据可以起打印锁存数据的触发的作用。在这个实现中,打印头处收到的数据存储在锁存器中直到后续数据到达打印头为止,而且到达该打印头的后续数据可以起打印已经被锁存的数据的触发的作用。可以图像数据包的形式在打印头处接收和/或存储数据、后续数据和锁存数据。在一种情况下,到达打印头的后续数据是下一后续数据。或者,到达打印头的后续数据是并非下一后续数据的后续数据,如在下一后续数据之后到达的后续数据。因为图像数据以这样的高数据速率打印,所以从锁存数据打印的数据也可以指在数据到达打印头时、“基本上立即”被打印的数据。
因为打印头110具有小型电子设备190和减少的存储器量,所以可以较低成本实现打印头110。打印头110上使用的存储器类型也可以较低成本实现。在一个实现中,在打印头110上实现的存储器类型是可以为小型电子设备190一部分的现场可编程门阵列(FPGA)集成电路(IC)的一部分。由于打印头110处几乎没有或者没有高速图像数据的缓冲,所以还可以减少实现打印头110的成本和工程设计工作量。系统100可以以若干配置提供高带宽、同步和即时图像数据到打印头110的可扩展传输,这些配置包括例如在打印头110处具有多个FGPA的配置,每个FGPA可以实现小型电子设备190并且使用一个或者多个电缆与一个或者多个数据泵接口。
图2和3说明了打印模块和打印元件在打印头上的布置。特别地,图2从侧面示出了打印头110,而图3从下面示出了打印头110。打印头110包括在面部150上的打印模块205、210、215、220、225、230、305、310、315的集合。打印模块205、210、215、220、225、230、305、310、315每个都包括一个或者多个打印元件。例如,打印模块205、210、215、220、225、230、305、310和315可以每个都包括喷墨喷嘴的线性阵列。
在这个特定打印头配置中,打印模块205、305沿着列320横向排列。打印模块210沿着列325排列。打印模块215、310沿着列330横向排列。打印模块220沿着列335排列。打印模块225、315沿着列340横向排列。打印模块230沿着列345排列。这个打印模块205、210、215、220、225、230、305、310、315沿着列320、325、330、335、340、345的排列,跨越了面部150上的有效打印区域235。有效打印区域235具有从打印模块205、305中的打印元件跨越到打印模块230中的打印元件的纵向宽度W。
打印模块205、210、215、220、225、230、305、310、315可以部署为打印元件关联,以便打印图像的选定分量。例如,打印模块205、210、305可以部署在第一打印元件关联中,以便在穿过面部150移动的基板的整个横向展宽上打印第一颜色,打印模块215、220、310可以部署在第二打印元件关联中,以便在整个横向展宽上打印第二颜色,而打印模块225、230、315可以部署在第三打印元件关联中,以便在整个横向展宽上打印第三颜色。
作为另一个示例,打印模块205、210、215、220、225、230、305、310、315的组,可以基于模块中的构成打印元件的列位置,部署在打印元件关联中。例如,第一打印元件关联可以包括模块205、305,它们被这样部署以便它们的构成打印元件排列在单个列中。第二打印元件关联可以仅仅包括打印模块210。模块215、310可以形成第三关联。第四、第五和第六关联分别包括模块220、225、和315、以及230。以这个列方式形成打印元件关联,允许打印背靠背的(back-to-back)不同图像,相对于纵向宽度W在已完成的图像区域之间具有可变但是小的非打印区域、或者不存在非打印区域,而不需要图像数据中的复杂实时调整。
作为另一个示例,打印模块205、210、215、220、225、230、305、310、315的组,可以基于模块中的构成打印元件的横向位置,部署在打印元件关联中。例如,第一打印元件关联可以包括模块205、210、305,它们被这样部署以便它们的构成打印元件相对于模块215、220、310中的打印元件、或者相对于模块225、230、315中的打印元件在横向位置移位。第二打印元件关联可以包括打印模块215、220、310,它们被这样部署以便它们的构成打印元件相对于模块205、210、305中的打印元件、或者相对于模块225、230、315中的打印元件在横向位置移位。模块225、230、315可以形成第三关联。位置上的相对移位可以小于模块中的打印元件的横向间距,以便从净效应来说,降低了在打印头上的打印元件之间的横向间距,从而有效增加了可以打印图像的分辨率。
每个打印元件关联可以具有在打印图像缓冲器165(图1所示)中的专用存储单元(memory location),因为该关联打印曾经驻留在该存储单元中的图像数据。例如,当打印图像缓冲器165是各个缓冲器的队列集合时,每个打印元件关联可以具有各个专用缓冲器队列。
图4示出了根据一实施例的打印系统400的一个实现的示意表示。系统400包括工件传送器405、打印头410、工件检测器455和控制电子设备460。
工件传送器405沿着方向D传送工件420、425、430、435穿过打印头410的有效打印区域440。工件传送器405包括感测工件420、425、430、435的速度的编码器407。编码器407还生成编码所感测的速度的信号,并且将该信号中继到控制电子设备460。工件检测器455是检测一个或多个工件420、425、430、435的位置的光学传感器,并且基于该检测生成触发信号(诸如触发信号456和457)。
打印头410包括沿着一系列列411、412、413、414、415、416、417、418横向排列的打印模块集合。这个打印模块布置跨越有效打印区域440。沿着列411、412、413、414、415、416、417、418中的每一个部署的每个打印模块组,构成打印元件关联。例如,打印模块491、493、495构成沿着列418的打印元件关联,而打印模块492、494构成沿着列417的打印元件关联。
控制电子设备460控制由系统400进行的打印操作的性能。控制电子设备460包括打印图象缓冲器集合465。控制电子设备460可以访问集合465中的打印图像缓冲器,以便存储和检索图像数据。在图4所示的配置中,在集合465中存在八个打印图像缓冲器,而且每个打印图像缓冲器专用于沿着列411、412、413、414、415、416、417、418之一排列的打印元件关联。例如,打印图像缓冲器466、467、468、469可以分别对应于沿着列415、416、417、418排列的打印元件关联。特别地,每个打印元件关联打印仅仅来自相关联的打印图像缓冲器的图像数据。
控制电子设备460还包括数据泵470。“数据泵”是指例如以硬件、软件、可编程逻辑或者它们的组合实现的功能组件,它们处理数据并且将其传输到一个或者多个打印设备用于打印。在一个实现中,数据泵可以指直接存储器存取(DMA)设备。数据泵470沿着在打印元件关联和它们在集合465中的专用打印图像缓冲器之间的数据通信路径定位。数据泵470可以接收和存储来自集合465中的每个打印图像缓冲器的图像数据。数据泵470可由控制电子设备460编程,以延迟从集合465中的打印图像缓冲器到打印元件关联的信息通信。
在操作中,控制电子设备460可以根据打印元件关联在有效打印区域440中的部署来划分图像数据。控制电子设备460还可以将所划分的图像数据分配给集合465中的恰当打印图像缓冲器。
在工件435由工件传送器405传送以进入有效打印区域440时,工件检测器455检测工件435的前沿并且生成触发信号456。基于接收到触发信号456,控制电子设备460可以用位置延迟471、472、473、474、475、476、477、478编程数据泵470。延迟471延迟从集合465中的第一打印图像缓冲器到沿着列411排列的打印元件关联的图像数据通信。延迟472延迟从集合465中的第二打印图像缓冲器到沿着列412排列的打印元件关联的图像数据通信。延迟473、474、475、476、477、478延迟从集合465中的相应打印图像缓冲器到沿着列413、414、415、416、417、418排列的打印元件关联的图像数据通信。
在工件435由工件传送器405传送穿过有效打印区域440时,沿着列411、412、413、414、415、416、417、418排列的打印元件关联连续地打印。特别是,在工件435前进一个扫描行穿越有效打印区域440时,数据泵470将图像数据转储到在沿着列411、412、413、414、415、416、417、418排列的打印元件关联处的恰当接收器电子设备(即,数据泵470导致将图像数据传输到打印设备)。所转储的图像数据标识要为工件435在有效打印区域440中的瞬时位置启动的打印元件。打印元件的标识可以是隐含的,例如以与打印设备处的打印元件和/或打印元件关联的次序相对应的格式,将图像数据包中的图像数据排次序。用于连续启动的数据可以在启动期间从集合465中的打印图像缓冲器加载到数据泵470。
在工件435仍然被打印期间,工件430可以由工件传送器405传送以进入有效打印区域440。工件检测器455检测工件430的前沿并且生成触发信号457。基于接收到触发信号457,控制电子设备460可以使数据泵470插入延迟479、480、481、482、483、484、485、486。延迟479延迟从集合465中的第一打印图像缓冲器到沿着列411排列的打印元件关联的图像数据通信。延迟480延迟从集合465中的第二打印图像缓冲器到沿着列412排列的打印元件关联的图像数据通信。延迟481、482、483、484、485、486延迟从集合465中的相应打印图像缓冲器到沿着列413、414、415、416、417、418排列的打印元件关联的图像数据通信。或者,延迟可能已插入到图像数据中,而且触发信号可以引起数据泵470发送图像数据。
在工件430由工件传送器405传送到有效打印区域440中时,沿着列411、412、413、414、415、416、417、418排列的打印元件关联在工件430、425上打印。特别是,在工件435、430前进一扫描行时,数据泵470将图像数据转储到恰当的、用于打印元件的接收器电子设备,并且同时打印工件435、430。
可以根据基于包的协议在控制电子设备460和打印头410之间传输数据(例如,定义打印扫描行的图像数据)。图5是根据这样的协议传输数据的系统500的图。系统500包括存储器505、数据泵510、软件515和打印设备520,例如单个打印头。存储器505、数据泵510和软件515可以包含在普通的个人计算机(PC)中。存储器505可以是可DMA访问的存储器,其经由外围组件互连(PCI)总线、PCI-X(外围组件互连扩展)总线、PCI快速总线或者其它适当的总线可用。存储器用于存储用于由数据泵510处理的图像数据。
软件515可以控制图像数据的传输并且可以将图像数据发送到存储器505。数据泵510可以使用图像数据,在图像数据包生成器525生成图像数据包(也称为“图像扫描行包”)。生成图像数据包可以包括在图像数据包生成器525串行化图像数据包。除了将图像数据发送到存储器505之外,软件515可以将控制数据发送到数据泵510。控制数据可以包括任何类型可用于控制打印设备520的数据。控制数据包可以在控制数据包生成器545根据控制数据生成。
诸如图像数据包565之类的图像数据包可以包括帧开头、数据部分和帧结尾。数据部分包括可以在打印设备使用用于打印的图像数据。定义用于图像数据包的帧格式的协议可以定义图像数据包应该包括一个或多个图像数据扫描行和某个帧开头和帧结尾。例如,该协议可以定义图像数据包包括32位帧开头、作为表示一或多个扫描行的数据部分的3552位位像数据、以及32位帧结尾。
图像数据包中的扫描行部分可以对应于打印设备处的打印元件关联。例如,如果打印设备包括八个打印元件关联,那么对该打印设备帧化的图像数据包可以包括表示扫描行的八个部分的图像数据,每个打印元件关联一部分。图像数据包不必受限于包括来自单个图像的数据。例如,协议可以定义图像数据包应该为每个打印元件关联包括一部分图像,其中每个部分足以导致打印元件关联打印一次(例如,如果打印元件是喷墨打印喷嘴,这将是喷墨喷嘴的单次启动,也称为单个印象(impression))。在这个示例中,在具有八个打印元件关联的系统中,如果图像数据的前四个部分对应于第一图像且图像数据的其次四个部分对应于第二图像,则图像数据包可以包括来自两个图像的图像数据部分。如果单个图像数据包可以包括来自两个不同图像的图像数据,则该图像数据包可以有利地允许在两个不同的工件上打印两个图像(相同(alike)或者类似)。类似地,图像数据包可以包含来自几个不同的图像的图像信息,允许由对应的打印元件关联同时打印这些图像。在替代实现中,图像数据包不必表示一个或多个扫描行,而是图像数据包可以被定义为包括与打印元件关联相对应的图像数据的其他划分(即部分)。例如,如果每个打印元件关联打印某种颜色,图像数据可以被划分并被包括在图像数据包中,使得图像数据中的各部分可以对应于需要由不同打印元件关联打印的不同颜色。
诸如控制数据包570之类的控制数据包可以包括帧开头、数据部分和帧结尾。数据部分表示控制信息。例如,数据部分可以包括从该图的数据泵侧到打印机侧的命令,或者从该图的打印机侧到数据泵侧的状态信息。命令可以包括对打印模块温度的查询、增加或者降低打印模块温度的命令、改变间距或打印元件的命令等。状态信息可以包括,例如,打印模块的温度、打印元件的间距、打印元件的数目等。
数据包的发送和接收逻辑上可以包括两个数据通道,其中第一数据通道是从数据泵510到打印设备520的单向图像数据通道,而第二通道是双向控制数据通道。数据包可被交织,以便当不发送图像数据包时,将控制数据包从数据泵510发送到打印设备520。例如,当有足够的带宽来支持控制数据包的发送而不干扰图像数据包的传输时,可以在图像数据包之后立即发送控制数据包。作为另一个示例,打印图像中的某些时间,例如在各图像之间或者打印作业之间的时间,可以是用于传输控制数据包的时间段。因为可以有包括传输线和接收线的双向串行通信,所以可以在将图像数据包发送到打印设备520的同时,将控制数据包从打印设备520发送到数据泵510。用于传输数据的两个逻辑通道的定义、以及这些通道各个方面,可以包括在先前描述的、用于传输数据的协议之一中。
图像数据包和控制数据包在编码器/解码器530编码。编码器/解码器530可以根据8B/10B编码方案编码数据。编码的图像数据包由收发信机535传输。收发信机535进行操作,以便通过连接到打印设备520的传输线540传输与接收图像数据包。
在打印设备520,诸如嵌入到FPGA中的控制电子设备之类的控制电子设备进行操作,以便在收发信机550传输和/或接收图像数据包。图像数据包可以根据8B/10B编码方案在编码器/解码器555编码和/或解码。在替代实现中,不同于8B/10B编码的技术可以用来确保通过物理通信接口的DC平衡。一些替代实现(值得注意的是短距离上的那些)可以不要求传输介质中的DC平衡,并且可以使用不平衡的编码技术。控制包可以在控制包生成器560生成。这些控制包可以包括例如诸如打印模块的温度之类的状态信息。可以响应于发自数据泵侧的控制包,在打印机侧生成控制包。
单个打印头可以包括多个打印模块,每个模块可以具有不同的属性。这些属性可以包括例如打印模块中的喷墨喷嘴的数目、喷嘴间距、以及喷嘴和/或模块的定向。另外,基于客户的终端应用(例如,打印报纸或者在如糖果那样的食品上打印),一个打印系统中的打印头可以不同于另一个系统中的打印头。为了补偿这些差别,控制打印系统的软件需要适应于(tailor to)特定的打印头配置。
在一实施例中,控制电子设备160中的控制软件可以检测打印系统中的(各)打印头的属性。例如,控制软件可以使用控制通信信道来询问打印头并且确定其配置。然后这个信息可用于自动地生成图像数据包,而不是要求手动编码来配置软件以适应特定的打印头配置。
图6A和6B包括描述根据一实施例的图像数据包生成处理的流程图。打印系统可以包括多个打印头,每个可以具有不同数目、排列和/或类型的打印模块。在打印系统启动或者在打印系统中安装(各)新打印头期间,控制软件可以在602查询打印头。可以通过通信信道以控制包发送该查询。
打印头可以通过将控制包发送给控制软件来应答。控制包可以包括对应于打印头属性的信息,这些信息存储在打印头处的存储器(例如ROM或者闪存)中。该信息可以是包括打印头物理属性的特定配置信息,诸如打印头中的打印模块尺寸、数量和布局之类。该定义还可以标识打印头的打印元件和/或模块的排序、打印元件和/或模块的间距、以及打印头的本身分辨率。
或者,与打印头属性相对应的信息可以更一般,诸如部件号或者配置类型指示符,其对应于控制中心处的已知信息,例如存储在控制软件的表格中的配置信息项。
控制软件在604接收所应答的控制包,并且例如通过执行表格查找,在606使用该包中的信息来识别打印头配置。控制软件可以在608存储该配置信息。可以响应于例如启动或者重置条件来更新这个存储的信息。
来自各个打印头的信息提供了一级配置信息,并且用作最终的转换级别。可以从其他来源提供较高级别的配置信息。例如,在具有多个打印头的系统中,其中的一个或者多个打印头可以与同一个数据泵相关联,一应用可以提供标识多个打印头的物理关系的系统级配置信息。该应用还可以提供包括用于打印的动态参数的配置信息,诸如打印分辨率、灰度(即,用于每个像素的位数)、打印方向(例如,用于横向扫描打印头)、以及打印头定向(例如,如果打印头组件旋转180度)。
在610,控制软件使用配置信息来配置负责生成图像数据包的组件,例如图5中的软件515、图像数据包生成器525、以及编码器/解码器530,以便生成适于特定打印头配置的图像数据包。也就是说,控制软件配置图像数据生成组件以生成图像数据包,其将导致打印头中的打印元件如实地打印期望图像中的扫描行的对应部分。在612,配置操作可以包括定义适于打印头中的打印元件和打印模块的特定布局的打印元件关联。该软件然后在614基于打印元件关联划分图像,并且在616基于打印元件关联生成图像队列。
划分图像并生成图像队列可能涉及为打印元件关联中的每个打印模块生成图像数据缓冲器,组合与同一个打印元件关联相关联的缓冲器,并生成包括与图像队列相关联的组合缓冲器的图像队列。例如,在图4中,在打印头有二十个打印模块。图像被这样划分,以便每个缓冲器具有与打印模块相对应的图像数据。然后,可以组合与在同一个打印元件关联中的打印模块(诸如包括列418中的打印模块的打印元件关联中的打印模块491、493、495)相对应的缓冲器,使得所组合的缓冲器与打印元件关联相关联(例如,与沿着列418的全部打印元件相关联的缓冲器)。然后,可以将与同一个打印元件关联相关联的组合缓冲器放入图像队列中,以便生成各图像队列而且每个图像队列具有对应于同一个打印元件关联的组合缓冲器。
所述软件可以使用表格驱动方法来划分图像并填充图像队列。该软件可以使用配置信息生成表格。该表格可以包括位模式和移位模式,它们可以在根据打印头处的打印元件布局提取数据时使用。然后可以结合表格使用一般的处理例程来生成图像数据的一组缓冲器,其中每个缓冲器对应于打印头处的打印元件关联。该处理例程使用所发现的信息和从应用接收的更高级配置信息二者来执行处理。然后,可以用对应于打印元件关联的图像数据的缓冲来填充图像队列,以便对应于同一打印元件关联的图像数据的缓冲器在同一图像队列中排队(例如,与第一打印元件关联相对应的全部缓冲器可以在第一图像队列中,与第二打印元件关联相对应的全部缓冲器可以在第二图像队列中,等等)。经由可以并行操纵各图像字节的并行处理,可以有效填充这些图像队列。通过使用表格驱动的方法,可以跨越包括产品族的不同类型打印头,使用各高度优化的队列生成例程(例如,包括如上所述的一般例程的例程),其中很少或没有对优化例程修改。
数据泵可以从存储器中检索由软件生成的图像缓冲器,而且在618,图像数据包生成器可以使用所检索的图像缓冲器来生成图像数据包。然后在620,编码各图像数据包并且将其传输到打印头。
如上所述,在控制软件处存储的配置信息可以响应于启动或者重置条件进行更新。控制软件可以响应于这样条件的出现而查询所连接的(各)打印头,如果已经做出了任何改变,则更新该配置信息。这便于升级和替代打印系统中的各个打印头,以及打印系统之间的控制软件可移值性。
可以数字电子电路、或者计算机软件、固件、或者硬件,实现所公开的主题和此处描述的全部功能操作,包括本说明书中公开的结构装置及其结构等效、或者它们的组合。所公开主题可以实现为一个或多个计算机程序产品,即有形地包含在例如机器可读存储设备或者传播信号的信息载体中的一个或多个计算机程序,用于由例如可编程处理器、计算机、或者多个计算机的数据处理设备执行,或者控制该数据处理设备的操作。计算机程序(也称为程序、软件、软件应用或者代码)可以以包括编译或者解释语言的任何形式的编程语言编写,而且它可以部署为任何形式,包括作为独立程序或者作为模块、子例程、或者其它适合在计算环境中使用的单元。
包括所公开主题的方法步骤、此处描述的处理和逻辑流程,可以由一个或者多个可编程处理器执行,这些可编程处理器执行一个或多个计算机程序,以通过对输入数据进行操作并且生成输出来执行所公开主题的功能。这些处理和逻辑流程还可以由例如FPGA或者ASIC(专用集成电路)的专用逻辑电路执行,而且所公开主题的设备可以实现为这样的专用逻辑电路。
已经描述了若干实现。然而,要理解可以进行各种修改。例如,虽然参考图6A和6B中的流程图描述的处理由某个数目和类型的处理组成,但是替代实现可以包括另外和/或不同的处理。因此,其它实现在权利要求的范围之内。
权利要求
1.一种计算机实现的方法,包括向打印设备发送对与打印设备的各属性相对应的信息的请求;从所述打印设备接收与打印设备的各属性相对应的信息;基于所接收的信息识别打印设备的各配置参数;基于该配置参数将图像划分为各图像部分;生成多个图像数据包,每个图像数据包包括一个或多个图像部分;以及将各图像数据包传输到打印设备。
2.如权利要求1所述的方法,其中发送所述请求包括通过控制数据通道发送第一控制数据包;以及接收与打印设备属性相对应的信息包括通过控制数据通道接收第二控制数据包。
3.如权利要求1所述的方法,其中,所述传输图像数据包包括通过图像数据通道传输所述图像数据包。
4.如权利要求1所述的方法,其中与打印头的各属性相对应的信息包括分配给所述打印头的标识符;以及识别各配置参数包括基于所述标识符识别表格中的各配置参数。
5.如权利要求1所述的方法,其中,所述各配置参数包括与打印头的各属性相对应的信息。
6.如权利要求1所述的方法,还包括基于各配置参数生成表格,并且其中所述划分图像包括使用所述表格划分所述图像。
7.如权利要求所述的方法,还包括使用所述各配置参数生成各打印元件关联,并且其中划分包括基于各打印元件关联将图像划分为各图像部分。
8.如权利要求1所述的方法,其中,与所述打印头的各属性相对应的信息包括识别打印头中的各打印元件的各物理参数的信息。
9.如权利要求1所述的方法,还包括接收与在所述打印头和一个或多个打印头之间的关系相对应的信息,并且其中划分所述图像包括基于所述各配置参数将图像划分为各图像部分。
10.一种计算机程序产品,有形地包含在信息载体中,可进行操作来使打印系统向打印设备发送对与打印设备的各属性相对应的信息的请求;从所述打印设备接收与打印设备的各属性相对应的信息;基于所接收的信息识别打印设备的各配置参数;基于该配置参数将图像划分为各图像部分;生成多个图像数据包,每个图像数据包包括一个或多个图像部分;以及将各图像数据包传输到打印设备。
11.如权利要求10所述的产品,其中,所述进行操作来使系统发送请求的指令包括进行操作以使系统通过控制数据通道发送第一控制数据包的指令;以及所述进行操作以使系统接收与打印设备的各属性相对应的信息的指令包括进行操作以使系统通过控制数据通道接收第二控制数据包的指令。
12.如权利要求10所述的产品,其中,所述进行操作以使系统传输各图像数据包的指令包括进行操作以使系统通过图像数据通道传输各图像数据包的指令。
13.如权利要求10所述的产品,其中与打印头的各属性相对应的信息包括分配给所述打印头的标识符;以及所述进行操作以使系统识别各配置参数的指令包括进行操作以使系统基于该标识符识别表格中的各配置参数的指令。
14.如权利要求10所述的产品,其中,所述各配置参数包括与打印头的各属性相对应的信息。
15.如权利要求10所述的产品,还包括指令以使系统基于各配置参数生成表格,并且其中所述进行操作以使系统划分图像的指令包括进行操作以使系统使用所述表格划分图像的指令。
16.如权利要求10所述的产品,还包括指令以使系统使用所述各配置参数生成各打印元件关联,并且其中所述进行操作以使系统进行划分的指令包括进行操作以使系统基于所述各打印元件关联将图像划分为各图像部分的指令。
17.如权利要求10所述的产品,其中,与所述各打印头属性相对应的信息包括识别打印头中的各打印元件的各物理参数的信息。
18.如权利要求10所述的产品,还包括指令,进行操作以使系统接收与在所述打印头和一个或多个打印头之间的关系相对应的信息,并且其中所述进行操作以使系统划分图像的指令包括基于各配置参数将所述图像划分为各图像部分。
19.一种打印系统,包括用于向打印设备发送对与打印设备的各属性相对应的信息的请求的装置;用于从所述打印设备接收与打印设备的各属性相对应的信息的装置;用于基于所接收的信息识别打印设备的各配置参数的装置;用于基于该配置参数将图像划分为各图像部分的装置;用于生成多个图像数据包、每个图像数据包包括一个或多个图像部分的装置;以及用于将各图像数据包传输到打印设备的装置。
20.如权利要求19所述的系统,还包括用于发送所述请求的装置包括通过控制数据通道发送第一控制数据包;以及用于通过控制数据通道接收第二控制数据包的装置。
21.如权利要求19所述的系统,还包括用于通过图像数据通道传输图像数据包的装置。
22.如权利要求19所述的系统,其中,与所述打印头的各属性相对应的信息包括分配给所述打印头的标识符;并且还包括用于基于所述标识符识别表格中的各配置参数的装置。
23.如权利要求19所述的系统,其中,所述各配置参数包括与所述打印头的各属性相对应的信息。
24.如权利要求19所述的系统,还包括用于基于所述各配置参数生成表格的装置,并且其中所述划分图像包括使用所述表格划分所述图像。
25.如权利要求19所述的系统,还包括用于使用所述各配置参数生成各打印元件关联的装置;以及用于基于所述各打印元件关联将图像划分为各图像部分的装置。
26.如权利要求19所述的系统,其中,与所述打印头的各属性相对应的信息包括识别打印头中的各打印元件的各物理参数的信息。
27.如权利要求19所述的系统,还包括用于接收与在所述打印头和一个或多个打印头之间的关系相对应的信息的装置;以及用于基于所述各配置参数将图像划分为各图像部分的装置。
全文摘要
公开了便于使图像数据包适应打印系统中的打印头属性的技术、系统、和计算机程序产品。远离(各)打印头的打印系统中的控制软件,可以通过控制通道发送对打印头的查询,并且接收应答,包括与打印头的各参数相对应的信息,例如特定配置信息或者部件号。该控制软件可以使用与各打印头属性相对应的信息,查找打印头中的各打印元件的布局的规范细节,并且使用该信息来配置控制软件中的图像数据包生成组件,用于具体打印头布局。
文档编号G06F3/12GK101052943SQ200580037513
公开日2007年10月10日 申请日期2005年10月11日 优先权日2004年10月29日
发明者罗伯特·马丁 申请人:富士胶卷迪马蒂克斯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1