打印机和在计算机上实现的方法与流程

文档序号:11582140阅读:270来源:国知局
打印机和在计算机上实现的方法与流程

本公开的一些方面涉及在计算机上实现的致使打印机执行打印操作的方法和根据来自计算机的指令来执行打印操作的打印机。



背景技术:

已经提出了计算机程序,该计算机程序被配置成在指示经由通信网络连接到计算机的打印机执行打印操作之前指示该打印机执行预打印操作,以使得打印操作的质量得以保证。例如,在日本专利临时公开no.h11-5350a(下文中,被称为专利文献1)中,由操作系统调用的程序响应于打印机的输出端口处于就绪状态并且从将最新数据发送到打印机的逝去时间大于或者等于所定义时间的事实,向打印机发送执行预打印操作的自动唤醒命令。



技术实现要素:

然而,专利文献1中描述的程序响应于满足上述条件的事实而向打印机发送自动唤醒命令,而不管实际上是否指示打印机执行打印操作。也就是说,即使当打印机实际上不执行打印操作时,打印机也有可能执行预打印操作。在这种情况下,引起的问题是,墨水和电力被浪费地消耗掉。

本公开的一些方面的有利之处在于,其提供了能够让打印机执行具有适宜操作内容的预打印操作的、在计算机上实现的至少一种方法,和根据来自计算机的指令来执行预打印操作的打印机。

根据本公开的一些方面,提供了一种在具有通信接口的计算机上实现的方法,所述方法包括:执行打印指令接收处理,所述打印指令接收处理包括从所述计算机的操作系统接收打印指令,所述打印指令指示用户输入了指令,所述指令用于指令打印机根据所述用户所指定的执行条件来执行打印操作;响应于在所述打印指令接收处理中接收到所述打印指令,执行准备指令处理,所述准备指令处理包括经由所述通信接口向所述打印机发送准备指令信息,所述准备指令信息包括指示特定执行条件的特定条件信息,所述准备指令信息是用于指令执行至少一个预打印操作中的至少一部分的信息,所述至少一个预打印操作是由所述打印机执行以在打印操作中对具有特定质量的图像进行记录,所述特定执行条件是改变所述至少一个预打印操作的操作内容的执行条件;响应于执行所述准备指令处理,基于所述用户指定的内容数据,执行包括生成作为所述打印操作的对象的打印数据的生成处理;以及执行包括经由所述通信接口向所述打印机发送打印指令信息的打印指令处理,所述打印指令信息是用于指令对所述生成处理所生成的所述打印数据根据所述执行条件来执行所述打印操作的信息。根据上述配置,由于在打印指令信息之前发送包括特定条件信息的准备指令信息,因此变得可以致使打印机执行其操作内容根据特定条件信息而变化的预打印操作,使得在接收到打印指令信息之前,具有适宜操作内容的预打印操作被执行。另外,由于在打印机执行预打印操作时生成打印数据,因此变得可以缩短fpot(firstprintouttime,首次打印的完成时间),fpot为从输入用于打印操作的执行指令直到初始纸张从打印机中被排出而而逝去的所需时间。

根据本公开的一些方面,提供了一种打印机,所述打印机包括:操作单元,其被配置为执行根据执行条件将图像记录在纸张上的打印操作,并且执行用于在所述打印操作中将具有特定质量的图像记录在所述纸张上的至少一个预打印操作;通信接口;以及控制装置,其被配置为执行准备指令处理,所述准备指令处理包括经由所述通信接口从信息处理终端接收准备指令信息,所述准备指令信息指令执行所述至少一个预打印操作中的至少一部分,所述准备指令信息包括指示特定执行条件的特定条件信息,所述特定执行条件是改变所述至少一个预打印操作的操作内容的执行条件。所述控制装置被进一步配置为:响应于在所述准备指令接收处理中接收到所述准备指令信息,执行预打印处理,所述预打印处理包括致使所述操作单元执行其操作内容与所述特定执行条件相符合的所述至少一个预打印操作;执行打印指令接收处理,所述打印指令接收处理包括经由所述通信接口从所述信息处理终端接收打印指令信息,所述打印指令信息指令根据所述执行条件来执行所述打印操作;响应于在所述打印指令接收处理中接收到所述打印指令信息,执行包括确定是否已经执行所述至少一个预打印操作的确定处理;以及响应于在所述确定处理中确定已经执行了所述至少一个预打印操作,执行打印处理,所述打印处理包括致使所述操作单元执行所述打印指令信息所指示的所述打印操作。

根据上述配置,由于打印机根据准备指令信息中包括的特定条件信息来执行预打印操作,因此变得可以执行其操作内容根据特定条件信息而变化的预打印操作,使得在接收到打印指令信息之前,执行具有适宜操作内容的预打印操作。另外,由于在接收到打印指令信息之前可开始预打印操作,因此可缩短fpot。

附图说明

图1是示出在根据本公开的一个或多个方面的例示实施例中的打印机的配置的框图。

图2是打印机的平面图,示出了在根据本公开的一个或多个方面的例示实施例中从顶侧看到的纸张面对区域。

图3a是示出在根据本公开的一个或多个方面的例示实施例中的信息处理终端的配置的框图。

图3b示意性地示出在根据本公开的一个或多个方面的例示实施例中的存储在数据存储区中的条件信息。

图4a示意性地示出在根据本公开的一个或多个方面的例示实施例中的打印机和队列区之间的关系。

图4b示意性地示出在根据本公开的一个或多个方面的例示实施例中存储打印指令信息的队列区。

图4c示意性地示出在根据本公开的一个或多个方面的例示实施例中存储准备指令信息的队列区。

图5是示出在根据本公开的一个或多个方面的例示实施例中的打印指令处理的流程图。

图6是示出在根据本公开的一个或多个方面的例示实施例中的startdoc处理的流程图。

图7是示出在根据本公开的一个或多个方面的例示实施例中的startpage处理的流程图。

图8是示出在根据本公开的一个或多个方面的例示实施例中的准备指令处理的流程图。

图9是示出在根据本公开的一个或多个方面的例示实施例中的打印处理的流程图。

图10是示出在根据本公开的一个或多个方面的例示实施例中的预打印处理的流程图。

图11a示意性地示出在根据本公开的一个或多个方面的例示实施例中的编辑画面示例。

图11b示意性地示出在根据本公开的一个或多个方面的例示实施例中的纸张从打印机中被排出的情形。

图12示意性地示出在根据本公开的一个或多个方面的例示实施例中的标准设置画面的示例。

具体实施方式

要注意,在以下描述中阐述了元件之间的各种连接。要注意,这些连接是常见的,并且除非另外指定,否则连接可以直接或间接的,并且本说明书不旨在在这个方面进行限制。本公开的一些方面可在电路(诸如,专用集成电路)上被实现或者在计算机软件中被实现为可在计算机可读介质上存储的程序,这些计算机可读介质包括但不限于ram、rom、闪存存储器、eeprom、cd-介质、dvd-介质、暂存存储器、硬盘驱动器、软盘驱动器、永久存储器等。

下文中,将参照附图描述根据本公开的一些方面的例示实施例。要注意,下述的例示实施例仅仅是本公开的一些方面的示例,并且可按各种方式进行变化。例如,可改变下述各种处理的执行次序。

根据例示实施例的系统例如包括图1中示出的打印机10和图3a中示出的信息处理终端50。打印机10和信息处理终端50被配置成能够经由通信网络彼此通信。通信网络的具体示例包括但不限于有线lan、无线lan和usb电缆。如图4a中所示,信息处理终端50可以例如能够与多个打印机10a和10b通信。

例如,打印机10的销售方向用户提供包括打印机10和驱动程序66的套装,驱动程序66可被安装在信息处理终端50上。通过让用户将驱动程序66安装在信息处理终端50上,根据例示实施例的系统被配置。例如,可以以与打印机10一起包括在包装中的cd-rom等的形式来提供驱动程序66,或者可经由销售方网站下载驱动程序66。

如图1和图2中所示,打印机10包括作为主要组件的电源单元11、显示器13、输入i/f14、通信i/f15、操作单元20和控制单元40。构成打印机10的组件经由通信总线彼此连接。虽然在附图中未示出,但打印机10包括支承纸张的第一供应纸盘、支承纸张的第二供应纸盘和上面支承形成有图像的纸张的排出纸盘。虽然在这个例示示例中,以示例的方式描述了喷墨类型的打印机10,但打印机10的记录系统不限于喷墨类型,而可以是本领域中已知的另一种类型,诸如电子照相类型。图4a中示出的打印机10a和10b中的每个的基本配置可以与图1和图2中示出的打印机10的基本配置相同。

