(57)【特許請求の範囲】
【請求項１】
プリンタであって、
特定のユーザによって印刷対象として指定される元データであって、前記特定のユーザを識別するための識別情報を含む前記元データを取得する元データ取得部と、
前記元データに含まれる複数ページ分の部分元データのそれぞれを順次変換することによって、複数ページ分の部分印刷データのそれぞれを、前記プリンタのメモリ内に順次生成する生成部と、
前記メモリ内に順次生成される前記複数ページ分の部分印刷データのそれぞれを、印刷実行部に順次供給する供給部と、
１ページ分の部分印刷データが前記メモリ内に生成される毎に、前記識別情報を用いて前記特定のユーザの前記プリンタの近傍での存在を確認する確認部と、を備え、
１ページ分の部分印刷データである第１の部分印刷データが前記メモリ内に生成された際に、前記特定のユーザの前記プリンタの近傍での存在が確認される第１の状況では、
前記供給部は、前記メモリ内の前記第１の部分印刷データを前記印刷実行部に供給し、
前記生成部は、前記第１の部分印刷データが前記印刷実行部に供給された後に、前記第１の部分印刷データとは異なる１ページ分の部分印刷データである第２の部分印刷データであって、前記第１の部分印刷データよりも後に生成されるべき前記第２の部分印刷データを前記メモリ内に生成することを開始し、
前記第１の部分印刷データが生成された際に、前記特定のユーザの前記プリンタの近傍での存在が確認されない第２の状況では、
前記供給部は、前記メモリ内の前記第１の部分印刷データを前記印刷実行部に供給せず、
前記生成部は、前記第２の部分印刷データを前記メモリ内に生成することを開始する、プリンタ。
【請求項２】
前記第２の状況において、前記第２の部分印刷データが生成された際に、前記特定のユーザの前記プリンタの近傍での存在が確認される特定の場合に、前記供給部は、前記メモリ内の前記第１の部分印刷データ及び前記第２の部分印刷データのそれぞれを、前記印刷実行部に供給する、請求項１に記載のプリンタ。
【請求項３】
前記供給部は、前記特定の場合に、前記第１の部分印刷データを前記印刷実行部に供給した後に、前記第２の部分印刷データを前記印刷実行部に供給する、請求項２に記載のプリンタ。
【請求項４】
前記確認部は、さらに、前記複数ページ分の部分印刷データのそれぞれが前記メモリ内に順次生成される過程で、前記メモリ内の空き容量が所定の閾値以下になる際に、前記特定のユーザの前記プリンタの近傍での存在を確認し、
前記第２の状況において、前記第２の部分印刷データが前記メモリ内に生成される過程で、前記メモリ内の空き容量が前記所定の閾値以下になる際に、前記特定のユーザの前記プリンタの近傍での存在が確認される第１の場合に、
前記供給部は、前記メモリ内の前記第１の部分印刷データを前記印刷実行部に供給し、
前記生成部は、前記第１の部分印刷データが前記印刷実行部に供給された後に、前記第１の部分印刷データが格納されている前記メモリ内の領域を解放し、その後、前記第２の部分印刷データを前記メモリ内に生成することを継続し、
前記第２の状況において、前記第２の部分印刷データが前記メモリ内に生成される過程で、前記メモリ内の空き容量が前記所定の閾値以下になる際に、前記特定のユーザの前記プリンタの近傍での存在が確認されない第２の場合に、
前記供給部は、前記メモリ内の前記第１の部分印刷データを前記印刷実行部に供給しない、請求項１から３のいずれか一項に記載のプリンタ。
【請求項５】
前記第２の場合に、前記メモリ内の前記第１の部分印刷データを、前記プリンタとは別体に構成されているサーバに送信する送信部をさらに備え、
前記生成部は、前記第１の部分印刷データが前記サーバに送信された後に、前記第１の部分印刷データが格納されている前記メモリ内の領域を解放し、その後、前記第２の部分印刷データを前記メモリ内に生成することを継続する、請求項４に記載のプリンタ。
【請求項６】
前記第１の部分印刷データが前記サーバに送信された後に、前記第２の部分印刷データが前記メモリ内に生成された際に、前記特定のユーザの前記プリンタの近傍での存在が確認される第３の場合に、前記サーバから前記第１の部分印刷データを取得する印刷データ取得部をさらに備え、
前記供給部は、前記第３の場合に、前記サーバから取得された前記第１の部分印刷データ及び前記メモリ内の前記第２の部分印刷データのそれぞれを、前記印刷実行部に供給する、請求項５に記載のプリンタ。
【請求項７】
前記供給部は、前記第３の場合に、前記第１の部分印刷データを前記印刷実行部に供給した後に、前記第２の部分印刷データを前記印刷実行部に供給する、請求項６に記載のプリンタ。
【請求項８】
前記第１の部分印刷データが前記サーバに送信された後に、前記第２の部分印刷データが前記メモリ内に生成された際に、前記特定のユーザの前記プリンタの近傍での存在が確認されず、かつ、前記第２の部分印刷データとは異なる１ページ分の部分印刷データである第３の部分印刷データであって、前記第２の部分印刷データよりも後に生成されるべき前記第３の部分印刷データが前記メモリ内に生成される過程で、前記メモリ内の空き容量が前記所定の閾値以下になる際に、前記特定のユーザの前記プリンタの近傍での存在が確認される第４の場合に、前記サーバから前記第１の部分印刷データを取得する印刷データ取得部をさらに備え、
前記供給部は、前記第４の場合に、前記サーバから取得された前記第１の部分印刷データ及び前記メモリ内の前記第２の部分印刷データのそれぞれを、前記印刷実行部に供給する、請求項５に記載のプリンタ。
【請求項９】
前記供給部は、前記第４の場合に、前記第１の部分印刷データを前記印刷実行部に供給した後に、前記第２の部分印刷データを前記印刷実行部に供給する、請求項８に記載のプリンタ。
【請求項１０】
前記確認部は、
前記特定のユーザによって携帯される携帯端末と近距離無線通信を実行可能である場合に、前記特定のユーザの前記プリンタの近傍での存在が確認されると決定し、
前記携帯端末と前記近距離無線通信を実行不可能である場合に、前記特定のユーザの前記プリンタの近傍での存在が確認されないと決定する、請求項１から９のいずれか一項に記載のプリンタ。
【請求項１１】
プリンタのためのコンピュータプログラムであって、
前記プリンタに搭載されるコンピュータに、以下の処理、即ち、
特定のユーザによって印刷対象として指定される元データであって、前記特定のユーザを識別するための識別情報を含む前記元データを取得する元データ取得処理と、
前記元データに含まれる複数ページ分の部分元データのそれぞれを順次変換することによって、複数ページ分の部分印刷データのそれぞれを、前記プリンタのメモリ内に順次生成する生成処理と、
前記メモリ内に順次生成される前記複数ページ分の部分印刷データのそれぞれを、印刷実行部に順次供給する供給処理と、
１ページ分の部分印刷データが前記メモリ内に生成される毎に、前記識別情報を用いて前記特定のユーザの前記プリンタの近傍での存在を確認する確認処理と、を実行させ、
１ページ分の部分印刷データである第１の部分印刷データが前記メモリ内に生成された際に、前記特定のユーザの前記プリンタの近傍での存在が確認される第１の状況では、
前記供給処理では、前記メモリ内の前記第１の部分印刷データを前記印刷実行部に供給し、
前記生成処理では、前記第１の部分印刷データが前記印刷実行部に供給された後に、前記第１の部分印刷データとは異なる１ページ分の部分印刷データである第２の部分印刷データであって、前記第１の部分印刷データよりも後に生成されるべき前記第２の部分印刷データを前記メモリ内に生成することを開始し、
前記第１の部分印刷データが生成された際に、前記特定のユーザの前記プリンタの近傍での存在が確認されない第２の状況では、
前記供給処理では、前記メモリ内の前記第１の部分印刷データを前記印刷実行部に供給せず、
前記生成処理では、前記第２の部分印刷データを前記メモリ内に生成することを開始する、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書によって開示される技術は、プリンタに関する。
【背景技術】
【０００２】
特許文献１には、画像形成装置が開示されている。画像形成装置は、定期的に携帯端末と近距離無線通信を実行する。画像形成装置は、携帯端末との近距離無線通信を実行不可能になった場合に、画像形成装置内の印刷データを消去せずに継続して保持する。その後、携帯端末との近距離無線通信が実行可能となった場合に、印刷データの処理を再開する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−５８７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した技術では、印刷データが複数のページから構成される場合に、印刷データに基づく印刷物の出力が遅延する場合があった。本明細書では、印刷データが複数のページから構成される場合であっても、印刷物をユーザに迅速に提供し得る技術を提供する。
【課題を解決するための手段】
【０００５】
本明細書では、プリンタを開示する。プリンタは、元データ取得部と、生成部と、供給部と、確認部とを備える。元データ取得部は、特定のユーザによって印刷対象として指定される元データであって、特定のユーザを識別するための識別情報を含む元データを取得する。生成部は、元データに含まれる複数ページ分の各部分元データのそれぞれを順次変換することによって、複数ページ分の部分印刷データのそれぞれを、プリンタのメモリ内に順次生成する。供給部は、メモリ内に順次生成される複数ページ分の部分印刷データのそれぞれを、印刷実行部に順次供給する。確認部は、１ページ分の部分印刷データがメモリ内に生成される毎に、識別情報を用いて特定のユーザのプリンタの近傍での存在を確認する。１ページ分の部分印刷データである第１の部分印刷データがメモリ内に生成された際に、特定のユーザのプリンタの近傍での存在が確認される第１の状況では、供給部は、メモリ内の第１の部分印刷データを印刷実行部に供給し、生成部は、第１の部分印刷データが印刷実行部に供給された後に、第１の部分印刷データとは異なる１ページ分の部分印刷データである第２の部分印刷データであって、第１の部分印刷データよりも後に生成されるべき第２の部分印刷データをメモリ内に生成することを開始する。第１の部分印刷データが生成された際に、特定のユーザのプリンタの近傍での存在が確認されない第２の状況では、供給部は、メモリ内の第１の部分印刷データを印刷実行部に供給せず、生成部は、第２の部分印刷データをメモリ内に生成することを開始する。
【０００６】
上記のプリンタは、第２の状況では、第１の部分印刷データを印刷実行部に供給しない。そのため、第２の状況では、第１の部分印刷データに従った印刷が印刷実行部によって実行されない。このために、プリンタの近傍に特定のユーザが存在しない状況で、特定のユーザによって指定された元データによって表わされる画像を含む印刷物が出力されるのを抑制することができる。ただし、上記のプリンタは、第２の状況でも、第２の部分印刷データをメモリ内に生成することを開始する。このために、第２の状況において第２の部分印刷データをメモリ内に生成することを開始しない特定の構成と比較すると、上記のプリンタは、ユーザがプリンタの近傍に現れる場合に、第２の部分印刷データを印刷実行部に迅速に供給し得る。従って、上記のプリンタは、上記の特定の構成と比べて、印刷物を特定のユーザに迅速に提供し得る。
【０００７】
第２の状況において、第２の部分印刷データが生成された際に、特定のユーザのプリンタの近傍での存在が確認される特定の場合に、供給部は、メモリ内の第１の部分印刷データ及び第２の部分印刷データのそれぞれを、印刷実行部に供給してもよい。この構成によると、プリンタは、特定の場合に、第１及び第２の部分印刷データを印刷実行部に迅速に供給し得る。このために、プリンタは、上記の特定の構成と比べて、印刷物を特定のユーザに迅速に提供し得る。
【０００８】
供給部は、特定の場合に、第１の部分印刷データを印刷実行部に供給した後に、第２の印刷データを印刷実行部に供給してもよい。この構成によると、プリンタは、特定の場合に、第１及び第２の部分印刷データを印刷実行部に適切な順で供給し得る。
【０００９】
確認部は、さらに、複数ページ分の部分印刷データのそれぞれがメモリ内に順次生成される過程で、メモリ内の空き容量が所定の閾値以下になる際に、特定のユーザのプリンタの近傍での存在を確認してもよい。第２の状況において、第２の部分印刷データがメモリ内に生成される過程で、メモリ内の空き容量が所定の閾値以下になる際に、特定のユーザのプリンタの近傍での存在が確認される第１の場合に、供給部は、メモリ内の第１の印刷データを印刷実行部に供給し、生成部は、第１の部分印刷データが印刷実行部に供給された後に、第１の部分印刷データが格納されているメモリ内の領域を解放し、その後、第２の部分印刷データをメモリ内に生成することを継続してもよい。第２の状況において、第２の部分印刷データがメモリ内に生成される過程で、メモリ内の空き容量が所定の閾値以下になる際に、特定のユーザのプリンタの近傍での存在が確認されない第２の場合に、供給部は、メモリ内の第１の部分印刷データを印刷実行部に供給しないようにしてもよい。この構成によると、プリンタは、第１の場合に、第１の部分印刷データを印刷実行部に供給する。このために、プリンタは、メモリ内の領域を解放することができ、第２の部分印刷データをメモリ内に生成し得る。一方、プリンタは、第２の場合に、第１の部分印刷データを印刷実行部に供給しない。このために、プリンタの近傍に特定のユーザが存在しない状況で、特定のユーザによって指定された元データによって表わされる画像を含む印刷物が出力されるのを抑制することができる。
【００１０】
第２の場合に、メモリ内の第１の部分印刷データを、プリンタとは別体に構成されているサーバに送信する送信部をさらに備えてもよい。生成部は、第１の部分印刷データがサーバに送信された後に、第１の部分印刷データが格納されているメモリ内の領域を解放し、その後、第２の部分印刷データをメモリ内に生成することを継続してもよい。この構成によると、プリンタは、第２の場合に、第１の部分印刷データをサーバに送信する。このために、プリンタは、メモリ内の領域を解放することができ、第２の部分印刷データをメモリ内に生成し得る。
【００１１】
第１の部分印刷データがサーバに送信された後に、第２の部分印刷データがメモリ内に生成された際に、特定のユーザのプリンタの近傍での存在が確認される第３の場合に、サーバから第１の部分印刷データを取得する印刷データ取得部をさらに備えてもよい。供給部は、第３の場合に、サーバから取得された第１の部分印刷データ及びメモリ内の第２の部分印刷データのそれぞれを、印刷実行部に供給してもよい。この構成によると、プリンタは、第３の場合に、第１及び第２の部分印刷データを印刷実行部に適切に供給し得る。
【００１２】
供給部は、第３の場合に、第１の部分印刷データを印刷実行部に供給した後、第２の部分印刷データを印刷実行部に供給してもよい。この構成によると、プリンタは、第３の場合に、第１及び第２の部分印刷データを印刷実行部に適切な順で供給し得る。
【００１３】
第１の部分印刷データがサーバに送信された後に、第２の部分印刷データがメモリ内に生成された際に、特定のユーザのプリンタの近傍での存在が確認されず、かつ、第２の部分印刷データとは異なる１ページ分の部分印刷データである第３の部分印刷データであって、第２の部分印刷データよりも後に生成されるべき第３の部分印刷データがメモリ内に生成される過程で、メモリ内の空き容量が所定の閾値以下になる際に、特定のユーザのプリンタの近傍での存在が確認される第４の場合に、サーバから第１の部分印刷データを取得する印刷データ取得部をさらに備えてもよい。供給部は、第４の場合に、サーバから取得された第１の部分印刷データ及びメモリ内の第２の部分印刷データのそれぞれを、印刷実行部に供給してもよい。この構成によると、プリンタは、第４の場合に、第１及び第２の部分印刷データを印刷実行部に適切に供給し得る。
【００１４】
供給部は、第４の場合に、第１の部分印刷データを印刷実行部に供給した後に、第２の部分印刷データを印刷実行部に供給してもよい。この構成によると、プリンタは、第４の場合に、第１及び第２の部分印刷データを印刷実行部に適切な順で供給し得る。
【００１５】
確認部は、特定のユーザによって携帯される携帯端末と近距離無線通信を実行可能である場合に、特定のユーザのプリンタの近傍での存在が確認されると決定し、携帯端末と近距離無線通信を実行不可能である場合に、特定のユーザのプリンタの近傍での存在が確認されないと決定してもよい。この構成によると、プリンタは、特定のユーザのプリンタの近傍での存在を適切に確認し得る。
【００１６】
なお、上記のプリンタを実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。
【図面の簡単な説明】
【００１７】
【図１】通信システムの構成の一例を示す。
【図２】携帯端末とプリンタとの間で行われるペアリング処理のシーケンス図を示す。
【図３】プリンタ処理のフローチャートを示す。
【図４】メモリ解放処理のフローチャートを示す。
【図５】印刷処理のフローチャートを示す。
【図６】第１実施例のケースＡのタイムチャートを示す。
【図７】第１実施例のケースＢのタイムチャートを示す。
【図８】第２実施例のタイムチャートを示す。
【発明を実施するための形態】
【００１８】
（第１実施例）
（システムの構成；図１）
図１に示されるように、通信システム２は、プリンタ１０、８０、９０と、携帯端末５０と、ＰＣ６０と、サーバ７０と、を備える。プリンタ１０、８０、９０は、それぞれ同様の構成を有しており、携帯端末５０、ＰＣ６０の周辺機器である。携帯端末５０及びＰＣ６０は、特定のユーザＵ１によって利用される機器である。携帯端末５０は、可搬型の端末であり、例えば、スマートフォン、ＰＤＡ端末、ノートＰＣ、タブレットＰＣ等を含む。プリンタ１０、８０、９０と携帯端末５０とは、近距離無線通信（例えばBlue Tooth（登録商標））によって相互に通信可能である。なお、近距離無線通信の種類はこれに限定されるものではなく、赤外線やＮＦＣ（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）通信を用いても本発明は実施可能である。
【００１９】
例えば、ユーザＵ１は、携帯端末５０をプリンタ１０に近づけることにより、携帯端末５０とプリンタ１０との間で近距離無線通信を実行させることができる。プリンタ１０と携帯端末５０とは、プリンタ１０と携帯端末５０との間の距離が所定距離以内であれば、近距離無線通信を実行可能であり、プリンタ１０と携帯端末５０との間の距離が上記の所定距離を超えると、近距離無線通信を実行不可能である。
【００２０】
ＰＣ６０は、図示省略のＣＰＵ、メモリ、ディスプレイ等を備える。ＰＣ６０のメモリは、プリンタ１０のためのプリンタドライバプログラムを格納している。ＰＣ６０のＣＰＵは、プリンタドライバプログラムを利用して、印刷対象のデータであるＰＤＬ（Page Description Language）データを生成することができる。また、サーバ７０は、図示省略のＣＰＵ、メモリ等を備える。サーバ７０は、プリンタ１０から印刷データを取得して、印刷データを一時的に格納するためのサーバである。
【００２１】
プリンタ１０、８０、９０、ＰＣ６０、及び、サーバ７０は、無線ＬＡＮを介して相互に通信可能である。なお、ＰＣ６０及びサーバ７０は、上記の近距離無線通信を実行不可能である。また、変形例では、プリンタ１０、８０、９０、ＰＣ６０、及び、サーバ７０は、有線ＬＡＮを介して相互に通信可能であってもよい。
【００２２】
プリンタ１０、８０、９０は、それぞれ、プリンタＩＤ「Ｐ１０」、「Ｐ８０」、「Ｐ９０」を有しており、携帯端末５０は、端末ＩＤ「Ｄ５０」を有している。プリンタＩＤ及び端末ＩＤは、ユニークなＩＤであり、ユーザによって決められたＩＤ（ノード名、ユーザ名等）であってもよいし、予め決められているＩＤ（ＭＡＣアドレス等）であってもよい。
【００２３】
本実施例では、プリンタ１０、８０、９０、ＰＣ６０、及び、サーバ７０が、例えば特定の会社内に据え置きされる状況を想定している。また、ユーザＵ１（例えば特定の会社の社員）は、ＰＣ６０を利用するとともに、携帯端末５０を携帯している。例えば、ユーザＵ１は、ＰＣ６０を操作して、無線ＬＡＮを介して、プリンタ１０にＰＤＬデータを供給して、プリンタ１０に印刷を実行させることができる。
【００２４】
（プリンタ１０の構成）
プリンタ１０は、操作部１２と、表示部１４と、印刷実行部１６と、近距離無線インターフェイス１８と、無線ＬＡＮインターフェイス１９と、制御部２０とを備える。上記の各部１２〜２０は、バス線（符号省略）に接続されている。操作部１２は、複数のキーによって構成される。ユーザは、操作部１２を操作して、様々な指示をプリンタ１０に与えることができる。表示部１４は、様々な情報を表示するためのディスプレイである。印刷実行部１６は、インクジェット方式、レーザ方式等の印刷機構を備え、制御部２０からの指示に従って印刷を実行する。
【００２５】
近距離無線インターフェイス１８は、制御部２０が近距離無線通信を実行する際に利用されるインターフェイスである。無線ＬＡＮインターフェイス１９は、制御部２０が無線ＬＡＮを介して通常の無線通信（例えばＩＥＥＥ８０２．１等に従った無線通信）を利用する際に利用されるインターフェイスである。
【００２６】
制御部２０は、ＣＰＵ２２とメモリ２４とを備える。ＣＰＵ２２は、メモリ２４に格納されているプログラムに従って、様々な処理を実行する。メモリ２４は、ＲＯＭ、ＲＡＭ、ハードディスク等によって構成される。メモリ２４は、ＣＰＵ２２によって実行される上記のプログラムを格納したり、ＣＰＵ２２が処理を実行する過程で取得又は生成されるデータを格納したりする。ＣＰＵ２２が上記のプログラムに従って処理を実行することによって、元データ取得部３０、生成部３２、供給部３４、確認部３６、送信部３８、及び、印刷データ取得部４０の各機能が実現される。
【００２７】
（ペアリング処理；図２）
続いて、図２を参照して、プリンタ１０と携帯端末５０との間で実行されるペアリング処理について説明する。プリンタ１０は、後述のプリンタ処理（図３）を実行する前提条件として、ペアリング処理を予め実行しておく必要がある。図２のペアリング処理が実行されると、プリンタ１０と携帯端末５０との間で近距離無線通信を実行可能な状態が確立される。
【００２８】
図２に示すように、ユーザＵ１は、携帯端末５０の操作部を操作して、近距離無線通信機能をＯＦＦからＯＮに切換える操作を実行する。携帯端末５０は、近距離無線通信機能がＯＮに切換わると、ペアリング要求信号を定期的に送信する。ペアリング要求信号は、端末ＩＤ「Ｄ５０」を含む。携帯端末５０から上記の所定距離以内に存在するプリンタ１０、８０、９０は、それぞれ、携帯端末５０からペアリング要求信号を受信する。プリンタ１０、８０、９０は、それぞれ、ペアリング要求信号を受信すると、プリンタＩＤ「Ｐ１０」、「Ｐ８０」、「Ｐ９０」を含む応答信号を、携帯端末５０に送信する。
【００２９】
携帯端末５０は、プリンタ１０、８０、９０から応答信号を受信すると、携帯端末５０の表示部に機器リスト５２（図２参照）を表示する。機器リスト５２は、各応答信号に含まれる各プリンタＩＤを含む。
【００３０】
ユーザＵ１は、機器リスト５２を見ることによって、携帯端末５０と近距離無線通信を実行可能な機器を知ることができる。ユーザＵ１は、機器リスト５２の中から１個の機器（即ちプリンタ）を選択するための機器選択操作を実行する。図２の例では、ユーザＵ１は、プリンタ１０のプリンタＩＤ「Ｐ１０」を選択する。
【００３１】
携帯端末５０は、ＰＩＮコードを含む接続要求信号を、選択済みのプリンタ１０に送信する。ＰＩＮコードは、携帯端末５０とプリンタ１０との間で近距離無線通信を実行するために用いられるコードである。ＰＩＮコードは、ユーザによって入力されたものであっても、予め決められているものであってもよい。
【００３２】
プリンタ１０は、携帯端末５０から接続要求信号を受信すると、接続要求信号に含まれるＰＩＮコードの認証を実行する。プリンタ１０は、認証が成功すると、ＰＩＮコードを用いてリンクキーを生成する。次いで、プリンタ１０は、リンクキーを、携帯端末５０の端末ＩＤ「Ｄ５０」と対応付けてメモリ２４内に格納するとともに、リンクキーを携帯端末５０に送信する。携帯端末５０は、リンクキーを受信すると、リンクキーをメモリ内に格納する。これにより、携帯端末５０とプリンタ１０とのペアリングが完了し、携帯端末５０とプリンタ１０との間で近距離無線通信を実行可能となる。
【００３３】
ユーザＵ１がプリンタ１０から携帯端末５０を離すと、携帯端末５０とプリンタ１０とは、近距離無線通信を実行不可能となる。ただし、携帯端末５０とプリンタ１０との間でペアリングが完了していれば、ユーザＵ１が、プリンタ１０から上記の所定距離以内に携帯端末５０を移動させれば、プリンタ１０と携帯端末５０とは、既にリンクキーを格納しているため上記のペアリングを再度行うことなく、近距離無線通信を実行することができる。
【００３４】
なお、プリンタ１０のメモリ２４に上記のリンクキーが格納されていると共に、携帯端末５０のメモリに上記のリンクキーが格納されている状態では、プリンタ１０の確認部３６は、携帯端末５０と近距離無線通信を実行可能であるのか否かを定期的に判断する。即ち、確認部３６は、リンクキーを含むペアリング要求信号を定期的に送信する。携帯端末５０は、プリンタ１０の近傍に存在する場合（即ち、プリンタ１０から上記の所定距離以内に存在する場合）に、ペアリング要求信号を受信して、応答信号をプリンタ１０に送信する。一方、携帯端末５０は、プリンタ１０の近傍に存在しない場合に、ペアリング要求信号を受信しないために、応答信号をプリンタ１０に送信しない。確認部３６は、携帯端末５０から応答信号を受信する場合に、携帯端末５０と近距離無線通信を実行可能であると判断することができ、携帯端末５０から応答信号を受信しない場合に、携帯端末５０と近距離無線通信を実行不可能であると判断することができる。
【００３５】
（プリンタ処理；図３）
続いて、図３を参照して、プリンタ１０によって実行される処理の内容について説明する。以下では、プリンタ１０と携帯端末５０との間でペアリング処理（図２）が既に実行された場合の例を説明する。
【００３６】
Ｓ１０では、元データ取得部３０は、ＰＤＬデータを取得することを監視する。ユーザＵ１は、ＰＣ６０の操作部を操作して、印刷対象のデータ（例えば、文書ファイル、画像ファイル等）を指定することができる。ＰＣ６０は、プリンタドライバプログラムを利用して、印刷対象のデータからＰＤＬデータ（以下では「特定のＰＤＬデータ」と呼ぶ）を生成する。特定のＰＤＬデータは、プリンタ１０が解釈可能な形式を有する。次いで、ＰＣ６０は、携帯端末５０の端末ＩＤ「Ｄ５０」と、特定のＰＤＬデータと、特定のＰＤＬデータを示す識別情報（以下では「特定のＰＤＬ識別情報」と呼ぶ）とを、無線ＬＡＮを介して、プリンタ１０に送信する。なお、特定のＰＤＬデータは、Ｍページ分（Ｍは１以上の整数）の部分ＰＤＬデータを含む。ここで、特定のＰＤＬ識別情報とは、特定のＰＤＬデータを含む複数のＰＤＬデータの中から、特定のＰＤＬデータを識別するための識別情報を含む。
【００３７】
元データ取得部３０は、無線ＬＡＮインターフェイス１９を介して、ＰＣ６０から特定のＰＤＬデータを取得すると、Ｓ１０でＹＥＳと判断する。Ｓ１０でＹＥＳの場合、元データ取得部３０は、端末ＩＤ「Ｄ５０」と、特定のＰＤＬデータと、特定のＰＤＬ識別情報と、を対応付けて、メモリ２４内に格納する。Ｓ１０でＹＥＳの場合、Ｓ１２に進む。
【００３８】
Ｓ１２では、生成部３２は、処理対象ページを示す値「Ｎ」として「１」を特定する。次いで、Ｓ１４では、送信部３８は、送信フラグ＝ＯＦＦを示す情報をメモリ２４内に格納する。ここで、送信フラグとは、少なくとも１ページ分の部分印刷データ（後述）がサーバ７０に送信されているか否かを示す情報を含む。後で説明するように、少なくとも１ページの部分印刷データがサーバ７０に送信されている場合は、送信フラグ＝ＯＮを示す情報がメモリ２４に格納される。部分印刷データがサーバ７０に送信されていない場合は、送信フラグ＝ＯＦＦを示す情報がメモリ２４に格納される。
【００３９】
次いで、Ｓ１６では、生成部３２は、Ｓ１０で取得された特定のＰＤＬデータに含まれるＮページ目の部分ＰＤＬデータを、メモリ２４内で展開して、Ｎページ目の部分印刷データを生成する処理を開始する。１回目のＳ１６では、生成部３２は、１ページ目の部分ＰＤＬデータをメモリ２４内で展開して、１ページ目の部分印刷データを生成する処理を開始する。
【００４０】
具体的には、Ｓ１６の展開処理では、生成部３２は、次の各処理を実行する。まず、生成部３２は、Ｎページ目の部分ＰＤＬデータを、多諧調（例えば２５６階調）のＲＧＢビットマップデータに変換する。次いで、生成部３２は、ＲＧＢビットマップデータを、多諧調（例えば２５６階調）のＣＭＹＫビットマップデータに変換する。次いで、生成部３２は、ＣＭＹＫビットマップデータを、２値データ（ドットのＯＮ／ＯＦＦを示すデータ）に変換する。本実施例では、この２値データが、上記のＮページ目の部分印刷データである。なお、変形例では、部分印刷データは、３値以上のデータ（例えば、ドットＯＦＦ、大ドットＯＮ、中ドットＯＮ、及び、小ドットＯＮの４値データ）であってもよい。Ｎページ目の部分印刷データ（２値データ）が印刷実行部１６に供給されると、印刷実行部１６は、Ｎページ目の部分印刷データに従って、Ｎページ目の部分ＰＤＬデータによって表わされる画像を印刷媒体に印刷することができる。
【００４１】
Ｎページ目の部分ＰＤＬデータの展開が開始されると、Ｓ１８、Ｓ２０では、生成部３２は、Ｎページ目の部分ＰＤＬデータの展開が完了（即ちＮページ目の部分印刷データの生成が完了）する前に、メモリフルになることを監視する。Ｎページ目の部分ＰＤＬデータの展開が完了する前に、メモリ２４内の空き容量が所定の閾値以下になる場合に、生成部３２は、Ｓ１８でＹＥＳと判断する。この場合、制御部２０は、Ｓ３０のメモリ解放処理（図４参照）を実行する。
【００４２】
Ｓ３０のメモリ解放処理を終えると、Ｓ３２では、生成部３２は、メモリ解放処理がエラー終了（Ｅｒｒｏｒ  Ｅｎｄ）したか否かを判断する。メモリ解放処理がエラー終了した場合には、制御部２０は、Ｓ３２でＹＥＳと判断し、プリンタ処理を終了する。一方、メモリ解放処理がエラー終了しなかった場合（即ち通常終了（Ｎｏｍａｌ  Ｅｎｄ）した場合）には、生成部３２は、Ｓ３２でＮＯと判断し、Ｓ１８に戻る。この場合、生成部３２は、Ｓ１６で開始したＮページ目の部分ＰＤＬデータの展開を再開（継続）する。
【００４３】
メモリフルになることなく（Ｓ１８でＮＯ）、Ｎページ目の部分ＰＤＬデータの展開が完了（即ちＮページ目の部分印刷データの生成が完了）する場合には、生成部３２は、Ｓ２０でＹＥＳと判断する。この場合、メモリ２４内には、Ｎページ目の部分ＰＤＬデータから生成されたＮページ目の部分印刷データが格納される。この際に、生成部３２は、ページ番号（Ｎページ目）を示すページ番号情報と、特定のＰＤＬ識別情報とを、Ｎページ目の部分印刷データに対応付ける。また、生成部３２は、Ｎページ目の部分印刷データが最終ページの部分印刷データ（即ちＮ＝Ｍ）である場合には、最終ページの部分印刷データであることを示す最終情報を、Ｎページ目の部分印刷データに対応付ける。Ｓ２０でＹＥＳの場合、Ｓ２２に進む。
【００４４】
Ｓ２２では、確認部３６は、特定のＰＤＬデータの送信元であるＰＣ６０のユーザＵ１が、プリンタ１０の近傍に存在するか否か判断する。具体的には、Ｓ２２では、確認部３６は、まず、メモリ２４から、Ｓ１０で取得された特定のＰＤＬデータに対応付けられている端末ＩＤ「Ｄ５０」を特定する。次いで、確認部３６は、端末ＩＤ「Ｄ５０」を有する携帯端末５０との近距離無線通信を実行可能であるか否かを判断する。即ち、確認部３６は、端末ＩＤ「Ｄ５０」と対応付けてメモリ２４に格納されているリンクキーを含むペアリング要求信号を送信して、応答信号を受信するのか否かを判断する。確認部３６は、携帯端末５０から応答信号を受信する場合、即ち、携帯端末５０と近距離無線通信を実行可能である場合に、ユーザＵ１のプリンタ１０の近傍での存在が確認されることを決定する。この場合、確認部３６は、Ｓ２２でＹＥＳと判断する。一方、確認部３６は、携帯端末５０から応答信号を受信しない場合、即ち、携帯端末５０と近距離無線通信を実行不可能である場合に、ユーザＵ１のプリンタ１０の近傍での存在が確認されないことを決定する。この場合、確認部３６は、Ｓ２２でＮＯと判断する。このように、プリンタ１０は、ユーザＵ１のプリンタ１０の近傍での存在を適切に確認し得る。
【００４５】
ユーザＵ１がプリンタ１０の近傍に存在する場合（Ｓ２２でＹＥＳの場合）には、Ｓ２４に進み、制御部２０は、印刷処理（図５参照）を実行する。
【００４６】
本実施例では、Ｓ２４の印刷処理が終了した後に、Ｓ２６に進む。本実施例では、制御部２０は、いわゆるシーケンシャルな処理を実行する（図６、図７参照）。即ち、制御部２０は、部分ＰＤＬデータの展開と、部分印刷データの印刷実行部１６への供給と、を並行して実行することができない。従って、本実施例では、供給部３４は、Ｓ２４の印刷処理が終了してから、Ｓ２６の処理を実行する。
【００４７】
Ｓ２６では、供給部３４は、最終ページの部分印刷データ（即ち上記の最終情報が対応付けられている部分印刷データ）を、印刷実行部１６に供給したか否かを判断する。具体的には、供給部３４は、Ｎ＝Ｍ（最終ページ）であるか否かを判断する。Ｓ２６でＹＥＳの場合、プリンタ処理が終了する。この場合、供給部３４は、Ｓ１０で取得された特定のＰＤＬデータが格納されている領域を解放する。一方、Ｓ２６でＮＯの場合、Ｓ２８に進み、生成部３２は、メモリ２４内の現在のＮの値をインクリメントして、新たなＮの値を算出し、Ｓ１６に戻る。
【００４８】
一方、ユーザＵ１がプリンタ１０の近傍に存在しない場合（Ｓ２２でＮＯの場合）には、Ｓ３２において、確認部３６は、現在のＮの値が、最終ページの番号（即ちＭ）であるか否かを判断する。現在のＮの値がＭである場合には、確認部３６は、Ｓ３２でＹＥＳと判断し、Ｓ３４に進む。ただし、Ｓ３２でＹＥＳと最初に判断される場合には、確認部３６は、タイマをスタートさせた後に、Ｓ３４に進む。一方、現在のＮの値がＭ未満である場合には、確認部３６は、Ｓ３２でＮＯと判断し、Ｓ２８に進む。Ｓ２８では、生成部３２は、メモリ２４内の現在のＮの値をインクリメントして、新たなＮの値を算出し、Ｓ１６に戻る。
【００４９】
Ｓ３４では、確認部３６は、タイマをスタートさせてから所定時間が経過したか否かを判断する。Ｓ３４でＮＯの場合には、Ｓ２２に戻り、確認部３６は、ユーザＵ１がプリンタ１０の近傍に存在するか否かを再度判断する。タイマをスタートさせてから所定時間が経過するまでの間に、ユーザＵ１がプリンタ１０の近傍に存在すると判断されない場合には、確認部３６は、Ｓ３４でＹＥＳと判断する。この場合、Ｓ３６において、供給部３４は、メモリ２４のうちの各部分印刷データが格納されている領域を解放し、プリンタ処理を終了する。このように、本実施例では、長時間が経過してもユーザＵ１がプリンタ１０の近傍に現われない場合には、Ｓ３４でＹＥＳと判断されて、各部分印刷データがメモリ２４から消去される。このために、メモリ２４内に各部分印刷データが残り続けるという事象が発生することを抑制することができる。
【００５０】
（メモリ解放処理；図４）
続いて、図３のＳ３０のメモリ解放処理の内容を説明する。図４に示されるように、Ｓ５０では、生成部３２は、メモリ２４内に部分印刷データが存在するか否かを判断する。具体的には、特定のＰＤＬ識別情報に対応付けられた生成済みの部分印刷データが、メモリ２４内に存在する場合に、生成部３２は、Ｓ５０でＹＥＳと判断し、Ｓ５２に進む。一方、特定のＰＤＬ識別情報に対応付けられた生成済みの部分印刷データが、メモリ２４内に存在しない場合に、生成部３２は、Ｓ５０でＮＯと判断し、Ｓ５８に進む。Ｓ５０でＮＯと判断される場合は、例えば、１ページ分の部分ＰＤＬデータのデータ容量が大きく、１ページ分の部分ＰＤＬデータを展開している途中でメモリフル（図３のＳ１８でＹＥＳ）が発生する場合である。
【００５１】
Ｓ５２では、確認部３６は、ユーザＵ１がプリンタ１０の近傍に存在するか否か判断する。Ｓ５２の処理の内容は、図３のＳ２２と同様である。Ｓ５２でＹＥＳの場合、Ｓ５４に進む。一方、Ｓ５２でＮＯの場合、Ｓ５６に進む。
【００５２】
Ｓ５４では、制御部２０は、印刷処理（図５参照）を実行する。詳しくは後述するが、印刷処理では、メモリ２４内に送信フラグ＝ＯＮを示す情報が格納されている場合、印刷データ取得部４０は、サーバ７０から、全ての部分印刷データの取得を開始する。次いで、供給部３４は、サーバ７０から取得された部分印刷データを印刷実行部１６に順次供給する。印刷実行部１６は、部分印刷データに従って、印刷を実行する。さらに、供給部３４は、特定のＰＤＬ識別情報に対応付けられているメモリ２４内の全ての部分印刷データを、ページ情報が示すページ番号の順に従って、印刷実行部１６に順次供給する。また、生成部３２は、１ページ分の部分印刷データの供給が完了する毎に、メモリ２４のうち、当該１ページ分の部分印刷データが記憶されている領域を解放する。この結果、メモリ２４のうち、部分印刷データが記憶されている領域が解放される。Ｓ５４を終えると、メモリ解放処理が通常終了（Ｎｏｒｍａｌ  Ｅｎｄ）する。
【００５３】
一方、Ｓ５６では、送信部３８は、メモリ２４内の全ての部分印刷データをサーバ７０に送信することを開始する。具体的に言うと、Ｓ５６では、送信部３８は、メモリ２４内の全ての部分印刷データを、無線ＬＡＮを介して、サーバ７０に送信する。なお、ここで送信される各部分印刷データには、ページ情報と、特定のＰＤＬ識別情報と、が対応付けられている。即ち、Ｓ５４の場合と異なり、プリンタ１０は、メモリ２４内の部分印刷データを印刷実行部１６に供給しない。その結果、ユーザＵ１がプリンタ１０の近傍に存在しない状況で、ユーザＵ１が印刷の実行を望む画像を含む印刷物が出力されるのを抑制することができる。サーバ７０は、各部分印刷データを、サーバ７０のメモリ内に格納する。
【００５４】
また、Ｓ５６では、生成部３２は、１ページ分の部分印刷データのサーバ７０への送信が完了する毎に、メモリ２４のうち、当該１ページ分の部分印刷データが記憶されている領域を解放する。Ｓ５６が終了すると、メモリ解放処理が通常終了（Ｎｏｒｍａｌ  Ｅｎｄ）する。さらに、Ｓ５６では、送信部３８は、送信フラグ＝ＯＦＦを示す情報がメモリ２４内に格納されている場合に、送信フラグ＝ＯＦＦを示す情報を、送信フラグ＝ＯＮを示す情報に変更する。上記の通り、本実施例では、プリンタ１０は、Ｎページ目の部分ＰＤＬデータの展開中にメモリフルになる場合（図３のＳ１８でＹＥＳ）に、ユーザＵ１が近傍に存在するか否かに応じて、印刷物を出力するか否かを適切に変えることができる（図４のＳ５４、Ｓ５６）。
【００５５】
従って、例えば、Ｎページ目の部分ＰＤＬデータの展開中にメモリフルになり（図３のＳ１８でＹＥＳ）、Ｓ５６でメモリ２４内の部分印刷データがサーバ７０に送信され、その後、メモリ２４内にＮページ目の部分印刷データが格納され、Ｎ＋１ページ目以降の部分ＰＤＬデータの展開中に再びメモリフルになる際（図３のＳ１８でＹＥＳ）に、ユーザＵ１がプリンタ１０の近傍に存在する場合（Ｓ５２でＹＥＳ）、プリンタ１０は、サーバ７０に送信した部分印刷データ、及び、メモリ２４に格納された部分印刷データを印刷実行部１６に適切に供給し得る（Ｓ５４）。
【００５６】
また、Ｓ５８では、送信部３８は、送信フラグ＝ＯＮを示す情報がメモリ２４内に格納されているか否かを判断する。Ｓ５８でＹＥＳの場合、Ｓ６０では、印刷データ取得部４０は、無線ＬＡＮを介して、サーバ７０にメモリ解放指示を送信する。メモリ解放指示は、特定のＰＤＬ識別情報を含む。サーバ７０は、メモリ解放指示を受信すると、サーバ７０のメモリのうち、特定のＰＤＬ識別情報に対応付けられている全ての部分印刷データを格納している領域を解放する。これにより、エラー終了するケースにおいて、サーバ７０のメモリ内に各部分印刷データが残り続けるという事象が発生するのと抑制することができる。Ｓ６０を終えると、メモリ解放処理がエラー終了（Ｅｒｒｏｒ  Ｅｎｄ）する。一方、Ｓ５８でＮＯの場合には、Ｓ６０をスキップして、メモリ解放処理がエラー終了する。
【００５７】
（印刷処理；図５）
続いて、図３のＳ２４の印刷処理の内容を説明する。図５に示されるように、Ｓ８０では、送信部３８は、送信フラグ＝ＯＮを示す情報がメモリ２４内に格納されているか否かを判断する。Ｓ８０でＹＥＳの場合には、Ｓ８２に進む。ここで、Ｓ８０でＹＥＳの場合は、図４のＳ５６でサーバ７０に部分印刷データが送信されている場合である。一方、Ｓ８０でＮＯの場合には、Ｓ８２〜Ｓ９０の処理をスキップして、Ｓ９２に進む。
【００５８】
Ｓ８２では、印刷データ取得部４０は、サーバ７０から、全ての部分印刷データの取得を開始する。具体的には、Ｓ８２では、印刷データ取得部４０は、無線ＬＡＮを介して、サーバ７０に印刷データ送信指示を送信する。印刷データ送信指示は、特定のＰＤＬ識別情報を含む。サーバ７０は、印刷データ送信指示を受信すると、サーバ７０のメモリに格納される部分印刷データのうち、特定のＰＤＬ識別情報に対応付けられている全ての部分印刷データを、各部分印刷データに対応付けられているページ情報が示すページ番号の順に従って、プリンタ１０に順次送信する。各部分印刷データには、ページ情報と、特定のＰＤＬ識別情報と、が対応付けられている。印刷データ取得部４０は、サーバ７０から各部分印刷データを順次取得を開始する。
【００５９】
Ｓ８２で部分印刷データの取得が開始されると、Ｓ８４では、供給部３４は、サーバ７０から取得された各部分印刷データの印刷実行部１６への供給を開始する。具体的には、Ｓ８４では、供給部３４は、取得された各部分印刷データを、各部分印刷データに対応付けられているページ情報が示すページ番号の順に従って、印刷実行部１６に順次供給する。生成部３２は、１ページ分の部分印刷データの供給が完了する毎に、メモリ２４内の一時領域のうち、当該１ページ分の部分印刷データを格納する領域を解放する。
【００６０】
Ｓ８４で部分印刷データの供給が開始されると、Ｓ８６では、供給部３４は、サーバ７０から取得された全ての部分印刷データの供給が完了することを監視する。供給部３４は、サーバ７０から取得された全ての部分印刷データの供給が完了すると、Ｓ８６でＹＥＳと判断し、Ｓ８８に進む。
【００６１】
Ｓ８８では、印刷データ取得部４０は、サーバ７０にメモリ解放指示を送信する。Ｓ８８の処理の内容は、図４のＳ６０の処理の内容と同様である。次いで、Ｓ９０では、送信部３８は、メモリ２４内に格納されている送信フラグ＝ＯＮを示す情報を、送信フラグ＝ＯＦＦを示す情報に変更する。
【００６２】
Ｓ９２では、供給部３４は、メモリ２４内に部分印刷データが存在するか否かを判断する。Ｓ９２の処理の内容は、図４のＳ５０の処理の内容と同様である。そのため、図４のＳ５４で実行される印刷処理の場合、供給部３４は、Ｓ９２でＹＥＳと判断する。Ｓ９２でＹＥＳの場合には、Ｓ９４に進み、Ｓ９２でＮＯの場合には、Ｓ９４の処理をスキップして、印刷処理が終了する。
【００６３】
Ｓ９４では、供給部３４は、メモリ２４内の全ての部分印刷データの印刷実行部１６への供給を開始する。具体的には、Ｓ９４では、供給部３４は、メモリ２４内に格納されている各部分印刷データを、各部分印刷データに対応付けられているページ情報が示すページ番号の順に従って、印刷実行部１６に順次供給する。また、Ｓ９４では、生成部３２は、１ページ分の部分印刷データの供給が完了する毎に、メモリ２４内の当該１ページ分の部分印刷データを格納する領域を解放する。Ｓ９４が終了すると、印刷処理が終了する。
【００６４】
（具体例）
続いて、図６、図７を参照して、本実施例のプリンタ１０が実行する処理の様々なケースについて説明する。なお、図６、図７中の「供給」は、印刷実行部１６に部分印刷データを供給することを示す。印刷実行部１６は、部分印刷データが供給されると、当該部分印刷データによって表わされる画像を印刷媒体に印刷する。
【００６５】
（ケースＡ；図６）
図６に示すケースＡでは、３ページ分の部分ＰＤＬデータを含むＰＤＬデータを取得した場合の本実施例のプリンタ１０の動作例を示す。ケースＡでは、２ページ目の部分ＰＤＬデータの展開中にユーザがプリンタ１０の近傍に存在しなくなる場合の例を説明する。なお、上段には、本実施例との比較のために、同様の状況における比較例のプリンタの動作のタイムチャートを示す。ケースＡでは、比較例のプリンタと、本実施例のプリンタ１０は、それぞれ、いわゆるシーケンシャルな処理を実行する。即ち、比較例のプリンタと、本実施例のプリンタ１０は、それぞれ、１ページ目の部分ＰＤＬデータの展開が完了した後に、１ページ目の部分印刷データを供給し、当該供給が完了した後に、２ページ目の部分ＰＤＬデータの展開を開始する構成を採用している。
【００６６】
比較例のプリンタは、１ページ目の部分ＰＤＬデータの展開が完了した後に、ユーザがプリンタの近傍に存在することが確認されると、１ページ目の部分印刷データを印刷実行部に供給する。比較例のプリンタは、１ページ目の部分印刷データの供給が完了すると、２ページ目の部分ＰＤＬデータの展開を開始する。ケースＡでは、２ページ目の部分ＰＤＬデータの展開中に、ユーザがプリンタの近傍に存在しなくなる。比較例のプリンタは、ユーザがプリンタの近傍に存在することが確認されない限り、２ページ目の部分印刷データを印刷実行部に供給しない。また、比較例のプリンタは、ユーザがプリンタの近傍に存在することが確認されない限り、３ページ目の部分ＰＤＬデータの展開を開始しない。その後、比較例のプリンタは、ユーザがプリンタの近傍に存在することを確認すると、２ページ目の部分印刷データを印刷実行部に供給する。次いで、比較例のプリンタは、２ページ目の部分印刷データの供給が完了した後に、３ページ目の部分ＰＤＬデータの展開を開始する。
【００６７】
これに対し、本実施例のプリンタ１０は、２ページ目の部分ＰＤＬデータの展開が完了した時点で、ユーザＵ１がプリンタ１０の近傍に存在しないことが確認されると（図３のＳ２２でＮＯ、Ｓ３２でＮＯ）、続いて、３ページ目の部分ＰＤＬデータの展開を開始する（Ｓ１６）。プリンタ１０は、ユーザＵ１がプリンタの近傍に存在することが確認されない限り、２ページ目の部分印刷データを印刷実行部１６に供給しない。このため、プリンタ１０の近傍にユーザＵ１が存在しない状況で、ユーザＵ１が印刷の実行を望む画像を含む印刷物が出力されるのを抑制することができる。プリンタ１０は、３ページ目の部分ＰＤＬデータの展開が完了した後に、ユーザがプリンタ１０の近傍に存在することが確認されると（図３のＳ３２でＹＥＳ、Ｓ３４でＮＯ、Ｓ２２でＹＥＳ）、メモリ２４内の２ページ目の部分印刷データ及び３ページ目の部分印刷データを、印刷実行部１６に順次供給する。そのため、プリンタ１０は、２ページ目の部分印刷データ及び３ページ目の部分印刷データを、適切な順に従って、印刷実行部１６に適切に供給し得る。
【００６８】
上記の通り、本実施例のプリンタ１０は、比較例のプリンタとは異なり、ユーザがプリンタ１０の近傍に存在しなくなった後に、ユーザがプリンタ１０の近傍に戻ってきたことが確認される前に、３ページ目の部分ＰＤＬデータの展開を開始することができる（図３のＳ２２でＮＯ、Ｓ３２でＮＯ）。このために、プリンタ１０は、ユーザがプリンタ１０の近傍に戻ってきたことが確認された後に、生成済みの２ページ目及び３ページ目の部分印刷データを印刷実行部１６に順次供給するだけでよい。このために、図６の２つのチャートを比べると理解できるように、本実施例のプリンタ１０は、比較例のプリンタと比べて、３ページ目の部分印刷データを印刷実行部１６に迅速に供給することができる。その結果、本実施例のプリンタ１０は、比較例のプリンタと比べて、印刷物をユーザに迅速に提供することができる。
【００６９】
（ケースＢ；図７）
図７に示すケースＢでも、３ページ分の部分ＰＤＬデータを含むＰＤＬデータを取得した場合の本実施例のプリンタ１０の動作例を示す。ケースＢでは、２ページ目の部分ＰＤＬデータの展開中にメモリフルになる場合の例を説明する。ケースＡと同様に、上段に比較例を示す。ケースＢでも、比較例のプリンタと、本実施例のプリンタ１０は、それぞれ、いわゆるシーケンシャルな処理を実行する。
【００７０】
比較例のプリンタの動作は、ケースＡと同様であるため、説明を省略する。本実施例のプリンタ１０では、１ページ目の部分ＰＤＬデータの展開を完了させると、メモリ２４内には、１ページ目の部分印刷データＮ１が格納される（図３のＳ２０でＹＥＳ）。この時点では、ユーザＵ１はプリンタ１０の近傍に存在するため（図３のＳ２２でＹＥＳ）、プリンタ１０は、１ページ目の部分印刷データＮ１を印刷実行部１６に供給し、メモリ２４を解放する（図３のＳ２４、図５のＳ９４）。
【００７１】
次いで、プリンタ１０は、２ページ目の部分ＰＤＬデータの展開を開始する。ケースＢでは、２ページ目の部分ＰＤＬデータの展開中に、ユーザＵ１がプリンタ１０の近傍に存在しなくなる。２ページ目の部分ＰＤＬデータの展開が完了すると、メモリ２４内には、２ページ目の部分印刷データＮ２が格納される（図３のＳ２０でＹＥＳ）。本実施例のプリンタ１０は、２ページ目の部分ＰＤＬデータの展開が完了した時点で、ユーザがプリンタ１０の近傍に存在しないことが確認されると（図３のＳ２２でＮＯ、Ｓ３２でＮＯ）、続いて３ページ目の部分ＰＤＬデータの展開を開始する（Ｓ１６）。ケースＢでも、プリンタ１０は、ユーザがプリンタの近傍に存在することが確認されない限り、生成された２ページ目の部分印刷データを印刷実行部１６に供給しない。このため、プリンタ１０の近傍にユーザＵ１が存在しない状況で、ユーザＵ１が印刷の実行を望む画像を含む印刷物が出力されるのを抑制することができる。ケースＢでは、３ページ目の部分ＰＤＬデータの展開中に、メモリ２４の空き容量が所定の閾値以下になる（メモリフル。図３のＳ１８でＹＥＳ）。この場合、プリンタ１０は、メモリ２４内に格納されている２ページ目の部分印刷データＮ２をサーバ７０に送信し、メモリ２４を解放する（図４のＳ５６）。これにより、プリンタ１０は、メモリ２４内の領域を解放することができ、部分印刷データＮ３を適切にメモリ２４内に生成し得る。次いで、プリンタ１０は、解放済みのメモリ２４内に、３ページ目の部分印刷データＮ３を生成して格納する。
【００７２】
プリンタ１０は、３ページ目の部分ＰＤＬデータの展開が完了した後に、ユーザがプリンタ１０の近傍に存在することが確認されると（図３のＳ３２でＹＥＳ、Ｓ３４でＮＯ、Ｓ２２でＹＥＳ）、まず、サーバ７０から、２ページ目の部分印刷データＮ２を取得して、印刷実行部１６に供給する（図５のＳ８０でＹＥＳ、Ｓ８２、Ｓ８４）。次いで、プリンタ１０は、メモリ２４内の３ページ目の部分印刷データＮ３を印刷実行部１６に供給し、メモリ２４を解放する（図５のＳ９４）。従って、プリンタ１０は、２ページ目の部分印刷データＮ２をサーバに送信した後に、ユーザがプリンタ１０の近傍に存在することが確認される場合に、２ページ目及び３ページ目の部分印刷データを、適切な順に従って印刷実行部１６に供給し得る。
【００７３】
上記の通り、本実施例のプリンタ１０は、３ページ目の部分ＰＤＬデータの展開中に、メモリフルになる（図３のＳ１８でＹＥＳ）。この場合であっても、上記のように、メモリ２４内の２ページ目の部分印刷データＮ２をサーバ７０に送信することにより、３ページ目の部分ＰＤＬデータの展開を継続することができる（図４のＳ５６）。このために、プリンタ１０は、ユーザがプリンタ１０の近傍に戻ってきたことが確認された後に展開を実行する必要がなく、生成済みの２ページ目及び３ページ目の部分印刷データを供給するだけでよい。そのため、比較例のプリンタと比べて、２ページ目及び３ページ目の部分印刷データを印刷実行部１６に迅速に供給することができる。その結果、本実施例のプリンタ１０は、比較例のプリンタと比べて、印刷物をユーザに迅速に提供することができる。
【００７４】
（対応関係）
特定のＰＤＬデータが、「元データ」の一例である。端末ＩＤ「Ｄ５０」が「識別情報」の一例である。Ｎページ目の部分ＰＤＬデータ、Ｎページ目の部分印刷データが、それぞれ、「部分元データ」、「部分印刷データ」の一例である。図６の２ページ目の部分印刷データ、３ページ目の部分印刷データが、それぞれ、「第１の部分印刷データ」、「第２の部分印刷データ」の一例である。図３のＳ１６で生成部３２が実行する処理（展開）が「変換」の一例である。
【００７５】
図３のＳ２２でＹＥＳの場合、Ｓ２２でＮＯの場合が、それぞれ、「第１の状況」、「第２の状況」の一例である。１回目の図３のＳ２２でＮＯ、かつ、２回目のＳ２２でＹＥＳの場合が、「特定の場合」の一例である。図３のＳ１８でＹＥＳ、図４のＳ５０でＹＥＳ、かつ、Ｓ５２でＹＥＳの場合が、「第１の場合」の一例である。図３のＳ１８でＹＥＳ、図４のＳ５０でＹＥＳ、かつ、Ｓ５２でＮＯの場合が、「第２の場合」の一例である。図４のＳ５６を実行した後、図３のＳ２２でＹＥＳ、図５のＳ８０でＹＥＳの場合が、「第３の場合」の一例である。Ｎページ目の部分ＰＤＬデータの展開中にメモリフルになり（図３のＳ１８でＹＥＳ）、メモリ２４内の部分印刷データがサーバ７０に送信され（図４のＳ５６）、その後、メモリ２４内にＮページ目の部分印刷データが格納され、Ｎ＋１ページ目以降の部分ＰＤＬデータの展開中に再びメモリフルになる際（図３のＳ１８でＹＥＳ）に、ユーザＵ１がプリンタ１０の近傍に存在する場合（図４のＳ５２でＹＥＳ）が、「第４の場合」の一例である。また、その場合におけるＮ＋１ページ目以降の部分ＰＤＬデータが「第３の部分印刷データ」の一例である。
【００７６】
（第２実施例）
第１実施例と異なる点を説明する。本実施例では、プリンタ１０の制御部２０は、いわゆるランダムな処理を実行する。即ち、本実施例では、プリンタ１０は、部分ＰＤＬデータの展開と、部分印刷データの供給と、を並行して実行することができる。従って、本実施例では、図３のＳ２４において、制御部２０は、印刷処理（図５参照）を開始すると、印刷処理の終了を待たずに、Ｓ２６に進む。即ち、Ｓ２６では、供給部３４は、サーバ７０内又はメモリ２４内の全ての部分印刷データの供給の完了を待つことなく、次のページの部分ＰＤＬデータの展開を開始することができる。
【００７７】
（具体例；図８）
続いて、図８を参照して、本実施例のプリンタ１０が実行する処理の一例について説明する。図８に示す具体例は、３ページ分の部分ＰＤＬデータを含むＰＤＬデータを取得した場合の本実施例のプリンタ１０の動作例を示す。この具体例では、２ページ目の部分ＰＤＬデータの展開中にユーザがプリンタ１０の近傍に存在しなくなる場合の例を説明する。なお、この具体例でも、上段には、本実施例との比較のために、同様の状況における比較例のプリンタの動作のタイムチャートを示す。比較例のプリンタは、従来の構成のプリンタである。この具体例では、比較例のプリンタと、本実施例のプリンタ１０は、それぞれ、いわゆるランダムな処理を実行する。
【００７８】
比較例のプリンタは、１ページ目の部分ＰＤＬデータの展開が完了した後に、ユーザがプリンタの近傍に存在することが確認されると、１ページ目の部分印刷データを印刷実行部に供給する。比較例のプリンタは、１ページ目の部分印刷データを印刷実行部に供給すると同時に、２ページ目の部分ＰＤＬデータの展開を開始する。この例では、２ページ目の部分ＰＤＬデータの展開中に、ユーザがプリンタの近傍に存在しなくなる。比較例のプリンタは、ユーザがプリンタの近傍に存在することが確認されない限り、生成された２ページ目の部分印刷データを印刷実行部に供給できない。また、また、比較例のプリンタは、ユーザがプリンタの近傍に存在することが確認されない限り、３ページ目の部分ＰＤＬデータの展開を開始しない。その後、比較例のプリンタは、ユーザがプリンタの近傍に存在することを確認すると、生成された２ページ目の部分印刷データを印刷実行部に供給する。同時に、プリンタ１０は、３ページ目の部分ＰＤＬデータの展開も開始する。比較例のプリンタでは、２ページ目の部分印刷データの供給が完了した時点では、まだ３ページ目の部分ＰＤＬデータの展開が完了していない。そのため、比較例のプリンタでは、３ページ目の部分ＰＤＬデータの展開が完了するのを待って、３ページ目の部分印刷データを印刷実行部に供給しなければならない。
【００７９】
これに対し、本実施例のプリンタ１０は、２ページ目の部分ＰＤＬデータの展開が完了した時点で、ユーザＵ１がプリンタ１０の近傍に存在しないことが確認されると（図３のＳ２２でＮＯ、Ｓ３２でＮＯ）、続いて３ページ目の部分ＰＤＬデータの展開を開始する（Ｓ１６）。プリンタ１０は、生成された２ページ目の部分印刷データ及び３ページ目の部分印刷データをメモリ２４に格納する。プリンタ１０は、ユーザＵ１がプリンタの近傍に存在することが確認されない限り、生成された２ページ目の部分印刷データを印刷実行部１６に供給しない。プリンタ１０は、３ページ目の部分ＰＤＬデータの展開が完了した後に、ユーザがプリンタ１０の近傍に存在することが確認されると（図３のＳ３２でＹＥＳ、Ｓ３４でＮＯ、Ｓ２２でＹＥＳ）、メモリ２４内の２ページ目の部分印刷データ及び３ページ目の部分印刷データを、印刷実行部１６に順次供給する。
【００８０】
本実施例のプリンタ１０は、比較例のプリンタとは異なり、ユーザがプリンタ１０の近傍に存在しなくなった後に、ユーザがプリンタ１０の近傍に戻ってきたことが確認される前に、３ページ目の部分ＰＤＬデータの展開を開始することができる（図３のＳ２２でＮＯ、Ｓ３２でＮＯ）。このために、プリンタ１０は、ユーザがプリンタ１０の近傍に戻ってきたことが確認された後に、生成済みの２ページ目及び３ページ目の部分印刷データを印刷実行部１６に順次供給するだけでよい。このために、図６の２つのチャートを比べると理解できるように、本実施例のプリンタ１０は、比較例のプリンタと比べて、３ページ目の部分印刷データを印刷実行部１６に迅速に供給することができる。その結果、本実施例のプリンタ１０は、比較例のプリンタと比べて、印刷物をユーザに迅速に提供することができる。
【００８１】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【００８２】
（変形例１）図３のＳ２２では、確認部３６は、他の任意の方法によって、ユーザＵ１がプリンタ１０の近傍に存在するか否かを判断してもよい。従って、例えば、確認部３６は、ユーザＵ１が、プリンタ１０の操作部１２を操作して、所定のＰＩＮコードを入力した場合に、ユーザＵ１がプリンタ１０の近傍に存在すると判断してもよい。また、例えば、プリンタ１０は、指紋リーダを備えていてもよい。確認部３６は、指紋リーダによって、ユーザＵ１の指紋が読み取られた場合に、ユーザＵ１がプリンタ１０の近傍に存在すると判断してもよい。また、例えば、プリンタ１０は、カードリーダを備えていてもよい。確認部３６は、カードリーダによって、ユーザＵ１が有する所定の認識カードが読み取られた場合に、ユーザＵ１がプリンタ１０の近傍に存在すると判断してもよい。一般的に言うと、確認部は、特定のユーザのプリンタの近傍での存在を確認すればよい。
【００８３】
（変形例２）第２実施例では、例えば、生成部３２は、１ページ目の部分印刷データが印刷実行部１６に供給されている間に、２ページ目の部分ＰＤＬデータの展開を開始する。従って、生成部３２は、１ページ目の部分印刷データが印刷実行部１６に供給されている間に、２ページ目の部分印刷データの展開を完了し得る。この場合、生成部３２は、１ページ目の部分印刷データが印刷実行部１６に供給された後に、３ページ目の部分印刷データの展開を開始する。本変形例では、１ページ目の部分印刷データ、３ページ目の部分印刷データが、それぞれ、「第１の部分印刷データ」、「第２の部分印刷データ」の一例である。一般的に言うと、「第１の部分印刷データ」と「第２の部分印刷データ」とは、連続する２ページの部分印刷データに限られない。即ち、「第２の部分印刷データ」は、「第１の部分印刷データ」よりも後に生成されるべきデータであればよい。
【００８４】
（変形例３）図３のＳ１０では、元データ取得部３０は、ＰＤＬ以外のデータを取得してもよい。従って、例えば、元データ取得部は、ＪＰＥＧ形式のデータや、Ｗｅｂページのデータ、ＲＧＢビットマップデータ等を取得してもよい。この変形例では、ＪＰＥＧ形式のデータ等が「元データ」の一例である。図３のＳ１０で元データ取得部３０がＲＧＢビットマップデータを取得する場合には、Ｓ１６の処理は、ＲＧＢビットマップデータをＣＭＹＫビットマップデータに変換し、ＣＭＹＫビットマップデータを２値データに変換する処理である。この変形例では、上記の各処理が「変換」の一例である。
【００８５】
（変形例４）図５のＳ８４、Ｓ９４では、生成部３２は、メモリ２４内の全ての部分印刷データの印刷実行部１６への供給が完了した後に、メモリ２４内の全ての部分印刷データを格納する領域を解放してもよい。一般的に言うと、生成部は、第１の部分印刷データが印刷実行部に供給された後に、第１の部分印刷データが格納されているメモリ内の領域を解放すればよい。同様に、図４のＳ５６では、生成部３２は、メモリ２４内の全ての部分印刷データのサーバ７０への送信が完了した後に、メモリ２４内の全ての部分印刷データを格納する領域を解放してもよい。一般的に言うと、生成部は、第１の部分印刷データがサーバに送信された後に、第１の部分印刷データが格納されているメモリ内の領域を解放すればよい。
【００８６】
（変形例５）上記の各実施例では、プリンタ１０のＣＰＵ２２がソフトウェアに従って処理を実行することによって、元データ取得部３０、生成部３２、供給部３４、確認部３６、送信部３８、及び、印刷データ取得部４０の各部が実現される。これに代えて、各部３０〜４０の少なくとも一部は、論理回路等のハードウェアによって実現されてもよい。
【００８７】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【００８８】
２：通信システム、１０、８０、９０：プリンタ、５０：携帯端末、６０：ＰＣ、７０：サーバ
【図１】
0005895652.tif 000002
【図２】
0005895652.tif 000003
【図３】
0005895652.tif 000004
【図４】
0005895652.tif 000005
【図５】
0005895652.tif 000006
【図６】
0005895652.tif 000007
【図７】
0005895652.tif 000008
【図８】
0005895652.tif 000009