打印机的制作方法

文档序号:11620354阅读:262来源:国知局
打印机的制造方法与工艺

本公开涉及一种用于打印表示由存储在服务器中的文件所表示的多个页面的页面图像的打印机。



背景技术:

已知的图像形成设备通过下载存储在服务器中的文件来执行打印。图像形成设备接受由用户经由操作面板提供的打印请求。打印请求包括指定例如待打印的页面范围的打印设定。图像形成设备请求服务器根据打印设定将数据下载到图像形成设备,并且根据打印设定执行打印。



技术实现要素:

本公开的一些实施例提供用于使得打印机能够在打印设定已被指定给存储在服务器中的文件的状态下使用具有相对较小的存储容量的存储器来执行由存储在服务器中的文件所表示的图像的打印的技术。也就是说,在一些实施例中,当打印机在打印设定已被指定给存储在服务器中的文件的状态下通过从服务器接收数据来执行打印时考虑打印机中的存储器的使用空间的最小化。

本公开的一个说明性方面可以提供打印机,所述打印机包括:通信接口;打印引擎;以及控制器,所述控制器包括:处理器;以及存储计算机可读指令的存储器,所述计算机可读指令当由所述处理器执行时,使所述打印机执行以下操作:在接收处理中,经由所述通信接口从服务器接收打印设定信息,其中,所述服务器将表示表示n个页面(n是2或大于2的整数)的页面图像的文件和所述打印设定信息彼此关联地存储在其中,其中,所述打印设定信息包括与所述页面图像的打印次序有关的次序信息;以及响应于从所述服务器接收到所述打印设定信息,在重复处理中,重复一套处理,所述一套处理包括:在指定处理中,根据所述次序信息来指定识别待从所述服务器接收的部分数据的识别信息,其中,所述部分数据表示作为表示n个页面的所述页面图像的一部分的部分图像;在发送处理中,经由所述通信接口向所述服务器发送包括所指定的识别信息的请求;响应于经由所述通信接口从所述服务器接收到由包括在所述请求中的所述识别信息所识别的所述部分数据,在存储处理中,将所述部分数据存储在所述存储器中;在打印处理中,使所述打印引擎使用存储在所述存储器中的所述部分数据来执行由所述部分数据表示的所述部分图像的打印;以及继所述打印处理之后,在释放处理中,在所述存储器中释放存储所述部分数据的特定区域。

根据本公开的一个或多个方面,响应于从服务器接收到打印设定信息,打印机可以重复其中可以根据包括在所述打印设定信息中的次序信息来打印可以为表示n个页面的页面图像的一部分的部分图像的一套处理。因此,这个配置可以使得所述打印机不能够在打印表示n个页面的所述页面图像时立刻存储表示n个页面的所有部分数据。因此,在已经为存储在所述服务器中的所述文件指定所述打印设定信息的情况下,所述打印机可以使用具有相对较小的存储容量的存储器来执行表示n个页面的所述页面图像的打印。

本公开的另一说明性方面可以提供打印机,所述打印机包括:通信接口;打印引擎;以及控制器,所述控制器包括:处理器;以及存储计算机可读指令的存储器,所述计算机可读指令当由所述处理器执行时,使所述打印机执行以下操作:在接收处理中,经由所述通信接口从服务器接收打印设定信息,其中,所述服务器将表示表示n个页面(n是2或大于2的整数)的页面图像的文件和所述打印设定信息彼此关联地存储在其中;以及在所述打印设定信息包括指示m个集合的集合量信息的第一情况下,在第一重复处理中,通过重复第一套处理直到表示n个页面的所述页面图像中的全部被打印为止来执行单个集合的整理打印,所述第一套处理包括:响应于经由所述通信接口从所述服务器接收到表示作为表示n个页面的所述页面图像的一部分的部分图像的部分数据,在存储处理中,将所述部分数据存储在所述存储器中;在第一打印处理中,使所述打印引擎使用存储在所述存储器中的所述部分数据来执行由所述部分数据表示的所述部分图像的打印;继所述第一打印处理之后,在第一释放处理中,在所述存储器中释放存储所述部分数据的特定区域,在所述第一情况下,通过执行所述第一重复处理m次来执行所述m个集合的整理打印。

根据本公开的一个或多个方面,所述打印机可以重复其中可以打印可以为表示n个页面的所述页面图像的一部分的部分图像的一套处理。因此,这个配置可以使得所述打印机不能够在通过打印表示n个页面的页面图像来执行m个集合的整理打印时立刻存储表示n个页面的所有部分数据。因此,在已经为存储在所述服务器中的所述文件指定所述打印设定信息的情况下,所述打印机可以使用具有相对较小的存储容量的存储器来执行表示n个页面的所述页面图像的打印。

可以提供用于实现上述打印机的控制方法和计算机程序以及存储所述计算机程序的计算机可读存储介质。

附图说明

本公开的各方面通过示例而不通过限制被图示在附图中,在附图中相同的附图标记指示类似的元件。

图1描绘根据本公开的一个或多个方面的说明性实施例中的通信系统的配置。

图2是描绘根据本公开的一个或多个方面的说明性实施例中的示例打印处理的流程图。

图3是描绘根据本公开的一个或多个方面的说明性实施例中的示例单面整理打印处理的流程图。

图4图示根据本公开的一个或多个方面的说明性实施例中的单面整理打印的特定示例。

图5是描绘根据本公开的一个或多个方面的说明性实施例中的示例单面非整理打印处理的流程图。

图6图示根据本公开的一个或多个方面的说明性实施例中的单面非整理打印的特定示例。

图7是描绘根据本公开的一个或多个方面的说明性实施例中的示例双面整理打印处理的流程图。

图8图示根据本公开的一个或多个方面的说明性实施例中的双面整理打印(总页数为偶数)的特定示例。

图9图示根据本公开的一个或多个方面的说明性实施例中的双面整理打印(总页数为奇数)的特定示例。

图10是描绘根据本公开的一个或多个方面的说明性实施例中的示例双面非整理打印处理的流程图。

图11图示根据本公开的一个或多个方面的说明性实施例中的双面非整理打印(总页数为偶数)的特定示例。

图12图示根据本公开的一个或多个方面的说明性实施例中的双面非整理打印(总页数为奇数)的特定示例。

具体实施方式

(说明性实施例)

将参考附图详细地描述说明性实施例,相同的附图标记被用于各个图中的相同的对应部分。

如图1中所描绘,通信系统2包括打印机10、终端装置50和服务器100。打印机10经由局域网(“lan”)4连接到互联网6。打印机10和服务器100被允许经由互联网6彼此进行通信。终端装置50和服务器100被允许经由互联网6彼此进行通信。

(打印机10的配置)

打印机10可以是能够执行打印功能的外围装置(即,终端装置50的外围装置)。打印机10包括连接到总线(未指派有附图标记)的操作单元12、显示单元14、网络接口(“i/f”)16、打印引擎18和控制器30。