电源单元11向打印机10中的组件供应从外部电源经由电源插头供应的电力。具体地,电源单元11将得自外部电源的电力作为驱动电力(例如,24v)输出到操作单元20,并且将电力作为控制电力(例如,5v)输出到控制单元40。虽然在附图中未示出,但电源单元11还向显示器13、输入i/f14和通信i/f15供应电力。

电源单元11能够基于从控制单元40输出的电力信号在驱动状态和休眠状态之间切换。更具体地,控制单元40通过输出高电平(例如,5v)的电力信号来致使电源单元11从休眠状态切换成驱动状态。另外,控制单元40通过输出低电平(例如,0v)的电力信号来致使电源单元11从驱动状态切换成休眠状态。

驱动状态意指电源单元11向操作单元20输出驱动电力的状态。换句话讲,驱动状态是操作单元20能够进行操作的状态。休眠状态意指电源单元11不向操作单元20输出驱动电力的状态。换句话讲,休眠状态是操作单元20不能够进行操作的状态。另一方面,不管状态是驱动状态还是休眠状态,电源单元11均向控制单元40输出控制电力。虽然在附图中未示出,但不管电源单元11是驱动状态还是休眠状态,输入i/f14都能够根据用户操作来输出操作信号。另外,不管电源单元11是驱动状态还是休眠状态,通信i/f15都能够从外部装置接收信息。

显示器13例如是液晶显示器或有机el显示器,并且包括上面显示各种类型信息的显示表面。

输入i/f14是通过其接收用户的输入操作的用户接口。具体地,输入i/f14包括按钮,并且将与所按下的按钮分别对应的各种操作信号输出到cpu41。输入i/f14可包括层压在显示器13的显示表面上的隔膜触摸传感器。用于指定在显示器13的显示表面上显示的对象的操作或用于输入字符串或数字串的操作是用户操作的示例。术语“对象”意指例如在显示器13上显示的字符串、图标、按钮或链接。

被配置为触摸传感器的输入i/f14输出指示位置的位置信息,在该位置上用户触摸了显示表面。本文中使用的术语“触摸”一般包括让输入介质接触显示表面的操作。术语“触摸”的概念还可包括让输入介质被放置在非常靠近显示表面的位置,虽然在这种情况下输入介质实际上并没有接触显示表面。输入介质可以是用户的手指,或者可以是触摸笔等。用于轻击显示器53上显示的图标位置的用户操作是用于指定图标的指定操作的示例。

通信i/f15是能够经由通信网络与外部装置通信的接口。也就是说,打印机10经由通信i/f15向外部装置输出各种类型的信息,并且经由通信i/f15从外部装置接收各种类型的信息。例如,通信i/f15可根据基于wi-fi(商标)的通信协议来交换无线信号,或者可以是lan电缆或usb电缆所连接的接口。

操作单元20根据来自控制单元40的指令来执行打印操作和预打印操作。打印操作是用于将图像记录在纸张上的操作。预打印操作是在打印操作之前执行的以使得在打印操作期间具有特定质量程度的图像被记录在纸张上的操作。随后,描述关于打印操作和预打印操作的细节。如图1和图2中所示,操作单元20包括作为主要组件的供应马达21、传送马达22、托架马达23、供应辊24和25、传送辊26、托架27、记录头28、维护机构30、墨水接收单元33和驱动力传输机构35。

供应辊24将支承在第一供应纸盘上的纸张供应到纸张经由传送路径(未示出)到达传送辊26的位置。供应辊25将支承在第二供应纸盘上的纸张供应到纸张经由传送路径(未示出)到达传送辊26的位置。供应辊24和25在经由驱动力传输机构35传输的供应马达21的旋转驱动力的作用下旋转。应该注意,在这个例示实施例中,被设置成从第一供应纸盘或第二供应纸盘向传送辊26延伸的传送路径的至少一部分是弯曲的。

传送辊26将供应辊24或25供应的纸张在传送方向上向着图2中示出的纸张面对区域传送。纸张面对区域是在主扫描方向上延伸的区域,并且在纸张面对区域中,纸张和托架27可彼此面对。传送方向和主扫描方向彼此垂直地相交。传送辊26将记录头28已经在其上记录了图像的纸张在传送方向上向着排出纸盘传送。传送辊26在经由驱动力传输机构35传输的传送马达22的旋转驱动力的作用下旋转。传送辊26可由多个辊形成。

如图2中所示,托架27在主扫描方向上在包括纸张面对区域的区域中移动。更具体地,托架27在主扫描方向上从纸张面对区域向右偏离的顶盖位置和在主扫描方向上从纸张面对区域向左偏离的闪喷位置(flushingposition)之间移动。在从托架马达23接收到旋转驱动力的同时托架27移动。记录头28被安装在托架27上。在记录头28的下表面(下文中,被称为“喷嘴表面”)上,形成有多个喷嘴。通过让诸如压电元件的驱动元件震动,记录头29从喷嘴喷射墨水。

在托架27在主扫描方向上从一侧移向另一侧的过程期间,墨滴从记录头28被喷射到设置在纸张面对区域中的纸张的记录区。结果,图像被记录在纸张上。纸张被划分成在纸张的较短边方向上彼此邻近的多个记录片段。在随后描述的打印操作期间,操作单元20顺序地分别将图像记录在多个记录片段中。

维护机构30为记录头28执行维护。更具体地,维护机构30执行所谓的净化(purging)操作,以将墨水抽吸到喷嘴中。如图2中所示,维护机构30处于在主扫描方向上从纸张面对区域向右偏离的位置处。如图1中所示,维护机构30包括作为主要组件的顶盖31和泵32。

顶盖31处于面对记录头28的位置,记录头28被安装在设置在顶盖位置处的托架27上。顶盖31被配置成能够在上下方向上彼此分离的覆盖位置和分离位置之间移动。设置在覆盖位置的顶盖31紧密地接触设置在顶盖位置的托架27的记录头28,以覆盖喷嘴表面。在分离位置处,顶盖31与喷嘴表面分离。升降机构(未示出)通过使用经由驱动力传输机构35所传输的供应马达21的旋转驱动力将顶盖31在覆盖位置和分离位置之间移动。泵32经由处于覆盖位置的顶盖31将墨水抽吸到喷嘴中,并且将所抽吸的墨水排放到废料墨水罐(未示出)中。泵32在驱动力传输机构35传输的传送马达22的旋转驱动力的作用下驱动。

传输机构35将供应马达21和传送马达22的驱动力传输到供应辊24和25、传送辊26、用于顶盖31的升降机构和泵32。驱动力传输机构35被配置为齿状轮、皮带轮、环状环形带、摆齿轮机构、单向离合器等的全部或部分的组合。通过托架27来切换驱动力传输机构35将供应马达21和传送马达22的驱动力传输所至的传输目的地。驱动力传输机构35被配置成能够在其驱动力的传输目的地彼此不同的第一状态、第二状态和第三状态之间切换。

第一状态是供应马达21的驱动力被传输到供应辊24而不被传输到供应辊25和用于顶盖31的升降机构的状态。第二状态是供应马达21的驱动力被传输到供应辊25而不被传输到供应辊24和用于顶盖31的升降机构的状态。第三状态是供应马达21的驱动力被传输到用于顶盖31的升降机构而不被传输到供应辊24和25的状态。另外,在第一状态和第二状态下,传送马达22的驱动力被传输到传送辊26而不被传输到泵32。在第三状态下,传送马达22的驱动力被传输到传送辊26和泵32二者。

如图2中所示,驱动力传输机构35包括滑动构件36,滑动构件36被形成为延伸到滑动构件36可接触托架37的位置。滑动构件36在接触托架27或与托架27分离的同时在主扫描方向上移动。通过滑动构件36在主扫描方向上移动来切换驱动力传输机构35的状态。更具体地,通过让滑动构件36在主扫描方向上移动,构成驱动力传输机构35的齿轮的接合状态改变。

当向右移动到顶盖位置的托架27接触滑动构件36时,驱动力传输机构35切换成第三状态。另外,当从顶盖位置向左移动的托架27与滑动构件36分离时,驱动力传输机构35从第三状态切换成第一状态。另外,当向右移动到顶盖位置前方的托架27接触滑动构件36时,驱动力传输机构35从第一状态切换成第二状态。应该注意,根据例示实施例的驱动力传输机构35不可直接从第三状态切换成第一状态。

