(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-11
(45)【発行日】2024-11-19
(54)【発明の名称】サポートプログラム
(51)【国際特許分類】
G06F 3/12 20060101AFI20241112BHJP
H04N 1/00 20060101ALI20241112BHJP
B41J 29/38 20060101ALI20241112BHJP
【FI】
G06F3/12 356
G06F3/12 308
G06F3/12 328
G06F3/12 332
G06F3/12 353
G06F3/12 343
G06F3/12 385
G06F3/12 324
G06F3/12 339
H04N1/00 127B
B41J29/38 401
(21)【出願番号】P 2021012776
(22)【出願日】2021-01-29
【審査請求日】2024-01-09
(73)【特許権者】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】山田 和孝
【審査官】佐賀野 秀一
(56)【参考文献】
【文献】特開2020-087273(JP,A)
【文献】特開2018-176629(JP,A)
【文献】特開2015-005142(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/09- 3/12
B41J 29/00- 29/70
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記プリンタは、印刷ジョブの画像データに対して所定の画処理を自動的に行うか否かを示す自動処理情報を記憶し、さらに前記プリンタは、印刷ジョブを受信した際、前記自動処理情報が前記所定の画処理を行うことを示す場合に、前記印刷ジョブの前記画像データに対して前記所定の画処理を行い、前記所定の画処理後の前記画像データに基づいて印刷を行い、前記自動処理情報が前記所定の画処理を行わないことを示す場合に、前記所定の画処理を行わず、前記印刷ジョブの前記画像データに基づいて印刷を行い、
前記コンピュータに、
前記プリンタに
あらかじめ記憶されている前記自動処理情報であって、前記プリンタが前記印刷ジョブの前記画像データに対して前記所定の画処理を自動的に行うか否かを示す前記自動処理情報を取得する
自動処理情報取得処理
であって、前記所定の画処理は、前記印刷ジョブに設定された印刷設定とは無関係に実行される画処理である、前記自動処理情報取得処理を実行させ、
さらに前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、
前記印刷指示に基づく前記印刷ジョブに設定された前記印刷設定を取得する印刷設定取得処理と、
前記
自動処理情報取得処理にて取得した前記自動処理情報が前記所定の画処理を行うことを示す場合に、前記自動処理情報
によって行うことが示される前記所定の画処理であって、前記印刷ジョブに設定された前記印刷設定とは無関係に実行される前記所定の画処理と
、前記印刷設定取得処理にて取得した前記印刷設定であって、前記印刷指示に
基づく前記印刷ジョブに設定された前記印刷設定と
、に基づく通知を、前記情報処理装置のユーザインタフェースを用いて行う通知処理
と、
を実行させる、
ことを特徴とするサポートプログラム。
【請求項2】
請求項1に記載するサポートプログラムであって、
前記
自動処理情報取得処理では、
前記プリンタに前記自動処理情報の取得要求を送信し、前記プリンタから前記自動処理情報を受信することで前記自動処理情報を取得し、前記プリンタは、前記情報処理装置から前記取得要求を受信したことに応じて、前記自動処理情報を前記情報処理装置に送信する、
ことを特徴とするサポートプログラム。
【請求項3】
請求項1または請求項2に記載するサポートプログラムであって、
さらに前記コンピュータに、
前記印刷指示があった場合、
前記印刷指示による前記印刷設定に前記所定の画処理を行う設定がなされている場合、前記通知処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項4】
請求項1から請求項3のいずれか1つに記載するサポートプログラムであって、
前記通知処理では、
前記自動処理情報
によって行うことが示される前記所定の画処理と
、前記印刷指示
に基づく前記印刷ジョブに設定された前記印刷設定と
、に基づき、前記印刷される画像を示すプレビュー画像を前記ユーザインタフェースを用いて表示することにより、前記通知を行う、
ことを特徴とするサポートプログラム。
【請求項5】
請求項1から請求項4のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記印刷指示があった場合に、
前記通知処理による前記通知が実行された場合に、前記印刷設定の変更を前記ユーザインタフェースを用いて受け付ける変更処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項6】
請求項1から請求項5のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記通知処理にて前記通知を行っている期間に、前記印刷指示に基づく
前記印刷ジョブをキャンセルするか否かの選択を、前記ユーザインタフェースを用いて受け付け、キャンセルの選択を受け付けた場合、前記印刷ジョブをキャンセルするキャンセル処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項7】
請求項1から請求項6のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
印刷設定の入力操作を受け付ける設定画面を、前記情報処理装置のユーザインタフェースを用いて表示する設定画面表示処理を実行させ、
さらに前記コンピュータに、
前記設定画面表示処理による前記設定画面の表示に基づいて、前記
自動処理情報取得処理を実行させ、前記
自動処理情報取得処理にて取得した前記自動処理情報を前記情報処理装置のメモリに保存し、
さらに前記コンピュータに、
前記印刷指示があった場合、
前記メモリに保存された前記自動処理情報が前記所定の画処理を行うことを示す場合に、前記通知処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項8】
請求項1から請求項6のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記印刷指示があったことに基づいて、前記
自動処理情報取得処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項9】
請求項1から請求項8のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
ユーザの識別情報を取得する識別情報取得処理を実行させ、前記自動処理情報は、前記識別情報ごとに有り、前記識別情報と対応付けられており、
前記
自動処理情報取得処理では、
前記識別情報取得処理にて取得した前記識別情報に対応する前記自動処理情報を取得する、
ことを特徴とするサポートプログラム。
【請求項10】
請求項1から請求項9のいずれか1つに記載するサポートプログラムであって、
前記
自動処理情報取得処理では、
前記所定の画処理としてウォータマークを合成する画処理を行うか否かを示す前記自動処理情報を取得する、
ことを特徴とするサポートプログラム。
【請求項11】
請求項1から請求項9のいずれか1つに記載するサポートプログラムであって、
前記
自動処理情報取得処理では、
前記所定の画処理として複数のページを縮小して1枚の用紙に含める集約を行う画処理を行うか否かを示す前記自動処理情報を取得する、
ことを特徴とするサポートプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
【背景技術】
【0002】
プリンタの技術として、あらかじめ強制的な印刷設定の入力を受け付け、パーソナルコンピュータ等の情報処理装置から印刷ジョブを受信した場合に、その印刷設定に従った印刷を行う技術が知られている。例えば特許文献1には、カラー印刷を強制的に白黒印刷に変更する強制白黒印刷機能についての、有効ないし無効の入力を受け付けるプリンタが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、プリンタメーカによって提供されるプリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
【0005】
情報処理装置でも、OS標準の印刷プログラムやプリンタドライバを利用して、印刷設定を入力できる。そのため、ユーザは、例えばプリンタにおいて強制的な2in1印刷が設定されていることを知らずに、情報処理装置において2in1印刷を設定してしまう場合がある。この場合、情報処理装置でもプリンタでも2in1印刷に関する画処理が行われることになり、結果としてユーザの意図しない4in1印刷が行われてしまう。この問題に対して、プリンタドライバであれば、プリンタに現在設定されている強制的な印刷設定のようなプリンタ固有のカスタム設定を扱うことが可能であり、例えばプリンタに現在設定されている強制的な印刷設定を通知できる。しかしながら、OS標準の印刷プログラムでは、プリンタ固有のカスタム設定を扱っておらず、上述したようなユーザの意図しない画処理が生じやすい。
【0006】
本明細書は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置から、強制的な印刷設定を入力可能なプリンタに印刷を行わせる場合に、ユーザの意図しない印刷が行われる可能性を低減する技術を開示する。
【課題を解決するための手段】
【0007】
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記プリンタは、印刷ジョブの画像データに対して所定の画処理を自動的に行うか否かを示す自動処理情報を記憶し、さらに前記プリンタは、印刷ジョブを受信した際、前記自動処理情報が前記所定の画処理を行うことを示す場合に、前記印刷ジョブの前記画像データに対して前記所定の画処理を行い、前記所定の画処理後の前記画像データに基づいて印刷を行い、前記自動処理情報が前記所定の画処理を行わないことを示す場合に、前記所定の画処理を行わず、前記印刷ジョブの前記画像データに基づいて印刷を行い、前記コンピュータに、前記プリンタにおける前記自動処理情報を取得する取得処理を実行させ、さらに前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記取得処理にて取得した前記自動処理情報が前記所定の画処理を行うことを示す場合に、前記自動処理情報と前記印刷指示による印刷設定とに基づく通知を、前記情報処理装置のユーザインタフェースを用いて行う通知処理を実行させる、ことを特徴としている。
【0008】
本明細書に開示されるサポートプログラムによれば、情報処理装置は、プリンタに設定されている自動処理情報を取得し、印刷指示があった際、プリンタから取得した自動処理情報と印刷設定とに基づく通知を行う。これにより、ユーザは印刷指示に基づく印刷の画像を認識することができ、二重に画処理を行ってしまう等の、ユーザの意図しない印刷を抑制できる。
【0009】
上記サポートプログラムが組み込まれた情報処理装置、サポートプログラムを格納するコンピュータにて読取可能な記憶媒体、及びサポートプログラムの機能を実現するための制御方法も、新規で有用である。
【発明の効果】
【0010】
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置から、強制的な印刷設定を入力可能なプリンタに印刷を行わせる場合に、ユーザの意図しない印刷が行われる可能性を低減する技術が実現される。
【図面の簡単な説明】
【0011】
【
図1】PCの電気的構成の概略を示すブロック図である。
【
図3】各プログラムによる印刷動作の手順の例を示すシーケンス図である。
【
図5】確認処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本形態のサポートプログラムを利用するパーソナルコンピュータ(以下、「PC」とする)について、添付図面を参照しつつ詳細に説明する。本明細書は、印刷機能を有するプリンタに接続されるPCにて実行されるサポートプログラムを開示する。
【0013】
本形態のPC1は、
図1に示すように、CPU11と、メモリ12と、を含むコントローラ10を備えている。PC1は、情報処理装置の一例である。CPU11は、コンピュータの一例である。また、PC1は、ユーザインタフェース(以下、「ユーザIF」とする)13と、通信インタフェース(以下、「通信IF」とする)14と、を備え、これらがコントローラ10に電気的に接続されている。なお、
図1中のコントローラ10は、PC1の制御に利用されるハードウェアやソフトウェアを纏めた総称であって、実際にPC1に存在する単一のハードウェアを表すとは限らない。
【0014】
CPU11は、メモリ12から読み出したプログラムに従って、また、ユーザの操作に基づいて、各種の処理を実行する。メモリ12には、各種のアプリケーションプログラム(以下、「アプリ」とする)を含む、各種のプログラムや各種のデータが記憶されている。メモリ12は、各種の処理が実行される際の作業領域としても利用される。CPU11が備えるバッファも、メモリの一例である。なお、メモリ12の一例は、PC1に内蔵されるROM、RAM、HDD等に限らず、CPU11が読み取り可能かつ書き込み可能なストレージ媒体、例えば、CD-ROM、DVD-ROM等の記録媒体であっても良い。
【0015】
ユーザIF13は、ユーザに情報を報知するための画面を表示するハードウェアと、ユーザによる操作を受け付けるハードウェアと、を含む。なお、ユーザIF13は、情報を表示可能なディスプレイと、入力受付機能を有するマウスやキーボード等と、の組であっても良いし、表示機能と入力受付機能とを備えるタッチパネルであっても良い。
【0016】
通信IF14は、プリンタ2等の外部装置と通信を行うためのハードウェアを含む。通信IF14の通信規格は、イーサネット(登録商標)、Wi-Fi(登録商標)、USBなどである。PC1は、複数の通信規格に対応する複数の通信IF14を備えていてもよい。
【0017】
PC1のメモリ12には、
図1に示すように、汎用印刷プログラム41を含むオペレーティングシステム(以下、「OS」とする)21と、補助プログラム42と、編集アプリ43と、が記憶されている。補助プログラム42は、サポートプログラムの一例である。編集アプリ43は、アプリケーションプログラムの一例である。OS21は、例えば、Windows(登録商標)、macOS(登録商標)、Linux(登録商標)、iOS(登録商標)、Android(登録商標)である。
【0018】
汎用印刷プログラム41は、ユーザの指示に基づいて、プリンタ2等の各種のプリンタに印刷を実行させるためのOS標準のプログラムである。本形態の汎用印刷プログラム41は、印刷対象の画像データに基づいて、中間画像データを生成する機能を含むプログラムである。中間画像データは、例えば、XPSデータである。
【0019】
汎用印刷プログラム41は、各種のプリンタのベンダによって提供される複数種類のモデルのプリンタが共通に利用できる機能をサポートしている。汎用印刷プログラム41は、各種のプリンタが固有に備える機能の全てに対応するものではなく、サポートする機能は汎用的なものに限られる。
【0020】
補助プログラム42は、汎用印刷プログラム41の処理に付随してOS21からの指示に基づいて処理を実行するプログラムまたはプログラム群であり、対象のハードウェアの制御をサポートするアプリである。本形態の補助プログラム42は、PC1に接続されているプリンタ2のモデルに対応するものであり、例えば、汎用印刷プログラム41を使用してプリンタ2に印刷を実行させる指示を受け付けた場合に、汎用印刷プログラム41から起動される。補助プログラム42は、例えば、ハードウェアサポートアプリ(略称、HSA)と呼ばれる。
【0021】
補助プログラム42は、汎用印刷プログラム41から複数種の命令を受け付け可能であり、受け付けた命令に基づいて、各種の処理を実行する。なお、補助プログラム42は、それぞれが実行命令を受け付ける複数のプログラムの組み合わせであっても良いし、1つのプログラムであって命令に応じてそれぞれ異なる処理を実行できるプログラムであっても良い。
【0022】
補助プログラムは、プリンタのベンダによってプリンタのタイプごとに用意されるプログラムであっても良い。例えば、インクジェットプリンタ用の補助プログラムやレーザプリンタ用の補助プログラムが、それぞれ用意されても良い。PC1のOS21は、例えば、新たなプリンタがPC1に接続された場合、接続されたプリンタのタイプに応じて、適切な補助プログラムをサーバ等からダウンロードして自装置に組み込む。そして、OS21は、組み込んだ補助プログラムの識別情報を新たに接続されたプリンタのプリンタ情報に対応付けて、メモリ12に記憶させる。なお、プリンタのタイプごとに限らず、プリンタのモデルごとやプリンタのモデルのシリーズごとに用意される補助プログラムが有っても良い。
【0023】
編集アプリ43は、例えば、画像データや文書データの作成や編集を行うためのアプリである。編集アプリ43は、例えば、マイクロソフト(登録商標)製のワードやパワーポイントなどであっても良いし、プリンタ2のベンダから提供されるアプリであっても良い。編集アプリ43は、プリンタ2に所定の動作を行わせる指示を含むユーザ操作を受け付ける。具体的には、編集アプリ43は、ユーザIF13を介して、例えば、プリンタ2に印刷を実行させる印刷実行指示を受け付ける。
【0024】
本形態のプリンタ2は、印刷機能を有する装置である。PC1は、通信IF14を介して、プリンタ2と通信可能である。プリンタ2は、例えば、PC1等から印刷データを受信して、受信した印刷データに基づく印刷を実行する。
【0025】
本形態のプリンタ2は、自動的に画処理を行う処理機能を備えており、プリンタ2のメモリに自動処理情報51を記憶している。自動処理情報51は、プリンタ2が受け取った印刷ジョブの画像データに対して、自動的に画処理を行うか否かを示す情報である。自動処理情報51にて画処理を行うことが示される場合、プリンタ2は、受け取った印刷ジョブの画像データに対して、プリンタ2の機能を利用して自動的に画処理を行い、画処理後の画像データに基づいて印刷を実行する。この場合、プリンタ2は、印刷ジョブを投入するユーザの意図や印刷ジョブに設定された印刷設定とは無関係に、印刷ジョブの画像データに対して画処理を実行する。一方、自動処理情報51にて画処理を行わないことが示される場合、プリンタ2は、画処理を行わず、受け取った印刷ジョブの画像データに基づいて印刷を実行する。
【0026】
プリンタ2が備える画処理の機能としては、例えば、合成機能、集約機能、モノクロ化機能、がある。合成機能は、受け取った印刷ジョブの画像データに、ウォータマーク等の所定の画像を合成する機能である。プリンタ2は、合成機能で用いるウォータマーク等の画像を、あらかじめプリンタ2のメモリに記憶している。集約機能は、受け取った印刷ジョブの画像データに含まれる複数ページの画像を縮小して、1枚の用紙に含まれるように配置する機能である。モノクロ化機能は、受け取った印刷ジョブの画像データに含まれるカラー情報を削除して、モノクロ画像に変換する機能である。なお、本形態のプリンタ2は、複数種類の画処理の機能を備えていてもよい。
【0027】
本形態のプリンタ2は、自動処理情報51として、例えば、
図2に示すように、プリンタ2を利用するユーザを識別する識別情報に対応付けて、画処理の情報を記憶している。プリンタ2は、受け取った印刷ジョブに含まれるユーザの識別情報と、自動処理情報51と、に基づいて、自動的に画処理を行うか否か、および、行う場合にはどの処理を行うか、を決定する。自動処理情報51として、ユーザごとに異なる自動処理を設定可能であることで、ユーザごとに所定の画処理を強制的に実行させることができる。
【0028】
プリンタ2の自動処理情報51は、例えば、プリンタ2の管理者によってあらかじめ設定される。本形態のプリンタ2は、例えば、管理者による操作パネルへの入力によって、自動処理情報51の入力をあらかじめ受け付け、プリンタ2のメモリに記憶する。プリンタ2は、例えば、管理者用のパスワード等と組み合わせて自動処理情報51の指定を受け付け、当該パスワードが入力されない限り、自動処理情報51の変更を受け付けないとしても良い。
【0029】
なお、自動処理情報51には、ゲストユーザに対応する画処理の情報も含まれていても良い。その場合、プリンタ2は、自動処理情報51に識別情報が記憶されていないユーザの印刷ジョブを受信した場合、または、受信した印刷ジョブにユーザの識別情報が含まれていない場合、ゲストユーザの印刷ジョブであるとして、画処理を決定する。あるいは、プリンタ2は、自動処理情報51に識別情報が含まれていないユーザの印刷ジョブの印刷を行わないとしても良い。
【0030】
次に、本形態の補助プログラム42の動作を含む印刷の手順について、
図3のシーケンス図を参照して説明する。
図3は、編集アプリ43等の印刷指示を受け付けるアプリにて、汎用印刷プログラム41を使用してプリンタ2に印刷を行わせる場合であって、プリンタ2に対応する補助プログラム42がPC1に組み込まれている場合の動作について示している。
【0031】
なお、本形態における処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
【0032】
編集アプリ43は、ユーザの指示に基づいて、文章や図表等の作成や編集を受け付ける。編集アプリ43は、選択中の文章等の印刷に関する指示を受け付けると(A01)、ユーザによる指示を受け付けるための印刷画面をユーザIF13に表示する(A02)。編集アプリ43は、印刷画面にて、例えば、印刷実行指示、基本的な印刷設定の指示、詳細な印刷設定の受け付け開始の指示を受け付ける。
【0033】
編集アプリ43は、表示中の印刷画面にてプリンタ2が選択された状態で、詳細な印刷設定の受け付け開始の指示を受け付けた場合(A03)、受け付けた詳細設定指示の情報をOS21に渡す。OS21は、汎用印刷プログラム41を使用する印刷に関する詳細設定の指示を受け付けた場合、汎用印刷プログラム41を実行させ、汎用印刷プログラム41に詳細な印刷設定の受け付け開始指示を渡す(A04)。汎用印刷プログラム41は、詳細な印刷設定の受け付け開始指示を受け付けると、選択中のプリンタであるプリンタ2に対応する補助プログラム42に詳細な印刷設定の受け付け実行指示を渡す(A05)。
【0034】
補助プログラム42は、汎用印刷プログラム41からの実行指示に基づいて動作を開始し、詳細な印刷設定の入力操作を受け付けるための設定画面をユーザIF13に表示する(A06)。A06は、設定画面表示処理の一例である。補助プログラム42は、例えば、
図4に示すように、プリンタ2のモデル情報に基づいて、対応可能な詳細設定を受け付ける設定画面100を表示し、ユーザの操作を受け付ける。
【0035】
さらに、補助プログラム42は、PC1にログイン中のユーザを示すユーザIDを取得する(A07)。ユーザIDは、例えば、ユーザ名であり、ユーザを識別する識別情報である。A07は、識別情報取得処理の一例である。補助プログラム42は、例えば、OS21から、ユーザIDを取得してもよいし、A07にてユーザに問い合わせてユーザIDの入力を受け付けてもよい。
【0036】
補助プログラム42は、A06にて設定画面100を表示した場合、通信IF14を介して、プリンタ2に対して機能情報を要求する取得要求を送信する(A11)。補助プログラム42は、A07にて取得したユーザIDの情報を付加してA11の取得要求を送信する。
【0037】
プリンタ2は、A11の取得要求に応じて、取得要求に付加されたユーザIDに対応する自動処理の情報を自動処理情報51から読み出し、自動処理の情報を含む機能情報をPC1に送信する。これにより、補助プログラム42は、プリンタ2から機能情報を受信する(A12)。補助プログラム42は、A12にて受信した機能情報から、ログイン中のユーザに対応して設定されている自動処理の情報を取得できる。A12は、取得処理の一例である。さらに、補助プログラム42は、ログイン中のユーザに対応する自動処理の情報を、メモリ12の補助プログラム42にて使用可能な領域に記憶する(A21)。
【0038】
なお、補助プログラム42とプリンタ2との通信は、例えば、MIB(Management Information Baseの略)を使って、補助プログラム42が直接プリンタ2と通信しても良いし、OS21を介して行っても良い。OS21を介して行う場合、補助プログラム42とプリンタ2とは、例えば、IPP(internet printing protocolの略)等のOS21の通信規約に応じた通信を行う。
【0039】
補助プログラム42は、表示中の設定画面100へのユーザの操作によって、各種の印刷設定の指定を受け付ける。補助プログラム42は、設定画面100にて詳細設定を終了する指示を受け付けた場合には、設定画面100の表示を終了して、汎用印刷プログラム41に終了通知を渡す。なお、補助プログラム42は、終了する前に、ユーザによって指示された印刷設定に関する情報を、メモリ12の補助プログラム42にて使用可能な領域に記憶しても良い。補助プログラム42からの終了通知を受けて、汎用印刷プログラム41は、編集アプリ43に終了通知を渡す。
【0040】
編集アプリ43は、汎用印刷プログラム41からの終了通知を受けて、A02にて表示した印刷画面へのユーザの操作を受け付け可能な状態となる。そして、編集アプリ43は、印刷画面にてユーザによる印刷実行指示を受け付けると(A31)、印刷指示を汎用印刷プログラム41に渡す(A32)。汎用印刷プログラム41は、印刷指示にて、印刷対象の画像の画像データを示す情報と印刷設定を示す情報と、を取得する。編集アプリ43から汎用印刷プログラム41に渡される情報に含まれる印刷設定は、印刷の指示を行うユーザによって指定された印刷設定であり、自動処理情報51に基づいてプリンタ2にて実行される自動的な画処理の情報は含まれない。
【0041】
汎用印刷プログラム41は、受け取った印刷指示に含まれる画像データの形式を中間画像データの形式に変換することで中間画像データを生成し(A33)、中間画像データを含む印刷ジョブを生成する。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷指示に含まれる画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。
【0042】
汎用印刷プログラム41は、さらに、補助プログラム42に実行指示を出力し(A34)、補助プログラム42を動作させる。実行指示では、生成された中間画像データと印刷設定の情報とが補助プログラム42に渡される。つまり、補助プログラム42は、A34にて、中間画像データをOS21から取得する。
【0043】
さらに、補助プログラム42は、確認処理を実行する(A35)。確認処理は、プリンタ2にて自動処理が設定されている場合に、設定されている自動処理の情報をユーザに通知することで、ユーザに印刷結果を確認してもらう処理である。確認処理の手順について、
図5のフローチャートを参照して説明する。確認処理は、補助プログラム42による処理であり、PC1のCPU11によって実行される。
【0044】
確認処理では、CPU11は、
図3のA34にて汎用印刷プログラム41から受け取った印刷設定の情報を取得する(S101)。そして、CPU11は、メモリ12に記憶されている自動処理の情報を読み出す(S102)。
【0045】
なお、前述した
図3のA03の指示、すなわち、編集アプリ43にて詳細な印刷設定の指示を受け付けていない場合、補助プログラム42は、A11~A12を実行していない可能性がある。この場合、確認処理の実行を開始した時点では、メモリ12に自動処理の情報が記憶されていない。補助プログラム42は、確認処理の実行開始時にメモリ12に自動処理の情報が記憶されていない場合、確認処理の開始後にプリンタ2と通信して、プリンタ2から自動処理の情報を取得する。印刷指示を受け付けた後に自動処理の情報を取得すれば、最新の自動処理情報51に基づいた自動処理を行うことができる。一方、詳細設定を受け付ける設定画面100の表示に基づいて自動処理の情報を取得してメモリ12に保存し、印刷指示に基づいてメモリ12から自動処理情報51を読み出せば、印刷指示を受け付けたタイミングで通信する場合と比較して、印刷指示を受け付けた後の処理を早期に終えることができる。
【0046】
そして、CPU11は、S101にて取得した印刷設定と、S102にて読み出した自動処理の情報とに基づいて、重複する設定項目への設定が含まれるか否かを判断する(S103)。例えば、
図2に示した例にて、ログイン中のユーザがユーザBであれば、自動処理として、2in1の自動処理が設定されている。2in1は、集約の項目への設定である。そして、このユーザが、
図4に示した設定画面100にて2in1等の集約の項目への設定を含む印刷ジョブの印刷指示を行った場合、自動処理と印刷設定とのいずれにも集約の項目への設定が含まれることになる。この場合、CPU11は、S103にてYESと判断する。
【0047】
重複する設定項目が設定されていると判断した場合(S103:YES)、CPU11は、印刷設定と自動処理の情報とに基づいて、プレビュー画像を生成する(S111)。そして、CPU11は、生成したプレビュー画像を含むプレビュー画面をユーザIF13に表示させる(S112)。S112は、通知処理の一例である。
【0048】
プレビュー画面の例を
図6に示す。
図6に示すプレビュー画面60は、印刷設定と自動処理とのいずれにも2in1が設定されている場合の例である。プレビュー画面60には、プレビュー画像61と、印刷ボタン62と、印刷キャンセルボタン63と、印刷設定変更ボタン64と、が含まれる。自動処理情報51に含まれる自動処理は、汎用印刷プログラム41を介さずに実行される処理であることから、印刷設定と自動処理とのいずれにも2in1が設定されている場合、このまま印刷を実行すると、
図6のプレビュー画像61に示すように、元の画像データを4in1した画像が印刷される。自動処理による処理後のプレビュー画像61を表示することで、ユーザは、PC1のユーザIF13にて印刷イメージを確認できる。
【0049】
CPU11は、表示中のプレビュー画面60にて、印刷ボタン62または印刷キャンセルボタン63または印刷設定変更ボタン64への操作を受け付ける。CPU11は、表示中のプレビュー画面60にて、印刷ボタン62への操作を受け付けたか否かを判断する(S113)。印刷ボタン62への操作を受け付けていないと判断した場合(S113:NO)、CPU11は、印刷キャンセルボタン63への操作を受け付けたか否かを判断する(S114)。印刷キャンセルボタン63への操作を受け付けていないと判断した場合(S114:NO)、CPU11は、印刷設定変更ボタン64への操作を受け付けたか否かを判断する(S115)。印刷設定変更ボタン64への操作を受け付けていないと判断した場合(S115:NO)、CPU11は、いずれかのボタンへの操作を受け付けるまで待機する。
【0050】
プレビュー画面60にて印刷ボタン62への操作を受け付けたと判断した場合(S113:YES)、または、印刷設定と自動処理の設定とが重複していないと判断した場合(S103:NO)、CPU11は、印刷すると決定して(S121)、確認処理を終了し、
図3に示した手順に戻る。印刷指示による印刷設定と自動処理情報51に基づく画処理とが重複していない場合、二重の画処理が行われることはない。本形態では、不要な通知を行うことによるユーザの煩わしさを回避する。なお、ログイン中のユーザに対応する自動処理が設定されていない場合にも、CPU11は、S103にてNOと判断する。
【0051】
また、印刷キャンセルボタン63への操作を受け付けたと判断した場合(S114:YES)、CPU11は、印刷をキャンセルすると決定して(S122)、確認処理を終了し、
図3に示した手順に戻る。プレビュー画像61を表示している期間において印刷ジョブのキャンセルを受け付けることで、ユーザの意図しない印刷を回避できる。
【0052】
一方、印刷設定変更ボタン64への操作を受け付けたと判断した場合(S115:YES)、CPU11は、
図4に示した設定画面100をユーザIF13に表示させ(S123)、設定画面100への入力を受け付ける。S123は、変更処理の一例である。
【0053】
そして、CPU11は、設定画面100にてOKボタンへの操作を受け付けたか否かを判断する(S124)。OKボタンへの操作を受け付けていないと判断した場合(S124:NO)、CPU11は、OKボタンへの操作を受け付けるまでユーザの操作を受け付ける。OKボタンへの操作を受け付けたと判断した場合(S124:YES)、CPU11は、表示中の設定画面100に基づいて、印刷設定を変更する(S125)。さらに、CPU11は、S111に戻り、変更後の印刷設定と自動処理の情報とに基づいて、プレビュー画像を再生成して表示する。プレビュー画像61の表示に伴って印刷設定の変更を受け付けることで、ユーザの意図しない印刷を低減できる。
【0054】
図3の説明に戻る。補助プログラム42は、確認処理にて印刷を実行すると決定した場合(alt:〔印刷〕)、A34にてOS21から受け取った中間画像データに基づいて、印刷データを生成する(A41)。A41にて生成される印刷データは、プリンタ2にて自動処理をした印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。
【0055】
プリンタ2に対応する補助プログラム42にて印刷データを生成することで、汎用印刷プログラム41にて印刷データを生成する場合に比較してプリンタ2の処理の自由度を大きくでき、あるいは、プリンタ2の処理負荷を小さくできる。
【0056】
なお、補助プログラム42が印刷データを生成する代わりに、汎用印刷プログラム41が印刷データの生成を行っても良い。つまり、補助プログラム42は、中間画像データと、印刷実行の情報と、を汎用印刷プログラム41に渡しても良い。汎用印刷プログラム41は、補助プログラム42から受け取った中間画像データに基づいて印刷データを生成し、生成した印刷データを補助プログラム42に渡しても良い。
【0057】
汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データであり、例えば、PWGRasterデータ、または、PDFデータである。汎用印刷プログラム41によって印刷データを生成するとすれば、補助プログラム42の処理が少なく、処理時間増大の回避が見込まれ、また、補助プログラム42のプログラムサイズが抑えられる。ただし、この場合には、プリンタ2に、汎用印刷プログラム41によって生成された印刷データに対する自動処理をして印刷する能力が、備わっている必要がある。
【0058】
さらに、補助プログラム42は、生成した印刷データを、印刷の実行を指示する印刷コマンドとともにプリンタ2に送信する(A42)。印刷データと印刷コマンドとを受信したプリンタ2は、受信した印刷コマンドに基づいて、印刷データの画像の印刷を実行する(A43)。このとき、プリンタ2は、前述したように、自動処理情報51に基づいて、自動的に画処理を行う。これにより、印刷物が生成される。
【0059】
補助プログラム42は、A42にてプリンタ2に印刷データを送信した後、印刷データの送信を終了したことを汎用印刷プログラム41に通知する。これにより、汎用印刷プログラム41は、A32にて受け取った印刷指示に基づく印刷ジョブの処理を終了する。
【0060】
なお、プリンタ2への印刷データ等の送信は、汎用印刷プログラム41が行っても良い。つまり、補助プログラム42は、生成した印刷データを、プリンタ2を送信先としてPC1から送信されるように、汎用印刷プログラム41に渡しても良い。汎用印刷プログラム41は、補助プログラム42から受け取った印刷データをプリンタ2に送信する。
【0061】
また、プリンタ2は、中間画像データをラスタライズする機能を有していても良い。プリンタ2がラスタライズの機能を有している場合には、補助プログラム42は、印刷対象の画像の印刷データを生成することなく、印刷対象の画像の中間画像データを含む印刷コマンドをプリンタ2に送信しても良い。
【0062】
一方、確認処理にて印刷をキャンセルすると決定した場合(alt:〔キャンセル〕)、補助プログラム42は、印刷ジョブをキャンセルする通知を、汎用印刷プログラム41に渡す(A44)。A44は、キャンセル処理の一例である。これにより、汎用印刷プログラム41は、A32にて受け取った印刷指示に基づく印刷ジョブをキャンセルし、印刷の処理を終了する。
【0063】
以上、詳細に説明したように、本形態の補助プログラム42によれば、PC1は、プリンタ2に記憶される自動処理情報51に基づく自動処理の情報を取得し、印刷指示があった際、取得した自動処理の情報とユーザによる印刷設定とに基づく通知を行う。これにより、ユーザは印刷指示に基づく印刷イメージを認識することができ、二重に画処理を行ってしまう等の、ユーザの意図しない印刷を抑制できる。
【0064】
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。従って、本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
【0065】
また、例えば、PC1は、プリンタ2に限らず、PC1と通信可能なサーバ等から自動処理情報51を取得しても良い。例えば、PC1にプリンタ2とサーバとが接続され、当該サーバがプリンタ2の自動処理情報51を有している構成であっても良い。その場合、補助プログラム42は、
図3のA11やA12にて、プリンタ2の自動処理情報51をそのサーバに対して要求し、取得すればよい。
【0066】
また、図示の表示画面はいずれも一例であり、これに限らない。例えば、表示画面に表示される各画像や各ボタンの配置や数は、図示の例に限らない。また、実施の形態では、プレビュー画面にて印刷設定の変更指示やキャンセルの指示を受け付けるとしたが、受け付けなくても良い。
【0067】
また、実施の形態では、自動処理の設定の項目と印刷設定の項目とが重複している場合にプレビュー表示をするとしたが、これに限らない。例えば、何らかの自動処理が設定されている場合には、プレビュー表示するとしても良い。また、例えば、自動処理が設定されていない場合や設定が重複していない場合でもプレビュー画面を表示するとしても良い。また、実施の形態では、通知処理としてプレビュー画像61を含むプレビュー画面60の例を示したが、画像を含まない通知処理であっても良い。例えば、自動処理の内容を文字で表示したり音声で通知しても良い。
【0068】
また、実施の形態にて例示した自動処理の種類は、一例であり、これに限らない。例えば、プリンタ2の備える自動処理機能は、1つのみでも良い。その場合、自動処理情報51には、ユーザごとに自動処理を実行するか否かを示す情報のみが記憶されていても良い。また、実施の形態では、自動処理情報51として、ユーザIDに関連付けて自動処理の情報を記憶するとしたが、例えば、全てのユーザに対して一律に自動処理を行う設定であっても良い。この場合、自動処理の判断にユーザの情報は不要であり、補助プログラム42は、ユーザIDを取得しなくても良い。このようにすれば、プリンタ2を使用する印刷全てに共通の自動処理を追加できる。また、自動処理情報51としてユーザごとの情報が不要であり、自動処理の処理内容を示す情報のみを有していれば良く、使い勝手がよい。
【0069】
また、例えば、自動処理情報51としてユーザごとの情報が記憶されている場合、補助プログラム42からユーザIDの情報を付加した取得要求を送信し、プリンタ2がそのユーザの情報を応答するとしたが、これに限らない。例えば、プリンタ2は、全てのユーザの自動処理情報51を応答し、補助プログラム42が、受信した自動処理情報51からログインユーザの情報を抽出するとしてもよい。この場合、取得要求にユーザIDの情報を付加する必要はなく、補助プログラム42は、ユーザIDの取得を自動処理情報51の受信後に行ってもよい。
【0070】
また、A11にて補助プログラム42が取得する機能情報には、自動処理情報51だけでなく、例えば、プリンタ2の能力に関する情報が含まれていても良い。そして、補助プログラム42は、プリンタ2から取得した各種の情報に基づいて、ユーザの設定を受け付ける画面を表示しても良い。
【0071】
また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフロー アプリ(Print workflow)でも良い。
【0072】
また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示されて実行されても良く、または、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
【0073】
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
【0074】
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【0075】
1 PC
2 プリンタ
11 CPU
12 メモリ
13 ユーザIF