操作单元12包括多个键和按钮。操作单元12使得用户能够借此向打印机10提供各种指令。显示单元14可以是用于在其上显示各种信息的显示器。显示单元14还充当触摸面板并且因此作为另一操作单元操作。网络接口16连接到lan4。lan4可以是有线或无线lan。

打印引擎18包括使用例如喷墨打印方法或激光打印方法的打印机制。打印引擎18还包括用于执行双面打印的双面打印机制。双面打印机制将打印纸输送到能够对打印纸的第一面执行打印的特定位置,并且对打印纸执行打印。响应于对打印纸的第一面的打印的完成,双面打印机制还将打印纸输送到能够对打印纸的第二面执行打印的另一特定位置。第二面与第一面相反。更具体地,例如,打印引擎18可能不在双面打印中打印按照页码的升序表示多个页面的图像。打印引擎18在第一打印纸的第一面上打印表示第二页面的图像,然后在第一打印纸的第二面上打印第一页面的图像。此后,打印引擎18在第二打印纸的第一面上打印表示第四页面的图像,然后在第二打印纸的第二面上打印第三页面的图像。如上所述,打印引擎18在打印纸的第一面上打印第2n个页面(n是1或大于1的整数)的图像,然后在打印纸的第二面上打印第(2n-1)个页面的图像。

控制器30包括中央处理单元(“cpu”)32和存储器34。cpu32可以是被配置成根据存储在存储器34中的程序36来执行各种处理的处理器。存储器34包括随机存取存储器(“ram”)、只读存储器(“rom”)和硬盘。存储器34包括部分数据区域40和打印数据区域42。

部分数据区域40用于存储从服务器100接收到的部分数据。服务器存储图像文件if。图像文件if包括表示多个页面的多个图像。部分数据表示图像文件if的图像的一部分。在该说明性实施例中,部分数据是按照由服务器100基于图像文件if生成的pwg(“pwg”代表打印机工作组)光栅格式。然而,在其它实施例中,例如,部分数据可以具有另一格式,例如pdf(“pdf”代表便携式文档格式)格式。部分数据区域40具有用于表示单个页面的部分数据的存储容量,但是可能不能存储表示两个页面的部分数据。

打印数据区域42用于存储由打印机10基于部分数据生成的打印数据。打印数据可以具有可由打印引擎18解释的格式。在该说明性实施例中,打印数据可以是具有相对更少的cmyk色调(例如,二级或三级)的位图数据。

(服务器100的配置)

服务器100由与打印机10的供应商不同的提供商在互联网6上提供。服务器100可以是例如由google(是由加利福尼亚州山景城的google公司所拥有的注册商标)提供的googlecloudprint(“gcp”)(googlecloudprinttm是由加利福尼亚州山景城的google公司所拥有的商标)。然而,在其它实施例中,例如,服务器100可以由打印机10的供应商来提供。

服务器100被配置成调解终端装置50与打印机10之间的打印。也就是说,服务器100对包括在从终端装置50提交的打印作业pj中的图像文件if进行转换以生成具有可由打印机10解释的格式(例如,pwg光栅格式)的转换的数据,并且将经转换的数据发送到打印机10。因此,即使终端装置50不配备有用于对图像文件if进行转换的打印机驱动器,终端装置50也可以使打印机10通过向服务器100提交打印作业pj来执行打印。

(打印的概述)

将简要地描述打印机10根据从终端装置50提交给服务器100的打印作业pj来执行打印的处理。首先,打印机10的用户在服务器100上注册有关打印机10的信息并且在打印机10与服务器100之间建立xmpp(“xmpp”代表可扩展消息传送和表示协议)连接。因此,在打印机10与服务器100之间建立了常开型连接。常开型连接可以使得能够将来自互联网6上的服务器100的作业通知发送到lan4上的打印机10。

在终端装置50的用户期望使打印机10执行打印的情况下,用户访问服务器100以将包括图像文件if和打印设定信息ps的打印作业pj提交给服务器100。图像文件if可以是例如存储在终端装置50的存储器中的文件,并且例如具有jpeg(“jpeg”代表联合图像专家组)或pdf格式。打印设定信息ps可以是由用户指定的信息,并且可以包括例如指示双面打印和单面打印中的一种的信息、指示集合量的信息(在下文中,被称为“集合量信息”)以及指示整理打印和非整理打印中的一个的信息。整理打印可能与排序打印同义。非整理打印可能是与不排序打印同义。

响应于对打印作业pj的提交的接受,服务器100通过xmpp连接向打印机10发送作业通知。因此,可以通知打印机10打印作业pj已被存储在服务器100中。打印机10通过从服务器100请求每个部分数据的传输相继地从服务器100接收基于图像文件if生成的每个部分数据。打印机10基于每个接收到的部分数据相继地生成打印数据并且将所生成的打印数据相继地提供给打印引擎18。因此,打印机10可以根据打印作业pj执行打印。请求的发送以及每个部分数据的接收是遵照https(“https”代表超文本传输协议安全)而不是xmpp来执行的。

如上所述,打印机10的部分数据区域40具有不能存储表示两个页面的部分数据的相对较小的存储容量。在该说明性实施例中,打印机10能够使用具有相对较小的存储容量的部分数据区域40来适当地执行双面打印和整理打印。假定图像文件if表示表示多个页面的图像,将在下面描述用于使用具有相对较小的存储容量的部分数据区域40来实现双面打印和整理打印的处理。

(打印处理)

参考图2,将描述由cpu32执行的打印处理。可以经由网络接口16来执行与在下面所描述的通信有关的所有处理,并且因此,可以省略“经由网络接口16”的短语。

在步骤s10中,cpu32监视作业通知通过xmpp连接从服务器100的接收。响应于作业通知的接收,cpu32在步骤s10中做出肯定确定(例如,“是”)并且例程进行到步骤s20。

在步骤s20中,cpu32向服务器100发送用于建立tcp(“tcp”代表传输控制协议)连接的连接信号。响应于从服务器100接收到ok信号,cpu32在打印机10与服务器100之间建立tcp连接。结果,cpu32被允许通过该tcp连接向服务器100发送请求并且从服务器100接收数据。在步骤s22中,cpu32从服务器100接收包括在打印作业pj中的打印设定信息ps。

在步骤s30中,cpu32确定打印设定信息ps是否包括指示单面打印的信息。当打印设定信息ps包括指示单面打印的信息时,cpu32在步骤s30中做出肯定确定(例如,“是”)并且例程进行到步骤s32。当打印设定信息ps包括指示双面打印的信息时,cpu32在步骤s30中做出否定确定(例如,“否”)并且例程进行到步骤s34。

在步骤s32中,cpu32确定打印设定信息ps是否还包括指示多个集合的集合量信息以及指示整理打印的信息两者。当打印设定信息ps包括两个信息时,cpu32在步骤s32中做出肯定确定(例如,“是”)。然后,在步骤s40中,cpu32执行单面整理打印处理(参考图3)。当打印设定信息ps包括指示单个集合的集合量信息以及指示非整理打印的信息中的至少一种时,cpu32在步骤s32中做出否定确定(例如,“否”)。然后,在步骤s50中,cpu32执行单面非整理打印处理(参考图5)。

