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

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

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

<>
  • 特許-サポートプログラム 図1
  • 特許-サポートプログラム 図2
  • 特許-サポートプログラム 図3
  • 特許-サポートプログラム 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-11
(45)【発行日】2024-11-19
(54)【発明の名称】サポートプログラム
(51)【国際特許分類】
   G06F 3/12 20060101AFI20241112BHJP
   B41J 29/38 20060101ALI20241112BHJP
   H04N 1/00 20060101ALI20241112BHJP
【FI】
G06F3/12 355
G06F3/12 308
G06F3/12 328
G06F3/12 374
B41J29/38 401
H04N1/00 127B
【請求項の数】 8
(21)【出願番号】P 2020214615
(22)【出願日】2020-12-24
(65)【公開番号】P2022100566
(43)【公開日】2022-07-06
【審査請求日】2023-11-28
(73)【特許権者】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】成田 建樹
【審査官】佐賀野 秀一
(56)【参考文献】
【文献】特開2007-055114(JP,A)
【文献】特開2020-166350(JP,A)
【文献】特開2001-229005(JP,A)
【文献】特開2015-009483(JP,A)
【文献】特開2008-040933(JP,A)
【文献】特開2019-200571(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/09- 3/12
B41J 29/00- 29/70
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、
前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があり、前記印刷指示として、前記アプリケーションプログラムがユーザから受け付けた情報である、印刷対象の画像データを示す情報と印刷設定を示す情報と、が前記アプリケーションプログラムから前記オペレーティングシステムに渡され、前記印刷指示による印刷対象の前記画像を示す中間画像データと前記印刷設定の情報とが前記オペレーティングシステムから渡された場合に、
前記印刷指示による印刷対象の画像を示すラスタ画像であって、前記オペレーティングシステムから渡された前記中間画像データに基づく前記ラスタ画像の画像サイズの情報である第1サイズ情報を、前記ラスタ画像の縦方向のドット数と横方向のドット数と解像度とに基づいて取得する第1取得処理と、
前記印刷指示についての前記印刷設定の情報であって、前記オペレーティングシステムから渡された前記印刷設定の情報に含まれる用紙サイズの情報である第2サイズ情報を取得する第2取得処理と、
前記第1取得処理にて取得した前記第1サイズ情報に示される画像サイズと、前記第2取得処理にて取得した前記第2サイズ情報に示される用紙サイズとを比較することで、用紙サイズの適否を判定する判定処理と、
前記判定処理にて不適と判定した場合に、前記情報処理装置のユーザインタフェースを用いて、警告を行うための処理を行う警告処理と、
を実行させる、
ことを特徴とするサポートプログラム。
【請求項2】
請求項1に記載するサポートプログラムであって、
前記コンピュータに、
前記印刷指示があった場合に、
前記印刷指示による印刷対象の前記画像を示す前記中間画像データを前記オペレーティングシステムから取得し、取得した前記中間画像データに基づいてラスタライズを行って前記ラスタ画像を生成する生成処理を実行させ、
前記生成処理の実行後、前記第1取得処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項3】
請求項1または請求項2に記載するサポートプログラムであって、
前記判定処理では、
前記第1取得処理にて取得した前記第1サイズ情報に示される画像サイズが、前記第2取得処理にて取得した前記第2サイズ情報に示される用紙サイズに収まらない場合、不適と判定する、
ことを特徴とするサポートプログラム。
【請求項4】
請求項3に記載するサポートプログラムであって、
前記判定処理では、さらに、
前記第1取得処理にて取得した前記第1サイズ情報に示される画像サイズが、前記第2取得処理にて取得した前記第2サイズ情報に示される用紙サイズに収まる場合であっても、前記第2取得処理にて取得した前記第2サイズ情報に示される用紙サイズと、前記第1取得処理にて取得した前記第1サイズ情報に示される画像サイズと、の差が所定範囲外であった場合に、不適と判定する、
ことを特徴とするサポートプログラム。
【請求項5】
請求項1から請求項4のいずれか1つに記載するサポートプログラムであって、
前記コンピュータに、
前記警告処理にて警告を行うための前記処理を実行した場合に、前記印刷指示に基づく印刷ジョブをキャンセルするか否かを、前記ユーザインタフェースを用いて受け付け、キャンセルを受け付けた場合、前記印刷ジョブをキャンセルするキャンセル処理を実行させる、
ことを特徴とするサポートプログラム。
【請求項6】
請求項1から請求項5のいずれか1つに記載するサポートプログラムであって、
前記印刷設定に含まれる用紙サイズに設定可能なサイズには、高価値を示す所定のサイズがあり、
前記第2取得処理にて取得した前記第2サイズ情報に示される用紙サイズが前記所定のサイズであれば、前記判定処理にて不適と判定した場合に、前記ラスタ画像が前記プリンタに送信される前に、前記コンピュータに前記警告処理を実行させ、
前記第2取得処理にて取得した前記第2サイズ情報に示される用紙サイズが前記所定のサイズでなければ、前記コンピュータに前記警告処理を実行させない、
ことを特徴とするサポートプログラム。
【請求項7】
請求項1から請求項5のいずれか1つに記載するサポートプログラムであって、
前記印刷設定に含まれる用紙種に設定可能な種類には、高価値を示す所定の種類があり、
前記印刷設定に含まれる用紙種が前記所定の種類であれば、前記判定処理にて不適と判定した場合に、前記ラスタ画像が前記プリンタに送信される前に、前記コンピュータに前記警告処理を実行させ、
前記印刷設定に含まれる用紙種が前記所定の種類でなければ、前記コンピュータに前記警告処理を実行させない、
ことを特徴とするサポートプログラム。
【請求項8】
請求項1から請求項7のいずれか1つに記載するサポートプログラムであって、
前記警告処理では、
前記第2取得処理にて取得した前記第2サイズ情報に示される用紙サイズを、前記ユーザインタフェースを用いて報知する警告を行うための前記処理を行う、
ことを特徴とするサポートプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
【背景技術】
【0002】
プリンタの技術として、例えば特許文献1には、受信した印刷データの画像のサイズと、プリンタにセットされている用紙のサイズと、を比較し、サイズの不一致を検出する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2007-145540号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、情報処理装置において、プリンタドライバを利用せず、オペレーティングシステム(OS)に標準に組み込まれている印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタとOS標準の印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタドライバを用いずに、OS標準の印刷プログラムによる印刷が可能になる。
【0005】
情報処理装置において、特許文献1の技術のようにサイズの不一致を検出することができれば、プリンタでの処理負荷が軽減される。しかしながら、前述したOS標準の汎用印刷プログラムでは、画像のサイズと用紙のサイズとの適否を検出する機能をサポートしておらず、サイズの不一致に対して適切な処理を行うことが困難である。そのため、画像が用紙からはみ出す等、印刷してからユーザの意図しない印刷結果となったことに気付くことがある。
【0006】
本明細書は、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、用紙サイズに基づくユーザの意図しない印刷を低減する技術を開示する。
【課題を解決するための手段】
【0007】
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記情報処理装置のオペレーティングシステムにあらかじめ組み込まれた汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記印刷指示による印刷対象の画像を示すラスタ画像の画像サイズの情報である第1サイズ情報を、前記ラスタ画像の縦方向のドット数と横方向のドット数と解像度とに基づいて取得する第1取得処理と、前記印刷指示についての印刷設定に含まれる用紙サイズの情報である第2サイズ情報を取得する第2取得処理と、前記第1取得処理にて取得した前記第1サイズ情報に示される画像サイズと、前記第2取得処理にて取得した前記第2サイズ情報に示される用紙サイズとを比較することで、用紙サイズの適否を判定する判定処理と、前記判定処理にて不適と判定した場合に、前記情報処理装置のユーザインタフェースを用いて、警告を行うための処理を行う警告処理と、を実行させる、ことを特徴としている。
【0008】
本明細書に開示されるサポートプログラムによれば、情報処理装置は、汎用印刷プログラムに対する印刷指示があった際に、サポートプログラムによって、印刷対象となるラスタ画像の画像サイズと、印刷設定に含まれる用紙サイズとを比較して適否を判定する。さらに、情報処理装置は、画像サイズに対して用紙サイズが不適と判定した場合、ラスタ画像を送信する前に、用紙サイズに関する警告のための処理を行う。これにより、ユーザがそのラスタ画像の印刷を回避するための入力を行うことが期待でき、その結果として、ユーザの意図しない印刷を回避できる可能性が高まる。
【0009】
上記サポートプログラムが組み込まれた情報処理装置、サポートプログラムを格納するコンピュータにて読取可能な記憶媒体、及びサポートプログラムの機能を実現するための制御方法も、新規で有用である。
【発明の効果】
【0010】
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、用紙サイズに基づくユーザの意図しない印刷を低減する技術が実現される。
【図面の簡単な説明】
【0011】
図1】PCの電気的構成の概略を示すブロック図である。
図2】各プログラムによる印刷動作の手順の例を示すシーケンス図である。
図3】サイズ判定処理の手順を示すフローチャートである。
図4】警告メッセージの例を示す説明図である。
【発明を実施するための形態】
【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等から印刷データを受信して、受信した印刷データに基づく印刷を実行する。本形態のプリンタ2は、さらに、PC1等から能力値を要求するコマンドを受け付けた場合、自装置の能力を示す能力値の情報を読み出し、コマンドを送信した装置に返信する。プリンタ2が送信する能力値の情報には、例えば、装着されているトレイの情報、トレイごとに設定されている用紙の情報、対応可能な印刷解像度の情報、が含まれる。
【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に渡される。A06にて補助プログラムに渡される印刷設定の情報は、例えば、用紙サイズの情報と用紙種の情報とを含む。なお、汎用印刷プログラム41は、中間画像データの生成前に補助プログラム42を実行して、印刷設定の情報を補助プログラム42に渡しても良い。
【0031】
補助プログラム42は、A06にて汎用印刷プログラム41から受け取った実行指示に基づいて、中間画像データに基づくラスタライズを行い、印刷対象の画像を示す印刷データを生成する(A07)。A07は、生成処理の一例である。A07にて生成される印刷データは、プリンタ2にて印刷に使用できる形式のデータであり、例えば、プリンタ2のモデルに専用のPDLデータである。印刷データは、ラスタ画像の一例である。
【0032】
プリンタ2に対応する補助プログラム42にてラスタライズすることで、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適した印刷データが生成される可能性が高い。なお、A07にて生成される印刷データは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
【0033】
補助プログラム42は、A07にて生成した印刷データと、A06にて受け取った印刷設定に含まれる用紙サイズの情報とに基づいて、サイズ判定処理を実行する(A08)。サイズ判定処理は、印刷データに基づく印刷を実行した場合の印刷結果である印刷画像のサイズと、印刷設定に含まれる用紙サイズと、を比較することで、用紙サイズの適否を判定する処理である。
【0034】
なお、補助プログラム42がA07にて印刷データを生成する代わりに、汎用印刷プログラム41が印刷データの生成を行っても良い。つまり、汎用印刷プログラム41は、A05にて生成した中間画像データをラスタライズして印刷データを生成し、生成した印刷データを補助プログラム42に渡してもよい。この場合、補助プログラム42は、汎用印刷プログラム41から受け取った印刷データに基づいて、サイズ判定処理を実行する。
【0035】
汎用印刷プログラム41によって生成される印刷データは、各種のプリンタにて印刷に使用できる形式の印刷データであり、例えば、PWGRasterデータ、または、PDFデータである。汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、処理時間増大の回避が見込まれ、補助プログラム42のプログラムサイズが抑えられる。なお、汎用印刷プログラム41によって生成される印刷データによりサイズを判定する場合、汎用印刷プログラム41は、中間画像データを補助プログラム42に渡さなくてもよい。
【0036】
次に、図2のA08にて実行されるサイズ判定処理の手順について、図3のフローチャートを参照して説明する。このサイズ判定処理は、補助プログラム42の処理であり、PC1のCPU11によって実行される。
【0037】
サイズ判定処理では、CPU11は、図2のA06にて汎用印刷プログラム41から受け取った印刷設定に基づいて、印刷設定に含まれる用紙情報を取得する(S101)。用紙情報には、例えば、用紙サイズ、用紙種、の情報が含まれる。S101にて取得される用紙情報に含まれる用紙サイズの情報は、第2サイズ情報の一例である。S101は、第2取得処理の一例である。
【0038】
そして、CPU11は、取得した印刷設定の用紙情報が判定の実行対象であるか否かを判断する(S102)。印刷設定の用紙が、例えば、用紙種が普通紙や再生紙であって、用紙サイズがA4等の定型サイズであれば、サイズが適合しない印刷を行って用紙が無駄になったとしてもユーザの損失は小さい可能性が高い。安価な用紙と想定される場合は画像のはみ出しや印刷のやり直しが許容され易いことから、早期に印刷を完了させて印刷結果を出力する方が好ましい。
【0039】
今回の印刷が判定の実行対象ではないと判断した場合(S102:NO)、CPU11は、「OK」と判定して(S111)、サイズ判定処理を終了する。CPU11は、用紙種が普通紙または再生紙であって、かつ、用紙サイズがA4、B5等の定型サイズであれば、S102にてNOと判断する。判定対象ではない場合には、S103以降の処理を行わずに「OK」と判定することで、早期に印刷結果を出力させることができる。
【0040】
一方、印刷設定として、高価格である可能性が高い用紙が指定されている場合、サイズが適合しない印刷を行って用紙が無駄になることは好ましくない。例えば、用紙種が厚紙、ハガキ、シール用紙、OHP用紙、布等の場合や、用紙サイズがハガキ、封筒等の場合、その用紙は、普通紙または再生紙の定型サイズの用紙に比較して、高価格である可能性が高い。ハガキまたは封筒を示す用紙サイズは、高価値を示す所定のサイズの一例である。また、厚紙、ハガキ、シール用紙、OHP用紙、布を示す用紙種は、高価値を示す所定の種類の一例である。CPU11は、用紙種が普通紙と再生紙とのいずれでもない、または、用紙サイズがA4、A5、B4、B5のいずれでもない場合、S102にてYESと判断する。
【0041】
用紙情報が判定の実行対象であると判断した場合(S102:YES)、CPU11は、図2のA07にて生成した印刷データに基づいて、この印刷データに基づく印刷を実行した場合の印刷結果である印刷画像の画像サイズを算出する(S103)。具体的には、CPU11は、印刷データの1ライン分のドット数およびライン数を、それぞれ印刷設定にて指定されている印刷解像度(例えば、ドット/インチで表される値)で割ることで、印刷画像の横サイズおよび縦サイズを算出する。S103にて算出される印刷画像のサイズの情報は、第1サイズ情報の一例である。S103は、第1取得処理の一例である。
【0042】
そして、CPU11は、S101にて取得した用紙情報に含まれる用紙サイズと、S103にて算出した印刷画像の画像サイズと、を比較し、印刷画像の画像サイズの方が用紙サイズよりも大きいか否かを判断する(S106)。S106は、判定処理の一例である。CPU11は、例えば、印刷用の用紙サイズとしてA4等の定型サイズが指定されている場合、その用紙サイズの横方向および縦方向のサイズと、S102にて算出した印刷画像の横サイズおよび縦サイズと、をそれぞれ比較する。なお、CPU11は、余白の設定に基づいて、用紙サイズのうちの印刷可能な範囲のサイズと印刷画像の画像サイズとを比較してもよい。
【0043】
印刷画像の画像サイズの方が大きくはないと判断した場合(S106:NO)、CPU11は、画像サイズと用紙サイズとの差が所定範囲を超えて大きいか否かを判断する(S107)。S107は、判定処理の一例である。縦サイズと横サイズのいずれについても、画像サイズと用紙サイズとの差が小さいと判断した場合(S107:NO)、CPU11は、「OK」と判定して(S111)、サイズ判定処理を終了する。画像サイズが用紙サイズ以下であり、サイズの差が小さい場合には、画像は用紙に収まることから、画像の全体が印刷され、さらに、余白が大きすぎることのない適切な印刷となる可能性が高い。この場合には、CPU11は、用紙サイズが適切と判定する。
【0044】
一方、印刷画像の画像サイズの方が大きいと判断した場合(S106:YES)、または、画像サイズの方が用紙サイズよりも小さくても、その差が所定範囲を超えて大きいと判断した場合(S107:YES)、CPU11は、「NG」と判定して(S112)、サイズ判定処理を終了する。印刷画像の画像サイズの方が用紙サイズよりも大きい場合、用紙に画像が収まらないことから、印刷すると画像が用紙からはみ出すことになり、ユーザの意図しない印刷となる可能性が高い。また、画像サイズの方が用紙サイズよりも小さくても、その差が所定範囲外である場合、余白が大きくなりすぎ、用紙の無駄が大きくなる可能性が高い。これらの場合にはCPU11は、用紙サイズが不適切と判定する。
【0045】
なお、画像サイズの方が用紙サイズよりも大きくてもその差が僅かであれば、印刷されない部分があっても影響は小さい可能性が高い。あるいは、例えば、余白を小さくする等によって画像の全体が印刷される可能性がある。そこで、画像サイズの方が用紙サイズよりも大きくても、縦サイズと横サイズとのいずれについてもサイズの差が小さい場合、CPU11は、「OK」と判定してもよい。
【0046】
また、例えば、印刷設定に含まれる用紙種がロール紙を示している場合、補助プログラム42は、用紙サイズのうち縦サイズ(ロール紙の巻き出し方向の長さ、用紙長ともいう)の比較は行わなくてもよい。この場合、補助プログラム42は、S106やS107にて、横サイズ(ロール紙の軸方向の長さ、用紙幅ともいう)のみを比較すればよい。
【0047】
印刷データの縦横のドット数は、印刷設定とは関わりなく、編集アプリ43にて指定された画像データのサイズに基づいて決定される。補助プログラム42は、編集アプリ43から情報を取得することはできない可能性が高いが、情報を取得できる場合には、編集アプリ43から取得した情報に基づいて画像サイズを取得してもよい。また、補助プログラム42は、印刷データを生成しなくても中間画像データから画像サイズを取得できる場合には、中間画像データに基づいて画像サイズを取得しても良い。これらの場合、補助プログラム42は、図2のA07の前に画像サイズを取得し、サイズ判定処理のS103に代えて、取得した画像サイズを用いてS106およびS107の判断を行い、「OK」と判定した場合に印刷データを生成するとしてもよい。
【0048】
ただし、編集アプリ43から情報を取得する処理や、中間画像データから画像サイズを取得する処理には、時間が掛かる可能性がある。また、実際に生成した印刷データに基づいて判定すれば、正確な判定となる可能性が高いことから、印刷データの生成後にサイズ判定処理を実行する方が好ましい。
【0049】
図2の説明に戻る。補助プログラム42は、A08のサイズ判定処理にて「OK」と判定した場合(alt:[OK])、A07にて生成した印刷データと印刷実行を指示するコマンドとをプリンタ2に送信する(A11)。印刷データと印刷実行を指示するコマンドとを受信したプリンタ2は、受信したコマンドに基づいて、印刷データの画像を印刷する(A12)。これにより、印刷物が生成される。補助プログラム42は、さらに、印刷データの送信を終了したことを汎用印刷プログラム41に通知する。
【0050】
なお、プリンタ2への送信は、汎用印刷プログラム41が行っても良い。つまり、補助プログラム42は、生成した印刷データを、プリンタ2を送信先としてPC1から送信されるように、汎用印刷プログラム41に渡しても良い。この場合、汎用印刷プログラム41は、補助プログラム42から受け取った印刷データをプリンタ2に送信する。
【0051】
一方、A08のサイズ判定処理にて「NG」と判定した場合(alt:〔NG〕)、補助プログラム42は、ユーザIF13に警告メッセージを表示する(A21)。A21は、警告処理の一例である。警告メッセージは、例えば、図4に示すように、印刷画像のサイズと印刷設定の用紙サイズとが不適であることを示すメッセージである。補助プログラム42は、警告メッセージによって、そのまま印刷を続行するか、印刷をキャンセルするか、をユーザに問い合わせる。
【0052】
補助プログラム42は、サイズ判定処理にて、印刷画像の画像サイズの方が印刷設定の用紙サイズよりも大きいと判断した場合(図3のS106にてYES)、例えば、図4(A)に示すように、用紙サイズより印刷画像が大きく、印刷されない部分が有る可能性があることを示すメッセージを含む警告メッセージ50を表示する。この警告メッセージ50には、印刷設定の用紙サイズの情報と、印刷する指示を受け付けるボタン51と、印刷のキャンセルを受け付けるボタン52と、が含まれる。
【0053】
補助プログラム42は、サイズ判定処理にて、印刷画像の画像サイズの方が印刷設定の用紙サイズよりも小さいものの、その差が所定範囲外であると判断した場合(図3のS107にてYES)、例えば、図4(B)に示すように、用紙サイズより印刷画像が小さく、余白部分が大きい可能性があることを示すメッセージを含む警告メッセージ60を表示する。この警告メッセージ60には、印刷設定の用紙サイズの情報と、印刷する指示を受け付けるボタン61と、印刷のキャンセルを受け付けるボタン62と、が含まれる。
【0054】
なお、警告は、警告メッセージ50、60等の表示に限らず、音声による警告であっても良いし、表示と音声との併用であっても良い。また、警告メッセージには、印刷画像の画像サイズを示す情報や、印刷イメージを示すプレビュー画像が含まれていても良い。また、表示するメッセージの内容は、警告に限らず、サイズの確認を促すメッセージであっても良い。また、補助プログラム42は、自身で警告メッセージ50、60を表示する代わりに、警告の情報および報知の指示を汎用印刷プログラム41またはOS21に渡して、汎用印刷プログラム41またはOS21に報知させても良い。警告メッセージや警告音声をユーザIF13に出力させる処理や、警告の情報および報知の指示を汎用印刷プログラム41に渡す処理は、警告を行うための処理の一例である。
【0055】
そして、補助プログラム42は、ボタン51、51またはボタン61、62へのユーザの操作を受け付ける(A22)。補助プログラム42は、ボタン51またはボタン61にて印刷する指示を受け付けた場合(alt:〔印刷〕)、印刷データをプリンタ2に送信する(A23)。A23は、A11と同様の処理である。プリンタ2は、受信した印刷データに基づいて、印刷を実行する(A24)。
【0056】
一方、ボタン52またはボタン62にてキャンセルの指示を受け付けた場合(alt:〔キャンセル〕)、補助プログラム42は、印刷ジョブをキャンセルする情報を汎用印刷プログラム41に渡す(A25)。A25は、キャンセル処理の一例である。これにより、汎用印刷プログラム41は、A04にて受け取った印刷指示に基づく印刷ジョブをキャンセルし、印刷の処理を終了する。補助プログラム42は、A07にて生成した印刷データを削除してもよい。警告メッセージ50、60にてキャンセルの指示を受け付けることで、ユーザの意図しない印刷を確実に回避できる。
【0057】
なお、補助プログラム42は、表示中の警告メッセージ50、60にて、用紙サイズの変更指示を受け付けても良い。本形態の警告メッセージ50、60では、現在設定されている用紙サイズの情報を報知するので、ユーザは、印刷を指示した画像のサイズとの不一致に気づきやすい。用紙サイズの変更指示を受け付けた場合、補助プログラム42は、A06にて汎用印刷プログラム41から受け取った印刷設定を変更して、変更後の印刷設定の情報を印刷データとともにプリンタ2に送信すればよい。ユーザの指示に基づいて用紙サイズが変更され、画像サイズに適合する印刷設定となれば、適切な印刷となることが期待できる。
【0058】
以上、詳細に説明したように、本形態の補助プログラム42によればPC1は、汎用印刷プログラム41に対する印刷指示があった際に、印刷対象となる印刷データの画像サイズと、印刷設定に含まれる用紙サイズとを比較して適否を判定する。さらに、PC1は、画像サイズに対して用紙サイズが不適と判定した場合、印刷データを送信する前に、用紙サイズに関する警告のための処理を行う。これにより、ユーザがその印刷を回避するための入力を行うことが期待でき、その結果として、ユーザの意図しない印刷を回避できる可能性が高まる。
【0059】
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。従って、本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
【0060】
また、例えば、図示の警告メッセージはいずれも一例であり、これに限らない。例えば、印刷やキャンセルを受け付けるボタンは、無くても良い。例えば、補助プログラム42は、不適と判定した場合には、警告メッセージを表示した後に印刷をキャンセルするとしても良い。あるいは、補助プログラム42は、不適と判定した場合であっても、例えば、プリンタ2にて受信した印刷をキャンセルできる機能を備えている場合には、警告メッセージを表示した後に印刷データをプリンタ2に送信するとしても良い。ただし、警告メッセージにてユーザの指示を受け付けることで、一律にキャンセルあるいはデータ送信となるよりもユーザの意向が反映されやすい。また、警告メッセージでは、用紙サイズを表示しなくても良い。
【0061】
また、例えば、本形態では、サイズ判定処理のS102にて、用紙サイズや用紙種によって、判定対象とするか否かを判断するとしたが、この判断は行わなくても良い。つまり、用紙サイズや用紙種に関わらず、全ての印刷指示を判定対象としても良い。
【0062】
また、例えば、本形態では、画像サイズの方が用紙サイズよりも小さくても、その差が所定範囲外である場合には警告するとしたが、しなくても良い。具体的には、サイズ判定処理のS107の判断は無くても良い。
【0063】
また、本形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフロー アプリ(Print workflow)でも良い。
【0064】
また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示を受け付けても良いし、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
【0065】
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
【0066】
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【0067】
1 PC
2 プリンタ
11 CPU
13 ユーザIF
図1
図2
図3
図4