(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-25
(45)【発行日】2024-12-03
(54)【発明の名称】サポートプログラム
(51)【国際特許分類】
G06F 3/12 20060101AFI20241126BHJP
H04N 1/00 20060101ALI20241126BHJP
B41J 29/38 20060101ALI20241126BHJP
【FI】
G06F3/12 354
G06F3/12 304
G06F3/12 328
G06F3/12 356
G06F3/12 385
G06F3/12 332
G06F3/12 324
G06F3/12 343
G06F3/12 339
H04N1/00 127B
B41J29/38 401
(21)【出願番号】P 2021012774
(22)【出願日】2021-01-29
【審査請求日】2024-01-09
(73)【特許権者】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】山田 和孝
【審査官】佐賀野 秀一
(56)【参考文献】
【文献】特開2020-087273(JP,A)
【文献】特開2012-203493(JP,A)
【文献】特開2007-080280(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】
請求項3に記載するサポートプログラムであって、
前記コンピュータに、
前記プレビュー処理にて前記プレビュー画像を表示している期間に、前記印刷指示に基づく印刷ジョブをキャンセルするか否かの選択を、前記ユーザインタフェースを用いて受け付け、キャンセルの選択を受け付けた場合、前記印刷ジョブをキャンセルするキャンセル処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項5】
請求項1から請求項4のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
印刷設定の入力操作を受け付ける設定画面を、前記情報処理装置のユーザインタフェースを用いて表示する設定画面表示処理を実行させ、
さらに前記コンピュータに、
前記設定画面表示処理による前記設定画面の表示に基づいて、前記取得処理を実行させ、前記取得処理にて取得した前記自動設定情報を前記情報処理装置のメモリに保存し、
前記自動設定処理では、
前記メモリに保存された前記自動設定情報
に基づいて、前記
印刷対象の画像の前記印刷設定を前記所定の画処理を行う設定にする、
ことを特徴とするサポートプログラム。
【請求項6】
請求項5に記載するサポートプログラムであって、
前記設定画面表示処理では、
印刷設定には、それぞれ複数の選択肢から選択可能な複数の設定項目が含まれ、
前記所定の画処理を行う設定が選択肢に含まれる設定項目については、前記所定の画処理を行う設定が選択された状態で表示させて、設定変更を制限
し、
前記所定の画処理を行う設定が選択肢に含まれない設定項目については、複数の選択肢を選択可能に表示させる、
ことを特徴とするサポートプログラム。
【請求項7】
請求項5に記載するサポートプログラムであって、
前記設定画面表示処理では、
印刷設定には、それぞれ複数の選択肢から選択可能な複数の設定項目が含まれ、
前記所定の画処理を行う設定が選択肢に含まれる設定項目については、前記複数の選択肢の設定のうち前記所定の画処理を行わない設定を選択不能な状態で表示させて、設定変更を制限し、
前記所定の画処理を行う設定が選択肢に含まれない設定項目については、複数の選択肢を選択可能に表示させる、
ことを特徴とするサポートプログラム。
【請求項8】
請求項1から請求項4のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記印刷指示があったことに基づいて、前記取得処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項9】
請求項1から請求項7のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
ユーザの識別情報を取得する識別情報取得処理を実行させ、前記自動設定情報は、前記識別情報ごとに有り、前記識別情報と対応付けられており、
前記取得処理では、
前記識別情報取得処理にて取得した前記識別情報に対応する前記自動設定情報を取得する、
ことを特徴とするサポートプログラム。
【請求項10】
請求項1から請求項8のいずれか1つに記載するサポートプログラムであって、
前記取得処理では、
実行すべき前記所定の画処理としてウォータマークを合成する画処理を
特定する前記自動設定情報を取得する、
ことを特徴とするサポートプログラム。
【請求項11】
請求項1から請求項8のいずれか1つに記載するサポートプログラムであって、
前記取得処理では、
実行すべき前記所定の画処理として複数のページを縮小して1枚の用紙に含める集約を行う画処理を
特定する前記自動設定情報を取得する、
ことを特徴とするサポートプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
【背景技術】
【0002】
パーソナルコンピュータ等の情報処理装置からプリンタを制御する技術として、プリンタドライバによって強制的な印刷設定を行う構成が知られている。例えば特許文献1には、システム管理者が、強制したい印刷設定をインストール設定ファイルに記載し、そのインストール設定ファイルが同梱されたインストールパッケージをユーザに提供し、ユーザが、そのインストールパッケージを利用してプリンタドライバをインストールすることで、情報処理装置に、その強制したい印刷設定が反映されたプリンタドライバに対応するプリントキューが生成される技術が開示されている。また、特許文献1には、インストール設定ファイルを利用する代わりに、インストールプログラムの実行中に、強制したい印刷設定の入力をユーザから受け付ける技術も開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、前述したプリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
【0005】
前述したように、プリンタドライバによって強制的な印刷設定を行う技術がある。この場合、そのような印刷設定を行うようにインストール設定ファイルを準備する、あるいはインストール時にそのような印刷設定を入力する必要があり、システム管理者あるいはユーザにとって手間になる。前述したOS標準の汎用印刷プログラムによる印刷でそのような強制設定を行う場合あっても、そのようなセットアップ作業は手間であり、改善の余地がある。
【0006】
本明細書は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、所定のプリンタでの印刷を行う場合の、強制的な印刷設定を行う手間を軽減する技術を開示する。
【課題を解決するための手段】
【0007】
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、外部デバイスによって記憶される情報であって、前記プリンタに印刷を行わせるための印刷設定のうち印刷対象の画像に対して所定の画処理を行うか否かを示す前記情報である自動設定情報を取得する取得処理を実行させ、さらに前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記取得処理にて取得した前記自動設定情報が前記所定の画処理を行うことを示す場合に、前記印刷指示についての印刷設定を前記所定の画処理を行う設定にする自動設定処理を実行させる、ことを特徴としている。
【0008】
本明細書に開示されるサポートプログラムによれば、情報処理装置は、プリンタでの印刷の際に所定の画処理を行うか否かを示す自動設定情報を取得し、所定の画処理を行うことが示されていれば、印刷設定を所定の画処理を行う設定にする。つまり、印刷指示の印刷設定が、サポートプログラムによって自動的に所定の画処理を行う設定にされることから、強制的な印刷設定を行うユーザの手間が軽減される。また、自動設定情報が外部デバイスに記憶されるので、プリンタでの所定の画処理を外部デバイスにて管理できる。
【0009】
上記サポートプログラムが組み込まれた情報処理装置、サポートプログラムを格納するコンピュータにて読取可能な記憶媒体、及びサポートプログラムの機能を実現するための制御方法も、新規で有用である。
【発明の効果】
【0010】
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、所定のプリンタでの印刷を行う場合の、強制的な印刷設定を行う手間を軽減する技術が実現される。
【図面の簡単な説明】
【0011】
【
図1】PCの電気的構成の概略を示すブロック図である。
【
図2】各プログラムによる印刷動作の手順の前半の例を示すシーケンス図である。
【
図6】各プログラムによる印刷動作の手順の後半の例を示すシーケンス図である。
【
図8】PCの電気的構成の概略を示すブロック図である。
【発明を実施するための形態】
【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等から印刷データを受信して、受信した印刷データに基づく印刷を実行する。本形態のプリンタ2は、プリンタ2のメモリに自動設定情報51を記憶している。自動設定情報51については、後述する。
【0025】
次に、本形態の補助プログラム42の動作を含む印刷の手順の前半部分について、
図2のシーケンス図を参照して説明する。
図2は、編集アプリ43等の印刷指示を受け付けるアプリにて、汎用印刷プログラム41を使用してプリンタ2に印刷を行わせる場合であって、プリンタ2に対応する補助プログラム42がPC1に組み込まれている場合の動作について示している。
【0026】
なお、本形態における処理およびフローチャートの各処理ステップは、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェア制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
【0027】
編集アプリ43は、ユーザの指示に基づいて、文章や図表等の作成や編集を受け付ける。編集アプリ43は、選択中の文章等の印刷に関する指示を受け付けると(A01)、ユーザによる指示を受け付けるための印刷画面をユーザIF13に表示する(A02)。編集アプリ43は、印刷画面にて、例えば、印刷実行指示、基本的な印刷設定の指示、詳細な印刷設定の受け付け開始の指示を受け付ける。
【0028】
編集アプリ43は、表示中の印刷画面にてプリンタ2が選択された状態で、詳細な印刷設定の受け付け開始の指示を受け付けた場合(A03)、受け付けた詳細設定指示の情報をOS21に渡す。OS21は、汎用印刷プログラム41を使用する印刷に関する詳細設定の指示を受け付けた場合、汎用印刷プログラム41を実行させ、汎用印刷プログラム41に詳細な印刷設定の受け付け開始指示を渡す(A04)。汎用印刷プログラム41は、詳細な印刷設定の受け付け開始指示を受け付けると、選択中のプリンタであるプリンタ2に対応する補助プログラム42に詳細な印刷設定の受け付け実行指示を渡す(A05)。
【0029】
補助プログラム42は、汎用印刷プログラム41からの実行指示に基づいて動作を開始し、詳細な印刷設定の入力操作を受け付けるための設定画面をユーザIF13に表示する(A06)。A06は、設定画面表示処理の一例である。補助プログラム42は、例えば、
図3に示すように、プリンタ2のモデル情報に基づいて、対応可能な詳細設定を受け付ける設定画面100を表示し、ユーザの操作を受け付ける。
【0030】
さらに、補助プログラム42は、PC1にログイン中のユーザを示すユーザIDを取得する(A07)。ユーザIDは、例えば、ユーザ名であり、ユーザを識別する識別情報である。A07は、識別情報取得処理の一例である。補助プログラム42は、例えば、OS21から、ユーザIDを取得してもよいし、A07にてユーザに問い合わせてユーザIDの入力を受け付けてもよい。
【0031】
補助プログラム42は、A06にて設定画面100を表示した場合、通信IF14を介して、プリンタ2に対して機能情報を要求する取得要求を送信する(A11)。補助プログラム42は、A07にて取得したユーザIDの情報を付加してA11の取得要求を送信する。さらに、補助プログラム42は、プリンタ2から機能情報を受信する(A12)。
【0032】
なお、補助プログラム42とプリンタ2との通信は、例えば、MIB(Management Information Baseの略)を使って、補助プログラム42が直接プリンタ2と通信しても良いし、OS21を介して行っても良い。OS21を介して行う場合、補助プログラム42とプリンタ2とは、例えば、IPP(internet printing protocolの略)等のOS21の通信規約に応じた通信を行う。
【0033】
本形態のプリンタ2は、例えば、
図4に示すように、ユーザIDに対応して自動的に設定される処理の種類を指定した自動設定情報51をプリンタ2のメモリに記憶している。プリンタ2は、外部デバイスの一例である。自動設定情報51は、印刷ジョブを投入するユーザの意図とは無関係に、プリンタ2にて印刷される印刷ジョブに対して強制的に設定される処理(以下、「強制処理」とする)の情報である。なお、強制処理は、プリンタ2にて実行可能な処理であってもよいし、プリンタ2にて実行不可能な処理であってもよい。また、強制処理による印刷設定は、汎用印刷プログラム41にて対応可能な設定であっても良いし、汎用印刷プログラム41にて対応不可能な設定であっても良い。
【0034】
強制処理は、印刷指示を行うユーザによる変更を受け付けない処理であり、例えば、プリンタ2の管理者によってあらかじめ設定される。本形態のプリンタ2は、例えば、管理者による操作パネルへの入力によって、自動設定情報51の入力をあらかじめ受け付け、プリンタ2のメモリに記憶している。例えば、プリンタ2は、管理者用のパスワード等と組み合わせて自動設定情報51の指定を受け付け、当該パスワードが入力されない限り、自動設定情報51の変更を受け付けない。そして、自動設定情報51にて強制処理が設定されている場合、補助プログラム42は、印刷指示を行うユーザの指示入力では、強制処理の変更を受け付けない。自動設定情報51としてユーザごとに異なる強制処理を設定できるので、ユーザごとに適切な画処理を行った画像を印刷させることができる。
【0035】
自動設定情報51にて設定される強制処理には、例えば、ウォータマーク付加、2in1等の集約印刷、グレースケール印刷、両面印刷、がある。ウォータマーク付加の強制処理は、印刷ジョブに含まれる画像データの画像に、あらかじめ指定されたウォータマーク画像を合成する画処理を行い、合成後の画像を印刷対象の画像とする処理である。例えば、プリンタ2での印刷についてウォータマーク付加の設定を自動設定としておくことで、プリンタ2を選択することで自動的にウォータマークが付加される。これにより、印刷指示を行う際におけるウォータマーク付加の設定が不要となり、ユーザの手間を大幅に軽減でき、ウォータマークの付け忘れを抑制できる。
【0036】
また、集約印刷の強制処理は、複数ページの画像を含む印刷ジョブに対して、2ページ等のあらかじめ決められた複数ページの画像を、縮小して1枚の用紙に含める画処理を行い、集約後の画像を印刷対象の画像とする処理である。集約を自動的に行う設定とすることで、1ページ1枚の印刷を行う場合と比較して、資源を有効に活用することができる。
【0037】
また、グレースケール印刷の強制処理は、印刷設定にカラー印刷の設定が含まれている場合に、カラー印刷の設定をグレースケール印刷またはモノクロ印刷の設定に変更して印刷の処理を実行する処理である。両面印刷の強制処理は、印刷対象の画像が複数ページの画像を含み、片面印刷の印刷設定となっている場合に、両面印刷の印刷設定に変更して印刷の処理を実行する処理である。
【0038】
プリンタ2は、A11の取得要求に応じて、取得要求に付加されたユーザIDに対応する強制処理の情報を自動設定情報51から読み出し、読み出した強制処理の情報を含む機能情報をA12にてPC1に送信する。補助プログラム42は、A12にて受信した機能情報から、ログイン中のユーザに対応して設定されている強制処理の情報を取得する(A21)。A21は、取得処理の一例である。
【0039】
なお、プリンタ2は、取得要求に付加されたユーザIDに対応する強制処理の情報が自動設定情報51に含まれない場合、強制処理を行わないとしても良い。あるいは、自動設定情報51には、未登録のユーザに対応する強制処理の情報が含まれていてもよい。その場合、プリンタ2は、取得要求に付加されたユーザIDに対応する情報が自動設定情報51に含まれない場合には、未登録のユーザに対応する強制処理の情報を応答する。
【0040】
そして、このユーザに対応して何らかの強制処理が自動設定情報51に設定されていれば、補助プログラム42は、印刷設定を、自動的にその強制処理を行う設定にする(A22)。A22は、自動設定処理の一例である。つまり、補助プログラム42は、汎用印刷プログラム41を介さずに、自動設定情報51を印刷設定に反映させる。さらに、補助プログラム42は、A06にて表示した設定画面100を、自動的に設定された強制処理に基づいて変更して表示する(A23)。
【0041】
例えば、
図4に示した例にて、ログイン中のユーザがユーザAであれば、強制処理として、グレースケール印刷の強制処理が設定されている。そこで、補助プログラム42は、例えば、
図5に示すように、印刷設定に含まれるカラー印刷の設定をグレースケール印刷の設定に変更して、変更後の設定画面100をユーザIF13に表示する。さらに、この場合、補助プログラム42は、設定画面100にてカラー印刷への設定変更を受け付けない。また、例えば、強制処理として2in1が設定されていれば、補助プログラム42は、印刷設定のレイアウト設定を2in1設定に変更して設定画面100を表示し、レイアウト設定の変更を受け付けない。強制処理に関する印刷設定の設定変更を制限することで、強制処理が行われることをユーザが把握できる。
【0042】
さらに、補助プログラム42は、ログイン中のユーザに対応して設定されている強制処理の情報を、メモリ12の補助プログラム42にて使用可能な領域に記憶する(A24)。なお、補助プログラム42は、ユーザに対応する強制処理が設定されていない場合、つまり、A12にて受信した機能情報に強制処理の情報が含まれていない場合、A21~A23を実行しない。例えば、
図4に示した例にて、ログイン中のユーザがユーザEであれば、強制処理が設定されていないことから、補助プログラム42は、印刷設定を変更せず、設定画面100を変更しない。この場合、補助プログラム42は、A24にて強制処理が設定されていないことを記憶しても良いし、強制処理の記憶を行わないとしても良い。
【0043】
補助プログラム42は、表示中の設定画面100にて強制処理以外の印刷設定について、ユーザの指示入力を受け付ける。補助プログラム42は、設定画面100にて詳細設定を終了する指示を受け付けた場合には、設定画面100の表示を終了して、汎用印刷プログラム41に終了通知を渡す。なお、補助プログラム42は、終了する前に、ユーザによって指示された印刷設定に関する情報を、メモリ12の補助プログラム42にて使用可能な領域に記憶しても良い。補助プログラム42からの終了通知を受けて、汎用印刷プログラム41は、編集アプリ43に終了通知を渡す。
【0044】
次に、本形態の補助プログラム42の動作を含む印刷の手順の後半部分について、
図6のシーケンス図を参照して説明する。
図6示す手順は、
図2に示した手順を実行した後に行われる場合の手順である。つまり、
図6示す手順の開始時には、メモリ12に強制処理の情報が記憶されている。
【0045】
編集アプリ43は、印刷画面にてユーザによる印刷実行指示を受け付けると(A31)、印刷指示を汎用印刷プログラム41に渡す(A32)。汎用印刷プログラム41は、印刷指示にて、印刷対象の画像の画像データを示す情報と印刷設定を示す情報と、を取得する。編集アプリ43から汎用印刷プログラム41に渡される情報に含まれる印刷設定には、印刷の指示を行うユーザによって指定された印刷設定と、前述した強制処理が自動的に設定された印刷設定とが含まれる。
【0046】
汎用印刷プログラム41は、受け取った印刷指示に含まれる画像データの形式を中間画像データの形式に変換することで中間画像データを生成し(A33)、中間画像データを含む印刷ジョブを生成する。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷指示に含まれる画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。
【0047】
汎用印刷プログラム41は、さらに、補助プログラム42に実行指示を出力し(A34)、補助プログラム42を動作させる。実行指示では、生成された中間画像データと印刷設定の情報とが補助プログラム42に渡される。つまり、補助プログラム42は、A34にて、中間画像データをOS21から取得する。
【0048】
さらに、補助プログラム42は、ログイン中のユーザに対応する強制処理が設定されているか否かを判断する(A35)。補助プログラム42は、
図2のA24にてメモリ12に保存した強制処理の情報に基づいて、A35の判断を行う。なお、補助プログラム42は、
図2のA11~A12を未実行である場合、A34にて実行を開始した後にプリンタ2と通信して、プリンタ2から機能情報を取得する。詳細設定を受け付ける設定画面100を表示している期間にプリンタ2と通信して自動設定の情報をメモリ12に記憶し、印刷指示に基づいてメモリ12から自動設定の情報を読み出せば、印刷指示を受け付けたタイミングで通信する場合と比較して、印刷指示を受け付けた後の処理を早期に終えることができる。一方、印刷指示に基づいてプリンタ2と通信して自動設定の情報を取得すれば、最新の自動設定情報51に基づいた強制処理を行うことができる。
【0049】
強制処理が設定されていると判断した場合(alt:〔有〕)、補助プログラム42は、設定されている強制処理を含む印刷設定の情報に基づいて、プレビュー画像を生成する(A41)。例えば、強制処理がウォータマークの付加であれば、補助プログラム42は、指定されているウォータマーク画像をA34にて取得した中間画像データに合成する画処理を行う。なお、ウォータマーク画像の情報は自動設定情報51に含まれており、補助プログラム42は、A12にてプリンタ2から取得できる。
【0050】
そして、補助プログラム42は、生成したプレビュー画像をユーザIF13に表示することで、プレビュー表示を行う(A42)。A42は、プレビュー処理の一例である。補助プログラム42は、例えば、
図7に示すようなプレビュー画面60を表示する。
図7に示すプレビュー画面60は、ウォータマーク付加の強制処理が設定されている場合の例である。プレビュー画面60には、指定されているウォータマーク画像を中間画像データの画像に合成した画像であるプレビュー画像61と、印刷ボタン62と、印刷キャンセルボタン63と、が含まれる。強制処理による処理後のプレビュー画像61を表示することで、ユーザは、PC1のユーザIF13にて印刷イメージを確認できる。
【0051】
そして、補助プログラム42は、表示中のプレビュー画面60にて、印刷ボタン62または印刷キャンセルボタン63への操作を受け付ける。印刷ボタン62への操作を受け付けたと判断した場合(alt:〔印刷〕)、補助プログラム42は、プレビュー表示した画像の中間画像データに基づいて、印刷データを生成する(A43)。A43にて生成される印刷データは、プリンタ2にて印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。
【0052】
プリンタ2に対応する補助プログラム42にて印刷データを生成することで、汎用印刷プログラム41にて印刷データを生成する場合に比較して自由度が大きく、プリンタ2での印刷に適した印刷データが生成される可能性が高い。なお、補助プログラム42によって生成される印刷データは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
【0053】
なお、補助プログラム42が印刷データを生成する代わりに、汎用印刷プログラム41が印刷データの生成を行っても良い。つまり、補助プログラム42は、強制処理の情報に基づく画処理後の中間画像データと、印刷実行の情報と、を汎用印刷プログラム41に渡しても良い。汎用印刷プログラム41は、補助プログラム42から受け取った中間画像データに基づいて印刷データを生成し、生成した印刷データを補助プログラム42に渡しても良い。
【0054】
汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データであり、例えば、PWGRasterデータ、または、PDFデータである。汎用印刷プログラム41によって印刷データを生成するとすれば、補助プログラム42の処理が少なく、処理時間増大の回避が見込まれ、また、補助プログラム42のプログラムサイズが抑えられる。
【0055】
さらに、補助プログラム42は、生成した印刷データを、印刷の実行を指示する印刷コマンドとともにプリンタ2に送信する(A44)。印刷データと印刷コマンドとを受信したプリンタ2は、受信した印刷コマンドに基づいて、印刷データの画像の印刷を実行する(A45)。これにより、印刷物が生成される。
【0056】
なお、プリンタ2への印刷データや印刷コマンドの送信は、汎用印刷プログラム41が行っても良い。つまり、補助プログラム42は、生成した印刷データを、プリンタ2を送信先としてPC1から送信されるように、汎用印刷プログラム41に渡しても良い。汎用印刷プログラム41は、補助プログラム42から受け取った印刷データをプリンタ2に送信する。
【0057】
一方、表示中のプレビュー画面60にて、印刷キャンセルボタン63への操作を受け付けたと判断した場合(alt:〔キャンセル〕)、補助プログラム42は、印刷ジョブをキャンセルする通知を、汎用印刷プログラム41に渡す(A46)。A46は、キャンセル処理の一例である。これにより、汎用印刷プログラム41は、A32にて受け取った印刷指示に基づく印刷ジョブをキャンセルし、印刷の処理を終了する。プレビュー画像61を表示している期間において印刷ジョブのキャンセルを受け付けることで、ユーザの意図しない印刷を回避できる。
【0058】
また、強制処理が設定されていないと判断した場合(alt:〔無〕)、補助プログラム42は、A34にて汎用印刷プログラム41から受け取った中間画像データと印刷設定の情報とに基づいて、印刷データを生成して(A47)、生成した印刷データをプリンタ2に送信する(A48)。プリンタ2は、受信した印刷データに基づいて印刷を実行する(A49)。A47やA48の手順についても、補助プログラム42に代えて、汎用印刷プログラム41が行っても良い。
【0059】
なお、補助プログラム42は、A44またはA48にてプリンタ2に印刷データを送信した後、印刷データの送信を終了したことを汎用印刷プログラム41に通知する。これにより、汎用印刷プログラム41は、A32にて受け取った印刷指示に基づく印刷ジョブの処理を終了する。
【0060】
また、プリンタ2は、中間画像データをラスタライズする機能を有していても良い。プリンタ2がラスタライズの機能を有している場合には、補助プログラム42は、印刷対象の画像の印刷データを生成することなく、印刷対象の画像の中間画像データを含む印刷コマンドをプリンタ2に送信しても良い。
【0061】
以上、詳細に説明したように、本形態の補助プログラム42によれば、PC1は、プリンタ2から自動設定情報51に含まれる強制処理の情報を取得し、強制処理が設定されていれば、自動的に印刷設定を強制処理に設定する。これにより、印刷指示の際にユーザの操作による印刷設定を行わなくても、自動的に強制処理に設定されることから、強制的な印刷設定を行うためのユーザの手間が軽減される。
【0062】
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。従って、本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
【0063】
また、例えば、補助プログラム42が、
図2のA11とA12において強制処理の情報を取得するのは、プリンタ2に限らず、PC1と通信可能なサーバ等の外部デバイスからであっても良い。例えば、
図8に示すように、PC1にプリンタ2とサーバ3とが接続され、サーバ3が自動設定情報51を有している構成であっても良い。この構成の場合、補助プログラム42は、
図2のA11の取得要求を、サーバ3に対して行う。サーバ3は、PC1からの要求に応じて、記憶している自動設定情報51に基づいて、A12の応答を行う。補助プログラム42は、サーバ3から取得した情報に基づいて、A21以降の処理を行うとすればよい。サーバ3にて自動設定情報51を管理すれば、プリンタ2のメモリの負荷が小さい。一方、プリンタ2にて自動設定情報51を管理すれば、プリンタごとに、そのプリンタでの印刷について強制処理の設定や管理を行うことができる。なお、サーバ3にて自動設定情報51を管理する場合であって、サーバ3に複数のプリンタが接続されている場合、サーバ3は、プリンタの情報に関連付けて自動設定情報51を記憶するとよい。PC1は、
図2のA11の取得要求に印刷を実行させるプリンタの情報を付加し、サーバ3は、要求に付加されている情報に基づいて、該当する情報を応答する。
【0064】
また、図示の表示画面はいずれも一例であり、これに限らない。例えば、表示画面に表示される各画像や各ボタンの配置や数は、図示の例に限らない。また、実施の形態にて例示した強制処理は、一例であり、これに限らない。例示した処理のうちの一部のみが設定可能であってもよいし、強制処理として設定可能な他の処理があってもよい。また、強制処理として設定可能な処理の種類は、補助プログラム42があらかじめ有していてもよいし、ユーザによる指定を受け付け可能であってもよい。
【0065】
また、実施の形態では、自動設定情報51として、ユーザIDに関連付けて強制処理の情報を記憶するとしたが、これに限らない。例えば、全てのユーザに対して一律に強制処理を行う設定であっても良い。この場合、強制処理の判断にユーザの情報は不要であり、補助プログラム42は、ユーザIDを取得しなくても良い。また、
図2のA25では、補助プログラム42は、ユーザごとではなく、取得した自動設定情報51の情報をそのままメモリ12に記憶すればよい。このようにすれば、プリンタ2を使用する印刷全てに共通の印刷設定を付与できる。また、自動設定情報51としてユーザごとに強制処理の情報を設定する必要が無く、使い勝手がよい。
【0066】
また、例えば、自動設定情報51としてユーザごとの情報が記憶されている場合、補助プログラム42からユーザIDの情報を付加した取得要求を送信し、プリンタ2がそのユーザの情報を応答するとしたが、これに限らない。例えば、プリンタ2は、全てのユーザの自動設定情報51を応答し、補助プログラム42が、受信した自動設定情報51からログインユーザの情報を抽出するとしてもよい。この場合、取得要求にユーザIDの情報を付加する必要はなく、補助プログラム42は、ユーザIDの取得を自動設定情報51の受信後に行ってもよい。
【0067】
また、実施の形態では、補助プログラム42は、強制処理が設定されている場合にプレビュー表示を行うとしたが、しなくても良い。ただし、プレビュー表示を行うことで、ユーザが、強制処理が設定されていることに気づきやすい。また、補助プログラム42は、強制処理が設定されていない場合でもプレビュー表示するとしても良い。また、実施の形態では、プレビュー表示にてキャンセルの指示を受け付けるとしたが、受け付けなくても良い。
【0068】
また、A11にて補助プログラム42が取得する機能情報には、自動設定情報51だけでなく、例えば、プリンタ2の能力に関する情報が含まれていても良い。そして、補助プログラム42は、プリンタ2から取得した各種の情報に基づいて、ユーザの設定を受け付ける画面を表示しても良い。
【0069】
また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフロー アプリ(Print workflow)でも良い。
【0070】
また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示されて実行されても良く、または、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
【0071】
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
【0072】
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【0073】
1 PC
2 プリンタ
3 サーバ
11 CPU
12 メモリ
13 ユーザIF