(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024124645
(43)【公開日】2024-09-13
(54)【発明の名称】サポートプログラム
(51)【国際特許分類】
G06F 3/12 20060101AFI20240906BHJP
【FI】
G06F3/12 328
G06F3/12 325
G06F3/12 332
G06F3/12 305
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023032468
(22)【出願日】2023-03-03
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110000291
【氏名又は名称】弁理士法人コスモス国際特許商標事務所
(72)【発明者】
【氏名】市川 裕詞
(72)【発明者】
【氏名】成田 建樹
(72)【発明者】
【氏名】細溝 仁人
(72)【発明者】
【氏名】江口 愛莉
(57)【要約】
【課題】OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、印刷対象の画像を拡大または縮小して印刷する技術を提供すること。
【解決手段】補助プログラム42は、プリンタ2にて対応可能な用紙サイズの一覧を示す用紙サイズ情報を取得し、取得された用紙サイズ情報に含まれる用紙サイズと用紙サイズ情報に含まれない用紙サイズとを含む原稿サイズ情報を生成し、生成された原稿サイズ情報に含まれる原稿サイズの1つの選択を可能にする。さらに、補助プログラム42は、編集アプリ43から出力された印刷指示であって、汎用印刷プログラム41に画像の印刷をプリンタ2に行わせる印刷指示があった場合に、原稿サイズがプリンタ2で対応可能な用紙サイズか否かを判定し、対応可能でないと判定された場合に、印刷対象の画像をプリンタ2で対応可能な用紙サイズに合わせて拡大または縮小し、プリンタ2に印刷させる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記情報処理装置には、汎用印刷プログラムを有するオペレーティングシステムが搭載されており、前記サポートプログラムで対応可能な用紙サイズが複数有り、
前記コンピュータに、
前記汎用印刷プログラムから所定の要求があった場合に、
前記プリンタで対応可能な用紙サイズの一覧を示す用紙サイズ情報を取得する取得処理と、
原稿サイズの一覧として、前記取得処理にて取得された前記用紙サイズ情報に含まれる用紙サイズと、前記サポートプログラムで対応可能な用紙サイズであって前記取得処理にて取得された前記用紙サイズ情報に含まれない用紙サイズである拡張用紙サイズと、を含む原稿サイズ情報を生成し、生成された前記原稿サイズ情報に含まれる原稿サイズの1つの選択を可能にする生成処理と、
を実行させることが可能であり、
さらに前記コンピュータに、
前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、
前記印刷指示に基づく印刷対象の前記画像の原稿サイズが前記プリンタで対応可能な用紙サイズに含まれるか否かを判定する判定処理と、
前記判定処理にて前記プリンタで対応可能な用紙サイズに含まれないと判定された場合に、印刷対象の前記画像を、前記プリンタで対応可能な用紙サイズの1つに合わせて拡大または縮小するための処理を行うスケーリング処理と、
印刷対象の前記画像に基づく印刷を前記プリンタに行わせるための処理を行う印刷処理であって、前記スケーリング処理にて印刷対象の前記画像が拡大または縮小されていた場合には、拡大または縮小された後の前記画像を用いた印刷を前記プリンタに行わせるための前記処理を行う、前記印刷処理と、
を実行させる、
ように構成されるサポートプログラム。
【請求項2】
請求項1に記載するサポートプログラムであって、
前記コンピュータに、
原稿サイズが前記プリンタで対応可能な用紙サイズに含まれないサイズになっている場合に、前記プリンタで対応可能な用紙サイズの1つの選択を、前記情報処理装置のユーザインタフェースを介して受け付けるサイズ選択処理を実行させることが可能であり、
前記スケーリング処理では、
印刷対象の前記画像を、前記サイズ選択処理にて選択された用紙サイズに合わせて拡大または縮小するための前記処理を行う、
ように構成されるサポートプログラム。
【請求項3】
請求項1に記載するサポートプログラムであって、
前記スケーリング処理では、
印刷対象の前記画像を、前記プリンタで対応可能な用紙サイズの1つに合わせて拡大または縮小した画像を示す印刷データを生成する、
ように構成されるサポートプログラム。
【請求項4】
請求項1に記載するサポートプログラムであって、
前記拡張用紙サイズとするための条件が有り、前記サポートプログラムで対応可能な用紙サイズであって前記取得処理にて取得された前記用紙サイズ情報に含まれない用紙サイズのうち、前記条件を満たす用紙サイズを、前記拡張用紙サイズとする、
ように構成されるサポートプログラム。
【請求項5】
請求項1に記載するサポートプログラムであって、
前記コンピュータに、
前記スケーリング処理を実行した場合に、印刷対象の前記画像を拡大または縮小することを、前記情報処理装置のユーザインタフェースに通知させる通知処理を実行する、
ように構成されるサポートプログラム。
【請求項6】
請求項1に記載するサポートプログラムであって、
前記所定の要求は、前記情報処理装置に組み込まれている前記アプリケーションプログラムから前記汎用印刷プログラムに入力される用紙サイズ一覧の取得要求に基づく要求であり、
前記生成処理の実行によって、生成された前記原稿サイズ情報が前記アプリケーションプログラムに渡され、前記アプリケーションプログラムにおいて、前記原稿サイズ情報に含まれる原稿サイズの1つの選択が可能になる、
ように構成されるサポートプログラム。
【請求項7】
請求項6に記載するサポートプログラムであって、
前記コンピュータに、
前記印刷指示があった場合に、
前記判定処理にて前記プリンタで対応可能な用紙サイズに含まれないと判定された場合、前記スケーリング処理を実行する前に、前記プリンタで対応可能な用紙サイズの1つの選択を、前記情報処理装置のユーザインタフェースを介して受け付ける印刷時サイズ選択処理を実行させ、
前記スケーリング処理では、
印刷対象の前記画像を、前記印刷時サイズ選択処理にて選択された用紙サイズに合わせて拡大または縮小するための前記処理を行う、
ように構成されるサポートプログラム。
【請求項8】
請求項1に記載するサポートプログラムであって、
前記所定の要求は、設定画面の表示要求であり、
前記コンピュータに、
前記汎用印刷プログラムから前記設定画面の表示指示があった場合に、前記設定画面を前記情報処理装置のユーザインタフェースに表示させる表示処理を実行させ、前記設定画面において、前記原稿サイズ情報に含まれる原稿サイズの1つの選択が可能になる、
ように構成されるサポートプログラム。
【請求項9】
請求項8に記載するサポートプログラムであって、
前記コンピュータに、
前記設定画面にて前記プリンタが対応していない用紙サイズが原稿サイズとして選択されたことに基づいて、前記プリンタで対応可能な用紙サイズの1つの選択を、前記情報処理装置のユーザインタフェースを介して受け付ける設定時サイズ選択処理を実行させ、
前記スケーリング処理では、
印刷対象の前記画像を、前記設定時サイズ選択処理にて選択された用紙サイズに合わせて拡大または縮小するための前記処理を行う、
ように構成されるサポートプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書に開示される技術分野は、プリンタの制御をサポートするサポートプログラムに関する。
【背景技術】
【0002】
従来、プリンタドライバが印刷対象の画像を任意のサイズに拡大または縮小する技術が知られている。例えば特許文献1には、XMLファイルとEMFファイルとを扱うことが可能なプリンタドライバであって、プリンタドライバが印刷領域を調節するスケーリング機能を有する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、前述したプリンタベンダから提供されるプリンタドライバを利用せず、オペレーティングシステム(OS)の一部を構成するOS標準の汎用印刷プログラムによってプリンタを制御する技術が実用化されている。この技術では、OSがプリンタを検知するとOS標準の汎用印刷プログラムとの関連付けを行い、以後、そのプリンタに対する印刷指示を受け付けた場合に、プリンタベンダから提供されるプリンタドライバを用いずに、OS標準の汎用印刷プログラムが印刷データを生成することで、OS標準の汎用印刷プログラムによる印刷が可能になる。
【0005】
しかしながら、情報処理装置から前述したOS標準の汎用印刷プログラムを介してプリンタに印刷を行わせる場合に、アプリケーションプログラムから受け付けた画像を拡大または縮小して印刷する技術について開示しているものがない。そのため、汎用印刷プログラムに印刷対象の画像を渡すアプリケーションプログラムがスケーリング機能を有していなければ、印刷対象の画像を拡大または縮小して印刷することができないことから、改善の余地がある。
【課題を解決するための手段】
【0006】
上述した課題の解決を目的としてなされたサポートプログラムは、情報処理装置のコンピュータによって実行可能であり、前記情報処理装置と接続するプリンタに対応するサポートプログラムであって、前記情報処理装置には、汎用印刷プログラムを有するオペレーティングシステムが搭載されており、前記サポートプログラムで対応可能な用紙サイズが複数有り、前記コンピュータに、前記汎用印刷プログラムから所定の要求があった場合に、前記プリンタで対応可能な用紙サイズの一覧を示す用紙サイズ情報を取得する取得処理と、原稿サイズの一覧として、前記取得処理にて取得された前記用紙サイズ情報に含まれる用紙サイズと、前記サポートプログラムで対応可能な用紙サイズであって前記取得処理にて取得された前記用紙サイズ情報に含まれない用紙サイズである拡張用紙サイズと、を含む原稿サイズ情報を生成し、生成された前記原稿サイズ情報に含まれる原稿サイズの1つの選択を可能にする生成処理と、を実行させることが可能であり、さらに前記コンピュータに、前記情報処理装置に組み込まれているアプリケーションプログラムから出力された印刷指示であって、前記汎用印刷プログラムに対して画像の印刷を前記プリンタに行わせる前記印刷指示があった場合に、前記印刷指示に基づく印刷対象の前記画像の原稿サイズが前記プリンタで対応可能な用紙サイズに含まれるか否かを判定する判定処理と、前記判定処理にて前記プリンタで対応可能な用紙サイズに含まれないと判定された場合に、印刷対象の前記画像を、前記プリンタで対応可能な用紙サイズの1つに合わせて拡大または縮小するための処理を行うスケーリング処理と、印刷対象の前記画像に基づく印刷を前記プリンタに行わせるための処理を行う印刷処理であって、前記スケーリング処理にて印刷対象の前記画像が拡大または縮小されていた場合には、拡大または縮小された後の前記画像を用いた印刷を前記プリンタに行わせるための前記処理を行う、前記印刷処理と、を実行させる、ように構成されている。
【0007】
本明細書に開示されるサポートプログラムは、汎用印刷プログラムからの要求があった場合に、プリンタで対応しない拡張用紙サイズを含む原稿サイズの一覧を生成して、その一覧からの原稿サイズの選択を可能にする。従って、プリンタで対応しない原稿サイズの画像を印刷対象とすることが可能になる。さらに、サポートプログラムは、プリンタで対応しない原稿サイズの画像が印刷対象となった場合に、プリンタで対応可能な用紙サイズの1つに合わせて印刷対象の画像を拡大または縮小するための処理を行う。これにより、アプリケーションプログラムから渡される印刷対象の画像を、プリンタで対応可能な用紙に印刷させることができる。
【0008】
上記サポートプログラムが組み込まれた情報処理装置、サポートプログラムを格納するコンピュータにて読取可能な記憶媒体、及びサポートプログラムの機能を実現するための制御方法、サポートプログラムとプリンタとを含む印刷システムも、新規で有用である。
【発明の効果】
【0009】
本明細書に開示される技術によれば、OS標準の汎用印刷プログラムが組み込まれた情報処理装置において、印刷対象の画像を拡大または縮小して印刷する技術が実現される。
【図面の簡単な説明】
【0010】
【
図1】PCの電気的構成の概略を示すブロック図である。
【
図2】印刷設定手順の例を示すシーケンス図である。
【
図6】用紙選択ダイアログの例を示す説明図である。
【
図7】画像作成手順の例を示すシーケンス図である。
【
図8】印刷実行手順の例を示すシーケンス図である。
【発明を実施するための形態】
【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標準のプログラムである。つまり、PC1には、汎用印刷プログラム41を有するOS21が搭載されている。汎用印刷プログラム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等から印刷データを受信した場合、受信した印刷データに基づく印刷を実行可能である。プリンタ2は、カラー印刷可能な装置であっても良いし、単色印刷のみを実行可能な装置であっても良い。
【0026】
次に、本形態のPC1において、プリンタ2に印刷を行わせるための処理に関する動作について説明する。なお、本形態における各処理は、基本的に、補助プログラム42などのプログラムに記述された命令に従ったCPU11の処理を示す。CPU11による処理は、OS21のAPIを用いたハードウェアの制御も含む。本明細書では、OS21の詳細な記載を省略して各プログラムの動作を説明する。また、「取得」は要求を必須とはしない概念で用いる。
【0027】
まず、編集アプリ43等を利用して作成された文書や画像を印刷するための手順であって、ユーザによる印刷設定の指示を受け付けた場合の印刷設定手順について、
図2のシーケンス図を参照して説明する。例えば、編集アプリ43にて編集済みのデータに基づく画像の印刷をプリンタ2に行わせたい場合、ユーザは、編集アプリ43にて印刷を選択する(A05)。ユーザは、例えば編集アプリ43に設けられた操作項目のメニューから、印刷を選択できる。
【0028】
編集アプリ43は、印刷の選択を受け付けると、OS21の汎用印刷プログラム41に印刷に関する指示を受け付ける画面の表示を要求する(A06)。汎用印刷プログラム41は、要求に応じて、印刷設定画面をユーザIF13に表示させる(A07)。印刷設定画面は、汎用印刷プログラム41にて受け付け可能な各種の印刷設定について、ユーザの指示を受け付ける画面である。なお、印刷設定画面の表示は、編集アプリ43が行っても良い。
【0029】
印刷設定画面の例を
図3に示す。
図3の例の印刷設定画面D2は、プリンタ選択欄51、情報表示欄52、基本的な印刷設定の選択欄53、詳細設定ボタン54、印刷ボタン55、を含む。プリンタ選択欄51は、印刷を実行させるデバイスの選択を受け付ける欄である。情報表示欄52は、プリンタ選択欄51にて選択されたデバイスに対応する補助プログラムによって指定された情報を表示する欄である。例えば、プリンタ選択欄51にてプリンタ2の選択を受け付けた場合、または、OS21にて通常使用するプリンタとしてプリンタ2が設定されている状態で印刷の指示を受け付けた場合、汎用印刷プログラム41は、補助プログラム42を起動し、補助プログラム42によって用意される画像を情報表示欄52に表示することができる。
【0030】
基本的な印刷設定の選択欄53は、印刷部数や原稿の向き等の基本的な設定を受け付ける欄である。
図3の例の印刷設定画面D2では、基本的な印刷設定の選択欄53に、用紙サイズの選択欄531が含まれる。A07では、この用紙サイズの選択欄531には、例えば、汎用印刷プログラム41または補助プログラム42に設定されているデフォルトの用紙サイズが表示される。詳細設定ボタン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にて対応可能な用紙サイズの情報を含むプリンタ2の能力情報を取得できる。A15は、取得処理の一例である。
【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は、プリンタ2の能力情報として、プリンタ2にて対応可能な用紙サイズの一覧を示す用紙サイズ情報を取得できる。プリンタ2にて対応可能な用紙サイズの情報は、プリンタ2のモデルに基づく機能として印刷可能な用紙サイズの情報であっても良いし、プリンタ2の備える各給紙トレイに収容可能な用紙サイズの情報であっても良いし、各給紙トレイに設定あるいは検知されている用紙サイズの情報であっても良い。
【0036】
補助プログラム42は、プリンタ2の能力情報に基づいて、詳細な印刷設定を受け付ける詳細設定画面をユーザIF13に表示させる(A17)。補助プログラム42によって表示される詳細設定画面には、プリンタ2にて受け付け可能なパラメータが選択肢として含まれる。補助プログラム42は、表示中の詳細設定画面へのユーザの操作を受け付け可能である。なお、詳細設定画面にて受け付け可能な印刷設定の項目は多いことから、補助プログラム42は、例えば、複数のタブによって、選択対象の項目の切り替え指示を受け付け可能であっても良い。
【0037】
補助プログラム42は、A17にて、例えば、
図4に示すような詳細設定画面60をユーザIF13に表示させることができる。詳細設定画面60は、設定画面の一例である。詳細設定画面60には、例えば、原稿サイズの設定を受け付ける設定欄61が含まれる。なお、印刷設定における原稿サイズは、印刷対象となる画像の画像データのサイズを示す情報である。つまり、原稿サイズは、編集アプリ43から汎用印刷プログラム41に渡される画像データのサイズに対応する。詳細設定画面60の表示要求を含むA12は、所定の要求の一例である。A12の表示指示に応じて詳細設定画面60を表示するA17は、表示処理の一例である。
【0038】
補助プログラム42は、A17にて表示させる詳細設定画面60の設定欄61には、デフォルトの原稿サイズとして、プリンタ2におけるデフォルトの用紙サイズと同じサイズを表示させる。デフォルトの用紙サイズは、例えば、プリンタ2にてデフォルトとして設定されている用紙サイズ、デフォルトの給紙トレイに設定または検知されている用紙サイズ、である。補助プログラム42は、プリンタ2の能力情報に基づいて、プリンタ2におけるデフォルトの用紙サイズを取得できる。
【0039】
例えば、ユーザが編集アプリ43にてA3サイズの原稿を作成した場合であっても、プリンタ2のデフォルトの用紙サイズがA4サイズであれば、デフォルトの原稿サイズは、A4サイズとなる。このままで印刷の実行指示が入力された場合、編集アプリ43は、A3サイズの原稿のうちの一部分、例えば、原稿の画像の左上のA4サイズ分、を印刷対象の画像とする可能性が高い。
【0040】
ユーザは、詳細設定画面60の設定欄61への操作によって、原稿サイズを選択する指示を行うことができる。補助プログラム42は、原稿サイズを選択する指示を受け付けると(A21)、原稿サイズの選択肢となるサイズ一覧情報を生成して、ユーザの選択を受け付ける画面をユーザIF13に表示させる(A22)。A22は、生成処理の一例である。サイズ一覧情報は、原稿サイズ情報の一例である。
【0041】
補助プログラム42は、原稿サイズの選択肢を示す画面として、例えば、
図5に示すようなサイズ一覧画面70をユーザIF13に表示させる。サイズ一覧画面70に表示される選択肢には、A15にて取得したプリンタ2の能力情報に基づいて、プリンタ2から取得した用紙サイズ情報に含まれる用紙サイズが、全て含まれる。サイズ一覧画面70に表示される選択肢には、さらに、プリンタ2から取得した用紙サイズ情報には含まれない用紙サイズが、含まれる場合がある。例えば、プリンタ2にて対応可能な用紙サイズに「A3」や「JIS B4」が含まれていなくても、補助プログラム42は、
図5に示すように、「A3」の選択肢71、「JIS B4」の選択肢72、を選択肢に含むサイズ一覧画面70を表示させることができる。
【0042】
具体的には、補助プログラム42は、自身で対応可能な用紙サイズの情報を予め備えており、A22では、自身で対応可能であってプリンタ2から取得した用紙サイズ情報に含まれない用紙サイズを含むサイズ一覧情報を生成する。プリンタ2から取得した用紙サイズ情報に含まれない用紙サイズは、例えば、プリンタ2の機能として印刷不可能な用紙サイズ、プリンタ2の備える各給紙トレイに収容不可能な用紙サイズ、プリンタ2の備える各給紙トレイに収容可能であっても収容されていない用紙サイズ、である。補助プログラム42で対応可能な用紙サイズであって、プリンタ2から取得した用紙サイズ情報に含まれない用紙サイズは、拡張用紙サイズの一例である。
【0043】
なお、補助プログラム42は、サイズ一覧情報に含ませる用紙サイズを決定するための条件を備えていても良い。そして、補助プログラム42は、プリンタ2から取得した用紙サイズ情報に含まれない用紙サイズのうち、その条件を満たす用紙サイズを、サイズ一覧情報に含ませるとしても良い。補助プログラム42がサイズ一覧情報に含ませる用紙サイズを決定するための条件を備えていれば、無暗に用紙サイズを増やすことなく、適切な用紙サイズを含むサイズ一覧情報を生成できる。
【0044】
例えば、補助プログラム42は、プリンタ2から取得した用紙サイズ情報に含まれる各用紙サイズの2倍の面積の用紙サイズを、サイズ一覧情報に含ませる用紙サイズとしても良い。また、補助プログラム42は、例えば、プリンタ2から取得した用紙サイズ情報に含まれる各用紙サイズの4倍の面積の用紙サイズを、サイズ一覧情報に含ませない用紙サイズとしても良い。また、補助プログラム42は、例えば、自身で対応可能な最大の用紙サイズの情報を備え、縦と横の少なくとも一方がその最大の用紙サイズを超える用紙サイズを、サイズ一覧情報に含ませない用紙サイズとしても良い。
【0045】
ユーザは、表示されたサイズ一覧画面70にて希望のサイズを選択することで原稿サイズの設定指示を行う(A23)。A23は、サイズ選択処理の一例であり、設定時サイズ選択処理の一例である。補助プログラム42は、詳細設定画面60の表示要求があった場合に、プリンタ2にて対応不可能な用紙サイズを含むことが可能な原稿サイズの選択肢を表示させることができるので、原稿サイズの選択の自由度が高い。
【0046】
補助プログラム42は、ユーザによって選択された原稿サイズが、プリンタ2にて対応可能な用紙サイズに含まれるか否かを判断する(A24)。そして、対応可能な用紙サイズではないと判断した場合(opt:[非対応サイズ])、補助プログラム42は、用紙選択ダイアログをユーザIF13に表示させる(A25)。用紙選択ダイアログは、設定欄61にて受け付けた原稿サイズと同じサイズの用紙への印刷が不可能であって、縮小または拡大した画像の印刷となることをユーザに報知し、印刷に使用する用紙サイズの選択を受け付ける画面である。
【0047】
補助プログラム42は、表示中の詳細設定画面60に重ねて、例えば、
図6に示すように、ユーザの操作を受け付ける用紙選択ダイアログ80を表示させる。
図6に示す用紙選択ダイアログ80には、用紙サイズ選択欄81と、OKボタン82と、キャンセルボタン83と、が含まれる。補助プログラム42は、用紙サイズ選択欄81では、プリンタ2にて対応可能な全ての用紙サイズからの選択を受け付け、プリンタ2にて対応不可能な用紙サイズの選択を受け付けない。補助プログラム42は、表示中の用紙選択ダイアログ80にて、OKボタン82またはキャンセルボタン83への入力を受け付ける(A26)。A26がサイズ選択処理の一例であっても良い。
【0048】
なお、補助プログラム42は、用紙選択ダイアログ80が表示されている状態では、詳細設定画面60への操作を受け付けない。OKボタン82とキャンセルボタン83とのいずれかへの入力を受け付けた場合、補助プログラム42は、表示中の用紙選択ダイアログ80をクローズし、詳細設定画面60への操作を受け付け可能となる。
【0049】
A26にて受け付けた入力がキャンセルボタン83への入力であった場合には(opt:[キャンセル])、補助プログラム42は、詳細設定画面60の設定欄61にて受け付けた原稿サイズの選択をキャンセルし、デフォルトの原稿サイズに戻して(A27)、詳細設定画面60を再度表示する。一方、受け付けた入力がOKボタン82への入力であった場合には、補助プログラム42は、詳細設定画面60の設定欄61にて受け付けた原稿サイズを変更せず、詳細設定画面60への操作を受け付け可能となる。この場合、補助プログラム42は、印刷設定の用紙サイズのパラメータとして、原稿サイズとは異なるサイズであって、用紙選択ダイアログ80の用紙サイズ選択欄81にて受け付けた用紙サイズを設定する。
【0050】
なお、プリンタ2にて対応不可能な用紙サイズを含む原稿サイズの選択を受け付けたことに応じて、用紙選択ダイアログ80を表示させるタイミングは、設定欄61への操作によって、プリンタ2にて対応不可能な用紙サイズを原稿サイズとして選択する指示を受け付けたタイミングに限らない。用紙選択ダイアログ80を表示させるタイミングは、例えば、適用ボタン等によって、プリンタ2にて対応不可能な用紙サイズが原稿サイズとして適用されたタイミングでも良いし、プリンタ2にて対応不可能な用紙サイズが原稿サイズに設定された状態で印刷設定を終了する指示を受け付けたタイミングでも良い。
【0051】
ユーザは、例えば、詳細設定画面60のOKボタン62の操作によって、A11の指示によって開始した詳細な印刷設定の終了を指示する(A31)。補助プログラム42は、ユーザによる印刷設定の終了指示を受け付けた場合、詳細設定画面60の表示を終了し、受け付けた印刷設定の情報を記憶する(A32)。補助プログラム42は、例えば、原稿サイズの情報と、用紙サイズの情報と、を含む印刷設定の情報を記憶する。
【0052】
そして、補助プログラム42は、受け付けた印刷設定の情報を汎用印刷プログラム41に渡して、詳細な印刷設定の受け付け終了を汎用印刷プログラム41に通知する(A33)。汎用印刷プログラム41は、補助プログラム42の通知に基づいて、受け付けた印刷設定の情報を編集アプリ43に渡して、印刷設定の終了を編集アプリ43に通知する(A34)。補助プログラム42は、印刷設定の受け付け終了を編集アプリ43に通知しても良い。編集アプリ43は、A07にて表示させた印刷設定画面(例えば、
図3に示した印刷設定画面D2)をアクティブにし、印刷実行の指示や印刷のキャンセルの指示等のユーザの指示を受け付け可能な状態となる。
【0053】
なお、前述したように、印刷設定画面D2(
図3参照)には、補助プログラム42によって用意される画像を表示可能な情報表示欄52が含まれる。また、汎用印刷プログラム41は、情報表示欄52への操作を受け付けた場合、補助プログラム42にその操作の情報を渡す。そこで、補助プログラム42は、情報表示欄52に、例えば、原稿サイズの設定を受け付け可能な情報画面を表示させ、情報表示欄52へのユーザの指示によって、原稿サイズの設定指示を受け付けることができる。補助プログラム42は、情報表示欄52を介して受け付けた場合にも、設定された原稿サイズがプリンタ2にて対応不可能な用紙サイズであれば、前述した用紙選択ダイアログ80を表示させると良い。
【0054】
次に、編集アプリ43を利用して文書や画像を作成または編集する際に、印刷に関する設定も併せて受け付ける場合の手順について説明する。例えば、プリンタ2のベンダによって提供される編集アプリ43は、プリンタ2での印刷を前提として画像の編集を受け付けても良い。この場合の印刷対象の画像を生成する手順について、
図7のシーケンス図を参照して説明する。
【0055】
この手順では、編集アプリ43は、原稿の作成または編集に際してまず、例えば、プリンタ2での印刷の対象となる原稿の原稿サイズの選択を受け付ける。編集アプリ43は、ユーザの操作によって、印刷対象の原稿サイズを設定する指示を受け付けると(B01)、汎用印刷プログラム41に、サイズ一覧情報を要求する(B02)。
【0056】
汎用印刷プログラム41は、印刷を実行させるデバイスとしてプリンタ2が選択されていることから、B02の要求を受けて、プリンタ2に対応する補助プログラム42を起動する。さらに、汎用印刷プログラム41は、補助プログラム42に、プリンタ2での印刷にて対応可能な原稿サイズの一覧を示す情報を要求する(B03)。B03は、アプリケーションプログラムから汎用印刷プログラム41に入力される用紙サイズ一覧の取得要求に基づく要求の一例であり、所定の要求の一例である。
【0057】
補助プログラム42は、B03の指示に応じて起動されると、プリンタ2の能力情報を取得する(B05~B07)。なお、B05~B07の手順は、印刷設定手順(
図2参照)のA13~A15と同様の手順である。B07は、取得処理の一例である。
【0058】
補助プログラム42は、取得した能力情報に基づいて、原稿サイズの選択肢となるサイズ一覧情報を生成する(B11)。補助プログラム42は、B11にて、プリンタ2から取得した用紙サイズ情報に含まれる用紙サイズを全て含み、補助プログラム42で対応可能な用紙サイズであって、プリンタ2から取得した用紙サイズ情報に含まれない用紙サイズを含む、サイズ一覧情報を生成する。このサイズ一覧情報は、編集アプリ43にて原稿サイズの選択を受け付けるための原稿サイズ情報となる。B11は、生成処理の一例である。補助プログラム42で対応可能な用紙サイズであって、プリンタ2から取得した用紙サイズ情報に含まれない用紙サイズは、拡張用紙サイズの一例である。補助プログラム42は、補助プログラム42にて対応可能な全ての用紙サイズを含むサイズ一覧情報を生成しても良いし、所定の条件に基づいて決定された選択肢群としても良い。
【0059】
補助プログラム42は、生成したサイズ一覧情報を汎用印刷プログラム41に渡す(B12)。汎用印刷プログラム41は、補助プログラム42から受け取ったサイズ一覧情報を編集アプリ43に渡す(B13)。編集アプリ43からの用紙サイズ一覧の取得要求に応じて、補助プログラム42が汎用印刷プログラム41を介して、プリンタ2にて対応不可能な用紙サイズを含むことが可能なサイズ一覧情報を編集アプリ43に渡すので、編集アプリ43での原稿サイズの選択に関する自由度が高い。
【0060】
編集アプリ43は、受け取ったサイズ一覧情報に基づいて、サイズ一覧を示す画面をユーザIF13に表示させ(B16)、ユーザの選択を受け付ける(B17)。編集アプリ43は、汎用印刷プログラム41から受け取った情報に基づいて、例えば、
図5に示したサイズ一覧画面70と同様に、プリンタ2にて対応不可能な用紙サイズを、選択可能な原稿サイズの選択肢として含む画面を表示させる。
【0061】
編集アプリ43は、B16にて表示させた画面で受け付けたユーザの選択に基づいて、作成対象の原稿の原稿サイズを設定する(B18)。さらに、編集アプリ43は、ユーザにて選択された原稿サイズに基づいて、ユーザによる原稿の作成指示を受け付ける(B21)。編集アプリ43は、ユーザの指示に基づいて、印刷対象となる原稿の画像を示す画像データを生成する(B22)。
【0062】
編集アプリ43は、特に指定を受け付けていない場合、例えば、印刷対象の用紙サイズを、設定された原稿サイズと同一のサイズとする可能性がある。つまり、編集アプリ43は、用紙サイズを、プリンタ2の用紙サイズ情報に含まれない用紙サイズとする可能性がある。その場合、B22で生成される画像データは、プリンタ2の用紙サイズ情報に含まれない用紙サイズに対応する画像データとなる可能性がある。なお、編集アプリ43は、原稿サイズとは別に用紙サイズの設定を受け付け可能であっても良い。
【0063】
次に、印刷実行手順について、
図8のシーケンス図を参照して説明する。ユーザは、編集アプリ43にて印刷対象の画像を指定して、印刷実行の指示を入力する(C01)。編集アプリ43は、例えば、
図3に示した印刷設定画面D2にて印刷ボタン55への操作を受け付けた場合、汎用印刷プログラム41に対して、選択中の画像の印刷をプリンタ2に行わせる実行指示を、受け付けたと判断する。
【0064】
編集アプリ43は、受け付けた印刷指示の情報を汎用印刷プログラム41に渡す(C02)。汎用印刷プログラム41は、印刷指示の情報として、印刷対象の画像を示す画像データと印刷設定を示す情報と、を編集アプリ43から取得する。
【0065】
汎用印刷プログラム41は、編集アプリ43から取得した情報に基づいて、印刷対象の画像の画像データの形式を中間画像データの形式に変換することで、中間画像データを生成する(C03)。編集アプリ43に含まれる画像データは種々のタイプのものであり、汎用印刷プログラム41は、印刷対象の画像データを、印刷データの生成に適した中間画像データに変換する。なお、印刷対象の画像データが印刷データの生成に適したデータであれば、中間画像データの生成を省略し、そのまま中間画像データとしても良い。
【0066】
C02では、編集アプリ43は、受け付けた印刷設定にて設定されている原稿サイズに基づいて、印刷対象の画像を示す画像データを汎用印刷プログラム41に渡す。そして、C03では、汎用印刷プログラム41は、編集アプリ43から渡された画像データに基づいて、中間画像データを生成する。
【0067】
なお、汎用印刷プログラム41は、中間画像データの生成前に、指定されたデバイスであるプリンタ2に対応する補助プログラム42を起動して、印刷ジョブの処理を開始したことを通知しても良い。補助プログラム42は、汎用印刷プログラム41から起動された場合、中間画像データを生成する際に利用される各種の指示を示す情報を、必要に応じて、汎用印刷プログラム41に渡すことができる。
【0068】
汎用印刷プログラム41は、中間画像データを生成した後、補助プログラム42を起動する(C04)。補助プログラム42は、汎用印刷プログラム41に要求することで、汎用印刷プログラム41によって生成された中間画像データや、編集アプリ43や汎用印刷プログラム41にて設定された印刷設定の情報を取得できる。
【0069】
そして、補助プログラム42は、印刷設定として選択されている用紙サイズの情報を取得して、選択されている用紙サイズがプリンタ2にて対応可能な用紙サイズであるか否かを判断する。補助プログラム42は、
図2に示した印刷設定手順を実行済みであれば、A32にて記憶した印刷設定の情報から、用紙サイズの情報を取得する。印刷設定手順を実行していなければ、補助プログラム42は、C04にて取得した印刷設定の情報から、用紙サイズの情報を取得する。
【0070】
印刷設定として選択されている用紙サイズが、プリンタ2にて対応可能な用紙サイズではないと判断した場合(opt:[用紙サイズが非対応サイズ])、補助プログラム42は、
図6に示した用紙選択ダイアログ80と同様の画面を、ユーザIF13に表示させる(C11)。例えば、詳細な印刷設定の指示(
図2のA11)を受け付けることなく印刷実行の指示を受け付けた場合、編集アプリ43は、選択された原稿サイズと同一のサイズを用紙サイズとして設定する場合がある。この場合、印刷設定に設定されている用紙サイズは、プリンタ2にて対応可能な用紙サイズには含まれない可能性がある。
【0071】
なお、補助プログラム42は、プリンタ2の能力情報を取得済みではない場合、C11の前に、プリンタ2の能力情報を取得しても良い。能力情報を取得する手順は、印刷設定手順(
図2参照)のA13~A15と同様の手順である。補助プログラム42は、プリンタ2にて対応可能な用紙サイズを、プリンタ2の能力情報に含まれる用紙サイズ情報から取得できる。
【0072】
補助プログラム42は、表示させた用紙選択ダイアログ80にて、ユーザの入力によって、プリンタ2にて対応可能な用紙サイズの1つの選択を受け付ける(C12)。C12は、サイズ選択処理の一例であり、印刷時サイズ選択処理の一例である。これにより、補助プログラム42は、用紙サイズとして、プリンタ2にて対応可能な用紙サイズの1つを設定する。
【0073】
なお、補助プログラム42は、C12では、キャンセルの指示を受け付けないとしても良い。つまり、補助プログラム42は、C11では、キャンセルボタンを含まない用紙選択ダイアログ80を表示させても良い。一方、キャンセルの指示を受け付け可能であって、キャンセルの指示を受け付けた場合には、補助プログラム42は、C12より後の処理を行わず、汎用印刷プログラム41に印刷のキャンセルを通知するとしても良い。
【0074】
なお、前述したように、詳細な印刷設定の指示を受け付け(
図2のA11)、原稿サイズとして、プリンタ2にて対応可能な用紙サイズではないサイズの選択を受け付けた場合、補助プログラム42は、A25にて表示させた用紙選択ダイアログ80にて、プリンタ2にて対応可能な用紙サイズの1つの選択を受け付けている。この場合、印刷設定として選択されている用紙サイズは、プリンタ2にて対応可能な用紙サイズであることから、補助プログラム42は、C11とC12とを実行しない。
【0075】
そして、補助プログラム42は、印刷設定に基づいて、印刷対象の画像の原稿サイズが、プリンタ2にて対応可能な用紙サイズに含まれるか否かを判定する(C15)。C15は、判定処理の一例である。C03にて汎用印刷プログラム41によって生成された中間画像データは、原稿サイズに基づいて生成されている可能性が高い。そのため、補助プログラム42が取得した中間画像データは、原稿サイズに基づくサイズとなっている可能性が高い。
【0076】
補助プログラム42は、印刷対象の画像の原稿サイズがプリンタ2にて対応可能な用紙サイズに含まれないと判断した場合(opt:[非対応と判断])、印刷設定の用紙サイズ、または、C12にて選択された用紙サイズ、に合わせて、中間画像データを拡大または縮小するスケーリングを実行する(C16)。C16は、スケーリング処理の一例である。これにより、補助プログラム42は、プリンタ2にて対応可能な用紙サイズの中間画像データを取得できる。
【0077】
さらに、補助プログラム42は、スケーリングを実行した場合、印刷対象の画像を拡大または縮小して印刷することを、ユーザIF13に通知させる(C17)。C17は、通知処理の一例である。補助プログラム42は、印刷対象の画像を拡大または縮小して印刷することを通知するので、拡大または縮小された画像が印刷されることに対するユーザの困惑を抑制できる。
【0078】
補助プログラム42は、スケーリング後の中間画像データを汎用印刷プログラム41に渡し、汎用印刷プログラム41にラスタライズを要求する(C21)。なお、例えば、詳細な印刷設定にて受け付けた印刷設定であって、
図2のA32にて記憶した印刷設定に基づいて、編集の必要がある場合には、補助プログラム42は、中間画像データや印刷設定の情報を編集して、ラスタライズを要求する。
【0079】
C11の要求に基づいて、汎用印刷プログラム41は、中間画像データをラスタライズし、ビットマップデータであるラスタデータを生成する(C22)。さらに、汎用印刷プログラム41は、生成したラスタデータを補助プログラム42に渡す(C23)。これにより、補助プログラム42は、ラスタデータを取得する。
【0080】
なお、汎用印刷プログラム41に代えて補助プログラム42がラスタライズを行っても良い。その場合、補助プログラム42は、拡大または縮小した中間画像データに基づいてラスタライズを実行し、ラスタデータを生成する。補助プログラム42にてラスタライズすれば、汎用印刷プログラム41にてラスタライズする場合に比較して自由度が大きく、プリンタ2での印刷に適したラスタデータが生成される可能性が高い。一方、汎用印刷プログラム41によってラスタライズするとすれば、補助プログラム42の処理が少なく、補助プログラム42のプログラムサイズを小さくできる。
【0081】
また、補助プログラム42は、C16にて中間画像データを拡大または縮小する代わりに、拡大または縮小をしていない中間画像データに基づくラスタデータを生成させ、生成されたラスタデータを拡大または縮小しても良い。また、汎用印刷プログラム41が画像データを拡大または縮小する機能を有している場合、補助プログラム42は、汎用印刷プログラム41に拡大または縮小を指示して行わせても良い。その場合、補助プログラム42は、汎用印刷プログラム41に、中間画像データを拡大または縮小させても良いし、ラスタデータを拡大または縮小させても良い。
【0082】
そして、補助プログラム42は、C23にて取得したラスタデータをPDLデータにエンコードして、印刷データを生成する(C25)。なお、補助プログラム42は、印刷データの生成前に必要に応じてラスタデータを加工しても良い。さらに、補助プログラム42は、生成した印刷データを汎用印刷プログラム41に渡し、プリンタ2への送信を指示する(C31)。C21~C31は、プリンタ2に印刷させるための処理であり、印刷処理の一例である。
【0083】
C31にて補助プログラム42が汎用印刷プログラム41に渡す印刷データは、プリンタ2にて印刷可能な形式のデータであればよい。なお、補助プログラム42によって生成されるPDLデータは、プリンタ2のモデル以外のプリンタでの印刷にも使用できる形式のデータであっても良い。
【0084】
汎用印刷プログラム41は、補助プログラム42の指示に応じて、印刷データをプリンタ2に送信し、印刷を指示する(C32)。プリンタ2は、受信した印刷データに基づいて、印刷を実行する(C33)。これにより、編集アプリ43から出力された印刷指示に基づく印刷物が生成される。なお、C32の後、汎用印刷プログラム41は、処理の終了を編集アプリ43に通知する。
【0085】
なお、C31では、印刷データを汎用印刷プログラム41に渡して、汎用印刷プログラム41からプリンタ2に送信させるとしたが、その代わりに、補助プログラム42が、印刷の実行を指示する印刷コマンドと印刷データとをプリンタ2に送信しても良い。補助プログラム42は、例えば、プリンタ2にて実行可能な画像処理に関する設定が印刷設定として含まれる場合、その処理の情報も含む印刷コマンドを生成しても良い。この場合、補助プログラム42は、印刷データの送信完了後に、終了の情報を汎用印刷プログラム41に通知すると良い。
【0086】
また、例えば、プリンタ2が印刷データに基づく印刷対象の画像を拡大または縮小する機能を有している場合、補助プログラム42は、補助プログラム42や汎用印刷プログラム41にて拡大または縮小する代わりに、画像の拡大または縮小を指示するコマンドをプリンタ2に送信しても良い。ただし、補助プログラム42や汎用印刷プログラム41によって拡大または縮小を実行すれば、プリンタ2の処理負荷を軽減できる。
【0087】
以上、詳細に説明したように、本形態の補助プログラム42は、汎用印刷プログラム41からの要求があった場合に、プリンタ2で対応しない用紙サイズを含む原稿サイズの一覧を生成して、その一覧から原稿サイズを選択可能にする。これにより、プリンタ2で対応しない原稿サイズの画像を印刷対象とすることが可能になる。さらに、そのような画像が印刷対象となった場合に、補助プログラム42は、プリンタ2で対応可能な用紙サイズの1つに合わせて印刷対象の画像を拡大または縮小した画像に基づく印刷を、プリンタ2に行わせる。従って、編集アプリ43から渡される印刷対象の画像を拡大または縮小して、プリンタ2にて対応可能な用紙に印刷させることができる。
【0088】
なお、本明細書に開示される実施の形態は単なる例示にすぎず、本発明を何ら限定するものではない。したがって本明細書に開示される技術は当然に、その要旨を逸脱しない範囲内で種々の改良、変形が可能である。例えば、PC1に接続される装置は、プリンタに限らず、複合機、複写機、FAX装置、等印刷機能を有する装置であればよい。また、PC1に接続されるプリンタの数は、図示の例に限らず、2台以上でも良い。
【0089】
また、例えば、ユーザIF13に表示される画面の例は、いずれも一例であって、図示の例に限らない。また、図示の各画面中に表示される文言やオブジェクトの形状、背景等は、どのようなものでも良い。また、例えば、
図3では1つの情報表示欄52を含む印刷設定画面D2を示したが、情報表示欄52の配置や形状、大きさ、個数等は、この図の例に限らない。また、情報表示欄52は、無くても良い。また、
図8のC17の通知は、行わなくても良い。
【0090】
また、本明細書では、原稿サイズがプリンタ2にて対応可能な用紙サイズに含まれない場合、ユーザによって選択された用紙サイズに合わせるとしたが、用紙サイズの選択は受け付けなくても良い。例えば、プリンタ2の用紙サイズ情報に基づいて、補助プログラム42が用紙サイズを決定しても良い。
【0091】
また、本明細書では、補助プログラム42は、用紙サイズに合わせて、画像を拡大または縮小するとしたが、拡大はしなくても良い。例えば、原稿サイズがプリンタ2にて対応可能な用紙サイズより小さく、画像の全体を印刷可能である場合、補助プログラム42は、画像を拡大せずに印刷するとしても良いし、拡大するか否かのユーザの選択を受け付けるとしても良い。
【0092】
また、補助プログラム42がプリンタ2の能力情報を取得するタイミングは、
図2に示した例に限らない。補助プログラム42は、例えば、印刷設定画面D2(
図3参照)の表示前に汎用印刷プログラム41から起動された場合には、プリンタ2の能力情報の取得を要求しても良い。また、補助プログラム42は、印刷実行の指示を受け付けた後に、プリンタ2の能力情報を、再度、取得しても良い。
【0093】
また、汎用印刷プログラム41によって印刷設定画面D2が表示された後に、ユーザの操作によって、OS21を介して、通常使うプリンタが他のプリンタからプリンタ2に変更された場合にも、汎用印刷プログラム41は、補助プログラム42を起動しても良い。その場合も、補助プログラム42は、例えば、情報表示欄52に原稿サイズに関する指示を受け付け可能な情報画面を表示させても良い。
【0094】
また、実施の形態では、補助プログラム42の動作として、印刷動作のみを詳細に記載しているが、補助プログラム42は、さらに他の役割を有していても良い。また、本形態の処理を実行するプログラムは、補助プログラム42に限らず、汎用印刷プログラム41を用いた印刷を行う際に、OS21または汎用印刷プログラム41から指示を受け付けるプログラムであればよい。例えば、マイクロソフト社が仕様公開した印刷ワークフローアプリ(Print workflow)でも良い。
【0095】
また、補助プログラム42の実行タイミングは、実施の形態の例に限らない。例えば、OS21から直接実行指示されて実行されても良く、または、常駐される補助プログラム42であっても良い。常駐される場合には、補助プログラム42は、実行命令を受けて前述した動作を行うとすれば良い。
【0096】
また、実施の形態に開示されている任意のフローチャートにおいて、任意の複数のステップにおける複数の処理は、処理内容に矛盾が生じない範囲で、任意に実行順序を変更できる、または並列に実行できる。
【0097】
また、実施の形態に開示されている処理は、単一のCPU、複数のCPU、ASICなどのハードウェア、またはそれらの組み合わせで実行されてもよい。また、実施の形態に開示されている処理は、その処理を実行するためのプログラムを記録した記録媒体、または方法等の種々の態様で実現することができる。
【符号の説明】
【0098】
1 PC
2 プリンタ
11 CPU
13 ユーザIF