控制单元40总体上控制打印机10的操作。如图1中所示,控制单元40是包括作为主要组件的cpu41、rom42、ram43、eeprom44和asic45的微计算机。

在rom42中,存储用于致使cpu41控制打印机10的操作的程序。ram43被用作在其中暂时存储各种类型数据的存储区或工作区,这些数据被cpu41用于执行程序。在eeprom44中,存储在断电之后将保持的设置、标志等。通过从rom42读取程序并且执行程序,cpu41控制打印机10的操作。显示器13、输入i/f14、通信i/f15、供应马达21、传送马达22、托架23和记录头28连接到asic45。asic45致使打印机10中的组件根据来自cpu41的指令进行操作。

rom42、ram43和eeprom44可以是非瞬时计算机可读介质。非瞬时计算机可读介质可包括诸如cd-rom和dvd-rom以及ram、rom、eeprom等记录介质。非瞬时计算机可读介质可以是有形介质。要注意,非瞬时计算机可读介质并不包括诸如用于携载从互联网上的服务器下载的程序的载波的任何电信号。对于随后描述的信息处理终端50的存储器62,同样如此。

asic45向马达21、22和23输出驱动信号。当马达21、22和23旋转时,辊24、25和26传送纸张,并且托架27在主扫描方向上移动。asic45向诸如压电元件的驱动元件输出驱动信号。当驱动信号振荡时,记录头28从喷嘴喷射墨滴。asic45向显示器13输出图像信号,以在显示器13上显示图像。asic45得到从输入i/f14输出的操作信号。asic45经由通信i/f15从外部装置接收信息,并且经由通信i/f15向外部装置发送信息。此外,本领域中已知的各种传感器连接到asic45。基于从各种传感器输出的检测到的信号,控制单元40检测到例如通过传送辊26传送的纸张的位置、托架27的位置和顶盖31的位置。

如图3a中所示,信息处理终端50包括作为主要组件的输入i/f54、通信i/f55、cpu61、存储器62和通信总线63。由于信息处理终端50中设置的显示器53、输入i/f54、通信i/f55和cpu61分别具有与打印机10中设置的显示器13、输入i/f14、通信i/f55和cpu41的配置基本上相同的配置,因此省略对其的说明。

信息处理终端50例如是移动电话、智能电话、平板终端、或pc。信息处理终端50是计算机的示例。信息处理终端50的输入i/f54可以例如是键盘和鼠标的组合。在这种情况下,将鼠标指示器移动到显示器53上显示的图标的位置并随后点击鼠标的用户操作是用于指定图标的指定操作的示例。

存储器62例如是ram、rom、eeproom、hdd、可拆卸地附接到信息处理终端50的诸如usb存储器的便携式存储介质、设置在cpu61中的缓冲器、或其组合。存储器62包括程序存储区62a和数据存储区62b。在程序存储区62a中,安装有os64、编辑程序65和驱动程序66。存储在区域62a中的每个程序可以是单个程序或多个程序的组合。在区域62b中,存储执行有程序所需的数据或信息。

在这个例示实施例中,将说明windows(商标)操作系统,以作为os64的具体示例;然而,os64的具体示例不限于此示例。例如,可使用android(商标)os、或ios(商标)。

编辑程序65是用于根据用户操作来编辑内容数据的程序。如作为图11a中的示例示出的,编辑程序65致使显示器53显示所指定内容数据所代表的图像,接收用于指令经由输入i/f54编辑内容的用户操作,并且根据接收到的用户操作来编辑内容数据。例如,引用文本格式、图像格式、电子表格格式和演示文稿格式,以作为内容数据的格式。内容数据可包括不止一页的数据。页数据意指代表记录在一张纸上的内容的数据。

驱动程序66是致使打印机10根据从os64接收到的打印指令来执行打印操作的程序。如图6和图7中所示,根据例示实施例的驱动程序66包括作为第一模块示例的ui模块66a和作为第二模块示例的呈现模块66b。驱动程序66可由单个模块形成或者可另外包括另一个模块。驱动程序66可被配置成能够指令对于单个模块的打印机10进行打印操作,或者可被配置成能够指令对于多个模型的打印机10进行打印操作。

在驱动程序66中,定义os64所指定的多个函数。通过让os64以特定次序调用多个函数,驱动程序66能够致使打印机10执行打印操作。根据例示实施例的打印指令意指例如ui模块66a中定义的第一函数“drvdocumentevent()”在使用常数“documentevent_startdoc”作为自变量的同时被os64调用的事实。

如图3a中所示,区域62b包括第一区62c和第二区62d。第一区62c例如是所谓s注册表,即,用于与os64有关的基本信息和驱动程序的设置信息的数据库。通过os64来定义用于引用存储在第一区62c中的信息的引用程序。os64保障根据引用程序而引用的信息的适宜性,并且不保障不根据引用程序而引用的信息的适宜性。相比之下,可在不遵循像上述引用程序一样的引用程序但在所期望时间进行引用的情况下,引用存储在第二区62d中的信息。以下,当被表达为“程序将信息存储在区域62b中”时,这种类型的表达意指信息主要被存储在第二区62d中。以下,说明对第一区62c中存储的信息的引用过程的示例。

举例来说,编辑程序65确保第二区62d中的特定存储区。然后,编辑程序65使用第一指针“devmode”作为自变量来调用os64中定义的读出函数,第一指针“devmode”指示所确保的存储区的首地址。os64将存储在第一区62c中的信息复制到第一指针“devmode”所指示的存储区。结果,编辑程序65变成能够读取或编辑从第一区62c复制到第一指针“devmode”所指示的存储区的信息。

又如,在驱动程序66中,定义由os64所定义的函数(例如,第一函数“drvdocumentevent()”)。os64使用常数“documentevent_first”和第二指针作为自变量来调用第一函数。第二指针指示存储在第一区62c中的信息存储在其中的存储区的首地址或从第一区62c复制到第二区62d的信息存储在其中的存储区的首地址。驱动程序66能够读取或编辑第二指针所指示的存储区中存储的信息作为存储在第一区62c中的信息。在这个例示实施例中,在指定常数“documentevent_first”和第二指针作为自变量的同时执行第一函数的事实可被表达为用于允许引用第一区62c中存储的信息的引用指令。

如图3b中的示例中所示,第一区62c存储条件信息。条件信息是指示用于打印机10将执行的打印操作的执行条件的信息。根据例示实施例的条件信息包括尺寸信息、颜色信息、纸盘信息、纸张信息、余白信息、受保护标志和认证信息。然而,条件信息的具体示例不限于图3b中示出的示例。

在安装驱动程序66时,将条件信息存储在第一区62c中。驱动程序66能够根据来自用户的指令来改变存储在第一区62c中的条件信息。更具体地,驱动程序66根据来自os64的引用指令从第一区62c读取条件信息,并且将所读取的条件信息在显示器53上显示。然后,响应于经由输入i/f54接收到改变条件信息的用户操作,驱动程序66用改变后的条件信息来覆写存储在第一区62c中的条件信息。

条件信息包括公共信息和私有信息。公共信息是还可通过安装在信息处理终端50中的另一个程序(例如,编辑程序65)编辑的信息。私有信息是不可通过安装在信息处理终端50中的另一个程序编辑的信息。换句话讲,私有信息是只有驱动程序66才能够编辑的信息。在图3b的示例中,尺寸信息和颜色信息是公共信息,而纸盘信息、纸张信息和余白信息是私有信息。

尺寸信息指示将用于打印操作的纸张的尺寸(例如,“a4”、“b5”等)。颜色信息是用于打印操作的墨水的数量(例如,“彩色”、“单色”等)。纸盘信息指示打印机10中设置的多个纸盘(例如,“纸盘1”、“纸盘2”等)中的一个。“纸盘1”对应于打印机10的第一供应纸盘,“纸盘2”对应于打印机10的第二供应纸盘。纸张信息指示用于打印操作的纸张的类型(例如,“普通纸”、“铜版纸”等)。余白信息指示是否要在纸张的外围部分中设置具有特定宽度的余白(例如,“带边框”、“不带边框”等)。

在os64中定义了公共信息的数据结构,但图3b只示出代表性条目。另一方面,私有信息的数据结构可根据打印机10而有所不同或者可根据驱动程序66而有所不同。以下,存在公共信息所指示的执行条件被称为“公共条件”并且私有信息所指示的执行条件被称为“私有条件”的情况。