步骤s34与步骤s32类似。当cpu32在步骤s34中做出肯定确定(例如,“是”)时,在步骤s60中,cpu32执行双面整理打印处理(参考图7)。当cpu32在步骤s34中做出否定确定(例如,“否”)时,在步骤s70中,cpu32执行双面非整理打印处理(参考图10)。

响应于步骤s40、s50、s60和s70中的一个的完成,在步骤s80中,cpu32向服务器100发送指示根据打印作业pj打印的完成的作业完成通知。因此,已完成的打印作业pj在服务器100中被清除。

(单面整理打印处理)

参考图3,将描述图2的步骤s2中所执行的单面整理打印处理。在下面所描述的打印机10与服务器100之间的每个通信(例如,步骤s110和s112)通过tcp连接来执行(参考图2中的步骤s20和步骤s152)。因此,在下面的描述中,将省略短语“通过tcp连接”。在图5、图7、图10和图11中所图示的处理中,打印机10与服务器100之间的每个通信还通过tcp连接来执行,并且因此,将省略短语“通过tcp连接”。

在步骤s100中,cpu32将指针m和n中的每一个设定为“1(一)”。指针m涉及集合量并且打印机n涉及页码。

在步骤s110中,cpu32向服务器100发送包括页码“n(在此处理中为“1”)”的请求。这个请求可以是用于请求服务器100发送表示由页码“n”识别的页面的图像的部分数据的命令。响应于请求的接收,服务器100通过对图像文件if进行转换来生成部分数据(例如,pwg光栅格式的数据),并且从表示该部分数据的第一部分的数据开始,将具有预定大小并且表示该部分数据的一部分的数据相继地发送到打印机10。因此,在步骤s112中,cpu32接收从服务器100发送的部分数据,并且在步骤s114中,cpu32将该部分数据存储在部分数据区域40中。

在步骤s120中,cpu32监视表示表示单个页面的部分数据的最后一部分的数据的接收。部分数据的总数据大小被写入在表示部分数据的第一部分的数据中。cpu32对各自表示在步骤s112中接收到的部分数据的一部分的各条数据的累积数据大小进行计数。当计数值尚未达到总数据大小时,cpu32在步骤s120中做出否定确定(例如,“否”)并且例程返回到步骤s112。当计数值已达到总数据大小时,cpu32在步骤s120中做出肯定确定(例如,“是”)并且例程进行到步骤s130。

一般地,在tcp连接被建立的同时,服务器100连续地向打印机10发送数据,除非服务器100从打印机10接收到暂停指令。例如,继表示单个页面的部分数据到打印机10的传输之后,服务器100相继地向打印机10发送表示另一单个页面的部分数据。然而,如上所述,打印机10的部分数据区域40不能存储表示两个页面的部分数据。因此,响应于表示单个页面的部分数据的接收的完成(例如,步骤s120中的“是”),cpu32向服务器100发送暂停指令以停止来自服务器100的后续数据传输。

然而,在其它实施例中,例如,响应于表示单个页面的部分数据的接收的完成(例如,步骤s120中的“是”),cpu32可以断开在打印机10与服务器100之间建立的tcp连接。通过这样做,cpu32还可以停止来自服务器100的后续数据传输。在这种情况下,当cpu32打算接收表示另一单个页面的部分数据时,cpu32可以再次在打印机10与服务器100之间建立tcp连接。然而,可以每次完成表示单个页面的部分数据的接收时断开并重新建立tcp连接。因此,可以使接收部分数据所需的时间延长。与此相反,在该说明性实施例中,虽然tcp连接被保持建立,但是暂停指令被发送到服务器100。因此,与其它实施例的配置相比可以缩短接收部分数据所需的时间。

在步骤s130中,cpu32通过对表示存储在部分数据区域40中的单个页面的部分数据(例如,pwg光栅格式的数据)进行转换在打印数据区域42中生成表示单个页面的打印数据(例如,具有相对更少的色调级的cmyk数据)。然而,在其它实施例中,例如,服务器100可以生成打印数据。在这种情况下,cpu32可以在步骤s112中接收所生成的打印数据并且可以在步骤s114中存储所接收到的打印数据,以及可以省略步骤s130。因此,打印数据本身可以是部分数据。

在步骤s132中,cpu32将存储在打印数据区域42中的表示单个页面的打印数据提供给打印引擎18。因此,打印引擎18在打印纸的一面上打印由打印数据表示的图像。在步骤s132中,cpu32还向打印引擎18提供用于排出打印纸的排出指令。因此,打印引擎18排出在其一面上具有表示单个页面的图像的打印纸。

在步骤s134中,cpu32通过从部分数据区域40和打印数据区域42中的每一个中清除数据来释放部分数据区域40和打印数据区域42中的每一个。因此,部分数据区域40和打印数据区域42中的每一个变得能够将新数据存储在其中。然而,可能不必从部分数据区域40和打印数据区域42中的每一个中清除数据。在其它实施例中,例如,cpu32可以通过允许在部分数据区域40和打印数据区域42中的每一个中用新数据覆写旧数据来释放部分数据区域40和打印数据区域42中的每一个。在仍然其它的实施例中,例如,在cpu32在步骤s130中生成打印数据之后,cpu32可以在在步骤s132中提供打印数据之前释放部分数据区域40,并且可以在在步骤s132中提供打印数据之后释放打印数据区域42。

在步骤s140中,cpu32确定是否已接收到表示最后单个页面的部分数据。当指示最后页面的字符串被写入在步骤s112中所接收到的部分数据的最后一部分中时,cpu32在步骤s140中做出肯定确定(例如,“是”)并且例程进行到步骤s150。当指示最后页面的字符串未被写入在步骤s112中所接收到的部分数据的最后一部分中时,cpu32在步骤s140中做出否定确定(例如,“否”)并且向服务器100发送用于重新开始数据传输的重新开始指令,并且例程返回到步骤s112。

在在步骤s140中做出肯定确定(例如,“是”)的情况下,n张打印纸(“n”表示纸的数目)已被排出。经排出的打印纸在其一面上各自具有表示由图像文件if表示的n(“n”是2或大于2的整数)个页面的图像中的一个。也就是说,第一集合的单面整理打印已完成。当集合量信息表示多个集合时,需要随后执行第二集合的单面整理打印。因此,打印机10需要再次接收表示第一页面的部分数据并且因此需要再次请求服务器100发送表示第一页面的部分数据(例如,步骤s110)。在该说明性实施例中,为了请求服务器100发送表示第一页面的部分数据以用在第二集合的单面整理打印中,打印机10断开在打印机10与服务器100之间建立的tcp连接并且然后再次在其之间建立tcp连接。步骤s150和s152是为了tcp连接的断开和重新建立而执行的。

