| 【発明の名称】 |
プリンタドライバ |
| 【発明者】 |
【氏名】斎藤 裕
|
| 【要約】 |
【課題】後処理ドライバにおける中間データの識別処理を高速に行うプリンタドライバを提供する。
【解決手段】本発明のプリンタドライバは、中間データ40に、ヘッダ部41とデータ部42とを設け、そのヘッダ部41にデータサイズ情報及びページの開始/終了情報を付加する。これによって、後処理ドライバでの中間データの読み込み処理及びページの分割処理等の識別処理を高速に行うことができる。 |
【特許請求の範囲】
【請求項1】 アプリケーションからの描画命令に基づいて中間データを出力する第1層及び前記中間データをプリンタ言語に変換/編集する第2層の2層構造を備えるプリンタドライバにおいて、前記中間データにヘッダ情報を付加したことを特徴とするプリンタドライバ。 【請求項2】 前記ヘッダ情報に、データサイズ情報を付加したことを特徴とする請求項1記載のプリンタドライバ。 【請求項3】 前記ヘッダ情報に、ページの開始/終了情報を付加したことを特徴とする請求項1記載のプリンタドライバ。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は、複数ページの印刷物を印刷するプリンタに用いて好適なプリンタドライバに関する。 【0002】 【従来の技術】従来より、2層構造を備えるプリンタドライバが知られている。2層構造においては、第1層(以下、前処理ドライバとする)で、アプリケーションから描画命令を中間データとして出力を行い、第2層(以下、後処理ドライバとする)で、中間データを読み込み、適切なプリンタ言語への変換、及び集約、回転等の編集を行うようにしている。 【0003】上記中間データには以下のデータが含まれる。 1.プリンタ制御コード部2.描画コマンド部プリンタ制御コード部は、各印刷条件を示すコード群であり、描画コマンド部は、アプリケーションから要求された描画コマンド群である。 【0004】 【発明が解決しようとする課題】前処理ドライバにおいて、中間データを出力する場合、出力用バッファの容量には限りがあるため、プリンタ制御コード部及び描画コマンド部のデータは必ずしも一度に転送されるわけではなく、分割されることがある。そのため、後処理ドライバでは、前処理ドライバから出力された中間データの内容を一旦全て読み込んで確認する必要があるため、パフォーマンスの低下を招くことになるという問題がある。 【0005】また、後処理モジュールではページ単位で処理を行うため、あらかじめページの切れ目を検知してページ毎にデータを分割する必要があり、やはり、データを全て読み込んで確認する必要があり、同様にパフォーマンスの低下を招くことになるという問題がある。 【0006】本発明は、上記問題を解決するために成されたものであり、後処理ドライバでの中間データの識別処理を高速に行うプリンタドライバを提供することを第1の目的とする。 【0007】また、本発明は、後処理ドライバでの中間データの読み込み処理を高速に行うプリンタドライバを提供することを第2の目的とする。 【0008】さらに、本発明は、後処理ドライバでのページの分割処理を高速に行うプリンタドライバを提供することを第3の目的とする。 【0009】 【課題を解決するための手段】上記の目的を達成するために、本発明によるプリンタドライバは、アプリケーションからの描画命令に基づいて中間データを出力する第1層及び中間データをプリンタ言語に変換/編集する第2層の2層構造を備えるプリンタドライバにおいて、中間データにヘッダ情報を付加したものである。また、ヘッダ情報に、データサイズ情報、あるいはページの開始/終了情報を付加してよい。 【0010】 【発明の実施の形態】以下、本発明の実施の形態を図面と共に説明する。本実施の形態は、前処理ドライバから中間データを転送する際に、データの種類/サイズを示すヘッダ情報を付加することで、即座にデータの判別、及びページの分割を行うことを特徴とする。 【0011】図1は、本発明の実施形態であるプリンタドライバを備えるプリンタシステムを概念的に示すブロック図である。図1において、プリンタドライバ10は、プリンタ本体20に接続されており、前処理ドライバ11と後処理ドライバ12と一時ファイル格納領域であるIRPJLデータ13及びICDCデータ14とから構成される。後処理ドライバ12は、ファイル処理モジュール15とICDC処理モジュール16とから構成される。アプリケーション30は、プリンタドライバ10に対して描画を命令する。 【0012】アプリケーション30から印刷が実行されると、前処理ドライバ11において、図2に示される形式の中間データ40が出力される。この中間データ40は、ヘッダ部41とデータ部42とからなる。 【0013】ヘッダ部41のヘッダ情報は、以下の形式の固定長の情報である。 ヘッダ情報(計8バイト)=Tag(4バイト)+Size(4バイト) ここで、Tagはデータの種別を示すコードがセットされる。Sizeは前処理ドライバ11より転送されたデータのサイズ(バイト数)を示す値がセットされる。 【0014】Tagには、以下のいずれかの値がセットされる。 ■IOBJJobIRPJL ■IOBJPageIRPJL ■IOBJICDC ■IOBJStartPage■IOBJEndPage【0015】■IOBJJobIRPJLの場合、ヘッダに続くデータが印刷条件を示すデータであることを意味する(JobIRPJL)。 ■IOBJPageIRPJL の場合、ヘッダに続くデータが次に転送されるページに関する情報(ページの幅、高さ、解像度等)であることを意味する(PageIRPJL) 。 ■IOBJICDCの場合、ヘッダに続くデータが描画データ群であることを意味する(ICDC)。 ■IOBJStartPage の場合、ページの先頭であることを意味し、ヘッダに続くデータはなし。従って、Sizeは0となる(StartPage) 。 ■IOBJEndPage の場合、ページの終了であることを意味し、ヘッダに続くデータはなし。従って、Sizeは0となる(EndPage) 。 【0016】図3は、本発明の実施形態であるプリンタドライバの処理例を示すフローチャートである。後処理ドライバ12は、まず、ヘッダ部41をチェックする(S1〜S3)。そのためにファイル処理モジュール15において、まず、ヘッダ部(中間データの先頭8バイト)41を読み込み、Tagの種類とデータサイズを読み、JobIRPJL、PageIRPJL 、ICDC毎にSizeで指定されたサイズ分のデータを一時ファイルであるIRPJLデータ13に書き込む。ここで、IRPJLデータ13に保存されるデータは、図2に示されるデータ部42のみである。 【0017】また、ICDCについては、EndPage が来るまで追加書き込みを行う。EndPage が来た時、1ページ分のデータを読み込んだものとみなし、ICDC処理モジュール16においてICDCデータ14からICDCデータを読み込み、適切なプリンタ言語に変換された後、プリンタ本体20に転送された後、ファイルが削除される(S14〜S19)。 【0018】ここで、中間データは次の順序で転送される。 (1)JobIRPJL(2)PageIRPJL(3)StartPage(4)ICDC(5)ICDC(6)EndPage(7)PageIRPJL(8)StartPage(9)ICDC(10)EndPage ・・・【0019】まず、(1)JobIRPJLを読み込んだ時点でRCF.000という名前の一時ファイルとして保存し、印刷条件を読み込み、読み込んだ印刷条件をジョブ情報としてメモリ領域(a−1)に保持する。またページカウント(a−2)を0とする(S4〜S7)。 【0020】次に、(2)PageIRPJLを読み込んだ時点で、ページカウント(a−2)を1インクリメントし、データをRCF.001という名前の一時ファイルとして保存し、一時ファイルより、ページ情報を読み込み、読み込んだページ情報を1ページ目のページ情報としてメモリ領域(b−1)に保持する(S8〜S11)。 【0021】次に、(3)StartPageを読み込んだ時点で、RDF.001という名前のファイルを作成する(S12、S13)。(4)ICDC及び(5)ICDCのデータを上記RDF.001ファイルに書き出す(S20、S21)。(6)EndPageを読み込んだ時点で、ICDC処理モジュール16を呼び出し、RDF.001、及び上記(a−1)、(b−1)の情報を元に印刷データを作成する(S14〜S17)。 【0022】以降、上記(S4〜S7)、(S8〜S11)、(S14〜S19)、(S20〜S21)をページ数分繰り返し行う。ここで、逆順印刷などページ順序を入れ替える必要のある印刷方法が指定された場合(S16、S22)、(S4〜S7)において(a−1)に保持され、(S20〜S21、S28)がスキップされ、全ページ分保存された後で各ページ毎に実行される。また、逆順印刷でない場合は、(S23〜S27)が実行される。 【0023】 【発明の効果】以上説明したように、請求項1記載の発明によれば、中間データにヘッダ情報を付加することにより、後処理ドライバでの中間データの識別処理を高速に行うことができる。 【0024】また、請求項2記載の発明によれば、請求項1記載の発明において、ヘッダ情報にサイズ情報を含めることにより、後処理ドライバでの中間データの読み込み処理を高速に行うことができる。 【0025】さらに、請求項3記載の発明によれば、請求項1記載の発明において、ヘッダ情報にページの開始/終了情報を含めることにより、後処理ドライバでのページの分割処理を高速に行うことができる。
|
| 【出願人】 |
【識別番号】000006747 【氏名又は名称】株式会社リコー
|
| 【出願日】 |
平成12年10月19日(2000.10.19) |
| 【代理人】 |
|
| 【公開番号】 |
特開2002−132468(P2002−132468A) |
| 【公開日】 |
平成14年5月10日(2002.5.10) |
| 【出願番号】 |
特願2000−319936(P2000−319936) |
|