如图4a中所示,区域62b包括不止一个队列区67a、67b和67c。队列区67a至67c是在其中存储将被发送到打印机10a和10b的信息的存储区。队列区67a至67c与指定打印机10a和10b的所谓打印机端口关联。具体地,在队列区67a和67b中,存储将被发送到打印机10a的信息。在队列区67c中,存储将被发送到打印机10b的信息。例如,对于驱动程序66,信息应该存储在其中的队列区67a至67c被指定为来自os64的函数的自变量。以下,存在指定用于驱动程序66的队列区67a至67c被称为“指定队列”的情况。

在队列区67a至67c中,存储用于指令打印机10a和10b执行各种操作的信息。更具体地,在队列区67a至67c中,存储图4b中示出的打印指令信息、图4c中示出的准备指令信息、状态发送指令信息(未示出)等。打印指令信息是用于指令执行打印操作的信息,并且包括供应指令信息、提示指令信息、传送指令信息、喷射指令信息和排出指令信息。准备指令信息是用于指令执行预打印操作的信息。状态发送指令信息(未示出)是用于指令发送指示打印机10a和10b状态的状态信息的信息。然而,存储在队列区67a至67c中的信息的具体示例不限于上述信息。

队列区67a是os64经由通信i/f55向打印机10a发送的信息在发送次序被指定的状态下存储所在的区域。换句话讲,os64以特定时序来检查队列区67a中是否存储了指令信息。然后,响应于确定了指令信息被存储在队列区67a中,os64以预先定义的发送次序经由通信i/f55向打印机10发送指令信息,并且从队列区67a中删除所发送的指令信息。对于队列区67b和67c,同样如此。

更具体地,如图4b和图4c中所示,向存储在队列区67a中的指令信息中添加工作id。工作id是用于指定将连续发送的指令信息的信息。也就是说,存在向多个指令信息中添加同一工作id的情况。os64以信息被存储在队列区67a中的次序来发送其中被添加了同一工作id的多个指令信息。此外,os64以工作id被生成的次序,发送其中被添加了互不相同的工作id的指令信息。

例如,在图4b中示出的队列区67a中,os64以该次序发送其中被添加了工作id“contentsdataa(内容数据a)”的传送指令信息、喷射指令信息和排出指令信息。然后,os64以该次序发送其中被添加了工作id“contentsdatab(内容数据b)”的供应指令信息和提示指令信息。在这种情况下,即使当在存储其中被添加了工作id“contentsdataa”的排出指令信息之前将其中被添加了工作id“contentsdatab”的供应指令信息存储在队列区67a中时,也提早发送排出指令信息。也就是说,以信息被写入的次序连续发送其中被添加了同一工作id的多个指令信息。

(系统操作)

下文中,现在将参照图5至图10说明根据例示实施例的系统操作。

本文中描述的流程图基本上指示根据程序中描述的指令的cpu41和61的处理。也就是说,以下说明中的诸如“确定”、“抽出”、“选择”、“控制”等各种处理指示cpu41和61的处理。cpu61进行的处理包括经由os64进行的硬件控制。此外,用计算机可读取的位流来表示本文中使用的“数据”。此外,具有基本上相同含义但具有不同格式的数据被当作同一数据进行处理。对于本文中使用的“信息”,同样如此。

图5至图9(特别地,图6和图7)示出这个例示实施例中的特别重要的处理,并且在这些图中,省去了在各个处理之间执行的其他处理。更具体地,os64可调用除了图6和图7中示出的函数之外的函数(未示出)。在下面的说明中,只说明了相应函数中指定的自变量中代表性的自变量;然而,可指定其他自变量。此外,在下面的说明中,存在如下情况:说明对于例示实施例而言在每个调用函数中定义的处理之中特别重要的处理并且省去了对除了这些特别重要的处理外的处理的说明。

首先,信息处理终端50的编辑程序65将图11a中示出的编辑画面显示在显示器53上。编辑画面包括读出指令图标111、存储指令图标112、打印指令图标113和编辑图像114。编辑程序65经由输入i/f54接收对编辑画面的用户操作。

读出指令图标111对应于用于读出代表编辑图像114的内容数据的指令。存储指令图标112对应于用于将代表编辑图像114的内容数据存储在区域62b中的指令。打印指令图标113对应于用于对内容数据执行打印操作的指令。编辑图像114是内容数据中包括的页数据所代表的图像。根据例示实施例的编辑程序65将编辑图像114显示在编辑画面上,使得编辑图像114的较长边方向沿着显示器53的上下方向。

响应于经由输入i/f54接收到的指定读出图标111的用户操作,编辑程序65将具有可读格式的内容数据的列表显示在显示器53上。然后,编辑程序65从区域62b读出经由用户i/f54指定的内容数据。然后,编辑程序65将所读取的内容数据所代表的编辑图像114显示在显示器53上。响应于接收到指定对编辑图像114进行编辑的用户操作,编辑程序65编辑内容数据。响应于经由输入i/f54接收到指定存储指令图标112的用户操作,编辑程序65将所编辑的内容数据存储在队列区67b中。

响应于经由输入i/f54接收到指定打印指令图标113的用户操作,编辑程序65将识别正在编辑的内容数据的数据id暂时存储在队列区67b中。以下,这里暂时存储的数据id被称为“指定数据id”,并且通过所指定的数据id而识别的内容数据被称为“指定内容数据”。在这个例示实施例中,假设暂时存储了指定数据id“contentsdatac”。编辑程序65执行打印指令处理。打印指令处理是用于指令打印机10执行指定内容数据的打印操作的处理。现在,将参照图5说明关于打印指令处理的细节。

(打印指令处理)

首先,编辑程序65确保存储区域62b的第二区62d中的条件信息所需的存储区。另外,编辑程序65在将第一指针“devmode”指定为自变量的同时调用os64中定义的读出函数,第一指针“devmode”指示所确保的存储区的首地址。结果,存储在第一区62c中的条件信息被os64复制到第一指针“devmode”所指示的存储区。以下,在第二区62d中所确保的存储区中存储的条件信息被称为“编辑条件信息”。

接下来,编辑程序65将图12中示出的标准设置画面显示在显示器53上(步骤s11)。标准设置画面包括下拉菜单121、单选按钮122、123、124和125、“确认”按钮126和“取消”按钮127。编辑程序65经由输入i/f54接收对标准设置画面进行的用户操作(步骤s12)。

下拉菜单121对应于用于指定执行打印操作的打印机10的指令。单选按钮122和123对应于可被设置成尺寸信息的设置“a4”和“b5”。单选按钮124和125对应于可被设置成颜色信息的设置“彩色”和“单色”。在初始显示的标准设置画面上,单选按钮122至125的状态对应于编辑条件信息中设置的设置。“确认”按钮126对应于用于指令打印机10根据编辑条件信息所指示的执行条件来执行指定内容数据的打印操作的指令。“取消”按钮127对应于用于完成打印指令处理的指令。

响应于经由输入i/f54接收到对下拉菜单121的用户操作,编辑程序65将用于识别指定打印机10的打印机id(下文中,被称为“指定的打印机id”)存储在存储区62b中。在这个例示实施例中,假设指定通过打印机id“mfp-a”识别的打印机10a。响应于接收到指定单选按钮122至125的用户操作(s12:设置改变),编辑程序65用与指定的单选按钮122至125对应的设置来更新编辑条件信息(步骤s13)。

然后,编辑程序65将在其上反映了用户操作的标准设置画面显示在显示器53上(步骤s11)。也就是说,编辑程序65能够经由标准设置画面接收对执行打印操作的打印机10的指定和对编辑条件信息中包括的公共信息的改变。另一方面,编辑程序65不能够接收对编辑条件信息中包括的私有信息的改变。

响应于经由输入i/f54接收到对“确认”按钮的指定,编辑程序65执行startdoc处理(步骤s14)。另一方面,尽管在图5中未示出,响应于经由输入i/f54接收到对“取消”按钮127的指定,编辑程序65完成打印指令处理。startdoc处理是致使打印机10执行打印操作的预处理。现在,将参照图6说明关于startdoc处理的细节。

(startdoc处理)

首先,编辑程序65调用os64中定义的函数“startdoc()”(步骤s21)。以下,存在步骤sxx中调用的函数被称为“函数sxx”的情况。编辑程序65将指定id“contenntsdatac”、指定打印机id“mfp-a”和第一指针指定为函数s21的自变量。响应于函数s21被调用,os64以特定次序调用驱动程序66中定义的各种函数。此外,驱动程序66执行os64所调用的函数中定义的处理。省略关于这些处理的细节。