在步骤s150中,cpu32通过向服务器100发送用于断开打印机10与服务器100之间的tcp连接的断开信号来断开在打印机10与服务器100之间建立的tcp连接。在步骤s152中,cpu32通过再次向服务器100发送用于建立tcp连接的连接信号来在打印机10与服务器100之间建立tcp连接。然而,在其它实施例中,例如,打印机10可能不必断开并重新建立tcp连接(即,可能不必执行步骤s150和s152)。

在步骤s160中,cpu32确定指针m的当前值是否等于由集合量信息表示的集合量m。当指针m的当前值等于由集合量信息表示的集合量m时,cpu32在步骤s160中做出肯定确定(例如,“是”)并且结束图3的单面整理打印处理。当指针m的当前值小于由集合量信息表示的集合量m时,cpu32在步骤s160中做出否定确定(例如,“否”)。在步骤s162中,cpu32通过将“1”添加到指针m的当前值来为指针m指定新值,并且例程返回到步骤s110。因此,包括第二集合的一个或多个集合的单面整理打印被执行。

(单面整理打印的特定示例)

参考图4,将描述通过图3的单面整理打印处理所实现的特定示例。在下文中,表示第n个页面的部分数据被称为“部分数据(pn)”并且使用表示第n个页面的部分数据的打印被称为“打印(pn)”。包括在图像文件if中的总页数(即,页面的总数目)由“n”指示。在下文中,将在类似的附图中使用相同的表达。图4包括具有被称作“页码”的列的表。页码列指示打印的次序。次序意指待打印的页面的顺序。图6、图8、图9、图11和图12具有类似的页码列。

在t100中,打印机10向服务器100发送包括页码“1”的请求(例如,步骤s110)。在t110中,打印机10从服务器100接收部分数据(p1)(例如,步骤s112和s114)。在t112中,打印机10执行打印(p1)(例如,步骤s130和s132)并且释放部分数据区域40(例如,步骤s134)。

t110和t112可以是包括表示单个页面的部分数据的接收、打印以及部分数据区域40的释放的一套处理。打印机10针对第一集合通过执行一套处理被重复直到表示n个页面的图像中的全部的打印完成为止的重复处理来对n张打印纸(“n”表示纸的数目)执行单面整理打印。也就是说,打印机10执行包括用于打印表示第二页面的图像的t120和t122的一套处理并且重复该一套处理。打印机10还执行包括用于打印表示作为最后页面的第n个页面的图像的t130和t132的一套处理。因此,重复处理的一个循环(例如,t111至t132)完成并且针对一套的n张打印纸上的单面整理打印完成。

在完成重复处理的一个循环时(例如,步骤s140中的是),在t140中,打印机10断开并重新建立tcp连接(例如,步骤s150和s152)。然后,打印机10执行重复处理与集合量m相对应的m次(例如,步骤s160中的否)。因此,针对m个集合的(n×m)张打印纸上的单面整理打印完成。

在图4中,表示出打印张数与表示待打印在对应的打印纸上的图像的页码之间的对应。该表示出在图像文件if包括表示六个页面的图像并且图像将在两个集合中被打印的情况下的对应。图6、图8和图11中所描绘的表各自示出类似的情况。附加到表的箭头指示tcp连接的断开和重新建立的发生定时(例如,t140)。表示第一页面至第六页面的图像被打印在第一打印纸至第六打印纸上并且因此第一集合的单面整理打印完成。然后,表示第一页面至第六页面的相同图像被打印在第七打印纸至第十二打印纸上并且因此第二集合的单面整理打印完成。因此,针对两个集合的十二(例如,6个页面×2个集合)个打印纸上的单面整理打印完成。

如果部分数据区域40具有能够存储表示例如六个页面的部分数据的存储容量,则打印机10不必每当使用表示单个页面的部分数据的打印被执行时释放部分数据区域40,并且打印机10能够立刻将表示六个页面的部分数据存储在部分数据区域40中。因此,继完成第一集合的单面整理打印之后,打印机10可以使用存储在部分数据区域40中的相同部分数据来执行第二集合的单面整理打印,而无需从服务器100接收表示单个页面的每个部分数据。然而,在该说明性实施例中,部分数据区域40仅能够存储表示单个页面的部分数据,并且因此,可能不采用上述方式。因此,打印机10针对m个集合通过执行包括表示单个页面的部分数据的接收、打印以及部分数据区域40的释放的一套处理被执行的重复处理m次来实现单面整理打印。因此,在已经为存储在服务器100中的图像文件if指定打印设定信息ps的情况下,打印机10可以适当地使用具有相对较小的存储容量的存储器34来针对多个集合执行单面整理打印。

(单面非整理打印处理)

参考图5,将描述图2的步骤s50中所执行的单面非整理打印处理。步骤s200至s232分别与图3的步骤s100至s132类似。

步骤s240和s242分别与图3的步骤s160和s162类似。当在步骤s240中做出否定确定(例如,“否”)时,步骤s232继步骤s242之后被再次执行。也就是说,步骤s232被重复直到表示单个页面的图像在与集合量m相对应的m张打印纸中的每一个上的打印完成为止。

当在步骤s240中做出肯定确定(例如,“是”)时,在步骤s244中,cpu32将指针m的值初始化为“1”。在步骤s246中,cpu32释放部分数据区域40。步骤s250与图3的步骤s140类似。当在步骤s250中做出否定确定(例如,“否”)时,例程回到步骤s212。当在步骤s250中做出肯定确定(例如,“是”)时,cpu32结束图5的单面非整理打印。

(单面非整理打印的特定示例)

参考图6,将描述通过图5的单面非整理打印处理所实现的特定示例。在t200中,打印机10向服务器100发送包括页码“1”的请求(例如,步骤s210)。在t210中,打印机10从服务器100接收部分数据(p1)(例如,步骤s212和s214)。在t212中,打印机10执行打印(p1)(例如,步骤s230和s232)。打印机10重复打印(p1)直到表示第一页面的图像在m张打印纸中的每一张上的打印完成为止(例如,步骤s240中的否以及步骤s232)。也就是说,在t214中,打印机10再次执行打印(p1)(例如,步骤s232)并且重复打印(p1)m次。然后,在t220中,打印机10释放部分数据区域40(例如,步骤s246)。

t210和t220可以是包括表示单个页面的部分数据的接收、m次打印以及部分数据区域40的释放的一套处理。打印机10执行一套处理被重复n次直到表示n个页面的图像中的全部的打印完成为止的重复处理。也就是说,打印机10执行包括用于打印表示第二页面的图像的t230至t240的一套处理(例如,步骤s212至步骤s246)并且还以类似方式执行用于打印表示第三页面以及一个或多个后续页面的图像的一套处理(例如,步骤s212至s246)。因此,针对m个集合的(n×m)张打印纸上的单面非整理打印完成。

如图6的表中所描绘,表示第一页面的图像被打印在第一打印纸和第二打印纸中的每一个上,并且表示第二页面的图像被打印在第三打印纸和第四打印纸中的每一个上。以类似方式,同一图像被重复地打印在每个连续的两张打印纸上。因此,针对两个集合的十二(例如,6个页面×2个集合)打印纸上的单面非整理打印完成。因此,在已经为存储在服务器100中的图像文件if指定打印设定信息ps的情况下,打印机10可以适当地使用具有相对较小的存储容量的存储器34来针对多个集合执行单面非整理打印。

