(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022100567
(43)【公開日】2022-07-06
(54)【発明の名称】サポートプログラム
(51)【国際特許分類】
G06F 3/12 20060101AFI20220629BHJP
B41J 29/38 20060101ALI20220629BHJP
H04N 1/00 20060101ALI20220629BHJP
【FI】
G06F3/12 355
G06F3/12 308
G06F3/12 356
G06F3/12 332
G06F3/12 353
G06F3/12 350
G06F3/12 374
B41J29/38 401
H04N1/00 127B
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2020214616
(22)【出願日】2020-12-24
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】成田 建樹
【テーマコード(参考)】
2C061
5C062
【Fターム(参考)】
2C061AP01
2C061AP03
2C061AP04
2C061AP07
2C061AS02
2C061HK05
2C061HN05
2C061HN27
5C062AA05
5C062AA13
5C062AA35
5C062AB22
5C062AB38
5C062AC04
5C062AC34
5C062AF10
(57)【要約】
【課題】OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、用紙に基づくユーザの意図しない印刷を低減する技術を提供すること。
【解決手段】補助プログラム42によれば、PC1のCPU11は、編集アプリ43から出力された印刷指示であって、OS21にあらかじめ組み込まれた汎用印刷プログラム41に対して画像の印刷をプリンタ2に行わせる印刷指示があった場合に、印刷指示により印刷に用いられる印刷用紙の情報である用紙情報と、印刷指示による印刷される画像を示す印刷データと、を取得する。さらに、CPU11は、用紙情報と印刷データとに基づき、印刷用紙に対する印刷される画像の配置を示すプレビュー画像を、ユーザIF13に表示させる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、
前記印刷指示により印刷に用いられる印刷用紙の情報である印刷用紙情報を取得する用紙情報取得処理と、
前記印刷指示により印刷される画像を示す印刷画像データを取得する画像データ取得処理と、
前記用紙情報取得処理にて取得した前記印刷用紙情報と、前記画像データ取得処理にて取得した前記印刷画像データと、に基づき、前記印刷用紙に対する前記印刷される画像の配置を示すプレビュー画像を、前記情報処理装置のユーザインタフェースを用いて表示するプレビュー処理と、
を実行させる、
ことを特徴とするサポートプログラム。
【請求項2】
請求項1に記載するサポートプログラムであって、
前記用紙情報取得処理では、
前記プリンタから前記印刷用紙情報を取得する、
ことを特徴とするサポートプログラム。
【請求項3】
請求項2に記載するサポートプログラムであって、
前記用紙情報取得処理では、
前記プリンタから前記印刷用紙情報を取得できなかった場合、前記印刷指示についての印刷設定に含まれる前記印刷用紙情報を取得する、
ことを特徴とするサポートプログラム。
【請求項4】
請求項1から請求項3のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記印刷指示があった場合に、
前記用紙情報取得処理にて取得した前記印刷用紙情報について、前記印刷指示に基づく印刷に対する適否を判定する判定処理を実行させ、
前記判定処理にて不適と判定した場合に、前記プレビュー処理を実行させ、
前記プレビュー処理では、前記プレビュー画像と、前記判定処理での判定結果と、を表示する、
ことを特徴とするサポートプログラム。
【請求項5】
請求項4に記載するサポートプログラムであって、
前記用紙情報取得処理にて取得される前記印刷用紙情報は、用紙サイズの情報であり、
前記コンピュータに、
前記印刷指示があった場合に、
前記印刷指示による印刷対象の画像を示すラスタ画像の画像サイズの情報である画像サイズ情報を、前記ラスタ画像の縦方向のドット数と横方向のドット数と解像度とに基づいて取得する画像情報取得処理を実行させ、
前記判定処理では、
前記画像情報取得処理にて取得した前記画像サイズ情報に示される画像サイズと、前記用紙情報取得処理にて取得した前記印刷用紙情報に示される用紙サイズとを比較することで、前記印刷指示に基づく印刷に対する適否を判定する、
ことを特徴とするサポートプログラム。
【請求項6】
請求項5に記載するサポートプログラムであって、
前記判定処理では、
前記画像情報取得処理にて取得した前記画像サイズ情報に示される画像サイズが、前記用紙情報取得処理にて取得した前記印刷用紙情報に示される用紙サイズに収まらない場合、不適と判定する、
ことを特徴とするサポートプログラム。
【請求項7】
請求項6に記載するサポートプログラムであって、
前記判定処理では、
前記画像情報取得処理にて取得した前記画像サイズ情報に示される画像サイズが、前記用紙情報取得処理にて取得した前記印刷用紙情報に示される用紙サイズに収まる場合であっても、前記用紙情報取得処理にて取得した前記印刷用紙情報に示される用紙サイズと、前記画像情報取得処理にて取得した前記画像サイズ情報に示される画像サイズと、の差が所定範囲外であった場合に、不適と判定する、
ことを特徴とするサポートプログラム。
【請求項8】
請求項1から請求項7のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記プレビュー処理にて前記プレビュー画像を表示している期間に、前記印刷指示に基づく印刷ジョブをキャンセルするか否かの選択を、前記ユーザインタフェースを用いて受け付け、キャンセルの選択を受け付けた場合、前記印刷ジョブをキャンセルするキャンセル処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項9】
請求項1から請求項8のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記プレビュー処理にて前記プレビュー画像を表示している期間に、前記印刷指示についての印刷設定の変更を、前記ユーザインタフェースを用いて受け付ける変更処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項10】
請求項9に記載するサポートプログラムであって、
前記印刷設定には、前記印刷指示による印刷対象の前記画像を縮小させる縮小パラメータが含まれ、
前記変更処理では、
前記印刷設定に含まれる前記縮小パラメータを有効にする変更も受け付ける、
ことを特徴とするサポートプログラム。
【請求項11】
請求項9または請求項10に記載するサポートプログラムであって、
前記印刷設定には、前記印刷指示による印刷対象の前記画像を分割させる分割パラメータが含まれ、
前記変更処理では、
前記印刷設定に含まれる前記分割パラメータを有効にする変更も受け付ける、
ことを特徴とするサポートプログラム。
【請求項12】
請求項1から請求項3のいずれか1つに記載するサポートプログラムであって、
前記用紙情報取得処理にて取得される前記印刷用紙情報は、用紙サイズの情報を含み、
前記印刷用紙情報に含まれる用紙サイズには、高価値を示す所定のサイズがあり、
前記用紙情報取得処理にて取得した前記印刷用紙情報に示される用紙サイズが前記所定のサイズであれば、前記コンピュータに前記プレビュー処理を実行させ、
前記用紙情報取得処理にて取得した前記印刷用紙情報に示される用紙サイズが前記所定のサイズでなければ、前記コンピュータに前記プレビュー処理を実行させない、
ことを特徴とするサポートプログラム。
【請求項13】
請求項1から請求項12のいずれか1つに記載するサポートプログラムであって、
前記用紙情報取得処理にて取得される前記印刷用紙情報は、用紙種の情報を含み、
前記印刷用紙情報に含まれる用紙種には、高価値を示す所定の種類があり、
前記用紙情報取得処理にて取得した前記印刷用紙情報に示される用紙種が前記所定の種類であれば、前記コンピュータに前記プレビュー処理を実行させ、
前記用紙情報取得処理にて取得した前記印刷用紙情報に示される用紙種が前記所定の種類でなければ、前記コンピュータに前記プレビュー処理を実行させない、
ことを特徴とするサポートプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
【背景技術】
【0002】
パーソナルコンピュータ等の情報処理装置からプリンタを制御する技術として、プリンタドライバによって印刷データを生成し、その印刷データをプリンタに送信する前にプレビュー表示を行う構成が広く知られている(例えば、特許文献1)。プリンタドライバは、プリンタのメーカから提供され、そのプリンタが有する各種の機能に対応しており、そのプリンタを十分に利用することができる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、前述したプリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
【0005】
前述したOS標準の汎用印刷プログラムによる印刷であっても、プレビュー表示を行うことが可能である。しかしながら、プレビュー表示は、ユーザに印刷対象の画像を確認させ得るものの、プリンタにセットされた用紙のサイズを考慮した印刷結果を確認させるものではない。そのため、画像が用紙からはみ出す等、印刷してからユーザの意図しない印刷結果となったことに気付くことがある。
【0006】
本明細書は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、用紙に基づくユーザの意図しない印刷を低減する技術を開示する。
【課題を解決するための手段】
【0007】
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記印刷指示により印刷に用いられる印刷用紙の情報である印刷用紙情報を取得する用紙情報取得処理と、前記印刷指示により印刷される画像を示す印刷画像データを取得する画像データ取得処理と、前記用紙情報取得処理にて取得した前記印刷用紙情報と、前記画像データ取得処理にて取得した前記印刷画像データと、に基づき、前記印刷用紙に対する前記印刷される画像の配置を示すプレビュー画像を、前記情報処理装置のユーザインタフェースを用いて表示するプレビュー処理と、を実行させる、ことを特徴としている。
【0008】
本明細書に開示されるサポートプログラムによれば、情報処理装置は、汎用印刷プログラムに対する印刷指示があった際に、印刷指示により印刷に用いられる印刷用紙の情報である印刷用紙情報と、印刷される画像を示す印刷画像データと、を取得し、印刷用紙に対する印刷される画像の配置を示すプレビュー画像を表示する。これにより、ユーザが用紙と画像との配置の不具合に気付きやすく、ユーザが用紙についての設定変更を行うことが期待できる。その結果として、ユーザの意図しない印刷を回避できる可能性が高まる。
【0009】
上記サポートプログラムが組み込まれた情報処理装置、サポートプログラムを格納するコンピュータにて読取可能な記憶媒体、及びサポートプログラムの機能を実現するための制御方法も、新規で有用である。
【発明の効果】
【0010】
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、用紙に基づくユーザの意図しない印刷を低減する技術が実現される。
【図面の簡単な説明】
【0011】
【
図1】PCの電気的構成の概略を示すブロック図である。
【
図2】各プログラムによる印刷動作の手順の例を示すシーケンス図である。
【
図3】用紙情報判定処理の手順を示すフローチャートである。
【
図4】プレビュー表示画面の例を示す説明図である。
【
図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は、印刷対象の画像データに基づいて、中間画像データを生成する機能を含むプログラムである。
【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】
次に、本形態の補助プログラム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は、印刷指示の情報として、例えば、印刷させるプリンタを示す情報、アプリにて設定された印刷設定を示す情報、印刷対象となる画像データを示す情報、を取得できる。印刷設定には、用紙情報が含まれる。印刷設定に含まれる用紙情報には、一例として、用紙サイズの情報と用紙種の情報が含まれる。
【0029】
汎用印刷プログラム41は、受け取った印刷指示の情報に含まれる画像データの形式を中間画像データの形式に変換することで中間画像データを生成し(A05)、中間画像データを含む印刷ジョブを生成する。編集アプリ43から渡される画像データは種々のタイプのものであり、汎用印刷プログラム41は、受け取った画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷指示に含まれる画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。汎用印刷プログラム41が生成する中間画像データは、例えば、XPSデータである。
【0030】
汎用印刷プログラム41は、印刷指示にて選択されている装置がプリンタ2であって、プリンタ2に対応する補助プログラム42がメモリ12に記憶されていることから、補助プログラム42に実行指示を出力する(A06)。汎用印刷プログラム41は、実行指示によって、補助プログラム42を動作させ、生成した中間画像データを補助プログラム42に渡す。なお、A06では、中間画像データとともに印刷設定の情報も補助プログラム42に渡される。補助プログラム42が汎用印刷プログラム41から受け取る印刷設定の情報に含まれる用紙情報は、第1用紙情報の一例である。A06にて補助プログラムに渡される用紙情報には、用紙サイズの情報と用紙種の情報が含まれる。なお、汎用印刷プログラム41は、この用紙情報の一部または全部を中間画像データに含めるようにして補助プログラム42に渡しても良い。
【0031】
補助プログラム42は、A06にて汎用印刷プログラム41から受け取った実行指示に基づいて、補助プログラム42が使用できるメモリ12内の使用可能領域に、中間画像データを一旦記憶する(A07)。さらに、補助プログラム42は、中間画像データに基づくラスタライズを行い、印刷対象の画像を示す印刷データを生成する(A08)。A08にて生成される印刷データは、プリンタ2にて印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。印刷データは、ラスタ画像の一例である。A08にて生成される印刷データは、印刷画像データの一例であり、A08は、画像データ取得処理の一例である。
【0032】
プリンタ2に対応する補助プログラム42にてラスタライズすることで、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適した印刷データが生成される可能性が高い。なお、A08にて生成される印刷データは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
【0033】
また、補助プログラム42は、通信IF14を介して、プリンタ2から情報を取得する。具体的には、補助プログラム42は、プリンタ2に対して能力情報を要求する取得要求を送信する(A11)。プリンタ2は、PC1等から能力情報を要求する取得要求を受信した場合、自装置の能力を示す能力情報を取得し(A12)、取得した能力情報を、要求を送信した装置に応答する(A13)。プリンタ2から送信される能力情報には、例えば、ステータス情報、消耗品の残量情報、装着されているトレイの情報、トレイごとに設定されている用紙の用紙情報、対応可能な印刷解像度の情報、が含まれる。
【0034】
プリンタ2は、例えば、操作パネルを介して、自装置の備える給紙トレイに収容する用紙の用紙情報を受け付け、受け付けた情報を自装置のメモリに記憶している。A12では、プリンタ2は、自装置のメモリから用紙情報を読み出す。プリンタ2のメモリから読み出される用紙情報には、一例として、用紙サイズの情報と用紙種の情報が含まれる。
【0035】
なお、プリンタ2は、複数の給紙トレイを装着可能であっても良い。プリンタ2が、複数の給紙トレイを備えている場合には、トレイごとに、トレイを示す情報と関連付けて用紙情報を記憶する。そして、プリンタ2は、能力情報として、装着されている全てのトレイについて、トレイごとの用紙情報を応答する。プリンタ2は、トレイに収容されている用紙の用紙サイズを検出するセンサ等を有している場合には、そのセンサ等の出力信号に基づいて、用紙サイズの情報を取得しても良い。
【0036】
また、プリンタ2は、受け付けた印刷ジョブに基づいて画像処理を行って、画像処理後のデータに基づいて印刷する機能、例えば、Nin1等の集約印刷、ウォータマーク等の合成印刷、着色剤を節約する節約印刷、を行う機能を有していても良い。プリンタ2にて実行可能な画像処理の機能を有している場合、プリンタ2は、その機能の情報を能力情報として補助プログラム42に渡しても良い。
【0037】
A13によって、補助プログラム42は、プリンタ2の能力情報として、プリンタ2の備えるトレイや印刷用紙の情報を取得する。A13は、プリンタ情報取得処理の一例であり、プリンタ2の能力情報は、プリンタ情報の一例である。プリンタ2の能力情報には、プリンタ2にて印刷に用いられる用紙の情報である用紙情報が含まれる。プリンタ2の能力情報に含まれる用紙情報には、一例として、用紙サイズの情報と用紙種の情報が含まれる。プリンタ2の能力情報に含まれる用紙情報は、第2用紙情報の一例である。
【0038】
なお、補助プログラム42とプリンタ2との通信は、例えば、MIB(Management Information Baseの略)を使って、補助プログラム42が直接プリンタ2と通信しても良いし、OS21を介して行っても良い。OS21を介して行う場合、補助プログラム42とプリンタ2とは、例えば、IPP(internet printing protocolの略)等のOS21の通信規約に応じた通信を行う。
【0039】
補助プログラム42は、プリンタ2から受信した能力情報に基づいて、プリンタ2に収容されている用紙の情報であるプリンタ用紙情報を、補助プログラム42が使用できるメモリ12内の使用可能領域に記憶する(A14)。補助プログラム42は、プリンタ2から取得した能力情報に含まれる用紙サイズの情報がA4等の定型サイズを示す情報であれば、用紙長さと用紙幅を示す数値に換算して記憶しても良い。
【0040】
なお、汎用印刷プログラム41は、中間画像データの生成前に補助プログラム42を実行させても良い。例えば、A02にて表示した印刷画面にて、編集アプリ43等がユーザによる詳細な印刷設定の編集指示を受け付けた場合にも、汎用印刷プログラム41は、補助プログラム42を実行させても良い。補助プログラム42は、印刷設定の編集指示に対応して実行された場合に、プリンタ2に能力情報を要求しても良い。また、補助プログラム42は、中間画像データを受け取った後、印刷データの生成前に、プリンタ2に能力情報を要求しても良い。いずれの場合であっても、補助プログラム42は、プリンタ2から取得した能力情報に基づいて、メモリ12にプリンタ用紙情報を記憶する。
【0041】
そして、補助プログラム42は、用紙情報判定処理を実行する(A21)。用紙情報判定処理は、印刷指示についての印刷設定に含まれる用紙情報を、プリンタ2から取得した用紙情報、または、印刷データに基づく印刷を実行した場合の印刷結果である印刷画像の画像サイズの情報と比較し、用紙の適否を判定する処理である。用紙情報判定処理の手順について、
図3のフローチャートを参照して説明する。用紙情報判定処理は、補助プログラム42による処理であり、PC1のCPU11によって実行される。
【0042】
用紙情報判定処理では、CPU11は、印刷用の用紙の情報である用紙情報を取得する(S101)。用紙情報には、例えば、用紙サイズ、用紙種、の情報が含まれる。S101は、用紙情報取得処理の一例であり、S101にて取得する用紙情報は、印刷用紙情報の一例である。CPU11は、S101にて、例えば、
図2のA14にて記憶したプリンタ用紙情報を読み出し、プリンタ用紙情報に基づいて用紙情報を取得する。この場合、CPU11が取得する用紙情報は、プリンタ2に設定されている用紙の情報である。
【0043】
なお、CPU11は、プリンタ2から用紙情報を取得できなかった場合、S101にて、
図2のA06にて汎用印刷プログラム41から受け取った印刷設定に基づいて、印刷設定に含まれる用紙情報を取得しても良い。この場合、印刷設定に含まれる用紙情報が、印刷用紙情報の一例である。
【0044】
そして、CPU11は、取得した用紙情報が判定の実行対象であるか否かを判断する(S102)。印刷用の用紙が、例えば、用紙種が普通紙や再生紙であって、用紙サイズがA4等の定型サイズであれば、サイズが適合しない印刷を行って用紙が無駄になったとしてもユーザの損失は小さい可能性が高い。安価な用紙と想定される場合は画像のはみ出しや印刷のやり直しが許容され易いことから、早期に印刷を完了させて印刷結果を出力する方が好ましい。
【0045】
今回の印刷が判定の実行対象ではないと判断した場合(S102:NO)、CPU11は、「印刷」と判定して(S121)、用紙情報判定処理を終了する。CPU11は、用紙種が普通紙または再生紙であって、かつ、用紙サイズがA4、B5等の定型サイズであれば、S102にてNOと判断する。安価な用紙の場合は画像のはみ出しや印刷のやり直しが許容され易いことから、判定対象ではないと判断し、S103以降の処理を行わずに「印刷」と判定することで、早期に印刷結果を出力させることができる。
【0046】
一方、印刷用の用紙として、高価格である可能性が高い用紙が指定されている場合、用紙が無駄になることは好ましくないことから、例えば、用紙情報が不適であれば、そのまま印刷することは好ましくない。例えば、用紙種が厚紙、ハガキ、シール用紙、OHP用紙、布等の場合や、用紙サイズがハガキ、封筒等の場合、その用紙は、普通紙または再生紙の定型サイズの用紙に比較して、高価格である可能性が高い。ハガキまたは封筒を示す用紙サイズは、高価値を示す所定のサイズの一例である。また、厚紙、ハガキ、シール用紙、OHP用紙、布を示す用紙種は、高価値を示す所定の種類の一例である。CPU11は、S101にて取得した用紙情報に基づいて、用紙種が普通紙と再生紙とのいずれでもない、または、用紙サイズがA4、A5、B4、B5のいずれでもない場合、S102にてYESと判断する。
【0047】
用紙情報が判定の実行対象であると判断した場合(S102:YES)、CPU11は、
図2のA08にて生成した印刷データに基づいて、この印刷データに基づく印刷を実行した場合の印刷結果である印刷画像の画像サイズを算出する(S103)。具体的には、CPU11は、印刷データの1ライン分のドット数およびライン数を、それぞれ印刷設定にて指定されている印刷解像度(例えば、ドット/インチで表される値)で割ることで、印刷画像の横サイズおよび縦サイズを算出する。S103にて算出される印刷画像の画像サイズの情報は、画像サイズ情報の一例である。S103は、画像情報取得処理の一例である。
【0048】
そして、CPU11は、S101にて取得した用紙情報に含まれる用紙サイズと、S103にて算出した印刷画像の画像サイズと、を比較し、印刷画像の画像サイズの方が用紙サイズよりも大きいか否かを判断する(S106)。S106は、判定処理の一例である。CPU11は、例えば、印刷用の用紙サイズとしてA4等の定型サイズが指定されている場合、その用紙サイズの横方向および縦方向のサイズと、S103にて算出した印刷画像の横サイズおよび縦サイズと、をそれぞれ比較する。なお、CPU11は、余白の設定に基づいて、用紙サイズのうちの印刷可能な範囲のサイズと印刷画像の画像サイズとを比較してもよい。印刷データの画像サイズと印刷用の用紙サイズとを比較して適否を判定することで、画像が用紙に収まるか否かを判定でき、その結果として、印刷に対する適否を判定できる。
【0049】
印刷画像の画像サイズの方が大きくはないと判断した場合(S106:NO)、CPU11は、画像サイズと用紙サイズとの差が所定範囲外であるか否かを判断する(S107)。S107は、判定処理の一例である。そして、印刷画像の画像サイズの方が大きいと判断した場合(S106:YES)、または、画像サイズの方が用紙サイズよりも小さくても、その差が所定範囲を超えて大きいと判断した場合(S107:YES)、CPU11は、印刷用の用紙と画像との配置を示すプレビュー画像を生成して、ユーザIF13にプレビュー表示を行わせる(S111)。S111は、プレビュー処理の一例である。
【0050】
プレビュー表示の例を
図4に示す。
図4に示すプレビュー表示画面50には、印刷イメージを示すプレビュー画像51と、印刷設定の変更指示を受け付けるボタン52と、OKボタン53と、キャンセルボタン54と、用紙サイズが不適であることを示すメッセージ55と、が含まれる。CPU11は、表示中の各ボタンへのユーザによる操作を受け付ける。メッセージ55は、S106とS107による判定の判定結果を示す情報である。
【0051】
プレビュー画像51は、印刷設定に含まれる用紙情報が印刷指示に基づく印刷に不適であることを示す画像であり、例えば、用紙全体と画像との相対関係を示す画像や、用紙サイズないし画像サイズを印刷イメージとともに示す画像が該当する。
図4の例のプレビュー画像51では、例えば、印刷設定の用紙サイズを示す枠511と、画像サイズの印刷イメージ512と、が重ねて表示され、印刷イメージ512のうち印刷されない範囲は斜線で表示されている。なお、印刷されない範囲は、表示されないとしても良い。
【0052】
印刷画像の画像サイズの方が用紙サイズよりも大きい場合、用紙に画像が収まらないことから、印刷すると画像が用紙からはみ出すことになり、ユーザの意図しない印刷となる可能性が高い。また、画像サイズの方が用紙サイズよりも小さくても、その差が所定範囲外である場合、余白が大きくなりすぎ、用紙の無駄が大きくなる可能性が高い。これらの場合にはCPU11は、用紙情報が印刷に不適であると判定する。
【0053】
なお、画像サイズの方が用紙サイズよりも大きくてもその差が僅かであれば、印刷されない部分があっても影響は小さい可能性が高い。あるいは、例えば、余白を小さくする等によって画像の全体が印刷される可能性がある。そこで、画像サイズの方が用紙サイズよりも大きくても、縦サイズと横サイズとのいずれについてもサイズの差が小さい場合、CPU11は、適正と判定してもよい。
【0054】
また、例えば、印刷設定に含まれる用紙種がロール紙を示している場合、補助プログラム42は、用紙サイズのうち縦サイズ(ロール紙の巻き出し方向の長さ、用紙長ともいう)の比較は行わなくてもよい。この場合、補助プログラム42は、S106やS107にて、横サイズ(ロール紙の軸方向の長さ、用紙幅ともいう)のみを比較すればよい。
【0055】
なお、プリンタ2が複数の給紙トレイを備えている場合であって、印刷設定にて明示的に給紙トレイが指定されている場合には、CPU11は、S106やS107にて、指定されている給紙トレイに関連付けて記憶されている用紙情報を用いて画像サイズとの比較を行う。また、印刷設定にて給紙トレイとして自動トレイが指定されている場合には、CPU11は、S106やS107にて、プリンタ2が備える給紙トレイのうち、画像サイズと一致する用紙情報が設定されている給紙トレイがあるか否かを判断しても良い。
【0056】
一方、印刷画像の画像サイズが用紙サイズに対して適正であると判断した場合(S107:NO)、CPU11は、印刷イメージを示すプレビュー画像を生成して、ユーザIF13にプレビュー表示を行わせる(S112)。S112は、プレビュー処理の一例である。
【0057】
この場合のプレビュー表示の例を、
図5に示す。
図5に示すプレビュー表示画面60には、印刷イメージを示すプレビュー画像51と、印刷設定の変更指示を受け付けるボタン52と、OKボタン53と、キャンセルボタン54と、が含まれる。
図5のプレビュー画像51は、用紙サイズと画像サイズとが適合していることを示す画像であり、プレビュー表示画面60には、用紙サイズが不適であることを示すメッセージは含まれない。
【0058】
プレビュー表示画面50、60では、CPU11は、ボタン52として複数種類の指示を受け付け可能である。本形態では、CPU11は、例えば、
図4に示すように、拡縮の指示、分割印刷の指示、を受け付ける。印刷設定には、例えば、画像を縮小する縮小パラメータが含まれ、拡縮の指示にて画像を縮小させる指示は、その縮小パラメータを有効にする変更指示である。縮小パラメータには、例えば、画像の縮小割合の設定が含まれる。画像サイズが用紙サイズより大きく、画像が用紙に収まらない場合、例えば、縮小の指示を受け付けることで画像サイズを縮小させれば、印刷用の用紙サイズに収まる可能性が高まる。また、画像サイズが用紙サイズよりも小さくてもその差が大きい場合、例えば、拡大の指示を受け付けることで画像サイズを拡大させれば、余白が小さくなる可能性が高まる。
【0059】
また、印刷設定には、画像を複数に分割する分割パラメータが含まれ、分割印刷の指示は、その分割パラメータを有効にする変更指示である。分割の指示を受け付けることで画像を分割すれば、分割後の各画像は、元の画像よりも画像サイズが小さいことから、印刷用の用紙サイズに収まる可能性が高まる。分割パラメータには、例えばポスター印刷の設定が含まれる。
【0060】
CPU11は、OKボタン53への操作を受け付けたか否かを判断する(S113)。OKボタン53への操作を受け付けていないと判断した場合(S113:NO)、CPU11は、キャンセルボタン54への操作によって、印刷をキャンセルする指示を受け付けたか否かを判断する(S114)。キャンセルの指示も受け付けていないと判断した場合(S114:NO)、CPU11は、いずれかの指示を受け付けるまで待機する。
【0061】
OKボタン53への操作を受け付けたと判断した場合(S113:YES)、CPU11は、ボタン52への操作による変更の指示を受け付けたか否かを判断する(S115)。S115にて、ボタン52への操作によって変更の指示を受け付ける処理は、変更処理の一例である。
【0062】
印刷設定の変更指示をプレビュー表示時に受け付け可能にすることで、ユーザが変更し易い。また、プレビュー表示画面50、60を表示している期間に、プレビュー表示画面50、60にて印刷のキャンセルの指示を受け付けることで、印刷しないことも選択でき、ユーザの選択の自由度が広がる。
【0063】
変更指示を受け付けたと判断した場合(S115:YES)、CPU11は、受け付けた指示に基づいて印刷設定を変更し、変更後の印刷設定に基づいて、再度、印刷データを生成する(S116)。CPU11は、
図2のA07にて記憶した中間画像データを読み出し、変更後の印刷設定に基づいて、新たに印刷データを生成する。CPU11は、元の印刷データを削除しても良い。
【0064】
そして、CPU11は、S103に戻り、新たに生成した印刷データに基づいて、印刷画像の画像サイズを算出し、再度、印刷設定の用紙サイズとの比較を行う。そして、新たに生成した印刷データにて不適と判定された場合、CPU11は、再度プレビュー表示画面50を表示する。一方、適合していると判定された場合、CPU11は、プレビュー表示画面60を表示する。CPU11は、いずれの表示でも、変更指示を受け付ける。変更後の印刷設定に基づいて再度判定し、適正と判定されるまで印刷設定の変更を受け付けることで、ユーザの意図しない印刷を確実に回避できる。
【0065】
OKボタン53への操作を受け付けた際に、ボタン52への操作による変更の指示を受け付けていないと判断した場合(S115:NO)、CPU11は、印刷と判定して(S121)、用紙情報判定処理を終了する。プレビュー表示によって印刷イメージを確認した後に、ユーザによる指示に基づいて、印刷データがプリンタに送信されることから、ユーザの意図しない印刷を回避できる可能性が高まる。
【0066】
一方、
図4に示したプレビュー表示画面50または
図5に示したプレビュー表示画面60のキャンセルボタン54にてキャンセルの指示を受け付けたと判断した場合(S114:YES)、CPU11は、キャンセルと判定して(S122)、用紙情報判定処理を終了する。
【0067】
図2の説明に戻る。補助プログラム42は、A21の用紙情報判定処理にて印刷と判定した場合(alt:〔印刷〕)、印刷データと印刷実行を指示するコマンドとをプリンタ2に送信する(A23)。印刷データと印刷実行を指示するコマンドとを受信したプリンタ2は、受信したコマンドに基づいて、印刷データの画像を印刷する(A24)。これにより、印刷物が生成される。補助プログラム42は、さらに、印刷データの送信を終了したことを汎用印刷プログラム41に通知する。
【0068】
一方、A21の用紙情報判定処理にてキャンセルと判定した場合(alt:〔キャンセル〕)、補助プログラム42は、印刷ジョブをキャンセルする情報を汎用印刷プログラム41に渡す(A25)。A25は、キャンセル処理の一例である。これにより、汎用印刷プログラム41は、A04にて受け取った印刷指示に基づく印刷ジョブをキャンセルし、印刷の処理を終了する。補助プログラム42は、生成した印刷データを削除してもよい。プレビュー表示にてキャンセルの指示を受け付けることで、ユーザの意図しない印刷を確実に回避できる。
【0069】
A23またはA25の後、補助プログラム42は、A07にて記憶した中間画像データを削除する(A31)。補助プログラム42は、用紙情報判定処理を終了したら、A23やA25の前に中間画像データを削除しても良い。
【0070】
以上、詳細に説明したように、本形態の補助プログラム42によれば、PC1のCPU11は、汎用印刷プログラム41に対する印刷指示があった際に、印刷設定に含まれる用紙情報について、その印刷指示に基づく印刷に対する適否を判定する。不適と判定した場合、CPU11は、現在の印刷設定の用紙情報が印刷指示に基づく印刷に不適であることを示す印刷イメージを示すプレビュー画像をユーザIF13に表示させる。これにより、ユーザが用紙情報のミスマッチに気付きやすく、ユーザが用紙についての設定変更を行うことが期待できる。その結果として、ユーザの意図しない印刷を回避できる可能性が高まる。
【0071】
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。従って、本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
【0072】
また、例えば、図示の表示画面の例はいずれも一例であり、これに限らない。例えば、印刷やキャンセルを受け付けるボタンは、無くても良い。例えば、補助プログラム42は、不適と判定して表示したプレビュー画像では、変更指示のみを受け付けるとしても良い。あるいは、補助プログラム42は、例えば、受信した印刷をキャンセルできる機能をプリンタ2が備えている場合には、比較結果に関わらず適正と判定して、プレビュー画像を表示した後に印刷データをプリンタ2に送信するとしても良い。この場合でも、プレビュー画像を確認することで、ユーザは、プリンタ2にて印刷をキャンセルさせることができる。
【0073】
また、例えば、補助プログラム42が印刷データを生成する代わりに、汎用印刷プログラム41が印刷データの生成を行っても良い。補助プログラム42は、A07にて中間画像データを記憶した後、中間画像データを汎用印刷プログラム41に渡して印刷データの生成を行わせても良い。汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データであり、例えば、PWGRasterデータ、または、PDFデータである。汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、処理時間増大の回避が見込まれ、また、補助プログラム42のプログラムサイズが抑えられる。
【0074】
また、本形態では、用紙情報として、用紙サイズの情報と用紙種の情報とを含むとしたが、いずれか一方でも良い。また、用紙情報には、用紙サイズの情報や用紙種の情報以外の情報が含まれていても良い。また、本形態では、印刷設定の用紙情報とプリンタ2の用紙情報との比較による判定と、印刷データの画像サイズと印刷設定の用紙サイズとの比較による判定との両方を行って、いずれも適正である場合に適正と判定するとしたが、いずれか一方のみの比較結果に基づいて適否を判定しても良い。
【0075】
また、例えば、本形態では、用紙情報判定処理のS102にて、用紙サイズや用紙種によって、判定対象とするか否かを判断するとしたが、この判断は行わなくても良い。つまり、用紙サイズや用紙種に関わらず、全ての印刷指示を判定対象としても良い。
【0076】
また、例えば、本形態では、生成した印刷データに基づいて印刷画像の画像サイズを算出するとしたが、ラスタライズ前の中間画像データから想定するラスタ画像の画像サイズを取得してもよい。その場合には、補助プログラム42は、用紙情報判定処理にて印刷と判定された場合に、印刷データの生成を行うとしても良い。また、その場合、プレビューにて、画像を含む印刷イメージの代わりに、画像サイズや用紙サイズを示す枠のみを表示しても良い。枠のみの表示であっても、大きさの関係は把握可能であり、ユーザの意図しない印刷を回避できる可能性が高まる。
【0077】
また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフロー アプリ(Print workflow)でも良い。
【0078】
また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示を受け付けても良いし、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
【0079】
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
【0080】
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【0081】
1 PC
2 プリンタ
11 CPU
13 ユーザIF