(57)【特許請求の範囲】
【請求項１】
画像データを取り込んで、取り込んだ画像データのうち印刷する際の１ラインに相当する画像データを、画像データ全体が１枚の印刷媒体にＭ個×Ｎ行（Ｍ、Ｎは共に２以上の整数）の同一画像として印刷できるサイズに縮小する第１のステップと、
縮小された１ライン分の画像データをＭ回繰り返して印刷用の１ラインのラスタデータを生成する第２のステップと、
この第２のステップで生成された上記ラスタデータをプリンタに送信する第３のステップと
を含み、
上記Ｍ個×Ｎ行の同一画像のうち、プリンタの給紙方向において１行目のＭ個の同一画像を印刷する際には、
上記第１のステップで１ライン分の画像データを縮小する毎に上記第２のステップおよび上記第３のステップを実行し、
上記第１のステップにより縮小された画像データを最初のラインから最後のラインまで蓄え、
上記Ｍ個×Ｎ行の同一画像のうち、プリンタの給紙方向において２行目以降のＭ個の同一画像を印刷する際には、
蓄えられた最初のラインから最後のラインまでの画像データに対して、上記第２のステップおよび上記第３のステップを繰り返し、さらにそれをＮ−１回繰り返す
ことを特徴とするプリンタ制御方法。
【請求項２】
前記Ｍおよび前記Ｎは共に４であり、前記１枚の印刷媒体は裏面に粘着層が設けられたシールが１枚のシートに配置された分割シール印刷用紙である請求項１記載のプリンタ制御方法。
【請求項３】
画像データが入力される画像データ入力部と、
入力された画像データのうち印刷する際の１ラインに相当する画像データを、画像データ全体が１枚の印刷媒体にＭ個×Ｎ行（Ｍ、Ｎは共に２以上の整数）の同一画像として印刷できるサイズに縮小する縮小処理部と、
縮小された１ライン分の画像データをＭ回繰り返してそれぞれ印刷用の１ラインのラスタデータを生成し、上記画像データの最初のラインに相当するラスタデータから上記画像データの最後のラインに相当するラスタデータまでをＮ回繰り返して生成するラスタデータ生成部と、
生成されたラスタデータを１ライン毎にプリンタに送信するラスタバッファと、
上記縮小処理部により縮小された画像データを蓄える縮小画像バッファと
を備え、
上記Ｍ個×Ｎ行の同一画像のうち、プリンタの給紙方向において１行目のＭ個の同一画像を印刷する際には、
上記ラスタデータ生成部は、上記縮小処理部が１ライン分の画像データを縮小する毎にその縮小された画像データをＭ回繰り返して印刷用のラスタデータを生成し、
上記縮小画像バッファは、上記縮小処理部により縮小された画像データを最初のラインから最後のラインまで蓄え、
上記Ｍ個×Ｎ行の同一画像のうち、プリンタの給紙方向において２行目以降のＭ個の同一画像を印刷する際には、
上記縮小画像バッファから１ライン毎の画像データを取り出しその画像データをＭ回繰り返すことでそれぞれ印刷用の１ラインのラスタデータを生成し、上記縮小画像バッファに蓄えられた画像データの最初のラインから最後のラインまでをＮ−１回繰り返す
ことを特徴とするプリンタ制御装置。
【請求項４】
コンピュータに、
画像データを取り込んで、取り込んだ画像データのうち印刷する際の１ラインに相当する画像データを、画像データ全体が１枚の印刷媒体にＭ個×Ｎ行（Ｍ、Ｎは共に２以上の整数）の同一画像として印刷できるサイズに縮小する第１の手順と、
縮小された１ライン分の画像データをＭ回繰り返して印刷用の１ラインのラスタデータを生成する第２の手順と、
この第２の手順で生成されたラスタデータをプリンタに送信する第３の手順と
を実行させ、
上記Ｍ個×Ｎ行の同一画像のうち、プリンタの給紙方向において１行目のＭ個の同一画像を印刷する際には、
上記第１の手順で１ライン分の画像データを縮小する毎に上記第２の手順および上記第３の手順を実行する手順と、
上記第１の手順により縮小された画像データを最初のラインから最後のラインまで蓄える手順と、
を実行させ、
上記Ｍ個×Ｎ行の同一画像のうち、プリンタの給紙方向において２行目以降のＭ個の同一画像を印刷する際には、
蓄えられた最初のラインから最後のラインまでの画像データに対して、上記第２の手順および上記第３の手順を繰り返し、さらにそれをＮ−１回繰り返す手順と
を実行させることを特徴とするプリンタ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプリンタに印刷媒体の種類に応じたレイアウトで印刷させるためのプリンタ制御方法および装置ならびにプリンタ制御プログラムに関する。本明細書において「プリンタ」とは、黒あるいは色の付いた気体、液体あるいは粉体を用いて対象とする媒体に着色する装置全般をいい、流体を噴射して着色する装置や、印刷機能に加えスキャナ機能やコピー機能が付加された複合機と呼ばれる機器を含む。
【背景技術】
【０００２】
プリンタで印刷可能な印刷媒体として、裏面に粘着層が設けられたシールが１枚のシートに複数配置されたミニフォトシールあるいはミニ写真シールと呼ばれる分割シール印刷用紙が市販されている。このような用紙の個々のシールに同一の画像を印刷する技術として、特許文献１には、プリンタ独自で印刷媒体の種類を検出し、その検出結果に応じて、入力された画像を縮小して個々のシールに印刷することが開示されている。また、特許文献２には、同じ画像を複数並べて印刷する際の実行時間をプリンタ側で短縮する技術が開示されている。
【０００３】
コンピュータ上で動作するアプリケーションプログラムから分割シールへの印刷を行うには、プリンタからそのプリンタの固有の情報であるアトリビュート情報を取得し、その情報に基づいて処理を行う。アトリビュート情報の取得およびその情報に基づく印刷媒体種類等のメニューの表示は、同じコンピュータ上で動作するプリンタドライバプログラムにより行われる。プリンタドライバプログラムはまた、アプリケーションプログラムからの印刷命令に従って、アプリケーションプログラムから送られてくる画像データをそのプリンタでの印刷に適したデータに変換してプリンタに送信する。
【０００４】
プリンタが分割シールに対応している場合には、アトリビュート情報内に、その印刷媒体種類に対応していることを示す情報が含まれる。プリンタドライバプログラムは、その情報を取得し、アプリケーションプログラムに表示する。分割シールの印刷に対応したアプリケーションプログラムであれば、例えば、画像の選択（１枚または複数枚）、印刷媒体サイズ選択、印刷媒体種類選択、レイアウト選択、レイアウト実施、印刷というようなユーザインタフェースの流れによって、あらかじめ印刷媒体の種類に応じたレイアウト選択を行い、利用者の望む通りのレイアウトで印刷することができる。
【特許文献１】特開２０００−３１３１４３号公報
【特許文献２】特開２００５−２６２５３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、分割シールの個々のシールに対応して画像を印刷できるのは、アプリケーションプログラムが対応しているか、プリンタが独自に対応している必要がある。分割シールに対応していないアプリケーションプログラムから印刷しようとすると、１画像の選択、印刷媒体サイズ選択、印刷媒体種類選択、印刷開始という固定した流れでプリンタドライブバを使用することになる。このようなアプリケーションプログラムにはレイアウトの概念はなく、印刷媒体種類として例えば１枚のシートに１６分割のシールが配置されたミニフォトシールが選択されていても、アプリケーションプログラムではその印刷媒体の大きさを考慮するだけで、プリンタドライバへは印刷媒体サイズ一杯の画像を渡すことになる。利用者は、印刷媒体種類としてミニフォトシールを選択したので、当然、１６分割されたミニフォトシールが印刷されるものと予測するが、ドライバの構造上、他の印刷媒体同様に印刷媒体一杯に画像が印刷されてしまうことになる。また、プリンタ側で独自に対応する場合には、画像データを蓄えるための大きな画像メモリが必要となり、処理負荷も大きく、高速に処理することは困難である。
【０００６】
さらに、現在市販の特殊印刷媒体にアプリケーションプログラムが対応していたとしても、アプリケーションプログラムの作成後に発売された特殊印刷媒体に対しては、プリンタが対応していてもアプリケーションプログラムでは対応できないことになる。
【０００７】
本発明は、このような課題を解決し、ひとつの画像データから同一の画像を１枚の印刷媒体に複数並べてプリンタに印刷させることのできるプリンタ制御方法および装置ならびにプリンタ制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の第１の観点によると、画像データを取り込んで１枚の印刷媒体にＭ×Ｎ個（Ｍ、Ｎは共に２以上の整数）の同一画像として印刷できるサイズに縮小する第１のステップと、縮小された画像データの１ラインのデータをＭ回繰り返して印刷用の１ラインのラスタデータを生成する第２のステップと、この第２のステップで生成されたラスタデータをプリンタに送信する第３のステップとを含み、第２のステップおよび第３のステップを縮小された画像データの最初のラインから最後のラインまで繰り返し、さらにそれをＮ回繰り返すことを特徴とするプリンタ制御方法が提供される。
【０００９】
第１のステップで１ライン分のデータを縮小する毎に第２のステップおよび第３のステップを実行し、第１のステップにより縮小された画像データを最初のラインから最後のラインまで蓄え、この蓄えられた画像データに対して、第２のステップおよび第３のステップをその画像データの最初のラインから最後のラインまで繰り返し、さらにそれをＮ−１回繰り返すことが望ましい。
【００１０】
本発明の第２の観点によると、画像データが入力される画像データ入力部と、入力された画像データを１枚の印刷媒体にＭ×Ｎ個（Ｍ、Ｎは共に２以上の整数）の同一画像として印刷できるサイズに縮小する縮小処理部と、縮小された画像データの１ライン毎のデータをＭ回繰り返してそれぞれ印刷用の１ラインのラスタデータを生成し、縮小された画像データの最初のラインに相当するラスタデータから縮小された画像データの最後のラインに相当するラスタデータまでをＮ回繰り返して生成するラスタデータ生成部と、生成されたラスタデータを１ライン毎にプリンタに送信するラスタバッファとを備えたことを特徴とするプリンタ制御装置が提供される。
【００１１】
縮小処理部により縮小された画像データを蓄える縮小画像バッファを備え、ラスタデータ生成部は、縮小処理部が１ライン分のデータを縮小する毎にその縮小されたデータをＭ回繰り返して印刷用のラスタデータを生成し、縮小処理部が最後のラインの縮小処理を終えた後は、縮小画像バッファから１ライン毎のデータを取り出しそのデータをＭ回繰り返すことでそれぞれ印刷用の１ラインのラスタデータを生成し、縮小画像バッファに蓄えられた画像データの最初のラインから最後のラインまでをＮ−１回繰り返すことが望ましい。
【００１２】
本発明の第３の観点によると、コンピュータに、画像データを取り込んで１枚の印刷媒体にＭ×Ｎ個（Ｍ、Ｎは共に２以上の整数）の同一画像として印刷できるサイズに縮小する第１の手順と、縮小された画像データの１ラインのデータをＭ回繰り返して印刷用の１ラインのラスタデータを生成する第２の手順と、この第２の手順で生成されたラスタデータをプリンタに送信する第３の手順と、第２の手順および第３の手順を縮小された画像データの最初のラインから最後のラインまで繰り返し、さらにそれをＮ回繰り返す第４の手順とを実行させることを特徴とするプリンタ制御プログラムが提供される。
【００１３】
コンピュータに、第４の手順として、第１の手順で１ライン分のデータを縮小する毎に第２の手順および第３の手順を実行する手順と、第１の手順により縮小された画像データを最初のラインから最後のラインまで蓄える手順と、この蓄えられた画像データに対して、第２の手順および第３の手順をその画像データの最初のラインから最後のラインまで繰り返し、さらにそれをＮ−１回繰り返す手順とを実行させることが望ましい。
【発明を実施するための最良の形態】
【００１４】
［第１の実施の形態］
図１は本発明の第１の実施の形態を示すブロック構成図であり、本発明をプリンタ制御装置として実施した例を示す。このプリンタ制御装置１は、コンピュータ、ネットワーク、画像メモリその他の画像データ供給源とプリンタ２との間に接続され、入力された画像データからプリンタ２が印刷するためのデータを１ラスタライン毎に生成して出力する装置であり、画像データが入力される画像データ入力部１１と、入力された画像データを１枚の印刷媒体にＭ×Ｎ個（Ｍ、Ｎは共に２以上の整数）の同一画像として印刷できるサイズに縮小する縮小処理部１２と、縮小処理部１２により縮小された画像データを蓄える縮小画像バッファ１３と、縮小された画像データの１ライン毎のデータをＭ回繰り返してそれぞれ印刷用の１ラインのラスタデータを生成し、縮小された画像データの最初のラインに相当するラスタデータから縮小された画像データの最後のラインに相当するラスタデータまでをＮ回繰り返して生成するラスタデータ生成部１４と、生成されたラスタデータを１ライン毎にプリンタに送信するラスタバッファ１５とを備える。
【００１５】
［第１の実施の形態の動作］
図２は図１に示したプリンタ制御装置１の動作のフローチャートである。画像データをＭ×Ｎ個印刷するには、余白を含める必要があるため、元の画像データをＭ分の１またはＮ分の１より小さく縮小する必要がある。以下では、簡単のため、余白部分は考慮せず、画像データ入力部１１に入力された画像データを縦、横共にＭ分の１に縮小し、１枚の印刷媒体に横Ｍ個、縦Ｎ個印刷するものとして説明する。ここで「縦」および「横」とはそれぞれ、プリンタの給紙方向およびラスタ方向を意味する。この方向は、必ずしも、印刷される画像データの方向と同一となるわけではないことに注意する必要がある。
【００１６】
画像データ入力部１１は画像バッファを備え、この画像バッファに画像データが格納されると、縮小処理部１２は、その画像データを印刷する際の１ラスタラインに相当する画像データを受け取り（ステップＳ１）、Ｍ分の１に縮小して（ステップＳ２）、縮小画像バッファ１３へ格納する（ステップＳ３）。ここで、縮小処理部１２が受け取る「１ラスタラインに相当する画像データ」とは、元の画像データが縦方向に縮小されるように間引いたデータでもよく、縮小処理部１２で縦方向の縮小も行うものとして、その縮小の対象となる画像データでもよい。ラスタデータ生成部１４は、縮小処理部１２から縮小された１ライン分のデータを受け取り、それを横方向にＭ回繰り返してラスタバッファ１５に書き込むことで、１ライン分のラスタデータを生成する（ステップＳ４）、ラスタバッファ１５に蓄えられたデータは、プリンタ２に送信される（ステップＳ５）。以上の処理を画像データの最後のラスタラインまで繰り返す（Ｓ６）。以上の処理により、プリンタ２では、横方向にＭ個の縮小画像が印刷される。
【００１７】
続いてラスタデータ生成部１４は、縮小画像バッファ１３から縮小された１ライン分のデータを取り出し（ステップＳ７）、それを横方向にＭ回繰り返してラスタバッファ１５に書き込むことで、１ライン分のラスタデータを生成する（ステップＳ８）、ラスタバッファ１５に蓄えられたデータはプリンタ２に送信される（ステップＳ９）。以上の処理を画像データの最後のラスタラインまで繰り返す（ステップＳ１０）。以上の処理により、プリンタ２では、２行目のＭ個の縮小画像が印刷される。ステップＳ７からステップ１１の処理をＮ−１回繰り返すことで（ステップＳ１１）、プリンタ２でＭ×Ｎ個の縮小画像の印刷が完了する。
【００１８】
この実施の形態では、最初のＭ個の縮小画像について、縮小処理部１２の出力から直接にラスタデータ生成部１４でラスタデータを生成している。これにより、画像データの縮小処理中に印刷を開始することができ、プリンタ２の待ち時間を短縮することができる。また、それ以降の縮小画像については、縮小画像バッファ１３に蓄えたデータを利用することで、縮小処理を繰り返す必要がなくなる。
【００１９】
［印刷媒体と印刷レイアウトの例］
図３は分割シールのレイアウト例を説明する図であり、図４は正常な印刷結果の例、図５はレイアウト処理しない場合の印刷結果の例を示す。ここでは、１枚のシートに１６枚のシールが配置されたミニフォトシールのレイアウト例を示す。画像データをレイアウト処理せずにそのまま印刷媒体サイズで印刷すると、図５に示すように、印刷媒体サイズ一杯の画像が印刷されてしまう。これに対して、図１および図２を参照して説明したレイアウト処理をＭ＝Ｎ＝４として実行することで、図４に示すような印刷結果が得られる。
【００２０】
なお、印刷媒体の給紙方向が図３から図５における横方向（印刷媒体の長手方向）である場合、図２を参照した説明において用いた「横方向」とは、図３から図５における縦方向となる。
【００２１】
［第２の実施の形態］
図６は本発明の第２の実施の形態を示すブロック構成図である。この実施の形態は、プリンタ２のアトリビュート情報を取得して画像データ供給源に通知し、また、縮小処理部１２およびラスタデータ生成部１４にも通知するアトリビュート情報取得処理部１６を備えたことが第１の実施の形態と異なる。
【００２２】
第１の実施の形態に関する説明では、単純化のため、プリンタ制御装置１が入力画像データを縮小してプリンタ２にＭ×Ｎ個の縮小画像を印刷させる処理に関してのみ説明した。実用的には、プリンタ制御装置１を、プリンタ２のアトリビュート情報や入力される画像データの大きさに係わらずに、入力された画像データをある特定の印刷媒体種類に対応するサイズに縮小して、１枚の印刷媒体にＭ×Ｎ個の同一画像として印刷する装置として実施することもできる。この場合、画像データの縦横比と印刷すべき領域の縦横比が一致しない場合には、縦横比が変化しないように画像データの一部を切り取って処理してもよく、縦横比が変化を許容することとしてもよい。ただ、このような装置は固定的な処理しかできず、柔軟性に乏しいものとなってしまう。
【００２３】
これに対して第２の実施の形態では、アトリビュート情報取得処理部１６がプリンタ２からアトリビュート情報を取得し、縮小処理部１２およびラスタデータ生成部１４は、画像データ供給源からの印刷媒体種類の指定に対応して、レイアウト処理が必要かどうかを判断し、その判断に基づいてプリンタ制御を行う。
【００２４】
［第３の実施の形態］
図７は本発明の第３の実施の形態を示すブロック構成図であり、本発明をプリンタドライバプログラムとして実施した例を示す。コンピュータ２０は、ＣＰＵ、ＲＡＭ、ＲＯＭ、ハードディスク、各種インタフェース等のハードウェアを備え、所定のオペレーティングシステムの下で、アプリケーションプログラム３１、ビデオドライバプログラム３２、プリンタドライバプログラム３３等のプログラムが動作可能となっている。なお、図７では、コンピュータ２０を構成するハードウェアのうち、プリンタ制御に関連するメモリ２３、ビデオインタフェース２４およびプリンタインタフェース２５を破線のブロックで示す。プリンタドライバプログラム３３は、画像データを取り込んで１枚の印刷媒体にＭ×Ｎ個（Ｍ、Ｎは共に２以上の整数）の同一画像として印刷できるサイズに縮小する第１の手順を実行する画像データ入力部３５および縮小処理部３６と、縮小された画像データの１ラインのデータをＭ回繰り返して印刷用の１ラインのラスタデータを生成する第２の手順、この第２の手順で生成されたラスタデータをプリンタ２２に送信する第３の手順、ならびに第２の手順および第３の手順を縮小された画像データの最初のラインから最後のラインまで繰り返し、さらにそれをＮ回繰り返す第４の手順を実行するラスタデータ生成部３７とを備える。
【００２５】
各プログラムによる印刷処理について説明する。アプリケーションプログラム３１は、画像の加工、表示および印刷を行うための各種の処理を行う。ビデオドライバプログラム３２は、アプリケーションプログラム３１からの指示により、ビデオインタフェース２４を介してディスプレイ装置２１に、画像や文字、映像、ユーザインタフェース等の各種情報などを表示させる。プリンタドライバプログラム３３は、アプリケーションプログラム３１からの指示により、プリンタ２２で画像や文字を印刷するための処理を行う。
【００２６】
次に、プリンタドライバプログラム３４の動作について説明する。アトリビュート情報取得処理部３４は、プリンタインタフェース２５を介して、プリンタ２２からそのプリンタの固有の情報であるアトリビュート情報を取得し、その情報をアプリケーションプログラム３１に通知すると共に、縮小処理部３６およびラスタデータ生成部３７にも通知する。画像データ入力部３５は、アプリケーションプログラム３１から、印刷命令と印刷すべき画像データを受け取る。この印刷命令には、選択された印刷媒体サイズおよび印刷媒体種類の情報が含まれる。縮小処理部３６は、選択された印刷媒体種類がＭ×Ｎの分割シートである場合、その個々の分割シートに画像が印刷されるような大きさに画像データを縮小し、メモリ２３に格納すると共に、ラスタデータ生成部３７に出力する。ラスタデータ生成部３７は、縮小処理部３６から縮小された１ライン分のデータを受け取り、それを横方向にＭ回繰り返した１ライン分のラスタデータを生成して、プリンタインタフェース２５を介してプリンタ２２に送信する。ラスタデータ生成部３７は以上の処理を画像データの最後のラスタラインまで繰り返し、プリンタ２２に、横方向にＭ個の縮小画像を印刷させる。続いてラスタデータ生成部３７は、メモリ２３から縮小された１ライン分のデータを取り出し、それを横方向にＭ回繰り返して１ライン分のラスタデータを生成し、プリンタインタフェース２５を介してプリンタ２２に送信する。これを画像データの最後のラスタラインまで繰り返し、さらに、その繰り返し処理をＮ−１回繰り返す。これによりプリンタ２２では、Ｍ×Ｎ個の縮小画像の印刷が完了する。
【００２７】
この実施の形態では、分割シートのような特殊印刷媒体をサポートするためにアプリケーションプログラム３１側で対応する必要はない。このため、アプリケーションプログラム３１の製作者がドライバプログラム３３の製作者と異なる場合でも、ドライバプログラム３３の製作者のみの作業で特殊印刷媒体に対応できるようになる。
【００２８】
以上の説明では分割シートを例に説明したが、本発明は、他の印刷媒体に印刷する場合にも同様に実施できる。例えば、通常の紙に複数の縮小画像を印刷したり、プラスチックや布などの紙以外の印刷媒体に縮小画像を印刷することもできる。
【図面の簡単な説明】
【００２９】
【図１】本発明の第１の実施の形態を示すブロック構成図であり、本発明をプリンタ制御装置として実施した例を示す。
【図２】図１に示したプリンタ制御装置の動作のフローチャートである。
【図３】分割シールのレイアウト例を説明する図である。
【図４】図３に示した分割シールへの正常な印刷結果の例を示す図である。
【図５】レイアウト処理しない場合の図３に示した分割シールへの印刷結果の例を示す図である。
【図６】本発明の第２の実施の形態を示すブロック構成図であり、本発明をプリンタ制御装置として実施した例を示す。
【図７】本発明の第３の実施の形態を示すブロック構成図であり、本発明をプリンタドライバプログラムとして実施した例を示す。
【符号の説明】
【００３０】
１  プリンタ制御装置
２、２２  プリンタ
１１、３５  画像データ入力部
１２、３６  縮小処理部
１３  縮小画像バッファ
１４、３７  ラスタデータ生成部
１５  ラスタバッファ
１６、３４  アトリビュート情報取得処理部
２０  コンピュータ
２１  ディスプレイ装置
２３  メモリ
２４  ビデオインタフェース
２５  プリンタインタフェース
３１  アプリケーションプログラム
３２  ビデオドライバプログラム
３３  プリンタドライバ
【図１】
0005251166.tif 000002
【図２】
0005251166.tif 000003
【図３】
0005251166.tif 000004
【図４】
0005251166.tif 000005
【図５】
0005251166.tif 000006
【図６】
0005251166.tif 000007
【図７】
0005251166.tif 000008