(双面整理打印处理)

参考图7,将描述图2的步骤s60中所执行的双面整理打印处理。步骤s300与图3的步骤s100类似。

如上所述,打印引擎18的双面打印机制在打印纸的第一面上打印表示第2n个页面的图像,然后在打印纸的第二面上打印表示第(2n-1)个页面的图像。为了实现这样的打印方式,在步骤s310中,cpu32对于待向服务器100请求的页码指定“2n”并且向服务器100发送包括所指定的页码“2n”的请求。

在步骤s311中,cpu32响应于步骤s310中所发送的请求而确定是否已经从服务器100接收到ok信号。可以在图像文件if包括与包括在步骤s310中所发送的请求中的页码“2n”相对应的页面的情况下从服务器100发送ok信号。然而,假定n=3并且cpu32向服务器100发送包括页码“6”的请求(尽管图像文件if总共具有五个页面)。在这种情况下,图像文件if不具有与页码“6”相对应的页面。因此,从服务器100发送ng信号。当已经从服务器100接收到ok信号(例如,步骤s311中的是)时,例程进行到步骤s312。当已经从服务器100接收到ng信号(例如,步骤s311中的否)时,例程进行到步骤s345。

步骤s312至s334分别与图3的步骤s112至s134类似。然而,在步骤s332中,cpu32向打印引擎18提供输送指令代替用于排出打印纸的排出指令。因此,继在打印纸的第一面上打印表示第2n个页面的图像之后,打印引擎18将打印纸从能够对打印纸的第一面执行打印的特定位置输送到能够对打印纸的第二面执行打印的特定位置。

步骤s340和s342分别与图3的步骤s150和s152类似。在服务器100响应于包括页码“2n”的请求而向打印机10发送表示第2n个页面的部分数据的情况下,服务器100可能未被允许响应于包括页码“2n-1”的请求而向打印机10发送表示第(2n-1)个页面的部分数据,直到(a)服务器100完成所有部分数据按照页码的升序从第2n个页面到最后页面的传输或者(b)执行tcp连接的断开和重新建立为止。在前者配置即(a)的情况中,需要执行通信直到表示最后页面的部分数据被发送为止,并且因此,考虑到通信持续时间的延长可能不优选采用前者配置。因此,在该说明性实施例中,可以采用后者配置即(b)的情况并且步骤s340和s342被执行。因此,打印机10向服务器100发送包括页码“2n-1”的请求(例如,步骤s310)以接收表示第(2n-1)个页面的部分数据,而无需继表示第2n个页面的部分数据的接收之后接收包括最后页面的所有部分数据。与此类似,在步骤s352中,打印机10还执行步骤s340和s342。因此,打印机10可以向服务器100发送包括页码“2n”的请求(例如,步骤s310)以接收表示第2n个页面的部分数据,而无需接收包括最后页面的所有部分数据。然而,在其它实施例中,例如,打印机10可以采用前者配置并且可能不执行步骤s340和s342。

在步骤s345中,cpu32仅向打印引擎18提供与在步骤s332中提供的输送指令相同的输送指令。因此,打印引擎18将打印纸从能够对打印纸的第一面执行打印的特定位置输送到能够对打印纸的第二面执行打印的特定位置,而无需对打印纸的第一面执行打印。继步骤s345之后,例程进行到步骤s350。

在步骤s350中,cpu32对于待向服务器100请求的页码指定“2n-1”并且向服务器100发送包括所指定的页码“2n-1”的请求。在步骤s352中,cpu32执行与步骤s312至s342中所执行的处理类似的处理。然而,在这种情况下,在步骤s332中,cpu32向打印引擎18提供用于排出打印纸的排出指令代替输送指令。因此,打印引擎18在在打印纸的第二面上打印表示第(2n-1)个页面的图像之后排出打印纸。

在步骤s360中,cpu32确定表示第2n个页面的部分数据以及表示第(2n-1)个页面的部分数据中的一个是否表示最后页面。当指示最后页面的字符串未被写入在表示第2n个页面的部分数据或表示第(2n-1)个页面的部分数据中的任何一个中时,cpu32在步骤s360中做出否定确定(例如,“否”),并且例程进行到步骤s362。在步骤s362中,cpu32通过将“1”添加到指针n的当前值来为指针n指定新值,并且例程返回到步骤s310。

当指示最后页面的字符串被写入在表示第2n个页面的部分数据以及表示第(2n-1)个页面的部分数据中的一个中时,cpu32在步骤s360中做出肯定确定(例如,“是”),并且例程进行到步骤s370。在在步骤s360中做出肯定确定(例如,“是”)的情况下时,第一集合的双面整理打印已完成。当指针m的当前值等于由集合量信息表示的集合量m(步骤s370中的是)时,cpu32结束图7的双面整理打印处理。当指针m的当前值小于由集合量信息表示的集合量m(例如,步骤s370中的否)时,在步骤s372中,cpu32通过将“1”添加到指针m的当前值来为指针m指定新值并且将指针n的值初始化为“1”。然后,例程返回到步骤s310。因此,包括第二集合的一个或多个集合的双面整理打印被执行。

(双面整理打印的特定示例(总页数为偶数))

参考图8,将描述通过图7的双面整理打印处理所实现的特定示例。图8图示图像文件if的页面的总数目是偶数的情况。在t300中,打印机10向服务器100发送包括页码“2”的请求(例如,步骤s310)。在t302中,打印机10从服务器100接收部分数据(p2)(例如,步骤s312和s314)。在t304中,打印机10执行打印(p2)(例如,步骤s330和s332)并且释放部分数据区域40(例如,步骤s334)。然后,在t306中,打印机10断开并重新建立与服务器100的tcp连接(例如,步骤s340和s342)。

t300、t302和t304可以是包括待从服务器100请求的页码的指定、表示单个页面的部分数据的传输的请求、打印以及部分数据区域40的释放的一套处理。打印机10针对一个集合通过执行重复处理来对n/2张打印纸执行双面整理打印。在重复处理中,一套处理被重复,直到表示n个页面的图像中的全部的打印完成为止,同时每当一套处理完成时,执行与服务器100的tcp连接的断开和重新建立。也就是说,打印机10执行包括用于打印表示第一页面的图像的t310、t312和t314的一套处理(例如,步骤s350以及包括在步骤s352中的步骤s312至s334)。在t316中,打印机10断开并重新建立与服务器100的tcp连接(例如,包括在步骤s352中的步骤s340以及s342)。继这个之后,打印机10执行包括用于打印表示第四页面的图像的t320、t322和t324的一套处理(例如,步骤s310至s334)。在t326中,打印机10断开并重新建立与服务器100的tcp连接(例如,步骤s340和s342)。