其函数s21被调用的os64调用第一函数“drvdocumentevent()”(步骤s22)。os64指定常数“documentevent_first”和第二指针作为函数s22的自变量。第二指针例如是指示条件信息存储在其中的第一区62c的首地址或os64从第一区62c读出的条件信息存储所在的存储区的首地址的信息。

接下来,响应于正调用函数s22,ui模块66a读出第二指针所指示的存储区中存储的信息,并且将所读取的条件信息存储在第二区62d中(步骤s23),并且完成函数s22(步骤s24)。也就是说,在步骤s23中,ui模块66a将从第一区62c读出的条件信息存储在第二区62d中。驱动程序66执行的步骤s22的处理是参考接收处理的示例,并且步骤s23中的处理是存储处理的示例。

以下,步骤s23中的存储在第二区62d中的条件信息被称为“保存的条件信息”。在编辑的条件信息和保存的条件信息之间,私有信息是相同的,但公共信息可能是不同的。更具体地,当在步骤s13中更新了编辑条件信息时,在编辑的条件信息和保存的条件信息之间,公共信息是不同的。

其函数s21被调用的os64调用第一函数“drvdocumentevent()”(步骤s25)。os64将常数“documentevent_startdoc”指定为函数s25的自变量。在步骤s22的处理之后,执行步骤s25的处理。接下来,响应于正在调用函数s25(步骤s25),ui模块66a执行准备指令处理(步骤s26)。准备指令处理是用于指令打印机10执行预打印操作的处理。ui模块66a所执行的步骤s25的处理是从os64接收打印指令的打印指令接收处理的示例。将参照图8说明关于准备指令处理的细节。

所期望的是,当确定出现向打印机10发送打印指令信息时,执行相对于打印机10的预打印操作的执行指令。在标准设置画面上指定“确认”按钮126之后,在不需要经由输入i/f54的用户指令指令的情况下向打印机10发送打印指令信息。也就是说,对“确认”按钮126的指定可被视为用户意图指令打印机10执行打印操作。为此原因,所期望的是,在标准设置画面上指定了“确认”按钮126之后,ui模块66a执行准备指令处理。

更具体地,响应于经由输入i/f54接收到在标准设置画面上指定了“确认”按钮126(s12:确认按钮),编辑程序65调用函数s21。os64也可在除了调用函数s21的时间外的时间(例如,引用打印机驱动器上的信息的时间)调用ui模块66a中定义的函数。然而,只有当函数s21被调用时,os64才调用函数s25。为此原因,根据例示实施例的ui模块66a响应于正在调用函数s21来执行准备指令处理。

(准备指令处理)

首先,ui模块66a生成作为所生成的识别信息示例的工作id“___preparation__”。然后,ui模块66a生成通过工作id“___preparation__”识别的准备工作(步骤s61)。应该注意,ui模块66a生成工作id,使得工作id不与可以是指定数据id的字符串重叠。这是因为,在随后描述的步骤s29中使用指定数据id作为工作id。向随后描述的步骤s62和s66中的写入队列区67a的各种类型的指令信息中添加工作id“___preparation__”。

接下来,ui模块66a将第一准备指令信息存储在队列区67a中(步骤s62)。第一准备指令信息属于用于指令执行预打印操作的准备指令信息,并不包括随后描述的特定条件信息。换句话讲,第一准备指令信息是用于指令打印机执行预打印操作的信息,该预打印操作的操作内容没有因随后描述的特定执行条件而改变。os64将存储在队列区67a中的第一准备指令信息发送到打印机10a。步骤s62中的处理是第一指令处理的示例,在第一指令处理中第一准备指令信息经由通信i/f55被发送到打印机10a。

接下来,ui模块66a确定是否在随后描述的打印指令信息之前发送过特定条件信息(步骤s63)。特定条件信息是图3b中示出的条件信息的一部分。以下,特定条件信息所指示的执行条件被称为“特定执行条件”。特定执行条件是改变预打印操作的操作内容的执行条件。举例来说,纸盘信息指示在随后描述的供应处理中改变纸张供应源的特定执行条件。又如,纸张信息指示改变纸张供应速度的特定执行条件。作为又一个示例,余白信息指示改变纸张的提示位置的特定执行条件。

举例来说,ui模块66a可确定通过指定打印机id识别的打印机10a是否能够根据特定条件信息来执行预打印操作。更具体地,ui模块66a可经由通信i/f55从打印机10a接收能力信息,该能力信息指示打印机10a是否能够根据特定条件信息来执行预打印操作,并且ui模块66a可基于接收到的能力信息来确定打印机10a是否能够执行预打印操作。另选地,ui模块66a可得到指示打印机10a的型号的型号信息,并且可通过针对各型号将指示打印机是否能够根据特定条件信息来执行预打印操作的可用信息与所得到的型号信息所指示的型号进行比较,来做出这种确定。例如,型号信息可以是从打印机10a接收的或者可得自os64。能力信息或可用信息可以是针对多种类型的条件信息中的每个指示打印机是否能够执行预打印操作的信息。

又如,ui模块66a可经由输入i/f54接收到指定是否要发送特定条件信息的用户操作,并且可预先将指示接收到的内容的设置信息存储在区域62b中。然后,ui模块66a可确定是否要根据设置信息中指示的内容来发送特定条件信息。此外,ui模块66a可接收指示是否针对多种类型的条件信息中的每个发送特定条件信息的指令。

此外,ui模块66a确定在步骤s23中存储在区域62b中的保存的条件信息中是否包括特定条件信息(步骤s64)。举例来说,可预先用ui模块66a的源代码来描述变成特定条件信息的条件信息。又如,ui模块66a可从打印机10a接收指示哪个条件信息变成特定条件信息的信息。然后,ui模块66a可通过将源代码中描述的信息或从打印机10a接收的信息与保存的条件信息进行比较,来确定是否存在特定条件信息。步骤s64的处理是第一确定处理的示例。在这个例示实施例中,如上所述,假设纸盘信息、纸张信息和余白信息是特定条件信息。

此外,ui模块66a确定在步骤s64中被确定为特定条件信息的条件信息是编辑程序65能够改变的条件信息(步骤s65)。例如,可预先用ui模块66a的源代码来描述编辑程序65能够改变的条件信息。然后,ui模块66a可通过将用源代码描述的信息与在步骤s64中被确定为特定条件信息的条件信息进行比较,来做出这种确定。

举例来说,可通过编辑程序65来改变公共信息。又如,可通过编辑程序65来改变私有信息中的第一私有信息。另一方面,不可通过编辑程序65来改变私有信息中的第二私有信息。第一私有信息指示可根据公共条件的编辑而改变的第一私有条件。第二私有信息指示不根据公共条件的编辑而改变的第二私有条件。步骤s65中的处理是第二确定处理的示例。

假设例如尺寸信息从“a4”变成“b5”。在这种情况下,呈现模块66b经由通信i/f55向打印机10a询问放置在纸盘1和2上的纸张的尺寸。然后,响应于确定在纸盘2上支承的是纸张“b5”,呈现模块66b将纸盘信息从“纸盘1”改变为“纸盘2”。在这种情况下,纸盘信息是私有信息。

例如,对于打印机10a和打印机10b而言,私有信息是第一私有形式还是第二私有信息会有所不同。举例来说,关于具有对上述关于各纸盘上支承的纸张的尺寸的询问进行响应的功能的打印机10,纸盘信息是第一私有信息。又如,关于不具有对上述关于纸张尺寸的询问进行响应的功能的打印机10,纸盘信息是第二私有信息。ui模块66a可得到例如指示打印机10a的型号的型号信息,并且可通过将针对各型号指示纸盘信息是否是第一私有信息的信息与所得到的型号信息所指示的型号进行比较,来做出这种确定。假设根据例示实施例的纸盘信息、纸张信息和余白信息是第二私有信息。

响应于确定之前将发送特定条件信息,特定信息被包括在所保存的条件信息中并且特定条件信息是第二私有信息(s63为是,并且s64为是,并且s65为否),ui模块66a将第二准备指令信息存储在队列区67a中(步骤s66)。应该注意,ui模块66a从步骤s23中存储在区域62b中的保存的条件信息中提取特定条件信息,并且将所提取的条件信息包括在第二准备指令信息中。

第二准备信息属于用于指示执行预打印操作的准备指令信息,并且包括特定条件信息。换句话讲,第二准备指令信息是用于执行预打印信息的信息,该预打印信息的操作内容根据特定执行条件而改变。os64将存储在队列区67a中的第二准备指令信息发送到打印机10a。步骤s66的处理是第二指令处理的示例,在该第二指令处理中第二准备指令信息经由通信i/f55被发送到打印机10a。

