(57)【要約】【課題】  プリンタがキャンセル操作の実行時に未だに受信していない残りの印刷データを長時間に亘って受信することを回避し得る技術を提供すること。【解決手段】  プリンタは、印刷データの全てが受信される前に、印刷のキャンセルを指示するキャンセル操作を検出する場合に、外部装置にて停止操作を実行することをユーザに促すメッセージを備える案内画面を表示する。【選択図】図３
2019051662.tif 000002
【特許請求の範囲】
【請求項１】
プリンタであって、
通信インターフェースと、
操作部と、
表示部と、
印刷エンジンと、
制御部と、を備え、
前記制御部は、
前記通信インターフェースを介して、外部装置から、画像を表わす印刷データを受信する受信部と、
受信済みの前記印刷データによって表わされる前記画像の印刷を前記印刷エンジンに実行させる印刷制御部と、
前記印刷データの全てが受信される前に、前記操作部が前記印刷のキャンセルを指示するキャンセル操作を検出する場合に、前記印刷のキャンセルに関連する処理を実行するキャンセル処理制御部と、を備え、
前記キャンセル処理制御部は、前記キャンセル操作が検出される場合に、メッセージを備える案内画面を前記表示部に表示する案内表示制御部であって、前記メッセージは、前記外部装置にて停止操作を実行することをユーザに促す文字列を含み、前記停止操作は、前記外部装置からの前記印刷データの送信を停止する操作である、前記案内表示制御部を備える、プリンタ。
【請求項２】
前記制御部は、さらに、
前記通信インターフェースを介して、前記外部装置との接続を確立する確立部を備え、
前記受信部は、前記外部装置との前記接続が確立された後に、前記接続を利用して、前記外部装置から前記印刷データを受信し、
前記キャンセル処理制御部は、さらに、
前記キャンセル操作が検出される場合に、前記印刷がキャンセルされることを示す第１のキャンセル画面を前記表示部に表示する第１のキャンセル表示制御部と、
前記第１のキャンセル画面が表示された後に、前記外部装置との前記接続が切断されたのか否かを判断する切断判断部と、を備え、
前記案内表示制御部は、前記第１のキャンセル画面が表示された後に、前記キャンセル操作が検出されてから所定時間以内に前記外部装置との前記接続が切断されたと判断されない場合に、前記案内画面を前記表示部に表示し、
前記第１のキャンセル画面が表示された後に、前記キャンセル操作が検出されてから前記所定時間以内に前記外部装置との前記接続が切断されたと判断される場合に、前記案内画面は表示されない、請求項１に記載のプリンタ。
【請求項３】
前記接続は、ＴＣＰ（Transmission Control Protocolの略）／ＩＰ（Internet Protocolの略）に従った接続である、請求項２に記載のプリンタ。
【請求項４】
前記キャンセル処理制御部は、さらに、
前記キャンセル操作が検出される場合に、前記印刷がキャンセルされることを示す第１のキャンセル画面を前記表示部に表示する第１のキャンセル表示制御部と、
前記第１のキャンセル画面が表示された後に、前記印刷データの全ての受信を完了したのか否かを判断する受信判断部と、を備え、
前記案内表示制御部は、前記第１のキャンセル画面が表示された後に、前記キャンセル操作が検出されてから所定時間以内に前記印刷データの全ての受信が完了したと判断されない場合に、前記案内画面を前記表示部に表示し、
前記第１のキャンセル画面が表示された後に、前記キャンセル操作が検出されてから前記所定時間以内に前前記印刷データの全ての受信が完了したと判断される場合に、前記案内画面は表示されない、請求項１に記載のプリンタ。
【請求項５】
前記キャンセル処理制御部は、さらに、
前記案内画面が表示された後に、前記印刷のキャンセルが完了する場合に、前記プリンタのホーム画面を前記表示部に表示し、
前記第１のキャンセル画面が表示された後に、前記案内画面が表示されることなく、前記印刷のキャンセルが完了する場合に、前記案内画面が表示されることなく、前記ホーム画面を前記表示部に表示するホーム表示制御部を備える、請求項２から４のいずれか一項に記載のプリンタ。
【請求項６】
前記案内表示制御部は、前記第１のキャンセル画面に代えて連続的に前記案内画面を前記表示部に表示する、請求項２から５のいずれか一項に記載のプリンタ。
【請求項７】
前記キャンセル処理制御部は、さらに、
前記キャンセル操作が検出される場合に、未受信の印刷データのデータサイズを特定可能であるのか否かを判断するデータサイズ判断部と、
前記未受信の印刷データのデータサイズを特定可能であると判断される場合に、前記未受信の印刷データの全てを受信するための時間である残り受信時間が前記所定時間以上であるのか否かを判断する時間判断部と、
前記未受信の印刷データのデータサイズを特定可能であると判断され、かつ、前記残り受信時間が前記所定時間以上でないと判断される場合に、前記印刷がキャンセルされることを示す第２のキャンセル画面を前記表示部に表示する第２のキャンセル表示制御部であって、前記第２のキャンセル画面が表示された後に、前記案内画面は表示されない、前記第２のキャンセル表示制御部と、を備え、
前記案内表示制御部は、前記未受信の印刷データのデータサイズを特定可能であると判断され、かつ、前記残り受信時間が前記所定時間以上であると判断される場合に、前記第２のキャンセル画面を前記表示部に表示することなく、前記キャンセル操作が実行されてから前記所定時間が経過する前に、前記案内画面を前記表示部に表示し、
前記第１のキャンセル表示制御部は、前記未受信の印刷データのデータサイズを特定可能でないと判断される場合に、前記第１のキャンセル画面を前記表示部に表示し、
前記案内表示制御部は、前記第１のキャンセル画面が表示された後に、前記キャンセル操作が検出されてから前記所定時間以内に前記印刷のキャンセルが完了しない場合に、前記案内画面を前記表示部に表示する、請求項２から６のいずれか一項に記載のプリンタ。
【請求項８】
前記キャンセル処理制御部は、さらに、
前記キャンセル操作が実行される場合に、前記通信インターフェースを介して、前記印刷データの送信の停止を要求する停止要求を前記外部装置に送信する送信部を備える、請求項１から７のいずれか一項に記載のプリンタ。
【請求項９】
前記キャンセル処理制御部は、さらに、
前記キャンセル操作が検出される場合に、未受信の印刷データのデータサイズを特定可能であるのか否かを判断するデータサイズ判断部と、
前記未受信の印刷データの前記データサイズを特定可能であると判断される場合に、前記未受信の印刷データの全てを受信するための時間である残り受信時間が所定時間以上であるのか否かを判断する時間判断部と、を備え、
前記案内表示制御部は、
前記未受信の印刷データのデータサイズを特定可能であると判断され、かつ、前記残り受信時間が前記所定時間以上であると判断される場合に、前記キャンセル操作が実行されてから前記所定時間が経過する前に、前記案内画面を前記表示部に表示し、
前記未受信の印刷データのデータサイズを特定可能でないと判断され、かつ、前記キャンセル操作が実行されてから前記所定時間以内に前記印刷のキャンセルが完了しない場合に、前記キャンセル操作が実行されてから前記所定時間が経過した後に、前記案内画面を前記表示部に表示し、
前記未受信の印刷データのデータサイズを特定可能であると判断され、かつ、前記残り受信時間が前記所定時間以上でないと判断される場合に、前記案内画面は表示されず、
前記未受信の印刷データのデータサイズを特定可能でないと判断され、かつ、前記キャンセル操作が実行されてから前記所定時間以内に前記印刷のキャンセルが完了する場合に、前記案内画面は表示されない、請求項１から８のいずれか一項に記載のプリンタ。
【請求項１０】
プリンタのためのコンピュータプログラムであって、
前記プリンタのコンピュータを、
前記プリンタの通信インターフェースを介して、外部装置から、画像を表わす印刷データを受信する受信部と、
受信済みの前記印刷データによって表わされる前記画像の印刷を前記プリンタの印刷エンジンに実行させる印刷制御部と、
前記印刷データの全てが受信される前に、前記プリンタの操作部が前記印刷のキャンセルを指示するキャンセル操作を検出する場合に、前記印刷のキャンセルに関連する処理を実行するキャンセル処理制御部と、として機能させ、
前記キャンセル処理制御部は、前記キャンセル操作が検出される場合に、メッセージを備える案内画面を前記プリンタの表示部に表示する案内表示制御部であって、前記メッセージは、前記外部装置にて停止操作を実行することをユーザに促す文字列を含み、前記停止操作は、前記外部装置からの前記印刷データの送信を停止する操作である、前記案内表示制御部を備える、コンピュータプログラム。
【請求項１１】
プリンタによって実行される方法であって、
前記プリンタの通信インターフェースを介して、外部装置から、画像を表わす印刷データを受信する受信ステップと、
受信済みの前記印刷データによって表わされる前記画像の印刷を前記プリンタの印刷エンジンに実行させる印刷制御ステップと、
前記印刷データの全てが受信される前に、前記プリンタの操作部が前記印刷のキャンセルを指示するキャンセル操作を検出する場合に、前記印刷のキャンセルに関連する処理を実行するキャンセル処理制御ステップと、を備え、
前記キャンセル処理制御ステップは、前記キャンセル操作が検出される場合に、メッセージを備える案内画面を前記プリンタの表示部に表示する案内表示制御ステップであって、前記メッセージは、前記外部装置にて停止操作を実行することをユーザに促す文字列を含み、前記停止操作は、前記外部装置からの前記印刷データの送信を停止する操作である、前記案内表示制御ステップを備える、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書によって開示される技術は、プリンタにおいて印刷をキャンセルする技術に関する。
【背景技術】
【０００２】
一般的に、プリンタは、ＰＣ（Personal Computerの略）等の外部装置から受信される印刷データによって表わされる画像の印刷が完了する前に、ユーザから印刷のキャンセルを指示するキャンセル操作を検出することができる。プリンタは、キャンセル操作の実行時に未だに受信していない残りの印刷データを受信する場合には、当該印刷データを破棄することによって、印刷をキャンセルする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−３０３０６０号公報
【特許文献２】特開２００５−２６２５６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
通常、プリンタは、印刷データを受信している間には、他の印刷データを受信して印刷を実行することができない。従って、例えば、キャンセル操作の実行時に未だに受信していない残りの印刷データのデータサイズが比較的に大きい場合には、プリンタは、当該残りの印刷データを受信するために長時間を要する。これにより、プリンタは、長時間に亘って、他の印刷データを受信して印刷を実行することができない。
【０００５】
本明細書では、プリンタがキャンセル操作の実行時に未だに受信していない残りの印刷データを長時間に亘って受信することを回避し得る技術を提供する。
【課題を解決するための手段】
【０００６】
本明細書によって開示されるプリンタは、通信インターフェースと、操作部と、表示部と、印刷エンジンと、制御部と、を備え、前記制御部は、前記通信インターフェースを介して、外部装置から、画像を表わす印刷データを受信する受信部と、受信済みの前記印刷データによって表わされる前記画像の印刷を前記印刷エンジンに実行させる印刷制御部と、前記印刷データの全てが受信される前に、前記操作部が前記印刷のキャンセルを指示するキャンセル操作を検出する場合に、前記印刷のキャンセルに関連する処理を実行するキャンセル処理制御部と、を備え、前記キャンセル処理制御部は、前記キャンセル操作が検出される場合に、メッセージを備える案内画面を前記表示部に表示する案内表示制御部であって、前記メッセージは、前記外部装置にて停止操作を実行することをユーザに促す文字列を含み、前記停止操作は、前記外部装置からの前記印刷データの送信を停止する操作である、前記案内表示制御部を備えてもよい。
【０００７】
上記の構成によると、プリンタは、キャンセル操作を検出する場合に、案内画面を表示する。これに応じてユーザが停止操作を外部装置に実行し得るので、外部装置において残りの印刷データの送信が停止され得る。この結果、プリンタが残りの印刷データを長時間に亘って受信することを回避し得る。
【０００８】
上記のプリンタを実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。また、上記のプリンタによって実行される方法も、新規で有用である。さらに、上記のプリンタと上記の外部装置とを備える通信システムも、新規で有用である。
【図面の簡単な説明】
【０００９】
【図１】通信システムの構成を示す。
【図２】プリンタによって実行される処理のフローチャートを示す。
【図３】キャンセル処理のフローチャートを示す。
【図４】図２及び図３の処理によって実現される具体例を示す。
【発明を実施するための形態】
【００１０】
（第１実施例）
（通信システム２の構成；図１）
図１に示されるように、通信システム２は、プリンタ１０と、ＰＣ５０と、を備える。各デバイス１０，５０は、相互に通信可能である。
【００１１】
（プリンタ１０の構成）
プリンタ１０は、印刷を実行可能な周辺機器（即ちＰＣ５０の周辺機器）である。プリンタ１０は、操作部１２と、表示部１４と、通信インターフェース１６と、印刷エンジン１８と、制御部３０と、を備える。各部１２〜３０は、バス線（符号省略）に接続されている。以下では、インターフェースのことを「Ｉ／Ｆ」と記載する。
【００１２】
操作部１２は、複数のボタンを備える。ユーザは、操作部１２を操作することによって、様々な指示をプリンタ１０に入力することができる。操作部１２は、キャンセルボタン１２ａを備える。キャンセルボタン１２ａは、印刷のキャンセルを指示するキャンセル操作を検出することができる。表示部１４は、様々な情報を表示するためのディスプレイである。表示部１４は、いわゆるタッチパネルとしても機能（即ち操作部としても機能）する。変形例では、キャンセルボタン１２ａは、ハードボタンとして操作部１２に設けられなくてもよく、ソフトボタンとして表示部１４（即ち操作部として機能するタッチパネル）に設けられてもよい。
【００１３】
通信Ｉ／Ｆ１６は、ＰＣ５０とのＴＣＰ（Transmission Control Protocolの略）／ＩＰ（Internet Protocolの略）に従った接続（以下では「ＴＣＰ接続」と記載する）を確立するためのインターフェースである。本実施例では、通信Ｉ／Ｆ１６は、有線通信を実行するための有線Ｉ／Ｆであるが、変形例では、無線通信を実行するための無線Ｉ／Ｆであってもよい。印刷エンジン１８は、トナーを利用して印刷を実行するレーザ方式の印刷機構を備える。変形例では、印刷エンジン１８は、レーザ方式の印刷機構に代えて、インクジェット方式の印刷機構を備えていてもよい。
【００１４】
制御部３０は、ＣＰＵ３２とメモリ３４とを備える。ＣＰＵ３２は、メモリ３４に格納されているプログラム３６に従って、様々な処理を実行する。メモリ３４は、揮発性メモリ、不揮発性メモリ等によって構成される。
【００１５】
（ＰＣ５０の構成）
ＰＣ５０は、本実施例では、据置型の端末装置（例えばデスクトップＰＣ等）であるが、変形例では、携帯電話（例えばスマートフォン）、ＰＤＡ、ノートＰＣ、タブレットＰＣ等の可搬型の端末装置であってもよい。ＰＣ５０は、プリンタ１０に印刷を実行させるためのプリンタドライバ５２を備える。以下では、プリンタドライバのことを単に「ドライバ」と記載することがある。
【００１６】
ドライバは、専用ドライバと汎用ドライバとに大別される。専用ドライバは、あるモデルのプリンタに固有のプログラムである。専用ドライバは、当該プリンタが解釈可能な様々な要求を当該プリンタに送信することができる。プリンタ１０のベンダは、プリンタ１０のための専用ドライバをＰＣ５０のユーザに提供するので、ＰＣ５０にインストールされているドライバ５２は、プリンタ１０のための専用ドライバであり得る。この場合、専用ドライバ５２は、プリンタ１０から受信される様々な要求（例えば後述の停止要求）を解釈することができ、当該要求に応じた処理を実行することができる。
【００１７】
汎用ドライバは、複数モデルのプリンタに印刷を実行させることができるプログラムであり、通常、プリンタのベンダとは異なる事業者（例えばＰＣ５０にインストールされているＯＳプログラムのベンダ）によって提供される。本実施例のプリンタ１０は、汎用ドライバから受信される印刷実行要求に応じて、印刷を実行することができる。従って、ＰＣ５０にインストールされているドライバ５２は、汎用ドライバであり得る。この場合、汎用ドライバ５２は、プリンタ１０から受信される一般的な要求（例えば印刷実行要求）を解釈することができるが、プリンタ１０から受信される特殊な要求（例えば後述の停止要求）を解釈することができない。
【００１８】
ドライバは、印刷実行要求をプリンタに送信する際に（即ちプリンタが印刷を開始する前に）、印刷対象の画像を表わす印刷データの総データサイズをプリンタに通知するドライバと、印刷データの総データサイズをプリンタに通知しないドライバと、に分類される。以下では、前者のドライバ、後者のドライバを、それぞれ、「通知ドライバ」、「非通知ドライバ」と呼ぶ。
【００１９】
（プリンタの処理；図２）
続いて、図２を参照して、プリンタ１０のＣＰＵ３２によって実行される処理を説明する。なお、プリンタ１０によって実行される全ての通信は、通信Ｉ／Ｆ１６を介して実行される。従って、以下では、「通信Ｉ／Ｆ１６を介して」という記載を省略する。図２の処理は、プリンタ１０の電源がＯＮされると開始される。
【００２０】
ＣＰＵ３２は、プリンタ１０の電源がＯＮされると、Ｓ５において、ホーム画面を表示部１４に表示する。ホーム画面は、プリンタ１０において予め決められている画面であり、例えば、印刷の実行を待機する画面、プリンタ１０の設定を変更するための指示を検出するための画面等と言い換えることができる。本実施例では、ホーム画面は、例えば、プリンタ１０が印刷を実行可能であることを示す文字列を含むメッセージと、プリンタ１０内のトナーの残量を示す文字列を含むメッセージと、を備える。
【００２１】
Ｓ１０では、ＣＰＵ３２は、ＰＣ５０から、ＴＣＰ接続の確立を要求するための接続要求を受信することを監視する。ＣＰＵ３２は、ＰＣ５０から接続要求を受信する場合（Ｓ１０でＹＥＳ）に、Ｓ１５に進む。
【００２２】
Ｓ１５では、ＣＰＵ３２は、受信済みの接続要求に対する応答をＰＣ５０に送信して、ＰＣ５０とのＴＣＰ接続を確立する。これにより、以後、プリンタ１０とＰＣ５０との間では、ＴＣＰ接続を利用した通信が実行される。
【００２３】
Ｓ１８では、ＣＰＵ３２は、ホーム画面に代えて連続的に印刷中画面を表示部１４に表示する。印刷中画面は、印刷を実行することを示す文字列を含むメッセージを備える。
【００２４】
Ｓ２０では、ＣＰＵ３２は、ＰＣ５０から印刷実行要求を受信する。ここで、ＰＣ５０のドライバ５２が通知ドライバである場合には、印刷実行要求は、印刷対象の画像を表わす印刷データの総データサイズを含む。一方、ＰＣ５０のドライバ５２が非通知ドライバである場合には、印刷実行要求は、印刷データの総データサイズを含まない。続いて、ＣＰＵ３２は、印刷データの受信を開始し、受信済みの印刷データを印刷エンジン１８に供給する。これにより、印刷エンジン１８は、印刷データによって表わされる画像の印刷を開始する。
【００２５】
Ｓ２５では、ＣＰＵ３２は、操作部１２がキャンセル操作を検出することを監視する。ＣＰＵ３２は、ユーザによってキャンセルボタン１２ａが押下されることにより、操作部１２がキャンセル操作を検出したと判断して（Ｓ２５でＹＥＳ）に、Ｓ３０に進む。
【００２６】
Ｓ３０では、ＣＰＵ３２は、印刷のキャンセルに関連するキャンセル処理を実行する（後述の図３参照）。
【００２７】
Ｓ３５では、ＣＰＵ３２は、Ｓ３０で最後に表示される画面（例えば後述のキャンセル画面、案内画面等）に代えて連続的にキャンセル完了画面を表示部１４に表示する。キャンセル完了画面は、印刷のキャンセルが完了したことを示す文字列を含むメッセージを備える。
【００２８】
ＣＰＵ３２は、Ｓ３５の処理が終了すると、Ｓ５に戻り、キャンセル完了画面に代えて連続的にホーム画面を表示部１４に表示する。なお、変形例では、Ｓ３５の処理は省略されてもよく、ＣＰＵ３２は、Ｓ３０で最後に表示される画面（例えば後述のキャンセル画面、案内画面等）に代えて連続的にホーム画面を表示部１４に表示してもよい。
【００２９】
また、ＣＰＵ３２は、Ｓ２５のキャンセル操作の監視と同時的に、Ｓ４０において、キャンセル操作が実行されることなく、印刷が完了することを監視する。具体的には、ＣＰＵ３２は、まず、印刷データの全ての受信が完了したのか否かを判断する。ＣＰＵ３２は、ＰＣ５０から印刷データの最後を示すデータを受信した場合に、印刷データの全ての受信が完了したと判断する。この場合、ＣＰＵ３２は、ＰＣ５０から、ＴＣＰ接続の切断を要求するための切断要求を受信し、切断要求に対する応答をＰＣ５０に送信する。これにより、ＰＣ５０とのＴＣＰ接続が切断される。次いで、ＣＰＵ３２は、印刷エンジン１８から印刷が完了したことを示す情報を取得したのか否かを判断する。ＣＰＵ３２は、印刷エンジン１８から当該情報を取得した場合に、印刷が完了したと判断し（Ｓ４０でＹＥＳ）、Ｓ４５に進む。
【００３０】
Ｓ４５では、ＣＰＵ３２は、印刷中画面に代えて連続的に印刷完了画面を表示部１４に表示する。印刷完了画面は、印刷が完了したことを示す文字列を含むメッセージを備える。ＣＰＵ３２は、Ｓ４５の処理が終了すると、Ｓ５に戻り、印刷完了画面に代えて連続的にホーム画面を表示部１４に表示する。
【００３１】
（キャンセル処理；図３）
続いて、図３を参照して、図２のＳ３０のキャンセル処理の内容を説明する。Ｓ１００では、ＣＰＵ３２は、印刷を停止する。具体的には、ＣＰＵ３２は、ＰＣ５０から受信された印刷データを印刷エンジン１８に供給することを停止し、さらに、印刷の停止を指示するコマンドを印刷エンジン１８に供給する。これにより、印刷エンジン１８における印刷が停止される。また、ＣＰＵ３２は、ＰＣ５０から印刷データを受信しても、印刷データを破棄する。ここで、「破棄」は、印刷データを印刷エンジン１８に供給するための処理を実行しないことを意味する。
【００３２】
なお、ＣＰＵ３２が、操作部１２においてキャンセル操作が検出された際に、ＰＣ５０とのＴＣＰ接続を強制的に切断して、ＰＣ５０から印刷データを受信しないようにする構成が考えられる。しかしながら、このような構成を採用すると、ＰＣ５０は、通信障害等を原因としてプリンタ１０とのＴＣＰ接続が切断されたと判断して、プリンタ１０とのＴＣＰ接続を再確立し、再確立されたＴＣＰ接続を利用して、印刷データをプリンタ１０に再送信する。この場合、プリンタ１０において、印刷のキャンセルが実行されたにも関わらず、同じ印刷が実行されてしまう。これを避けるために、本実施例では、ＣＰＵ３２は、ＰＣ５０とのＴＣＰ接続を強制的に切断することなく、ＰＣ５０から印刷データを受信して当該印刷データを破棄するという構成を採用する。
【００３３】
キャンセル操作の実行時に未だに受信していない残りの印刷データのデータサイズが比較的に大きい場合には、ＣＰＵ３２は、残りの印刷データを長時間に亘って受信する。この場合、ＣＰＵ３２は、他のＰＣから印刷データを受信して印刷を実行することができない。これを避けるために、Ｓ１０５では、ＣＰＵ３２は、残りの印刷データの送信の停止を要求する停止要求をＰＣ５０に送信する。ＰＣ５０のドライバ５２が専用ドライバである場合、即ち、ドライバ５２が停止要求を解釈可能である場合には、ＰＣ５０では、停止要求に応じて、残りの印刷データの送信が停止される。一方、ＰＣ５０のドライバ５２が汎用ドライバである場合、即ち、ドライバ５２が停止要求を解釈不可能な場合には、ＰＣ５０では、残りの印刷データの送信が停止されない。
【００３４】
Ｓ１１０では、ＣＰＵ３２は、未受信の印刷データのデータサイズを特定可能であるのか否かを判断する。具体的には、ＣＰＵ３２は、図２のＳ２０において、ＰＣ５０から印刷データの総データサイズを含む印刷実行要求を受信済みであるのか否か、即ち、ＰＣ５０のドライバ５２が通知ドライバであるのか非通知ドライバであるのかを判断する。ＣＰＵ３２は、印刷データの総データサイズを含む印刷実行要求を受信済みであると判断する場合、即ち、ドライバ５２が通知ドライバである場合（Ｓ１１０でＹＥＳ）に、Ｓ１１５に進む。一方、ＣＰＵ３２は、印刷データの総データサイズを含まない印刷実行要求を受信済みであると判断する場合、即ち、ドライバ５２が非通知ドライバである場合（Ｓ１１０でＮＯ）に、Ｓ１４５に進む。
【００３５】
Ｓ１１５では、ＣＰＵ３２は、未受信の印刷データを受信するための時間である残り受信時間を算出する。具体的には、ＣＰＵ３２は、印刷データの総データサイズから受信済みの印刷データのデータサイズを減算して、未受信の印刷データのデータサイズを算出する。そして、ＣＰＵ３２は、未受信の印刷データのデータサイズを、ＰＣ５０とのＴＣＰ接続で利用されている通信速度で除算して、残り受信時間を算出する。
【００３６】
Ｓ１２０では、ＣＰＵ３２は、算出済みの残り受信時間が予め決められている所定時間（例えば１０秒）以上であるのか否かを判断する。ＣＰＵ３２は、残り受信時間が所定時間以上であると判断する場合（Ｓ１２０でＹＥＳ）に、Ｓ１２５に進み、残り受信時間が所定時間以上でないと判断する場合（Ｓ１２０でＮＯ）に、Ｓ１４０に進む。
【００３７】
Ｓ１４０では、ＣＰＵ３２は、印刷中画面（図２のＳ１８参照）に代えて連続的にキャンセル画面を表示部１４に表示する。キャンセル画面は、印刷がキャンセルされることを示す文字列を含むメッセージを備える。これにより、ユーザは、自身によって実行されたキャンセル操作に起因して印刷がキャンセルされることを知ることができる。
【００３８】
Ｓ１４３では、ＣＰＵ３２は、ＰＣ５０から、ＴＣＰ接続の切断を要求するための切断要求を受信する。ここで、ドライバ５２が専用ドライバである場合には、ドライバ５２は、Ｓ１０５の停止要求を解釈して、残りの印刷データの送信を直ちに停止する。従って、Ｓ１４３では、ＣＰＵ３２は、残りの印刷データの全てを受信する前に、ＰＣ５０から切断要求を受信する。また、ドライバ５２が汎用ドライバである場合には、ドライバ５２は、Ｓ１０５の停止要求を解釈不可能であり、残りの印刷データの送信を停止しない。従って、Ｓ１４３では、ＣＰＵ３２は、残りの印刷データの全てを受信した後に、ＰＣ５０から切断要求を受信する。ただし、残り受信時間が所定時間未満であるので（Ｓ１２０でＮＯ）、ＣＰＵ３２は、ＰＣ５０から比較的に迅速に切断要求を受信する。
【００３９】
Ｓ１４３が実行された後に、Ｓ１３５において、ＣＰＵ３２は、切断要求に対する応答をＰＣ５０に送信して、ＰＣ５０とのＴＣＰ接続を切断する。これにより、印刷のキャンセルが完了する。Ｓ１３５の処理が終了すると、図３の処理が終了する。
【００４０】
一方、残り受信時間が所定時間以上である場合（Ｓ１２０でＹＥＳ）には、Ｓ１２５において、ＣＰＵ３２は、キャンセル操作が実行されてから上記の所定時間が経過する前に、印刷中画面（図２のＳ１８参照）に代えて連続的に案内画面を表示部１４に表示する。即ち、この場合、キャンセル画面（Ｓ１４０）が表示されることなく、案内画面が表示される。案内画面は、印刷がキャンセルされることを示す文字列を含むメッセージと、印刷データの送信の停止を指示する停止操作をＰＣ５０に実行することをユーザに促す文字列を含むメッセージと、を備える。後者のメッセージは、ユーザが停止操作をＰＣ５０にて実行すれば、印刷のキャンセルを迅速に完了させることを示す文字列を含む。これにより、ユーザは、停止操作をＰＣ５０に実行すべきことを知ることができる。
【００４１】
Ｓ１３０では、ＣＰＵ３２は、ＰＣ５０から切断要求を受信することを監視する。ここで、ドライバ５２が専用ドライバである場合には、Ｓ１３０では、ＣＰＵ３２は、残りの印刷データの全てを受信する前に、ＰＣ５０から切断要求を受信する。また、ドライバ５２が汎用ドライバである場合には、Ｓ１３０では、ＣＰＵ３２は、残りの印刷データの全てを受信した後に、ＰＣ５０から切断要求を受信し得る。この場合、残り受信時間が所定時間以上であるので（Ｓ１２０でＹＥＳ）、ＣＰＵ３２は、長時間に亘って残りの印刷データを受信し得る。ただし、本実施例ではＳ１２５で案内画面が表示されるので、ユーザが案内画面に応じて停止操作をＰＣ５０に実行し得る。この場合、ＣＰＵ３２は、残りの印刷データの全てを受信する前に、ＰＣ５０から切断要求を受信する。即ち、ＣＰＵ３２は、ＰＣ５０から切断要求を迅速に受信することができる。ＣＰＵ３２は、ＰＣ５０から切断要求を受信する場合（Ｓ１３０でＹＥＳ）に、Ｓ１３５において、ＰＣ５０とのＴＣＰ接続を切断する。
【００４２】
また、Ｓ１１０でＮＯと判断される場合（即ち、ドライバ５２が非通知ドライバである場合）には、Ｓ１４５において、ＣＰＵ３２は、印刷中画面（図２のＳ１８参照）に代えて連続的にキャンセル画面を表示部１４に表示する。ここで表示されるキャンセル画面は、Ｓ１４０で表示される画面と同じである。
【００４３】
Ｓ１５０では、ＣＰＵ３２は、キャンセル操作（図２のＳ２５）が実行されてから所定時間以内にＰＣ５０とのＴＣＰ接続が切断されたのか否かを判断する。ここでの所定時間は、Ｓ１２０で利用される所定時間（例えば１０秒）と同じである。ドライバ５２が汎用ドライバであることでＳ１０５の停止要求を解釈不可能であり、かつ、残りの印刷データのデータサイズが比較的に大きい場合には、ＴＣＰ接続が切断されることなく所定時間が経過する。この場合、ＣＰＵ３２は、所定時間以内にＴＣＰ接続が切断されたと判断せず（Ｓ１５０でＮＯ）、Ｓ１２５に進む。この場合、Ｓ１２５では、ＣＰＵ３２は、キャンセル画面に代えて連続的に案内画面を表示部１４に表示する。
【００４４】
一方、ドライバ５２が専用ドライバである場合には、ドライバ５２は、Ｓ１０５の停止要求に応じて残りの印刷データの送信を停止し、切断要求をプリンタ１０に送信する。この場合、ＣＰＵ３２は、所定時間以内にＴＣＰ接続が切断されたと判断し（Ｓ１５０でＹＥＳ）、案内画面を表示することなく、図３の処理を終了する。また、ドライバ５２が汎用ドライバであることでＳ１０５の停止要求を解釈不可能であっても、残りの印刷データのデータサイズが比較的に小さい場合には、ドライバ５２は、残りの印刷データの全てを送信した後に、切断要求をプリンタ１０に送信する。ただし、残りの印刷データのデータサイズが比較的に小さいので、ＣＰＵ３２は、ＰＣ５０から比較的に迅速に切断要求を受信する。この場合も、ＣＰＵ３２は、所定時間以内にＴＣＰ接続が切断されたと判断し（Ｓ１５０でＹＥＳ）、案内画面を表示することなく、図３の処理を終了する。
【００４５】
（具体例；図４）
続いて、図４を参照して、図２及び図３の処理によって実現される具体例を説明する。図４の各ケースの横軸は時間を示す。横軸上のハッチングで示す部分は、プリンタ１０がＰＣ５０から印刷データを受信している状態であることを示す。
【００４６】
まず、本実施例の具体例を説明する前に、比較例のプリンタを説明する。比較例のプリンタは、時点Ｔｓにおいて、ＰＣ５０から印刷データの受信を開始し、印刷データの全てを受信する前に、時点Ｔｃにおいて、キャンセル操作を検出する。この場合、プリンタは、印刷データを破棄してこれ以上の印刷を実行しないが、ＰＣ５０から印刷データを受信し続ける。そして、プリンタは、時点Ｔｅにおいて、残りの印刷データの全てを受信した後に、ＰＣ５０から切断要求を受信する。ここで、キャンセル操作の実行時に未だに受信していない残りの印刷データのデータサイズが比較的に大きい場合には、プリンタは、残りの印刷データを長時間に亘って受信する。この場合、プリンタは、他のＰＣから印刷データを受信して印刷を実行することができない。
【００４７】
次いで、本実施例において、ＰＣ５０のドライバ５２が専用ドライバであるケースを説明する。プリンタ１０は、時点Ｔｃにおいて、キャンセル操作を検出する場合に、停止要求をＰＣ５０に送信する（図３のＳ１０５）。この場合、ＰＣ５０の専用ドライバ５２は、時点Ｔ１において、残りの印刷データの送信を停止し、切断要求をプリンタ１０に送信する。従って、プリンタ１０は、時点Ｔｅまで印刷データを受信し続けることなく、印刷のキャンセルを迅速に完了することができる。
【００４８】
続いて、本実施例において、ＰＣ５０のドライバ５２が汎用ドライバであるケースＡ〜Ｄを説明する。ケースＡでは、汎用ドライバ５２が非通知ドライバである。プリンタ１０は、時点Ｔｃにおいて、キャンセル操作を検出する場合に、停止要求をＰＣ５０に送信する（Ｓ１０５）。この場合、ＰＣ５０の汎用ドライバ５２は、停止要求を解釈不可能であり、残りの印刷データの送信を停止しない。プリンタ１０は、未受信の印刷データのデータサイズを特定不可能であると判断し（Ｓ１１０でＮＯ）、キャンセル画面を表示する（Ｓ１４５）。そして、プリンタ１０は、時点Ｔｃから所定時間以内にＴＣＰ接続が切断されないので（Ｓ１５０でＮＯ）、案内画面を表示する（Ｓ１２５）。従って、ユーザは、停止操作をＰＣ５０に実行すべきことを知ることができるので、ＰＣ５０への停止操作をする。この結果、ＰＣ５０は、停止操作に応じて、時点Ｔ２において、残りの印刷データの送信を停止し、切断要求をプリンタ１０に送信する。従って、プリンタ１０は、時点Ｔｅまで印刷データを受信し続けることなく、印刷のキャンセルを迅速に完了することができる。
【００４９】
ケースＢでは、汎用ドライバ５２が通知ドライバである。プリンタ１０は、時点Ｔｃにおいて、キャンセル操作を検出する場合に、未受信の印刷データのデータサイズを特定可能であり（Ｓ１１０でＹＥＳ）、かつ、残り受信時間が所定時間以上であると判断し（Ｓ１２０でＹＥＳ）、キャンセル画面を表示することなく、案内画面を表示する（Ｓ１２５）。従って、ＰＣ５０への停止操作が実行され、この結果、ＰＣ５０は、停止操作に応じて、時点Ｔ３において、残りの印刷データの送信を停止し、切断要求をプリンタ１０に送信する。従って、プリンタ１０は、時点Ｔｅまで印刷データを受信し続けることなく、印刷のキャンセルを迅速に完了することができる。
【００５０】
ケースＣでは、汎用ドライバ５２が非通知ドライバであり、上記の比較例のケースと比べると、キャンセル操作の実行時に未だに受信していない残りの印刷データのデータサイズが小さい。プリンタ１０は、時点Ｔｃにおいて、キャンセル操作を検出する場合に、未受信の印刷データのデータサイズを特定不可能であると判断し（Ｓ１１０でＮＯ）、キャンセル画面を表示する（Ｓ１４５）。残りの印刷データのデータサイズが小さいので、プリンタ１０は、時点Ｔｃから所定時間以内の時点Ｔ４において、印刷データの全ての受信を完了し、ＴＣＰ接続を切断する（Ｓ１５０でＹＥＳ）。この場合、プリンタ１０は、案内画面を表示することなく、印刷のキャンセルを完了する。このように、キャンセル操作が実行されてから印刷のキャンセルが完了するまでの時間が短い状況では、案内画面が表示されないので、ＰＣ５０への停止操作をユーザに実行させずに済む。これにより、例えば、印刷のキャンセルが完了した後（即ちＴＣＰ接続の切断後）のＰＣ５０への停止操作といった無駄な操作をユーザに実行させずに済む。
【００５１】
ケースＤでは、汎用ドライバ５２が通知ドライバであり、上記のケースＣと同様に、残りの印刷データのデータサイズが小さい。プリンタ１０は、時点Ｔｃにおいて、キャンセル操作を検出する場合に、未受信の印刷データのデータサイズを特定可能であると判断し（Ｓ１１０でＹＥＳ）、残り受信時間が所定時間以上でないと判断し（Ｓ１２０でＮＯ）、キャンセル画面を表示する（Ｓ１４０）。そして、プリンタ１０は、案内画面を表示することなく、時点Ｔ５において、印刷データの全ての受信を完了し、ＴＣＰ接続を切断する（Ｓ１４３）。本ケースでも、キャンセル操作が実行されてから印刷のキャンセルが完了するまでの時間が短い状況では、案内画面が表示されないので、ＰＣ５０への停止操作をユーザに実行させずに済む。これにより、無駄な操作をユーザに実行させずに済む。
【００５２】
（本実施例の効果）
本実施例では、プリンタ１０は、キャンセル操作を検出する場合（図２のＳ２５でＹＥＳ）に、案内画面を表示する（図３のＳ１２５）。これに応じてユーザが停止操作をＰＣ５０に実行し得るので、ＰＣ５０において残りの印刷データの送信が停止され得る。従って、プリンタ１０がキャンセル操作の実行時に未だに受信していない残りの印刷データを長時間に亘って受信することを回避し得る。
【００５３】
（対応関係）
ＰＣ５０が、「外部装置」の一例である。Ｓ１４５のキャンセル画面、Ｓ１４０のキャンセル画面が、それぞれ、「第１のキャンセル画面」、「第２のキャンセル画面」の一例である。図２のＳ２０の処理が、「受信部」及び「印刷制御部」によって実行される処理の一例である。Ｓ１５の処理、Ｓ３０の処理が、それぞれ、「確立部」、「キャンセル処理制御部」によって実行される処理の一例である。Ｓ３０の後のＳ５の処理が、「ホーム表示制御部」によって実行される処理の一例である。図３のＳ１０５の処理、Ｓ１１０の処理、Ｓ１２０の処理、Ｓ１２５の処理、Ｓ１４０の処理、Ｓ１４５の処理、Ｓ１５０の処理が、それぞれ、「送信部」、「データサイズ判断部」、「時間判断部」、「第２のキャンセル表示制御部」、「第１のキャンセル表示制御部」、「切断判断部」、「案内表示制御部」によって実行される処理の一例である。
【００５４】
（第２実施例）
続いて、図３を参照して、第２実施例を説明する。第２実施例では、図３のＳ１５０の処理の内容が第１実施例とは異なる。
【００５５】
Ｓ１５０では、ＣＰＵ３２は、キャンセル操作（図２のＳ２５）が検出されてから所定時間以内に印刷データの全ての受信を完了したのか否かを判断する。具体的には、ＣＰＵ３２は、所定時間以内にＰＣ５０から印刷データの最後であることを示す最終データを受信する場合に、Ｓ１５０でＹＥＳと判断し、所定時間以内にＰＣ５０から最終データを受信しない場合に、Ｓ１５０でＮＯと判断する。なお、例えば、ドライバ５２が専用ドライバである場合には、ＰＣ５０は、停止要求に応じて印刷データの送信を停止する際に、最終データをプリンタ１０に送信する。この場合、ＣＰＵ３２は、所定時間以内にＰＣ５０から最終データを受信するので、Ｓ１５０でＹＥＳと判断する。
【００５６】
本実施例でも、第１実施例と同様の効果が得られる。本実施例では、Ｓ１５０の処理は、「受信判断部」によって実行される処理の一例である。
【００５７】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【００５８】
（変形例１）図３のＳ１０５〜Ｓ１２０、及び、Ｓ１４０〜Ｓ１５０の処理が省略されてもよい。この場合、ＣＰＵ３２は、図２のＳ２５でキャンセル操作を検出する場合に、Ｓ１００を経て、Ｓ１２５において、案内画面を表示部１４に表示する。本変形例でも、ユーザが停止操作をＰＣ５０に実行し得るので、プリンタ１０がキャンセル操作の実行時に未だに受信していない残りの印刷データを長時間に亘って受信することを回避し得る。本変形例では、「第１のキャンセル表示制御部」、「切断判断部」、「受信判断部」、「ホーム表示制御部」、「データサイズ判断部」、「時間判断部」、「第２のキャンセル表示制御部」、「送信部」を省略可能である。
【００５９】
（変形例２）ＣＰＵ３２は、図３のＳ１４５において、キャンセル画面を表示した後に、上記の所定時間（例えば１０秒）よりも短い特定時間（例えば３秒）が経過すると、キャンセル画面に代えて別の画面を表示し、その後、Ｓ１５０でＮＯと判断する場合に、Ｓ１２５において、案内画面を表示してもよい。上記の別の画面は、例えば、プリンタ１０のベンダのロゴを示す画面であってもよいし、ユーザに待機を指示する画面であってもよい。即ち、「案内表示制御部」は、第１のキャンセル画面に代えて連続的に案内画面を表示しなくてもよい。
【００６０】
（変形例３）プリンタ１０とＰＣ５０との間にＴＣＰ／ＩＰに従った接続が確立されなくてもよく、例えば、プリンタ１０は、プリンタ１０とＰＣ５０との間のＩＰに従った接続を利用して、ＵＤＰ（User Datagram Protocolの略）に従った通信をＰＣ５０と実行してもよい。即ち、「接続」は、ＴＣＰ／ＩＰに従った接続に限られない。
【００６１】
（変形例４）図３のＳ１４５において、ＣＰＵ３２は、Ｓ１４０のキャンセル画面と同じ画面を表示部１４に表示しなくてもよい。例えば、Ｓ１４０では、ＣＰＵ３２は、算出済みの残り受信時間を含むキャンセル画面を表示してもよい。ここで、キャンセル画面は、時間経過と共に残り受信時間が減算される様子を示すメッセージを含んでいてもよい。本変形例では、「第１のキャンセル画面」と「第２のキャンセル画面」とは異なる。
【００６２】
（変形例５）「プリンタ」は、プリンタ１０に限られず、複数個の画像処理（例えば印刷処理、及び、スキャン処理）を実行可能な多機能機であってもよい。
【００６３】
（変形例６）上記の各実施例では、図２、及び、図３の各処理がソフトウェア（即ちプログラム３６）によって実現されるが、これらの各処理のうちの少なくとも１つが論理回路等のハードウェアによって実現されてもよい。
【００６４】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【００６５】
２：通信システム、４：インターネット、１０：プリンタ、１２：操作部、１２ａ：キャンセルボタン、１４：表示部、１６：通信インターフェース、１８：印刷エンジン、３０：制御部、３２：ＣＰＵ、３４：メモリ、３６：プログラム、５０：ＰＣ、５２：プリンタドライバ
【図１】
2019051662.tif 000003
【図２】
2019051662.tif 000004
【図３】
2019051662.tif 000005
【図４】
2019051662.tif 000006