以类似方式,打印机10执行包括用于打印表示第n个页面的图像的t330、t332和t334的一套处理(例如,步骤s310至s334)。在t336中,打印机10断开并重新建立与服务器100的tcp连接(例如,步骤s340和s342)。在此一套处理中,打印机10接收指示最后页面的字符串被写入的部分数据。然而,打印机10再一次执行包括用于打印表示第(n-1)个页面的图像的t340、t342和t344的一套处理(例如,步骤s350以及包括在步骤s352中的步骤s312至s334)。在t346中,打印机10断开并重新建立与服务器100的tcp连接(例如,包括在步骤s352中的步骤s340以及s342)。因此,重复处理的一个循环(例如,t300至t346)完成并且针对一个集合的n/2张打印纸上的双面整理打印完成。

在完成重复处理的一个循环(例如,步骤s360中的是)时,打印机10执行重复处理的另一循环(例如,步骤s370中的否)。打印机10执行重复处理总共m次。因此,针对m个集合的(n/2(四舍五入到最近的整数)×m)张打印纸上的双面整理打印完成。

如图8中的表中所描绘,表示第一页面至第六页面的图像被打印在第一打印纸至第三打印纸上并且因此第一集合的双面整理打印完成。继这个之后,表示第一页面至第六页面的图像被再次打印在第四打印纸至第六打印纸上并且因此第二集合的双面整理打印完成。因此,针对两个集合的六(例如,6个页面/2×2个集合)打印纸上的双面整理打印完成。

(双面整理打印的特定示例(总页数为奇数))