举例来说,当存在多个特定条件信息时,ui模块66a可将包括所有多个特定条件信息的一个第二准备指令信息存储在队列区67a中。又如,当存在多个特定条件信息时,ui模块66a可存储多个第二准备指令信息,该多个第二准备指令信息中的每一个均将一个特定条件信息包括在队列区67a中。在这种情况下,多个第二准备指令信息以对应的预打印操作被执行的次序被存储在队列区67a中。在这个例示实施例中,假设包括纸盘信息的第二准备指令信息、包括纸张信息的第二准备指令信息和包括余白信息的第二准备指令信息以该次序被存储在队列区67a中。

另一方面,响应于确定没有发送特定条件信息(s63:否),响应于确定在保存的条件信息中不包括特定条件信息(64:否),或者响应于确定特定条件信息是公共信息还是第一私有信息(s65:是),ui模块66a在不执行步骤s66的处理的情况下完成准备指令处理。

返回图6,ui模块66a完成函数s25(步骤s27)。接下来,响应于完成了函数s25(步骤s27),os64调用呈现模块66b中定义的第二函数“drvstartdoc()”(步骤s28)。os64将在步骤s21中被指定为自变量的第一指针和指定数据id“contentsdatac”指定为函数s28的自变量。

接下来,响应于正在调用函数s28,呈现模块66b在正作为指定队列的队列区67a中生成具有工作id的打印工作(步骤s29),该工作id是被指定为自变量的指定数据id“contentsdatac”,并且完成函数s28(步骤s30)。向随后描述的步骤s25、s48和s53中的写入队列区67a的各种类型的指令信息中添加工作id“contentsdatac”。然而,在该级中,通过工作id“contentsdatac”识别的打印工作并不包括指令信息。被指定为函数s28的自变量的指定数据id是os64所指定的指定识别信息的示例。

响应于正在完成函数s28(步骤s30),os64调用第一函数“drvdocumentevent()”(步骤s31)。os64将常数“documentevent_startdocpost”指定为函数s31的自变量。接下来,响应于正在调用函数s31,ui模块66a执行指令取消处理(步骤s32)。

指令取消处理是从队列区67a中删除被添加至准备工作中的准备指令信息的处理。更具体地,ui模块66a确定其中被添加了步骤s64中暂时存储的工作id“___preparation___”的指令信息是否被存储在队列区67a中。步骤s66中的准备指令信息被存储在队列区67a中的情况例如是通信i/f55不连接到通信线路的情况或打印机10a被关闭的情况。然后,响应于确定准备执行信息被存储在队列区67a中,ui模块66a从队列区67a中删除准备指令信息。

返回图6,ui模块66a完成函数s31(步骤s33)。此外,响应于正在完成函数s31(步骤s33),os64完成函数s21(步骤s34)。因此,完成startdoc处理。在函数s21之后返回图5,编辑程序65执行startpage处理(步骤s15)。startpage处理是生成打印指令信息的处理。针对指定内容数据中包括的各页数据来执行startpage处理。例如,作为startpage处理的目标的页数据被编辑程序65指定为函数的自变量。现在,将参照图7说明startpage处理。

(startpage处理)

编辑程序65调用os64中定义的函数“startpage()”(步骤s41)。然后,os64调用第一函数“drvdocumentevent()”(步骤s42)。os64将常数“documentevent_startpage”指定为自变量。然后,ui模块66a在执行特定处理的同时完成函数s42(步骤s43)。

响应于正在完成函数s42(步骤s43),os64调用呈现模块66b中定义的函数“drvstartpage()”。接下来,响应于正在调用函数s44,呈现模块66b确定第一指针所指示的编辑条件信息中的公共信息和第一私有信息之间的一致性。然后,响应于确定例如公共信息与如上所述的第一私有信息不一致,呈现模块66b改变第一私有信息,使其与公共信息一致。

呈现模块66b生成头部指令信息,并且将所生成的头部指令信息存储在队列区67a中(步骤s45)。头部指令信息是用于指令在将图像记录在一张纸上的一系列操作中将图像记录在该纸张上之前将执行的操作的打印指令信息。根据例示实施例的头部指令信息是供应指令信息和提示指令信息。

响应于在步骤s66中发送包括纸盘信息和纸张信息的第二准备指令信息,呈现模块66b可省去步骤s45中的供应指令信息的发送。另外,响应于在步骤s66中发送包括余白信息的第二准备指令信息,呈现模块66b可省去步骤s45中的提示指令信息的发送。

然后,呈现模块66b完成函数s44(步骤s46)。接下来,响应于正在完成函数s44(步骤s46),os64完成函数s41(步骤s47)。然后,响应于正在完成函数s41(步骤s47),编辑程序65调用os64中定义的绘图函数。另外,响应于编辑程序65正在调用绘图函数,os64调用呈现模块66b中定义的绘图函数。

通过以特定次序执行多个绘图函数,呈现模块66b根据页数据来生成打印数据。打印数据例如是通过将页数据栅格化而得到的栅格数据。呈现模块66b生成用于指令执行打印数据的打印操作的指令信息,并且将所生成的打印指令信息存储在队列区67a中(步骤s48)。如随后描述的,在步骤s48中,生成喷射指令信息和传送指令信息。步骤s48中生成打印数据的处理是生成处理的示例。以下,说明关于呈现模块66b生成打印指令信息的处理的细节。

首先,呈现模块66b将单元信息通知给os64,单元信息指示作为在步骤s28之后的特定时间进行栅格化的对象被传递的数据单元。在单元信息中,例如,设置指示以页数据为单元进行传送的“页”或指示以带数据为单元进行传送的“带”。带数据是页数据的部分数据。更具体地,页数据被划分成在较长边方向上邻近的多个带数据。带数据所指示的图像具有比随后描述的传递数据所指示的图像大的区域。

响应于例如在编辑条件信息的尺寸信息中正设置的特定尺寸(例如,a4),呈现模块66b将单元信息“页”通知给os64。在纸张的较短边方向与传送方向一致的状态下,通过打印机10的辊24、25和26来传送具有特定尺寸的纸张。在具有特定尺寸的纸张上,通过打印机10的托架27在纸张的较长边方向上进行移动来记录图像。

另一方面,例如,响应于在编辑条件信息的尺寸信息中正设置的非特定尺寸(例如,除了a4外的尺寸),呈现模块66b将单元信息“带”通知给os64。在纸张的较长边方向与传送方向一致的状态下,通过打印机10的辊24、25和26来传送具有非特定尺寸的纸张。在具有非特定尺寸的纸张上,通过打印机10的托架27在纸张的较短边方向上进行移动来记录图像。

应该注意,可经单元信息作为os64调用的函数的返回值os64来进行通知。例如,对于打印机10a和打印机10b,特定尺寸可有所不同。可用驱动程序66的源代码来描述打印机10a和10b中的每一个的特定尺寸,或者驱动程序66可向打印机10a和10b询问特定尺寸。

已经得到单元信息“页”的os64在步骤s48中将页数据传递给呈现模块66b。呈现模块66b将从os64传递的整个页数据栅格化,以生成栅格化数据。然后,呈现模块66b将区域62b中形成的栅格化数据在区域62b中旋转90度。然后,呈现模块66b从已经旋转90度的栅格化数据中提取指示记录在记录区之一中的图像的多个传递数据。然后,呈现模块66b针对所提取的传递数据中的每一个来生成喷射指令信息和传送指令信息,并且将所生成的喷射指令信息和传送指令信息顺序地写入队列区67a中。呈现模块66b针对页数据中包括的所有传递数据,连续地执行提取传递数据、生成喷射指令信息和传送指令信息、和将生成的信息的写入队列区67a中。

另一方面,已经得到单元信息“带”的os64将页数据中包括的多个带数据中的一个传递到呈现模块66b。呈现模块66b将从os64传递的整个带数据栅格化,以生成栅格化数据。然后,呈现模块66b基于栅格化数据来生成喷射指令信息和传送指令信息,并且将所生成的喷射指令信息和传送指令信息写入队列区67a中。然后,针对构成页数据的所有带数据来重复上述处理。

也就是说,在单元信息“页”的情况下,在整个页数据被转换成栅格化数据并且栅格化数据在区域62b中被旋转90度之后,将初始喷射指令信息写入队列区67a中。另一方面,在单元信息“带”的情况下,在作为页数据的一部分的整个带数据被转换成栅格化数据之后,将初始喷射指令信息写入队列67a中。也就是说,相比于在单元信息“带”的情况,在单元信息“页”的情况下,从指定“确认”按钮的时间到将初始喷射指令信息写入队列67a中的时间的逝去的时间段较长。

