IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ブラザー工業株式会社の特許一覧

<>
  • 特開-サポートプログラム 図1
  • 特開-サポートプログラム 図2
  • 特開-サポートプログラム 図3
  • 特開-サポートプログラム 図4
  • 特開-サポートプログラム 図5
  • 特開-サポートプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024112427
(43)【公開日】2024-08-21
(54)【発明の名称】サポートプログラム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20240814BHJP
   B41J 29/38 20060101ALI20240814BHJP
【FI】
G06F3/12 353
G06F3/12 304
G06F3/12 328
G06F3/12 334
B41J29/38 202
B41J29/38 350
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023017414
(22)【出願日】2023-02-08
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】細溝 仁人
(72)【発明者】
【氏名】成田 建樹
(72)【発明者】
【氏名】市川 裕詞
(72)【発明者】
【氏名】江口 愛莉
【テーマコード(参考)】
2C061
【Fターム(参考)】
2C061AP10
2C061BB11
2C061CG02
2C061CM05
2C061HH00
2C061HJ10
2C061HM00
2C061HN05
2C061HN15
(57)【要約】
【課題】OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、情報処理装置から簡単にメンテナンスのためのコマンドをプリンタに送信させる技術を提供すること。
【解決手段】補助プログラム42は、プリンタ2に対応するプログラムであって、印刷設定とプリンタ2でのメンテナンス動作の実行指示とを受け付ける。補助プログラム42は、PC1に組み込まれている編集アプリ43から出力された印刷指示であって、PC1のOS21が有する汎用印刷プログラム41に対して画像の印刷をプリンタ2に行わせる印刷指示があった場合に、印刷設定に従って、印刷対象の画像をプリンタ2に印刷させる。補助プログラム42は、メンテナンス動作の実行指示を受け付けた場合に、メンテナンス動作をプリンタ2に実行させるコマンドをプリンタ2に送信させる。そのコマンドを受信したプリンタ2は、コマンドに対応するメンテナンス動作を実行する。
【選択図】図1
【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
前記コンピュータに、
前記情報処理装置のユーザインタフェースに設定画面を表示させ、前記設定画面を介して、印刷設定と、前記プリンタでのメンテナンス動作の実行指示と、を受け付ける受付処理を実行させ、
さらに前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムが有する汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、
前記受付処理にて受け付けられた前記印刷設定に従って、印刷対象の前記画像を前記プリンタに印刷させるための処理を行う印刷処理を実行させ、
さらに前記コンピュータに、
前記受付処理にて前記メンテナンス動作の前記実行指示が受け付けられた場合に、
前記メンテナンス動作を前記プリンタに実行させる本体コマンドを、前記プリンタに送信するための処理を行う送信処理を実行させ、前記本体コマンドを受信した前記プリンタは、前記本体コマンドに対応する前記メンテナンス動作を実行する、
ように構成されるサポートプログラム。
【請求項2】
請求項1に記載するサポートプログラムであって、
前記コンピュータに、前記送信処理を実行させた後、
前記プリンタから前記本体コマンドに対応する前記メンテナンス動作の実行結果を示す結果情報を取得する結果取得処理と、
前記結果取得処理にて取得された前記結果情報に示される前記メンテナンス動作の実行結果を、前記情報処理装置の前記ユーザインタフェースに通知させる結果通知処理と、
を実行させる、
ように構成されるサポートプログラム。
【請求項3】
請求項2に記載するサポートプログラムであって、
前記結果取得処理では、
前記プリンタに前記結果情報の送信を要求し、前記プリンタからの応答によって前記結果情報を取得し、前記結果情報の送信の要求を受信した前記プリンタは、前記メンテナンス動作が終了していれば、前記結果情報を応答し、前記メンテナンス動作が終了していなければ、前記結果情報を応答せず、
前記コンピュータに、
前記送信処理を実行させた後、前記プリンタから前記結果情報を取得する、もしくはタイムアウトするまで前記結果取得処理を定期的に実行させ、前記結果取得処理にて前記結果情報が取得された場合に、前記結果通知処理を実行させる、
ように構成されるサポートプログラム。
【請求項4】
請求項3に記載するサポートプログラムであって、
前記コンピュータに、
前記プリンタから経過情報を取得した場合に、取得された前記経過情報に示される前記メンテナンス動作の実行経過を、前記情報処理装置の前記ユーザインタフェースに通知させる経過通知処理を実行させ、前記結果情報の送信の要求を受信した前記プリンタは、前記メンテナンス動作が終了していなければ、前記結果情報を応答せず、前記メンテナンス動作の実行経過を示す前記経過情報を応答する、
ように構成されるサポートプログラム。
【請求項5】
請求項2に記載するサポートプログラムであって、
前記送信処理では、
前記メンテナンス動作として第1メンテナンス動作を前記プリンタに実行させる前記本体コマンドである第1本体コマンドを、前記プリンタに送信し、
前記結果取得処理では、
前記結果情報として、前記プリンタから前記第1本体コマンドに対応する前記第1メンテナンス動作の実行結果を示す第1結果情報を取得し、
前記結果通知処理では、
前記結果取得処理にて取得された前記第1結果情報に基づいて、前記第1メンテナンス動作の前記実行結果を、前記情報処理装置の前記ユーザインタフェースに通知させ、
さらに前記コンピュータに、
前記結果通知処理によって前記第1メンテナンス動作の前記実行結果を前記情報処理装置の前記ユーザインタフェースに通知させた場合に、
前記情報処理装置の前記ユーザインタフェースによって、第2メンテナンス動作を前記プリンタに実行させるか否かの選択を受け付ける選択処理と、
前記選択処理にて前記第2メンテナンス動作を前記プリンタに実行させる前記選択を受け付けた場合に、前記第2メンテナンス動作を前記プリンタに実行させる第2本体コマンドを、前記プリンタに送信する連続送信処理と、
を実行させる、
ように構成されるサポートプログラム。
【請求項6】
請求項1から請求項5のいずれか1つに記載するサポートプログラムであって、
前記送信処理では、
前記メンテナンス動作を前記プリンタに実行させる前記本体コマンドを含む送信命令を前記汎用印刷プログラムに入力し、前記送信命令が入力された前記汎用印刷プログラムは、前記本体コマンドが関連付けられた設定要求を、汎用のプロトコルを用いて前記プリンタに送信し、前記設定要求を受信した前記プリンタは、前記設定要求に関連付けられた前記本体コマンドに対応する前記メンテナンス動作を実行する、
ように構成されるサポートプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
【背景技術】
【0002】
パーソナルコンピュータ等の情報処理装置からプリンタを制御する技術として、例えば特許文献1に開示されているように、プリンタベンダから提供されるプリンタドライバによって、メンテナンスのためのコマンドをプリンタに送信し、そのコマンドを受信したプリンタがメンテナンス動作を実行する構成が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009-202433号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、前述したプリンタベンダから提供されるプリンタドライバを利用せず、オペレーティングシステム(OS)の一部を構成するOS標準の汎用印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタを検知するとOS標準の汎用印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタベンダから提供されるプリンタドライバを用いずに、OS標準の汎用印刷プログラムが印刷データを生成することで、OS標準の汎用印刷プログラムによる印刷が可能になる。
【0005】
しかしながら、前記したOS標準の汎用印刷プログラムでは、これまでプリンタドライバによって提供されていた、メンテナンスのためのコマンドをプリンタに送信する手段が設けられていない。プリンタ本体の操作パネルからメンテナンス動作の実行指示を受け付けられる場合があるが、これまでのように情報処理装置からのコマンド入力ができなくなると、ユーザに不便を強いる。
【課題を解決するための手段】
【0006】
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置のユーザインタフェースに設定画面を表示させ、前記設定画面を介して、印刷設定と、前記プリンタでのメンテナンス動作の実行指示と、を受け付ける受付処理を実行させ、さらに前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムが有する汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記受付処理にて受け付けられた前記印刷設定に従って、印刷対象の前記画像を前記プリンタに印刷させるための処理を行う印刷処理を実行させ、さらに前記コンピュータに、前記受付処理にて前記メンテナンス動作の前記実行指示が受け付けられた場合に、前記メンテナンス動作を前記プリンタに実行させる本体コマンドを、前記プリンタに送信するための処理を行う送信処理を実行させ、前記本体コマンドを受信した前記プリンタは、前記本体コマンドに対応する前記メンテナンス動作を実行する、ように構成されている。
【0007】
本明細書に開示されるサポートプログラムは、サポートプログラムに対応するプリンタのメンテナンス動作の実行指示を受け付ける。そのメンテナンス動作の実行指示があった場合に、サポートプログラムは、プリンタに対してそのメンテナンス動作を実行させるためのコマンドを送信するための処理を行う。これにより、OS標準の汎用印刷プログラムが組み込まれており、プリンタベンダによって提供されるプリンタドライバが組み込まれていない情報処理装置であっても、汎用印刷プログラムからは指示できないプリンタ固有のメンテナンス動作をプリンタに実行させることが可能になる。
【0008】
上記サポートプログラムが組み込まれた情報処理装置、サポートプログラムを格納するコンピュータにて読取可能な記憶媒体、及びサポートプログラムの機能を実現するための制御方法、サポートプログラムとプリンタとを含む印刷システムも、新規で有用である。
【発明の効果】
【0009】
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、情報処理装置から簡単にメンテナンスのためのコマンドをプリンタに送信させる技術が実現される。
【図面の簡単な説明】
【0010】
図1】PCの電気的構成の概略を示すブロック図である。
図2】印刷設定手順の例を示すシーケンス図である。
図3】印刷設定画面の例を示す説明図である。
図4】メンテナンス設定画面の例を示す説明図である。
図5】メンテナンス手順の例を示すシーケンス図である。
図6】印刷実行手順の例を示すシーケンス図である。
【発明を実施するための形態】
【0011】
以下、本形態のサポートプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本明細書は、PCにて実行されるサポートプログラムを開示する。
【0012】
本形態のPC1は、図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。PC1は、情報処理装置の一例である。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
【0013】
PC1のCPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。メモリ12には、各種のプログラムや各種のデータが記憶されている。メモリ12は、各種の処理が実行される際の作業領域としても利用される。CPU11が備えるバッファも、メモリの一例である。なお、メモリ12の一例は、PC1に内蔵されるROM、RAM、HDD等に限らず、CPU11が読み取り可能かつ書き込み可能なストレージ媒体、例えば、CD-ROM、DVD-ROM等の記録媒体であっても良い。
【0014】
ユーザIF13は、ユーザに情報を報知するための画面を表示するハードウェアであるディスプレイ13aと、ユーザによる操作を受け付けるハードウェアと、を含む。なお、ユーザIF13は、情報を表示可能なディスプレイ13aと、入力受付機能を有するマウスやキーボード等と、の組であっても良いし、ディスプレイ13aの機能と入力受付機能とを備えるタッチパネルであっても良い。
【0015】
通信IF14は、プリンタ2等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(登録商標)、Wi-Fi(登録商標)、USBなどである。PC1は、通信IF14を介して、インターネットに接続可能であっても良い。PC1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。
【0016】
PC1のメモリ12には、図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、編集アプリ43と、を含む、各種のプログラムや各種のデータが記憶されている。補助プログラム42は、サポートプログラムの一例である。編集アプリ43は、アプリケーションプログラムの一例である。
【0017】
OS21は複数のタスクを管理して切り換えることにより複数のタスクを並行して処理できるマルチタスクOSである。OS21は、例えば、Windows(登録商標)、macOS(登録商標)、Linux(登録商標)、iOS(登録商標)、Android(登録商標)である。
【0018】
OS21には、汎用印刷プログラム41が含まれている。汎用印刷プログラム41は、OS21のベンダによって用意され、OS21の一部として提供されるOS標準のプログラムである。汎用印刷プログラム41は、各プリンタに固有のプリンタドライバを利用するようには構成されていない。
【0019】
汎用印刷プログラム41は、ユーザの指示に基づいて、複数のベンダによってそれぞれ提供される複数種類のモデルのプリンタに印刷を実行させるための機能を有するプログラムである。汎用印刷プログラム41は、多くのプリンタにて印刷を実行可能な汎用的な機能をサポートしている。汎用印刷プログラム41は、各プリンタに固有のプリンタドライバとは異なり、各プリンタやプリンタドライバが固有に備える機能、特に複雑な処理を要する機能をサポートしていない。
【0020】
汎用印刷プログラム41は、ユーザの指示に基づいて、各種のアプリから出力された印刷指示にて印刷対象として指定された画像データを受け取り、その画像データに基づく中間画像データを生成する機能を含むプログラムである。中間画像データは、例えば、XPSデータである。汎用印刷プログラム41は、さらに、中間画像データに基づいて、各種のプリンタにて印刷に利用できる形式の印刷データを生成する機能を有している。印刷データは、例えば、PWGRasterデータ、または、PDFデータである。また、汎用印刷プログラム41は、生成した印刷データを、OS21による通信機能を介して、印刷を実行させる装置として指定されたプリンタに送信する機能を有している。
【0021】
補助プログラム42は、汎用印刷プログラム41の処理に付随してOS21からの指示に基づいて処理を実行するプログラムまたはプログラム群であり、対象のハードウェアの制御をサポートするプログラムである。本形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、プリンタ2のベンダによって提供される。汎用印刷プログラム41は、印刷を実行させる装置としてプリンタ2が選択された場合、プリンタ2が選択されている状態で詳細な印刷設定の指示を受け付けた場合、プリンタ2に印刷を実行させる指示を受け付けた場合、等に、プリンタ2に対応する補助プログラム42を起動する。補助プログラム42は、例えば、印刷サポートアプリ(略称、PSA)、またはハードウェアサポートアプリ(略称、HSA)と呼ばれるものである。
【0022】
なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであっても良いし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。また、補助プログラムは、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであっても良い。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが、それぞれ用意されても良い。プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
【0023】
PC1のOS21は、例えば、新たなプリンタがPC1に接続された場合、接続されたプリンタのタイプやモデルに応じて、適切な補助プログラムをプリンタのベンダのサーバ等からダウンロードしてPC1に組み込むことができる。OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。
【0024】
編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのプログラムである。編集アプリ43は、例えば、マイクロソフト(登録商標)製のワード(登録商標)やパワーポイント(登録商標)などであっても良いし、プリンタ2のベンダから提供されるプログラムであっても良い。編集アプリ43は、ユーザIF13を介して、例えば、プリンタ2に印刷を実行させる印刷実行指示を受け付け可能である。なお、編集アプリ43は、データの作成や編集を行うためのプログラムに限らず、ユーザの要求に応じて、地図情報やウェブページ等の各種の情報の表示指示や印刷指示を受け付ける機能を有するプログラムであっても良い。
【0025】
本形態のPC1は、通信IF14を介して、図1に示すように、プリンタ2に接続されている。プリンタ2は、少なくとも印刷機能と通信機能とを有する装置である。プリンタ2は、例えば、PC1等から印刷データを受信した場合、受信した印刷データに基づく印刷を実行可能である。
【0026】
次に、本形態のPC1において、プリンタ2にメンテナンスや印刷の動作を行わせる手順について説明する。なお、本形態における各処理は、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェアの制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
【0027】
まず、印刷設定手順について、図2のシーケンス図を参照して説明する。編集アプリ43は、ユーザの指示に基づいて、文章や画像の作成や編集を受け付ける。そして、表示中の文章や画像を印刷させたい場合、あるいは、プリンタ2にメンテナンス動作を行わせたい場合、ユーザは、編集アプリ43にて印刷を選択する(A01)。ユーザは、例えば編集アプリ43に設けられた操作項目のメニューから、印刷を選択できる。
【0028】
編集アプリ43は、印刷の選択を受け付けると、OS21の汎用印刷プログラム41に印刷に関する指示を受け付ける画面の表示を要求する(A02)。汎用印刷プログラム41は、要求に応じて、印刷設定画面をユーザIF13に表示させる(A03)。印刷設定画面は、汎用印刷プログラム41にて受け付け可能な各種の印刷設定について、ユーザの指示を受け付ける画面である。なお、印刷設定画面の表示は、編集アプリ43が行っても良い。
【0029】
印刷設定画面の例を図3に示す。図3の例の印刷設定画面D2は、プリンタ選択欄51、情報表示欄52、基本的な印刷設定の選択欄53、詳細設定ボタン54、印刷ボタン55、を含む。プリンタ選択欄51は、印刷を実行させるデバイスの選択を受け付ける欄である。情報表示欄52は、プリンタ選択欄51にて選択されたデバイスに対応する補助プログラムによって指定された情報を表示する欄である。例えば、プリンタ選択欄51にてプリンタ2の選択を受け付けた場合、または、OS21にて通常使用するプリンタとしてプリンタ2が設定されている状態で印刷の指示を受け付けた場合、汎用印刷プログラム41は、補助プログラム42を起動し、補助プログラム42によって用意される画像を情報表示欄52に表示することができる。
【0030】
基本的な印刷設定の選択欄53は、印刷部数や原稿の向き等の基本的な設定を受け付ける欄である。詳細設定ボタン54は、基本的な印刷設定の選択欄53には含まれない詳細な設定を行う指示を受け付けるボタンである。印刷ボタン55は、選択中の印刷設定での印刷の実行指示を受け付けるボタンである。
【0031】
例えば、プリンタ選択欄51にて、印刷を実行させるデバイスとしてプリンタ2が選択された状態で、詳細設定ボタン54への操作によって詳細な印刷設定の指示を受け付けた場合(A11)、汎用印刷プログラム41は、プリンタ2に対応する補助プログラム42に、詳細な印刷設定の受け付けを開始する指示を渡す(A12)。
【0032】
補助プログラム42は、A12の指示に応じて起動されると、プリンタ2の能力情報を取得する。具体的には、補助プログラム42は、能力情報の取得を汎用印刷プログラム41に要求する(A13)。汎用印刷プログラム41は、能力情報を要求するコマンドをプリンタ2に送信し、プリンタ2から能力情報を取得する(A14)。汎用印刷プログラム41は、取得した能力情報を補助プログラム42に渡す(A15)。これにより、補助プログラム42は、プリンタ2の能力情報を取得できる。
【0033】
なお、汎用印刷プログラム41は、A14において、OS21を介して、例えば、IPP(internet printing protocolの略)に応じた通信によって、プリンタ2との通信を行う。なお、補助プログラム42は、汎用印刷プログラム41に要求する代わりに、例えば、MIB(Management Information Baseの略)を使って、プリンタ2から直接、能力情報を取得しても良い。
【0034】
プリンタ2から取得される能力情報には、印刷設定として設定可能なパラメータの情報、実行可能なメンテナンス動作の情報、が含まれる。能力情報には、さらに、例えば、消耗品の残量情報、選択可能なトレイの情報、各トレイに設定されている用紙の用紙情報、対応可能な印刷解像度の情報、が含まれていても良い。また、プリンタ2は、受け付けた印刷ジョブに基づいて画像処理を行って、画像処理後のデータに基づいて印刷する機能、例えば、Nin1等の集約印刷、ウォータマーク等の合成印刷、着色材を節約する節約印刷、を行う機能を有していても良い。プリンタ2にて実行可能な画像処理の機能を有している場合、プリンタ2は、その機能の情報を含む能力情報を渡しても良い。また、プリンタ2は、自身のステータスを示す情報を含む能力情報を渡しても良い。
【0035】
補助プログラム42は、取得した能力情報に基づいて、詳細な印刷設定を受け付ける詳細設定画面をユーザIF13に表示させる(A17)。補助プログラム42によって表示される詳細設定画面には、プリンタ2にて実行可能な範囲のパラメータが選択肢として含まれる。補助プログラム42は、表示中の詳細設定画面へのユーザの操作を受け付け可能である。なお、詳細設定画面にて受け付け可能な印刷設定の項目は多いことから、補助プログラム42は、例えば、複数のタブによって、選択対象の項目の切り替え指示を受け付け可能であっても良い。
【0036】
補助プログラム42は、ユーザの操作に応じて、例えば、メンテナンス動作に関する指示を受け付け可能である。補助プログラム42は、メンテナンス動作に関するユーザの指示を受け付ける画面として、例えば、図4に示すようなメンテナンス設定画面60をユーザIF13に表示させることができる。メンテナンス設定画面60は、設定画面の一例である。
【0037】
図4に示すメンテナンス設定画面60には、チェックシート印刷ボタン61と、ヘッドクリーニングボタン62と、が含まれる。チェックシート印刷ボタン61は、印刷品質を確認するためのチェックシートを、プリンタ2に印刷させる指示の受け付けを選択するボタンである。ヘッドクリーニングボタン62は、プリンタ2にプリントヘッドのクリーニング動作を行わせる指示の受け付けを選択するボタンである。ユーザは、例えば、チェックシート印刷ボタン61への操作に基づいて印刷された、チェックシートの印刷品質に問題があった場合に、ヘッドクリーニングボタン62を操作する。
【0038】
A17にて詳細設定画面としてメンテナンス設定画面60を表示させた状態で、メンテナンス動作に関する操作を受け付けた場合のメンテナンス手順について、図5のシーケンス図を参照して説明する。ユーザは、例えば、メンテナンス設定画面60のチェックシート印刷ボタン61を操作することで(B01)、チェックシートの印刷を選択できる。B01は、受付処理の一例である。チェックシートの印刷は、メンテナンス動作の一例であり、チェックシートの印刷実行の指示は、メンテナンス動作の実行指示の一例である。
【0039】
なお、補助プログラム42は、チェックシート印刷ボタン61が選択された場合、チェックシートの印刷に関する情報画面をさらに表示させても良い。そして、補助プログラム42は、その情報画面にて実行の指示を受け付けた場合に、チェックシートの印刷実行の指示を受け付けたと判断しても良い。
【0040】
補助プログラム42は、チェックシートの印刷指示を受け付けたことに基づいて、チェックシートの印刷実行を指示するコマンドを設定要求に付加する(B02)。設定要求は、例えば、IPPの「Set-Printer-Attributes」命令であり、補助プログラム42の指示に応じて汎用印刷プログラム41からプリンタ2に送信される。補助プログラム42は、設定要求のパラメータとして、プリンタ2にチェックシートの印刷を指示するコマンドを付加することができる。チェックシートの印刷を指示するコマンドは、本体コマンドの一例である。
【0041】
さらに、補助プログラム42は、コマンドを付加した設定要求を汎用印刷プログラム41に渡して、プリンタ2への送信を指示する(B03)。B03は、送信処理の一例である。B03にて補助プログラム42が汎用印刷プログラム41に渡す送信の指示は、送信命令の一例である。
【0042】
汎用印刷プログラム41は、B03の指示を受けて、補助プログラム42から受け取った設定要求、すなわち、コマンドを含む設定要求をプリンタ2に送信する(B04)。汎用印刷プログラム41は、前述したように、OS21を介したIPPを用いて、プリンタ2に設定要求を送信できる。IPPは、汎用のプロトコルの一例である。
【0043】
PC1とプリンタ2との間で規定された汎用のプロトコルであるIPPを利用して、コマンドが関連付けられた設定要求を汎用印刷プログラム41に送信させることで、補助プログラム42は、プリンタ2に送信するための機能を具備する必要が無く、構成がシンプルになる。
【0044】
プリンタ2は、受信した設定要求に、プリンタ2の動作を指示するコマンドが関連付けられている場合に、受け取ったコマンドに対応する動作を実行する(B05)。この場合には、チェックシートの印刷を指示するコマンドが関連付けられていることから、プリンタ2は、チェックシートを印刷する。なお、印刷対象のチェックシートを示すデータは、プリンタ2に記憶されている。
【0045】
補助プログラム42は、B03の指示を行った後、プリンタ2のステータスを取得するための取得要求を生成する(B06)。取得要求は、例えば、IPPの「Get-Printer-Attributes」命令であり、補助プログラム42の指示に応じて汎用印刷プログラム41からプリンタ2に送信される。汎用印刷プログラム41は、取得要求の送信後、プリンタ2からの応答によってステータス情報を取得して、補助プログラム42に渡す。B06では、補助プログラム42は、取得要求のパラメータとして、ステータス情報を含む情報の応答をプリンタ2に指示するコマンドを付加する。
【0046】
補助プログラム42は、生成した取得要求を汎用印刷プログラム41に渡して、プリンタ2への送信を指示する(B11)。汎用印刷プログラム41は、B11の指示を受けて、補助プログラム42から受け取った取得要求をプリンタ2に送信する(B12)。
【0047】
プリンタ2は、受信した取得要求にステータス情報の応答を指示するコマンドが関連付けられていることから、自身のステータスを示すステータス情報を、汎用印刷プログラム41に応答する(B13)。プリンタ2は、B05にて実行を開始したメンテナンス動作、具体的には、チェックシートの印刷、が終了していれば、例えば、その動作の実行結果を示す結果情報を含むステータス情報を応答する。プリンタ2は、B05にて実行を開始したメンテナンス動作が終了していなければ、例えば、その動作の実行経過を示す経過情報を含むステータス情報を応答する。
【0048】
汎用印刷プログラム41は、B13にてプリンタ2からの応答に含まれるステータス情報を、補助プログラム42に渡す(B14)。補助プログラム42は、汎用印刷プログラム41から受け取ったステータス情報に、メンテナンス動作の結果情報が含まれているか否かを判断する。補助プログラム42は、結果情報ではなく経過情報が含まれていると判断した場合、受け取った経過情報に基づいて経過通知画面をユーザIF13に表示させる(B15)。B15は、経過通知処理の一例である。メンテナンス動作の経過情報には、例えば、実行準備中、実行中、停止中、がある。
【0049】
さらに、補助プログラム42は、B11にて、初回の取得要求の送信指示を行ってからの経過時間が、所定のタイムアウト時間を超えたか否かを判断する。所定のタイムアウト時間を超えていなければ、補助プログラム42は、再度、取得要求の送信指示を行う(loop)。補助プログラム42は、タイムアウトするまで、定期的にB11~B14を実行し、プリンタ2から繰り返してステータス情報を取得する。
【0050】
補助プログラム42は、B14にて汎用印刷プログラム41から受け取ったステータス情報に、メンテナンス動作の結果情報が含まれていると判断した場合(break)、受け取った結果情報に基づいて、メンテナンス動作の実行結果を示す結果通知画面をユーザIF13に表示させる(B21)。B21は、結果通知処理の一例である。メンテナンス動作の結果情報が含まれているステータス情報を取得する場合のB14は、結果取得処理の一例である。メンテナンス動作の結果情報には、例えば、実行終了、エラー終了、がある。
【0051】
補助プログラム42は、経過通知画面や結果通知画面を、例えば、ポップアップ画面として表示させる。結果情報をユーザIF13に表示させることで、ユーザは、メンテナンス動作が終了したことを把握でき、次の手順を開始することができる。例えば、チェックシートの印刷が終了したことを通知すれば、ユーザは、印刷されたチェックシートを確認して、印刷の不具合の有無を把握できる。補助プログラム42は、プリンタ2に対してステータス情報の送信を繰り返し要求するので、プリンタ2によるメンテナンス動作の経過情報や結果情報を速やかに通知できる。
【0052】
なお、プリンタ2は、例えば、印刷したチェックシートを読み込み、印刷のずれや欠け等の不具合を把握する機能を有していても良い。その場合、プリンタ2は、結果情報として、不具合の有無の情報や、不具合の箇所や程度を示す情報を応答しても良い。プリンタ2は、例えば、ノズルチェックの結果情報として、不具合の発生しているノズル番号を示す情報を送信しても良い。結果情報に不具合の有無等の詳細な情報が含まれていれば、ユーザは、プリンタ2まで行かなくてもメンテナンス動作の結果を把握できる。
【0053】
補助プログラム42は、結果情報を受信したらステータス情報の定期的な取得を終了し、メンテナンス設定画面60(図4参照)をユーザIF13に表示させる(B31)。なお、補助プログラム42は、経過通知画面や結果通知画面を表示させている間も、メンテナンス設定画面60を表示させたままとしても良い。また、補助プログラム42は、例えば、表示対象のタブを切り替えるユーザの操作を受け付けた場合には、図5のメンテナンス手順を終了して、図2の印刷設定手順に戻る。補助プログラム42は、ユーザの操作に応じて、メンテナンス設定画面60から画面を切り替えてユーザIF13に表示させ、さらに各種の印刷設定を受け付け可能となる。
【0054】
一方、チェックシートの印刷の結果として、インクノズルの目詰まりや色ずれ等の不具合が発見される場合がある。例えば、インクノズルの目詰まりが有った場合、ユーザは、メンテナンス設定画面60のヘッドクリーニングボタン62を選択して、プリンタ2にプリントヘッドのクリーニングを実行させる選択を行うことができる。ヘッドクリーニングボタン62の操作を受け付けた場合、補助プログラム42は、B01のメンテナンス動作の指示を受け付けたと判断して、再度、図5のメンテナンス手順を実行する。
【0055】
B01にてヘッドクリーニングの指示を受け付けた場合、補助プログラム42は、ヘッドクリーニングを示すコマンドを設定要求に付加して(B02)、設定要求の送信指示を汎用印刷プログラム41に渡す(B03)。汎用印刷プログラム41は、コマンドを含む設定要求をプリンタ2に送信する(B04)。プリンタ2は、B04の設定要求に基づいて、プリントヘッドのクリーニング動作を実行する(B05)。
【0056】
つまり、チェックシートの印刷指示を行った後、例えば、チェックシートの印刷の結果に基づいて、ユーザは、プリントヘッドのクリーニングを実行させるか否かの選択を行うことができる。この場合のB01は、選択処理の一例である。チェックシートの印刷は、第1メンテナンス動作の一例である。チェックシートの印刷を指示するコマンドは、第1本体コマンドの一例である。チェックシートの印刷結果を示す情報は、第1結果情報の一例である。プリントヘッドのクリーニングは、第2メンテナンス動作の一例である。プリントヘッドのクリーニングを実行させるコマンドは、第2本体コマンドの一例である。プリントヘッドのクリーニングを実行させるコマンドを含む設定要求をプリンタ2に送信する場合のB04は、連続送信処理の一例である。
【0057】
補助プログラム42は、例えば、チェックシートの印刷の後に、プリンタ2にプリントヘッドのクリーニングを実行させることができる。つまり、2つのメンテナンス動作を連動させることができ、ユーザは、メンテナンス動作を利用し易い。
【0058】
なお、プリンタ2は、ヘッドクリーニングの動作指示では、さらに、クリーニングを行うインクノズルの選択指示やクリーニング強度の指示を受け付け可能であっても良い。その場合、補助プログラム42は、ヘッドクリーニングボタン62の選択を受け付けた後に、クリーニング対象のインクノズルやクリーニング強度の選択を受け付ける画面を表示させて、ユーザの選択を受け付けても良い。そして、補助プログラム42は、B02にて、例えば、ユーザの選択に基づくパラメータを付与したコマンドを付加する。あるいは、補助プログラム42は、ユーザの選択に基づいて、それぞれ異なるコマンドを付加しても良い。
【0059】
図2の印刷設定手順の説明に戻る。メンテナンス手順を終了した後、ユーザは、さらに、各種の詳細な印刷設定を行うことができる(A21)。例えば、タブへの操作を受け付けることで、補助プログラム42は、メンテナンス設定画面60(図4参照)から各種の詳細な印刷設定を受け付ける詳細設定画面へ切り替えて、ユーザIF13に表示させる。そして、補助プログラム42は、印刷に関する各種の設定指示を受け付け可能になる。
【0060】
ユーザは、例えば、メンテナンス設定画面60や詳細設定画面にてOKボタンを操作することで、印刷設定を終了する指示を行うことができる。補助プログラム42は、ユーザによる詳細な設定を終了する指示の入力を受け付けた場合(A22)、メンテナンス設定画面60や詳細設定画面の表示を終了し、受け付けた印刷設定の情報を記憶する(A23)。
【0061】
そして、補助プログラム42は、詳細な印刷設定の受け付け終了を汎用印刷プログラム41に通知する(A25)。汎用印刷プログラム41は、補助プログラム42の通知に基づいて、印刷設定の終了を編集アプリ43に通知する(A26)。補助プログラム42は、印刷設定の受け付け終了を編集アプリ43に通知しても良い。編集アプリ43は、A03にて表示させた印刷設定画面(例えば、図3に示した印刷設定画面D2)をアクティブにし、印刷実行の指示や印刷のキャンセルの指示等のユーザの指示を受け付け可能な状態となる。
【0062】
なお、前述したように、印刷設定画面D2(図3参照)には、補助プログラム42によって用意される画像を表示可能な情報表示欄52が含まれる。また、汎用印刷プログラム41は、情報表示欄52への操作を受け付けた場合、補助プログラム42にその操作の情報を渡す。そこで、補助プログラム42は、情報表示欄52に、例えば、メンテナンス動作の実行指示を受け付け可能な情報画面を表示させ、情報表示欄52へのユーザの指示によって、メンテナンス動作の実行指示を受け付けることができる。補助プログラム42は、情報表示欄52を介して受け付けた場合にも、図5に示した手順によって、メンテナンス動作を実行可能である。
【0063】
次に、印刷実行手順について、図6のシーケンス図を参照して説明する。ユーザは、印刷対象の画像とプリンタ2での印刷設定とを決定した後、編集アプリ43にて印刷実行の指示を入力する(C01)。編集アプリ43は、例えば、図3に示した印刷設定画面D2にて印刷ボタン55への操作を受け付けた場合、汎用印刷プログラム41に対して、選択中の画像の印刷をプリンタ2に行わせる実行指示を、受け付けたと判断する。
【0064】
編集アプリ43は、受け付けた印刷指示の情報を汎用印刷プログラム41に渡す(C02)。汎用印刷プログラム41は、印刷指示の情報として、印刷対象の画像を示す画像データと印刷設定を示す情報と、を編集アプリ43から取得する。
【0065】
汎用印刷プログラム41は、編集アプリ43から取得した情報に基づいて、印刷対象の画像の画像データの形式を中間画像データの形式に変換することで、中間画像データを生成する(C03)。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、印刷対象の画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷対象の画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。
【0066】
なお、汎用印刷プログラム41は、中間画像データの生成前に、指定されたデバイスであるプリンタ2に対応する補助プログラム42を起動して、印刷ジョブの処理を開始したことを通知しても良い。補助プログラム42は、汎用印刷プログラム41から起動された場合、中間画像データを生成する際に利用される各種の指示を示す情報を、必要に応じて、汎用印刷プログラム41に渡すことができる。
【0067】
汎用印刷プログラム41は、中間画像データを生成した後、補助プログラム42を起動する(C05)。補助プログラム42は、汎用印刷プログラム41に要求することで、汎用印刷プログラム41によって生成された中間画像データを取得できる。そして、補助プログラム42は、図2のA23にて記憶した印刷設定に基づいて、汎用印刷プログラム41から受け取った中間画像データや印刷設定の情報を編集する。
【0068】
補助プログラム42は、中間画像データを汎用印刷プログラム41に渡し、汎用印刷プログラム41にラスタライズを要求する(C11)。汎用印刷プログラム41は、中間画像データをラスタライズし、ビットマップデータであるラスタデータを生成する(C12)。さらに、汎用印刷プログラム41は、生成したラスタデータを補助プログラム42に渡す(C13)。これにより、補助プログラム42は、ラスタデータを取得する。
【0069】
なお、汎用印刷プログラム41に代えて補助プログラム42がラスタライズを行っても良い。その場合、補助プログラム42は、印刷の実行指示にて受け取った中間画像データに基づいてラスタライズを実行し、ラスタデータを生成する。補助プログラム42にてラスタライズすれば、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適したラスタデータが生成される可能性が高い。一方、汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、補助プログラム42のプログラムサイズを小さくできる。
【0070】
そして、補助プログラム42は、C13にて取得したラスタデータを必要に応じて加工し、加工済みのラスタデータをPDLデータにエンコードして、印刷データを生成する(C15)。さらに、補助プログラム42は、生成した印刷データを汎用印刷プログラム41に渡し、プリンタ2への送信を指示する(C21)。C21は、プリンタ2に印刷させるための処理であり、印刷処理の一例である。
【0071】
図6のC21にて補助プログラム42が汎用印刷プログラム41に渡す印刷データは、プリンタ2にて印刷可能な形式のデータであればよい。なお、補助プログラム42によって生成されるPDLデータは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
【0072】
汎用印刷プログラム41は、補助プログラム42の指示に応じて、印刷データをプリンタ2に送信し、印刷を指示する(C22)。プリンタ2は、受信した印刷データに基づいて、印刷を実行する(C23)。これにより、編集アプリ43から出力された印刷指示に基づく印刷物が生成される。
【0073】
なお、図6のC21では、印刷データを汎用印刷プログラム41に渡して、汎用印刷プログラム41からプリンタ2に送信させるとしたが、その代わりに、補助プログラム42が、印刷の実行を指示する印刷コマンドと印刷データとをプリンタ2に送信しても良い。補助プログラム42は、例えば、プリンタ2にて実行可能な画像処理に関する設定が印刷設定として含まれる場合、その処理の情報も含む印刷コマンドを生成しても良い。この場合、補助プログラム42は、印刷データの送信完了後に、終了の情報を汎用印刷プログラム41に通知すると良い。
【0074】
以上、詳細に説明したように、本形態の補助プログラム42は、プリンタ2でのメンテナンス動作の実行指示を受け付け、そのメンテナンス動作の実行指示があった場合に、そのメンテナンス動作を実行させるためのコマンドをプリンタ2に送信するための処理を行う。これにより、OS標準の汎用印刷プログラム41が組み込まれており、プリンタベンダによって提供されるプリンタドライバが組み込まれていないPC1であっても、汎用印刷プログラム41からは指示できないプリンタ2に固有のメンテナンス動作を、プリンタ2に実行させることができる。
【0075】
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
【0076】
また、例えば、ユーザIF13に表示される画面の例は、いずれも一例であって、図示の例に限らない。また、図示の各画面中に表示される文言やオブジェクトの形状、背景等は、どのようなものでも良い。また、例えば、図3では1つの情報表示欄52を含む印刷設定画面D2を示したが、情報表示欄52の配置や形状、大きさ、個数等は、この図の例に限らない。また、情報表示欄52は、無くても良い。
【0077】
また、本明細書では、メンテナンス動作として、チェックシートの印刷とプリンタヘッドクリーニングについて説明したが、プリンタ2にて実行可能なメンテナンス動作は、いずれか一方のみでも良いし、これら以外にもさらに有っても良い。また、プリンタ2は、複数のメンテナンス動作を連続して実行することを示す指示を、1つのコマンドとして受け付け可能であっても良い。その場合、補助プログラム42は、メンテナンス手順(図5参照)のB02にて、連続実行を示すコマンドを付加することで、プリンタ2に複数のメンテナンス動作を連続して行わせることができる。
【0078】
また、メンテナンス手順(図5参照)のB04では、コマンドを付加した設定要求を汎用印刷プログラム41に送信させるとしたが、補助プログラム42がコマンドを直接、プリンタ2に送信しても良い。また、補助プログラム42は、プリンタ2から直接、メンテナンス動作の結果を示す情報を受信できても良い。その場合、補助プログラム42は、メンテナンス手順のB06やB11を行う必要はなく、例えば、プリンタ2に要求して、メンテナンス動作の結果情報を受信する。
【0079】
また、結果情報や経過情報の通知は、無くても良い。補助プログラム42は、メンテナンス手順(図5参照)のB03にて、コマンドを付加した設定要求を汎用印刷プログラム41に渡した後、B31に進んで、メンテナンス設定画面60をユーザIF13に表示させるとしても良い。
【0080】
また、実施の形態では、補助プログラム42は、タイムアウトとなるまでステータス情報の取得を繰り返す(メンテナンス手順(図5参照)のB11~B15)としたが、例えば、ステータス情報の取得は、ユーザの操作に基づいて実行しても良い。例えば、補助プログラム42は、ユーザの操作によって結果情報の表示指示を受け付けた場合に、B11に進み、ステータス情報の取得要求の送信指示を汎用印刷プログラム41に渡す、としても良い。また、補助プログラム42は、結果情報を通知するか否かの選択を受け付け可能であっても良い。結果情報を通知しない選択を受け付けた場合、補助プログラム42は、メンテナンス手順のB06~B15を実行しないとしても良い。
【0081】
また、補助プログラム42がプリンタ2の能力情報を取得するタイミングは、図2に示した例に限らない。補助プログラム42は、例えば、印刷設定画面D2(図3参照)の表示前に汎用印刷プログラム41から起動された場合には、プリンタ2の能力情報の取得を要求しても良い。また、補助プログラム42は、印刷実行の指示を受け付けた後に、プリンタ2の能力情報を、再度、取得しても良い。
【0082】
また、汎用印刷プログラム41によって印刷設定画面D2が表示された後に、ユーザの操作によって、OS21を介して、通常使うプリンタが他のプリンタからプリンタ2に変更された場合にも、汎用印刷プログラム41は、補助プログラム42を起動しても良い。その場合も、補助プログラム42は、例えば、情報表示欄52にメンテナンス動作に関する指示を受け付け可能な情報画面を表示させても良い。
【0083】
また、補助プログラム42は、印刷が選択された場合に限らず、例えば、デバイスの設定としてプリンタ2が選択された場合にも起動されても良い。その場合でも、補助プログラム42は、メンテナンス動作の実行指示を受け付け可能な設定画面を表示しても良い。
【0084】
また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフローアプリ(Print workflow)でも良い。
【0085】
また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示されて実行されても良く、または、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
【0086】
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
【0087】
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【0088】
1 PC
2 プリンタ
11 CPU
13 ユーザIF
図1
図2
図3
図4
図5
図6