图9图示图像文件if的页面的总数目是奇数的情况。t300至t326分别与图8的t300至t326类似。在t330'中,假定了打印机10向服务器100发送包括比图像文件if的总页数“n(例如,5)”大的页码“n+1(例如,6)”的请求(例如,步骤s310)。在这种情况下,打印机10从服务器100接收到ng信号(例如,步骤s311中的否),并且输送打印纸而无需执行打印(例如,步骤s345)。在t336'中,打印机10断开并重新建立与服务器100的tcp连接(例如,步骤s340和s342)。继这个之后,打印机10执行包括t340'、t342'和t344'的一套处理(例如,步骤s350以及包括在步骤s352中的步骤s312至s334)。在t346'中,服务器100断开并重新建立与服务器100的tcp连接(例如,包括在步骤s352中的步骤s340以及s342)。因此,重复处理的一个循环(例如,t300至t346')完成并且针对一个集合的n/2(四舍五入到最近的整数)打印纸上的双面整理打印完成。

在完成重复处理的一个循环(例如,步骤s360中的是)时,打印机10执行重复处理的另一循环(例如,步骤s370中的否)。打印机10执行重复处理m次。因此,针对m个集合的(n/2(四舍五入到最近的整数)×m)上的双面整理打印完成。

在图9中,表示出打印张数与表示待打印在对应的打印纸上的图像的页码之间的对应。该表示出在图像文件if包括表示五个页面的图像并且图像将在两个集合中被打印的情况下的对应。图11中所描绘的表示出类似的情况。如图9中的表中所描绘,表示第一页面至第五页面的图像被打印在第一打印纸至第三打印纸上并且因此第一集合的双面整理打印完成。继这个之后,表示第一页面至第五页面的图像被再次打印在第四打印纸至第六打印纸上并且因此第二集合的双面整理打印完成。第三打印纸和第六打印纸在它们的第二面上具有表示第五页面的图像,同时在它们的第一面上没有图像。因此,针对两个集合的六(例如,5个页面/2(四舍五入到最近的整数)×2个集合)打印纸上的双面整理打印完成。

假定了打印机10被配置成减少表示单个页面的一个部分数据的大小以及表示单个页面的另一部分数据的大小并且将两个减少的数据作为一条部分数据存储在部分数据区域40中。在这种情况下,打印机10接收表示第一页面的部分数据。响应于此,打印机10减少所接收到的部分数据并且将减少的数据存储在部分数据区域40中。继这个之后,打印机10接收表示第二页面的部分数据。响应于此,打印机10减少所接收到的部分数据并且将减少的数据存储在部分数据区域40中。即便当部分数据区域40具有用于表示单个页面的部分数据的存储容量时,这个配置也可以使得部分数据区域40能够存储各自表示单个页面的两个减少的数据。打印机10使用表示第二页面的减少的数据来对打印纸的第一面执行打印并且然后使用表示第一页面的减少的数据来对打印纸的第二面执行打印。如果这个配置被采用,则打印机10可以按照页码的升序接收各条部分数据。因此,可能不必重复一套处理,并且还可能不必每当执行一套处理时执行tcp连接的断开和重新建立。然而,因为部分数据的大小减少了,所以使打印图像的质量可能劣化。为了避免图像质量的劣化,在该说明性实施例中,打印机10重复一套处理并且每当执行一套处理时执行tcp连接的断开和重新建立。因此,根据该说明性实施例的配置可能不需要部分数据的大小减少,由此打印机10可以打印相对高质量的图像。因此,在已经为存储在服务器100中的图像文件if指定打印设定信息ps的情况下,打印机10可以适当地使用具有相对较小的存储容量的存储器34来针对多个集合执行双面整理打印。

(双面非整理打印处理)

参考图10,将描述图2的步骤s70中所执行的双面非整理打印处理。步骤s400与图3的步骤s100类似。在步骤s402中,cpu32执行与图7的步骤s310至s350中所执行的处理类似的处理。在步骤s404中,cpu32执行与图7的步骤s352(即,步骤s312至s342)中所执行的处理类似的处理。

当指针m的当前值小于由集合量信息表示的集合量m的值(例如,步骤s410中的否)时,在步骤s412中,cpu32通过将“1”添加到指针m的当前值来为指针m指定新值,并且例程返回到步骤s402。也就是说,步骤s402和s404被重复直到页面集在与集合量m相对应的m张打印纸中的每一个上的打印完成为止。在图像文件if的页面的总数目是偶数的情况下,每个页面集包括表示连续的两个页面的图像,并且同一页面集被打印在m张打印纸上。包括连续的两个页面的第一页面集被打印在m张打印纸上。随后,包括另一连续的两个页面的另一页面集被打印在另一m张打印纸上。这个打印方式被重复直到最后页面集被打印在最后m个打印纸上为止。在图像文件if的页面的总数目是奇数的情况下,每个页面集包括表示除最后页面集以外的连续的两个页面的图像。最后页面集仅包括表示单个页面即最后页面的图像。与图像文件if的页面的总数目是偶数的情况类似,同一页面集被打印在m张打印纸上。包括连续的两个页面的第一页面集被打印在m张打印纸上。随后,包括另一连续的两个页面的另一页面集被打印在另一m张打印纸上。这个打印方式被重复直到最后页面集被打印在最后m个打印纸上为止。

当指针m的当前值等于集合量m(例如,步骤s410中的是)时,例程进行到步骤s460。步骤s460与图7的步骤s360类似。当cpu32在步骤s460中做出肯定确定(例如,“是”)时,cpu32结束图10的双面非整理打印处理。当cpu32在步骤s460中做出否定确定(例如,“否”)时,在步骤s462中,cpu32通过将“1”添加到指针n的当前值来为指针m指定新值并且将指针m的值初始化为“1”。然后,例程返回到步骤s402。

(双面非整理打印的特定示例(总页数为偶数))

参考图11,将描述通过图10的双面非整理打印处理所实现的特定示例。图11图示图像文件if的页面的总数目是偶数的情况。t400至t416分别与图8的t300至t316类似。通过t400至t416,包括两个连续的页面的图像的第一页面集在第一打印纸上的打印完成。继这个之后,打印机10执行包括用于在第二打印纸上打印同一页面集的t420、t422和t424的一套处理(例如,包括在步骤s402中的步骤s310至s334)。然后,打印机10断开并重新建立与服务器100的tcp连接(例如,包括在步骤s402中的步骤s340以及s342)。如上所述,打印机10重复一套处理2m次(例如,t400至t426)。因此,同一页面集在m张打印纸上的打印完成。

在完成重复处理的一个循环时(例如,步骤s410中的是)时,打印机10执行重复处理的另一循环(例如,步骤s460中的否)。用于打印包括最后两个连续的页面的最后页面集的t430至t446分别与图8的t330至t346类似。打印机10执行重复处理总共n/2次,并且针对m个集合的(n/2×m)张打印纸上的双面非整理打印完成。

如图11中的表中所描绘,表示第二页面的图像被打印在第一张打印纸和第二张打印纸中的每一个的第一面上,并且表示第一页面的图像被打印在第一打印纸和第二打印纸中的每一个的第二面上。表示第四页面的图像被打印在第三张打印纸和第四张打印纸中的每一个的第一面上,并且表示第三页面的图像被打印在第三张纸和第四张纸中的每一个的第二面上。以类似方式,表示相应的连续页面的另一两个图像被打印在另一两张打印纸上。因此,针对两个集合的六(例如,6个页面/2×2个集合)打印纸上的双面非整理打印完成。如上所述,这个配置可能不需要部分数据的大小减少,由此打印机10可以打印相对高质量的图像。因此,在已经为存储在服务器100中的图像文件if指定打印设定信息ps的情况下,打印机10可以适当地使用具有相对较小的存储容量的存储器34来针对多个集合执行双面非整理打印。

(双面非整理打印的特定示例(总页数为奇数))

图12图示图像文件if的页面的总数目是奇数的情况。t400至t426分别与图11的t400至t426类似。在t430'中,假定了打印机10向服务器100发送包括比图像文件if的总页数“n(例如,5)”大的页码“n+1(例如,6)”的请求(例如,包括在步骤s402中的步骤s310)。在这种情况下,打印机10从服务器100接收到ng信号(例如,包括在步骤s402中的步骤s311中的否),并且输送打印纸而无需执行打印(例如,包括在步骤s402中的步骤s345)。在t436'中,打印机10断开并重新建立与服务器100的tcp连接(例如,包括在步骤s402中的步骤s340以及步骤s342)。继这个之后,打印机10执行包括t440'、t442'和t444'的一套处理(例如,包括在步骤s402中的步骤s350以及包括在步骤s404中的步骤s312至步骤s334)。在t446'中,服务器100断开并重新建立与服务器100的tcp连接(例如,包括在步骤s404中的步骤s340以及s342)。也就是说,打印机10执行重复处理总共n/2(四舍五入到最近的整数)次。因此,针对m个集合的(n/2(四舍五入到最近的整数)×m)打印纸上的双面非整理打印完成。

图12中所图示的表与图11中所图示的表类似。然而,第五打印纸和第六打印纸在它们的第二面上具有表示第五页面的图像,同时在它们的第一面上没有打印的图像。因此,针对两个集合的六(5个页面/2(四舍五入到最近的整数)×2个集合)打印纸上的双面整理打印完成。

(通过说明性实施例获得的效果)

根据该说明性实施例,如图8、图9、图11和图12中所描绘,响应于从服务器100接收到打印设定信息ps(例如,图2中的步骤s22),打印机10重复用于使用包括在打印设定信息ps中的各种信息(例如,指示双面打印和单面打印中的一个的信息、集合量信息以及指示整理打印和非整理打印的信息)来打印可以为表示n个页面的图像的一部分的表示单个页面的图像的一套处理。因此,这个配置可以使得打印机10不能够在打印表示n个页面的图像时立刻将表示n个页面的所有部分数据存储在部分数据区域40中。因此,在已经为存储在服务器100中的图像文件if指定打印设定信息ps的情况下,打印机10可以使用具有相对较小的存储容量的存储器34来执行表示n个页面的图像的打印。

根据该说明性实施例,如图3、图8和图9中所描绘,当打印机10已从服务器100接收到打印设定信息ps(例如,图2中的步骤s22)并且打印设定信息ps包括指示指代多个集合的m个集合的集合量信息以及指示整理打印的信息(例如,图2中的步骤s34中的是以及步骤s32中的是)时,打印机10重复用于打印可以为表示n个页面的图像的一部分的表示单个页面的图像的一套处理。因此,这个配置可以使得打印机10不能够在针对m个集合执行表示n个页面的图像的整理打印时立刻将表示n个页面的所有部分数据存储在部分数据区域40中。因此,在已经为存储在服务器100中的图像文件if指定打印设定信息ps的情况下,打印机10可以使用具有相对较小的存储容量的存储器34来针对m个集合执行表示n个页面的图像的打印。

虽然已经参考本公开的特定实施例详细地描述了本公开,但是这仅仅是示例,并且在不脱离本公开的精神和范围的情况下,可以在其中应用各种改变、布置和修改。在下文中,将描述该说明性实施例的变型。

(第一变型)

在一个示例中,部分数据区域40可以具有用于表示少于单个页面的页面的部分数据的存储容量(例如,用于表示半个页面的部分数据的存储容量)。在这种情况下,cpu32可以相继地接收表示单个页面的部分数据。例如,在图7的步骤s310中,cpu32可以发送请求表示第二页面的页码的请求。在这种情况下,在步骤s312和s314中,cpu32可以接收并存储表示第二页面的第一半的部分数据,并且在步骤s330和s332中,cpu32可以使用该部分数据来执行打印。在步骤s334中,cpu32可以释放部分数据区域40。继这个之后,cpu32可以再次发送表示第二页面的页码的请求。响应于此,尽管cpu32再次接收到表示第二页面的第一半的部分数据,然而cpu32可以放弃表示第二页面的第一半的部分数据。与此相反,cpu32可以接收并存储表示第二页面的第二半的部分数据,使用表示第二页面的第二半的部分数据来执行打印,并且释放部分数据区域40。在除图7的打印处理外的其它打印处理中,可以执行类似的处理。在此变型示例中,“部分数据”可以表示页面或少于单个页面的一部分。在另一示例中,部分数据区域40可以具有用于具有比表示单个页面的部分数据更大的大小的部分数据的存储容量。在这种情况下,“部分数据”可以表示具有比表示单个页面的图像更大的大小的图像(例如,“部分数据”可以表示表示两个页面的图像)。

(第二变型)

在该说明性实施例中,响应于接收到包括页码的请求,服务器100向打印机10相继地发送与包括在该请求中的页码相对应的部分数据,以及与一个或多个后续页码相对应的一个或多个后续部分数据。然而,在变型中,例如,响应于接收到包括页码的请求,服务器100可以向打印机10发送仅与包括在该请求中的页码相对应的部分数据。在这种情况下,例如,这个配置可以使得cpu32不能够在图3的步骤s120中检测到部分数据的最后一部分。当cpu32在图3的步骤s140中做出否定确定(例如,“否”)时,cpu32可以向服务器100发送包括下一个页码的另一请求,并且例程进行到步骤s112。在此变型中,cpu32可能不必执行例如图7的步骤s340和s342。

(第三变型)

例如,在图7的步骤s310以及类似的步骤中,不是向服务器100发送包括页码的请求,而是cpu32可以向服务器100发送包括指示由页码识别的部分数据的数据起始位置的信息(例如,从图像文件if的顶部起的字节的数目)的请求。在此变型中,指示数据起始位置的信息是“识别信息”的示例。

(第四变型)

打印设定信息ps还可以包括其它信息,例如,指示降序打印的执行的降序打印信息以及指示打印页面范围的范围信息。在这种情况下,例如,在图7的步骤s310以及类似的步骤中,cpu32可以根据降序打印信息和范围信息来指定待向服务器100请求的页码。在此变型中,降序打印信息和范围信息中的每一个是“次序信息”的示例。

(第五变型)

在该说明性实施例中,在双面整理打印中,打印引擎18按照此次序在第一打印纸的第一面上打印表示第二页面的图像,在第一打印纸的第二面上打印表示第一页面的图像,在第二打印纸的第一面上打印表示第四页面的图像,并且在第二打印纸的第二面上打印表示第三页面的图像。然而,在第五变型的一个示例中,打印引擎18可以按照另一次序执行打印。例如,打印引擎18可以按照此次序在第一打印纸的第一面上打印表示第二页面的图像,在第二打印纸的第一面上打印表示第四页面的图像,在第一打印纸的第二面上打印表示第一页面的图像,并且在第二打印纸的第二面上打印表示第三页面的图像。也就是说,在双面整理打印中,打印机10可以按照为第二页面、第四页面、第一页面、第三页面等的次序接收到表示相应页面的各条部分数据。在另一示例中,打印引擎18可以按照此次序在第一打印纸的第一面上打印表示第一页面的图像,在第一打印纸的第二面上打印表示第二页面的图像,在第二打印纸的第一面上打印表示第三页面的图像,并且在第二打印纸的第二面上打印表示第四页面的图像。也就是说,在双面整理打印中,打印机10可以按照为第一页面、第二页面、第三页面、第四页面等的次序接收到表示相应页面的各条部分数据。也就是说,在“指定处理”中,识别信息的指定次序可以与该说明性实施例中所使用的次序不同。

(第六变型)

在执行图7的打印处理之前,cpu32可以确定待请求的页码的次序。在确定之后,cpu32向服务器发送具有页码的次序的请求。例如,在图8中所图示的表中,cpu32可以确定例如为2、1、4、3等的请求次序。不是使用指针m和n,而是每当cpu32向服务器100发送请求时,cpu32可以根据所确定的请求次序来指定待请求的页码。根据所确定的次序来指定页码是“指定处理”的另一示例。

(第七变型)

例如,在图7的步骤s320以及类似的步骤中,cpu32可以监视存储在部分数据区域40中的数据的量达到阈值的定时(例如,在部分数据区域40的状态改变为存储器满状态的定时处)。当部分数据区域40的状态已改变为存储器满状态时,cpu32可以在步骤s320中做出肯定确定(例如,“是”)。也就是说,可能不必执行“监视页面结束数据的接收”。

(第八变型)

可以像在下面所描述的那样执行存储器34的部分数据区域40和打印数据区域42的释放(例如,图3的步骤s134、图5的步骤s246以及图7的步骤s334)。可以允许部分数据区域40和打印数据区域42中的每一个始终将数据覆写在其中。cpu32可以通过接收部分数据并且将该部分数据存储在部分数据区域40中来释放部分数据区域40(例如,图7的步骤s314)。也就是说,在第八变型中,可以同时执行针对表示页面的部分数据的“释放处理”以及针对表示后续页面的部分数据的“存储处理”。

(第九变型)

在一个示例中,打印机10可以仅能够执行整理打印,即,打印机10可能不能执行非整理打印。在另一示例中,打印机10可以仅能够执行非整理打印,即,打印机10可能不能执行整理打印。在以上无论哪一个示例中,打印设定信息ps可能不必包括指示整理打印和非整理打印中的一个的信息。在再一个示例中,打印机10可以仅能够执行单面打印,即,打印机10可能不能执行双面打印。在这种情况下,打印设定信息ps可能不必包括指示双面打印和单面打印中的一个的信息。在又一个示例中,当为打印机10的纸排出方式指定了“面朝上”时,打印机10可以按照页码的降序请求表示相应页面的多条部分数据的传输。当为打印机10的纸排出方式指定了“面朝下”时,打印机10可以按照页码的升序请求表示相应页面的多条部分数据的传输。“面朝上”可以表示打印纸是按其打印面面向上而排出的。“面朝下”可以表示打印纸是按其打印面面向下而排出的。如上所述,打印机10可以能够根据纸排出方式确定待请求的页码。因此,打印设定信息ps可能不必包括升序和降序中的一个的信息。如上所述,打印设定信息ps可能不必包括指示整理打印和非整理打印中的一个的信息、指示双面打印和单面打印中的一个的信息,也不必包括指示升序和降序中的一个的信息。一般地,“打印设定信息”可能不必包括次序信息。

(第十变型)

在一个示例中,用户可能不能够在图像文件if被提交给服务器100时指定集合量。在这种情况下,打印设定信息ps可能不必包括集合量信息,并且打印机10可以仅打印一个集合。在另一示例中,用户可以能够在图像文件if被提交给服务器100时指定集合量。在用户指定指示多个集合的集合量的情况下,打印设定信息ps可以包括集合量信息。在用户指定指示单个集合的集合量的情况下,打印设定信息ps可能不包括集合量信息。

(第十一变型)

在该说明性实施例中,图2至图12中的每一个的处理由执行存储在存储器34中的程序36的打印机10的cpu32来实现。然而,在第十一变型中,例如,图2至图12的处理中的至少一个可以由其它硬件(例如,逻辑电路)来实现。

另外,本说明书和附图中所描述的技术要素单独或者按照各种组合展示技术可用性,并且不限于在提交本公开时的权利要求中的那些要素。此外,在本说明书或附图中作为示例所描述的技术可以同时实现多个目的,并且通过实现这些目的中的任一个而具有技术实用性。

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