接下来,响应于针对正在完成指定的页数据的步骤s48的处理,编辑程序65调用os64中定义的函数“endpage()”(步骤s49)。接下来,os64调用第一函数“drvdocumentevent()”(步骤s50)。os64将常数“documentevent_endpage”指定为函数s50的自变量。然后,ui模块66a执行特定处理并且完成函数s50(步骤s51)。

接下来,响应于正在完成函数s50(步骤s51),os64调用呈现模块66b中定义的函数“drvendpage()”(步骤s52)。然后,响应于正在调用函数s52,呈现模块66b生成排出指令信息,并且将所生成的排出指令信息存储在队列区67a中(步骤s53)。

发送通过图7中示出的startpage处理而写入队列区67a中的多个打印指令信息,以便由os64将它们写入打印机10a。通常,os64经由通信i/f55将供应指令信息、提示指令信息、喷射指令信息、传送指令信息、喷射指令信息、…、排出指令信息以该次序发送到打印机10a。步骤s45的处理、步骤s48中的将打印指令信息存储在队列区67a中的处理和步骤s53的处理是经由通信i/f55将打印指令信息发送到打印机10的打印指令处理的示例。

然后,呈现模块66b完成函数s52(步骤s54)。然后,响应于正在完成函数s52(步骤s54),os64完成函数s40(步骤s55)。结果,完成startpage处理。接下来,返回图5,编辑程序65确定是否已经针对指定的内容数据中包括的所有页数据已经执行了startpage处理(步骤s16)。然后,响应于确定存在对于其尚未执行startpage处理的页数据(s16:是),编辑程序65针对该页数据执行startpage处理(步骤s15)。

然后,响应于确定已经针对所有页数据执行了startpage处理(s16:否),编辑程序65执行enddoc处理(步骤s17)。enddoc处理是在由打印机10执行打印操作之后执行的后级处理。由于enddoc处理是通过让编辑程序65调用os64中定义的函数“enddoc()”而开始的已知处理,因此省去对其的详细说明。

(打印处理)

下文中,将参照图9说明打印机10执行的打印处理。打印机10响应于经由通信i/f15从信息处理终端50接收到准备指令信息或打印指令信息来执行打印处理。下述的处理可通过cpu41读取rom42中存储的程序来执行或者可被实现为安装在控制单元40上的硬件电路。

打印机10的控制单元40经由通信i/f15从信息处理终端50接收准备指令信息(s71:准备指令)。根据例示实施例的控制单元40经由通信i/f15依次从信息处理终端50接收第一准备指令信息、包括纸盘信息的第二准备指令信息、包括纸张信息的第二准备指令信息、包括余白信息的第二准备指令信息。步骤s71中的用于接收准备指令信息的处理是准备指令信息接收处理的示例,用于接收第一准备指令信息的处理是第一接收处理的示例,并且用于接收第二准备指令信息的处理是第二接收处理的示例。

接下来,响应于正在接收准备指令信息(s71:准备指令),打印机10确定电源单元11是否处于休眠状态(步骤s72)。例如,控制单元40可将指示电源单元11的当前状态的标志信息存储在ram43或eeprom44中并且可基于标志信息在步骤s72中做出确定。然而,步骤s72中的确定方式不限于上述示例。

接下来,响应于确定电源单元11处于休眠状态(s72:是),控制单元40将电源单元11从休眠状态切换成驱动状态(步骤s73)。更具体地,控制单元40向电源单元11输出高电平的电力信号。另一方面,响应于确定电源单元11处于驱动状态(s72:否),控制单元40跳过步骤s73的处理。步骤s72的处理是状态确定处理的示例,并且步骤s73的处理是切换处理的示例。

接下来,控制单元40通过显示器13通知接收到准备指令信息(步骤s74)。例如,控制单元40可将显示器13的背光打开达特定时间段。步骤s74的处理是通知处理的示例。显示器13是通知单元的示例。然而,通知处理的具体示例不限于上述示例。例如,可打开led灯(未示出),或者可从扬声器(未示出)输出通知声音,以作为通知处理。

接下来,控制单元40致使操作单元20执行预打印操作(步骤s75)。预打印操作是打印机10应该执行的以在打印操作中记录具有特定质量的图像的操作。现在,将参照图10说明用于致使操作单元20执行预打印操作的打印处理的细节。假设在执行预打印操作时,托架27处于顶盖位置,顶盖31处于覆盖位置并且驱动力传输机构35处于第三状态。

响应于经由通信i/f15从信息处理终端50接收第一准备指令信息,控制单元40将顶盖31从覆盖位置移向分离位置(步骤s91)。然后,控制单元40将托架27从顶盖位置移向闪喷位置(步骤s92)。此时,由于从顶盖位置移向闪喷位置的托架27与滑动构件36分离的事实,驱动力传输机构35从第三状态切换成第一状态。步骤s91的处理是分离处理的示例,步骤s92的处理是移动处理和第一切换处理的示例。步骤s91和s92的处理是操作内容没有因特定条件信息而改变的第一预打印处理的示例。

接下来,响应于经由通信i/f15从信息处理终端50接收到包括纸盘信息的第二准备指令信息,控制单元40对纸盘信息的设置做出确定(步骤s93)。然后,响应于确定在纸盘信息中设置了“纸盘2”(s93:第二纸盘),控制单元40通过让托架27与滑动构件36分离并且接触滑动构件36而将驱动力传输机构35从第一状态切换成第二状态(步骤s94)。另外,控制单元40再将托架27移向闪喷位置。另一方面,响应于确定在纸盘信息中设置了“纸盘1”(s93:第一纸盘),控制单元40跳过步骤s94。步骤s94的处理是第二切换处理的示例。

然后,响应于经由通信i/f15从信息处理终端50接收到包括纸张信息的第二准备指令信息,控制单元40对纸张信息的设置做出确定(步骤s95)。然后,响应于确定在纸张信息中设置了“普通纸”(s95:普通纸),控制单元40致使供应辊24和25将在第一供应纸盘或第二供应纸盘上支承的纸张以第一速度向传送辊26供应(步骤s96)。另一方面,响应于确定在纸张信息中设置了“铜版纸”(s95:铜版纸),控制单元40致使供应辊24和25将在第一供应纸盘或第二供应纸盘上支承的纸张以第二速度向传送辊26供应(步骤s97)。

关于比普通纸厚的铜版纸,所期望的是,在向铜版纸施加力矩时,以低速供应铜版纸,以抑制当经过弯曲的传送路径时造成的卡纸。也就是说,第二速度低于第一速度。纸张信息“普通纸”是第一类型的示例,纸张信息“铜版纸”是其纸张厚度大于第一类型的纸张厚度的第二类型的示例。步骤s96和s97的处理是供应处理的示例。

接下来,响应于经由通信i/f15从信息处理终端接收到包括余白信息的第二准备指令信息,控制单元40对余白信息的设置做出确定(步骤s98)。然后,响应于确定在余白信息中设置了指示不设置余白的“不带边框”(s98:不带边框),控制单元40致使传送辊26将纸张在传送方向上传送,直到纸张的前沿到达第一位置(步骤s99)。另一方面,响应于确定在余白信息中设置了指示设置余白的“带边框”(s98:带边框),控制单元40致使传送辊26将纸张在传送方向上传送,直到所供应的纸张的前沿到达第二位置(步骤s100)。

第二位置在相对于第一位置的传送方向上的下游侧。第一位置和第二位置之间的距离例如是在驱动程序或打印机10中被初始设置为在纸张前沿处设置的余白的值(例如,3mm)。步骤s99和s100的处理是纸张被传送辊26传送到面对托架27的位置的提示处理的示例。步骤s93至s100的处理是操作内容根据特定条件信息而改变的第二预打印处理的示例。

另一方面,响应于没有接收到包括纸盘信息的第二准备指令信息(s93:未接收到),控制单元40在没有执行步骤s94至s100的处理的情况下完成预打印处理。响应于没有接收到包括纸张信息的第二准备指令信息(s95:未接收到),控制单元40在没有执行步骤s96至s100的处理的情况下完成预打印处理。另外,响应于没有接收到包括余白信息的第二准备指令信息(s98:未接收到),控制单元40在没有执行步骤s99至s100的处理的情况下完成预打印处理。

控制单元40将与多个预打印操作分别对应的标志信息存储在ram43或eeprom44中。在所有标志信息中,在预打印处理开始时,设置指示没有完成预打印操作的事实的第二值“关”。响应于完成预打印操作中的一个的事实,控制单元40将指示完成预打印操作的第一值“开”设置成与完成的预打印操作对应的标志信息。

返回图9,控制单元40经由通信i/f15从信息处理终端50接收打印指令信息(s71:打印指令)。也就是说,根据例示实施例的控制单元40经由通信i/f15依次从信息处理终端50接收供应指令信息、提示指令信息、喷射指令信息、传送指令信息、喷射指令信息、…、排出指令信息。在步骤s71中接收到打印指令信息的处理是打印指令接收处理的示例。

供应指令信息是用于致使供应辊24和25从编辑条件信息的纸盘信息所指示的供应纸盘供应纸张的信息。提示指令信息是用于致使传送辊26将纸张传送到所供应的纸张的初始记录区面对记录头28的位置的信息。喷射指令信息是指示记录头28喷射墨水以将图像记录在面对记录头28的纸张的记录区时的时间的信息。传送指令信息是用于致使传送辊26将纸张传送到记录区面对记录头28的位置的信息,接下来在该记录区上图像将被记录。排出指令信息是用于致使传送辊26排出上面已经记录有图像的纸张的信息。

接下来,控制单元40确定是否完成预打印处理(步骤s76)。更具体地,响应于确定第一值“开”被设置成与预打印操作关联的所有标志信息,控制单元40确定完成预打印处理(s76:是)。另一方面,响应于确定第二值“关”被设置成与预打印操作关联的标志信息中的至少一个,控制单元40确定没有完成预打印处理(s76:否)。

接收到准备指令信息和接收到打印指令信息之间的间隔例如根据步骤s48的处理量、通信网络的状态等而有所不同。也就是说,有可能在接收到打印指令信息时,没有完成作为触发机制的准备指令信息开始的预打印处理。另外,有可能当控制单元40没有接收到第二准备指令信息时,控制单元40尚未执行第二预打印处理的部分。步骤s76的处理是确定处理的示例。

响应于确定尚未执行将在预打印处理中执行的预打印操作中的至少一个(s76:否),控制单元40致使操作单元20执行未执行的预打印操作(步骤s77)。更具体地,响应于步骤s93至s97的处理不正被执行,控制单元40根据接收到的供应指令信息来执行与步骤s93至s97对应的处理。另外,响应于没步骤s98至s100的处理不正被执行,控制单元40根据接收到的提示指令信息来执行与步骤s98至s100对应的处理。

另一方面,响应于已经执行预打印处理中将执行的所有预打印操作(s76:是),控制单元40跳过步骤s77。另外,响应于已经执行步骤s93至s97的处理并且已经接收到供应指令信息的事实,控制单元40不根据接收到的供应指令信息来执行处理。类似地,响应于已经执行步骤s98至s100的处理并且已经接收到提示指令信息的事实,控制单元40不根据接收到的提示指令信息来执行处理。

接下来,控制单元40致使设置在闪喷位置的托架27的记录头28向着墨水接收单元33喷射墨水(步骤s78)。步骤s78的处理是闪喷处理的示例。也就是说,响应于已经接收到打印指令信息并且已经执行所有预打印操作的事实,执行根据例示实施例的闪喷处理。然而,可在接收到打印指令信息之前和执行步骤s92或步骤s94之后执行闪喷处理。然后,响应于闪喷处理正被完成,控制单元40致使操作单元20执行打印操作(步骤s79至s82)。打印操作是根据打印指令信息所指示的执行条件将打印数据所代表的图像记录在纸张上的操作。步骤s79至s82的处理是打印处理的示例。

控制单元40根据接收到的喷射指令信息来执行喷射处理(步骤s79)。也就是说,在致使托架27在主扫描方向上从一侧移向另一侧的同时,控制单元40致使记录头28在喷射指令信息所指示的喷射时间喷射墨水。然后,控制单元40确定图像是否已经被记录在纸张的所有记录区上(步骤s80)。换句话讲,控制单元40确定在紧挨着的之前的步骤s79中使用的喷射指令信息之后喷射指令信息和排出指令信息中的哪一个被接收到。

响应于在纸张的所有记录区中尚未记录图像(s80:否),控制单元40根据接收到的传送指令信息来执行传送处理(步骤s81)。也就是说,控制单元40致使传送辊26将纸张传送达传送指令信息所指示的传送量。控制单元40重复步骤s79至s81的处理,直到图像被记录在纸张的所有记录区中(s80:否)。

响应于确定图像已经被记录在纸张的所有记录区中(s80:是),控制单元40根据接收到的排出指令信息来执行排出处理(步骤s82)。也就是说,控制单元40致使传送辊26将在其上已经记录有图像的纸张排出到打印机10的外部。应该注意,当在指定的内容数据中包括多个页数据时,重复地执行步骤s78至s82的处理。结果,步骤s48中生成的打印数据所代表的图像(即,指定的内容数据所代表的图像)被记录在纸张上。

(例示实施例的有利效果)

根据上述的例示实施例,在打印指令信息之前,发送包括特定条件信息的准备指令信息。另外,由于特定条件信息被从所保存的条件信息中提取出来,因此特定执行条件被从实际用于打印操作的执行条件中提取出来。结果,变得可以致使打印机执行其操作内容根据特定执行条件而变化的预打印操作,使得在接收到打印指令信息之前,在预打印操作中处理适宜的操作内容。

另外,根据上述例示实施例,变得可以响应于作为触发机制的第一准备指令信息来开始其操作内容不根据特定指令条件而变化的预打印操作,并且响应于作为触发机制的第二准备指令信息来开始其操作内容根据特定指令条件而变化的预打印操作。也就是说,变得可以致使打印机在接收到打印指令信息之前的适宜时间执行具有适宜操作内容的预打印操作。

此外,由于当不发送第二准备指令信息时根据供应指令信息、提示指令信息等来执行第二预打印处理,因此变得可以将具有特定质量的图像记录到纸张上。此外,由于在接收到打印指令信息之后执行闪喷处理,因此变得可以缩短从闪喷处理终止到打印处理开始的待机时间。结果,变得可以抑制图像记录质量的降低。

根据上述例示实施例,由于在执行函数s25时确定是否要发送准备指令信息,因此变得可以防止打印机10执行不必要的预打印操作。也就是说,可以指令打印机10在适宜时间执行预打印操作。此外,由于在打印机10根据准备指令信息执行预打印操作的同时在信息处理终端50上生成打印数据,因此变得可以缩短fpot,fpot为在标准设置画面上指定“确认”按钮直到从打印机排出初始纸张而逝去的所需要时间。

此外,当打印机10针对具有特定尺寸的纸张来形成图像时,在保留了指定的内容数据的较长边方向和较短边方向之后,生成打印数据。因此,在这种情况下,相比于图像被记录在具有非特定尺寸的纸张上的情况,生成处理可能花费更长的时间。在各方面,根据上述配置,通过同时执行信息处理终端50的生成处理和打印机10的预打印处理,变得可以缩短fpot。此外,通过如上所述同时执行信息处理终端50的生成处理和打印机10的开关处理,可进一步缩短fpot。

根据上述例示实施例,通过通知单元来通知打印机10接收到准备指令信息的事实。结果,变得可以让已经指示执行打印操作的用户识别到打印机已经开始操作。

根据上述例示实施例,打印机10被配置为在具有a4大小的纸张的短边方向上传送该纸张。这样的配置提供了与在纸张的长边方向上传送该纸张的情况相比可以减小从传送纸张起至完成打印而逝去的时间的优点。而且,根据上述例示实施例的打印机10被提供在其中通过利用创建打印数据的时间来执行预打印操作以便在纸张的短边方向上传送该纸张的配置中。因此,能够减小完成一页纸的打印所需的时间以及fpot。

在上述例示实施例中,通过根据例示实施例致使cpu41和61执行打印机10和信息处理终端50上的rom42或存储器62中存储的各种程序,来实现控制单元执行的处理的示例。然而,控制单元的配置不限于此示例,并且可通过诸如集成电路的硬件来实现处理中的部分或全部。

另外,被实现为打印机10和信息处理终端50的本公开的一些方面可被实现为致使打印机10和信息处理终端50执行处理的程序。这些程序可被设置为存储在与能够经由通信网络与打印机10和信息处理终端50连接的服务器连接的非暂态计算机可读介质中,非瞬时计算机可读介质包括但不限于ram、rom、闪存存储器、eeprom、cd介质、dvd介质、硬盘驱动、软盘驱动和存储器。可经由诸如互联网的通信网络将程序作为指示程序的信息或信号进行传递。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1