JP2005339257A - 画像処理装置および画像処理システム - Google Patents

画像処理装置および画像処理システム Download PDF

Info

Publication number
JP2005339257A
JP2005339257A JP2004157900A JP2004157900A JP2005339257A JP 2005339257 A JP2005339257 A JP 2005339257A JP 2004157900 A JP2004157900 A JP 2004157900A JP 2004157900 A JP2004157900 A JP 2004157900A JP 2005339257 A JP2005339257 A JP 2005339257A
Authority
JP
Japan
Prior art keywords
data
band
unit
transmission
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004157900A
Other languages
English (en)
Inventor
Kazuya Yamamoto
万弥 山本
Susumu Ba
軍 馬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Data Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Data Corp filed Critical Oki Data Corp
Priority to JP2004157900A priority Critical patent/JP2005339257A/ja
Publication of JP2005339257A publication Critical patent/JP2005339257A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)
  • Storing Facsimile Image Data (AREA)

Abstract

【課題】 データ伝送を効率的に行う印刷処理装置および印刷処理システムの提供。
【解決手段】 画像処理装置は複数のデータ形式の何れかに則して送られてくる分割画像データを受信する手段と、データ形式を判別する手段と、第1のデータ形式の分割画像データを格納する第1の格納部と、第2のデータ形式の分割画像データを格納する第2の格納部と、第1の格納部のデータを読み出して、第2のデータ形式に変換して第2の格納部の所定の位置に格納する画像変換手段と、第1の格納部の使用状況に応じて上位装置が送信すべきデータ形式を判断可能な情報を通知する通知部とを備え、上位装置は分割して第1のデータ形式に変換する画像分割変換部と、第1のデータ形式の分割画像データを第2のデータ形式に変換するデータ形式変換部と、通知手段からの情報に基づいて第1又は第2のデータ形式の何れかで分割画像データを送信すべきか判断する判断部とを備える。
【選択図】 図1

Description

本発明は、印刷処理装置および画像処理装置に関し、特に上位装置からのデータ伝送が効率的に行われる印刷装置および印刷システムに関する。
画像処理装置としてのプリンタは、上位装置としてホストコンピュータのアプリケーションプログラム上で作成された画像データに基づいて印刷処理を行う。この印刷処理は、次に述べる2つの方法で実施される。第1の方法として、ホストコンピュータで送信すべきデータをページ記述言語(Page
Description Language)データ又はこれに準じる中間言語に変換し、該データをプリンタへ送信し、該データを受信したプリンタでビットマップデータに展開した後、該ビットマップデータに基づいて印刷処理を行う方法と、第2の方法として、予め画像データをビットマップデータ又はこれに準じるデータ形式に変換し、変換したデータをホストコンピュータからプリンタへ送信し、該データを受信したプリンタでビットマップデータに基づいて印刷処理を行う方法とが存在する。
一般的に、ビットマップデータなどをホストコンピュータからプリンタへ伝送する場合、ビットマップデータに展開されたデータは、展開前のデータよりも、そのデータ量が多く、データ伝送に多くの時間が必要となる。又、PDLデータをホストコンピュータからプリンタへ伝送する場合、データ量が少なくデータ転送時間が短縮するものの、ビットマップの展開をプリンタで行う必要があり、この展開処理に多くの時間が必要であった。
そこで、特許文献1に示すように、プリンタにビットマップデータの展開処理機能を持たせ、ホストコンピュータからプリンタへPDLデータを送信し、受信したPDLデータを展開し、印刷処理するまでの処理時間と、ホストコンピュータからプリンタへビットマップデータを送信し、該ビットマップデータに基づいて印刷処理するまでの処理時間とを比較し、印刷処理までの時間が短くなるデータ形式を選択して、印刷処理を行う画像処理システムが開示されている。
特開平10−198529号公報
ところが、前記した判断に基づきPDLデータを選択し、印刷処理を行った場合でも、PDLデータ中にプリンタによるビットマップデータへの展開処理に長い時間を必要とする画像を含んでいる場合、PDLデータの受信速度に対してビットマップデータの展開処理速度が遅くなり、このためホストコンピュータからのデータを受信する受信バッファにPDLデータを受入れることができなくなり、ホストコンピュータからのデータ伝送が停止する事態が生じる恐れがあり、効率的に印刷処理を行うことができなかった。
かかる問題に鑑みて、本発明の目的はデータ伝送を効率的に行う印刷処理装置および印刷処理システムを提供することにある。
本発明は、以上の点を解決するために、次の構成を採用する。
〈構成1〉
上位装置で分割され、かつ複数のデータ形式の何れかを使用して送られてくる分割画像データを受信する受信手段と、受信した分割画像データのデータ形式を判別する判別手段と、受信した分割画像データが第1のデータ形式であれば、これを格納する第1の格納部と、受信した分割画像データが第2のデータ形式であれば、これを格納する第2の格納部と、第1の格納部に格納している分割画像データを読み出して、第2のデータ形式に変換し、第2の格納部の所定の位置に格納する画像変換手段と、第2の格納部に格納されている各分割画像データに基づいて印刷する印刷手段と、第1の格納部の使用状況を判断し、使用状況に応じて上位装置が送信すべきデータ形式を判断可能な情報を通知する通知手段とを備えることを特徴とする。
〈構成2〉
第1のデータ形式は、ページ記述言語であり、前記第2のデータ形式はビットマップ形式であることを特徴とする。
〈構成3〉
画像データに基づく印刷処理を指示するための上位装置と、該上位装置からの印刷指示に応じて印刷処理を行う画像処理装置とからなる画像処理システムにおいて、記画像処理装置は、上位装置で分割され、かつ複数のデータ形式の何れかに則して送られてくる分割画像データを受信する受信手段と、受信した分割画像データのデータ形式を判別する判別手段と、受信した分割画像データが第1のデータ形式であれば、これを格納する第1の格納部と、受信した分割画像データが第2のデータ形式であれば、これを格納する第2の格納部と、第1の格納部に格納している分割画像データを読み出して、第2のデータ形式に変換して第2の格納部の所定の位置に格納する画像変換手段と、第2の格納部に格納されている各分割画像データに基づいて印刷する印刷手段と、第1の格納部の使用状況を判断し、使用状況に応じて上位装置が送信すべきデータ形式を判断可能な情報を通知する通知手段とを備えており、上位装置は、画像データを分割すると共に、該各分割画像データを第1のデータ形式に変換する画像分割変換部と、第1のデータ形式の分割画像データを第2のデータ形式の分割画像データに変換するデータ形式変換部と、画像形成装置の通知手段からの情報を受信する受信部と、該受信部の受信情報に基づいて第1のデータ形式又は第2のデータ形式の何れかで分割画像データを送信すべきか判断する判断部と、判断部で判断したデータ形式で分割画像データを送信する送信部と、を備えることを特徴とする。
〈構成4〉
上位装置の受信部の受信情報は、第1の格納部の空き容量情報であり、上位装置において、該空き容量と前記第1のデータ形式の各分割画像データのデータサイズとを比較し、前記空き容量より小さいデータサイズの該第1のデータ形式の分割画像データを送信データとして選択する送信データ選択部を備えることを特徴とする。
〈構成5〉
上位装置の受信部の受信情報は、第1の格納部の空き容量情報であり、上位装置において、第2のデータ形式の分割画像データを送信中に、第1の格納部の空き容量情報を所定の時間間隔で受信し、空き容量が送信前の第1のデータ形式の各分割画像データの内、少なくとも一つの分割画像データのサイズを超えて増加した後、第2のデータ形式の分割画像データの送信を一時的に中断して第1のデータ形式の分割画像データを送信する制御を行う送信タイミング制御部を備えることを特徴とする。
〈構成6〉
データ形式変換部は、画像分割変換部が画像データの分割と第1のデータ形式への変換を完了した後、直ちに該第1のデータ形式の各分割画像データを前記第2のデータ形式に変換処理することを特徴とする。
〈構成7〉
上位装置において、画像分割変換部が画像データの分割と第1のデータ形式への変換を終了した後、該第1のデータ形式での分割画像データの送信を判断した際は、元画像の先頭部にあたる分割画像データより順次送信し、第2のデータ形式での送信を判断した際は、元画像の最後部にあたる第1のデータ形式の分割画像データより第2のデータ形式に変換処理して順次送信する制御を行う送信データ制御部を備えることを特徴とする。
本発明によれば、画像処理装置で受信した分割画像データのデータ形式を判別して、第1のデータ形式の分割画像データを第1の格納部に格納し、第2のデータ形式の分割画像データを第2の格納部に格納し、第1の格納部に格納されている分割画像データを第2のデータ形式に変換処理して、第2の格納部の所定の位置に格納すると共に、第1の格納部の使用状況を判別し、使用状況に応じて前記上位装置が送信すべき、データ形式を判断可能に通知する。従って、上位装置は、第1の格納部の使用状況に応じて、第1のデータ形式の画像データから第2のデータ形式の画像データに切替えて送信を行うことにより、画像処理装置は、第1の格納部に空きがあるとき、第1のデータ形式の画像データを受信し、第1の格納部に空きがないとき、第2のデータ形式の画像データを受信して第2の格納部に格納することから、常に分割画像データの受信を行うことができる。これにより、本発明によれば、上位装置と画像処理装置との間で効率的に分割画像データを伝送することができ、然るに効率的な印刷処理を行うことができる。
以下、本発明の実施形態を図を用いて詳細に説明する。
ホストコンピュータなどの上位装置からプリンタやファクシミリなどの画像処理装置に対しデータを伝送し、該画像処理装置で印刷処理を行う画像処理システムを説明する。特に、本実施例では画像処理装置としてプリンタを例に説明する。
尚、本発明における実施形態の幾つかを詳細に説明するが、以下の説明では、各実施例を構成する各ブロックに共通して同一または同種のものには同一符号を付して説明を省略する。
本発明の画像処理システム100は、図1に示すように、プリンタ10とホストコンピュータ50とが伝送路80を介して接続されている。
プリンタ10は、USB(Universal
Serial Bus)などのシリアル通信や、セントロニクスなどのパラレル通信、LAN(Local Area Network)通信などの通信規格に対応して、ホストコンピュータ50と通信するためのインタフェース11と、該インタフェース11を介して受信するデータを一時的に保持するテンポラリバッファ22と、受信するデータの形式を識別するデータ形式識別部12が設けられた制御部13と、受信するデータの格納先をデータ形式識別部12の識別結果に基づいて選択するバッファ選択部14と、該バッファ選択部14で選択される第1の格納部としての受信バッファ15と、第2の格納部としてのデータバッファ16と、受信バッファ15に格納されているデータに対し、ビットマップ展開処理を行いデータバッファ16の所定の位置に格納する展開処理部18と、データバッファ16に保持されているデータを印刷可能なデータに変換処理する画像処理部19と、該画像処理部19で処理されたデータに基づいて印刷を行う印刷部20と、受信バッファの空容量をホストコンピュータ50へ通知する通知部21とを備える。
尚、テンポラリバッファ22と受信バッファ15とデータバッファ16とは、RAM17に設けられており、適宜その内容が書き換え可能である。
プリンタ10と伝送路80を介して接続するホストコンピュータ50は、基本ソフトウェア上で動作するアプリケーション51と、前記通信規格に対応してプリンタ10と通信するためのインタフェース52と、プリンタを制御するためのドライバ53とを備えている。
アプリケーション51やドライバ53は、プログラムとしてホストコンピュータ50の図示しない記憶部に記録されており、該記憶部に記録されたプログラムを逐次読み出し、該プログラムに従って図示しないCPUに処理させることで、アプリケーション51およびドライバ53は機能する。
アプリケーション51は、ワードプロセッサや描画などのソフトウェアであり、このアプリケーションソフトウェアで作成された画像データをプリンタ10に印刷処理させるべく、アプリケーション51からの印刷指示をドライバ53へ通知すると、該ドライバ53がホストコンピュータ50からプリンタ10へデータを伝送するために動作する。
ドライバ53は、画像データをプリンタで認識可能のデータに変換し、変換後のデータを所定のデータサイズに分割処理するデータ変換部54と、受信バッファの空容量を監視する受信バッファ監視部55と、分割処理したデータのサイズおよび受信バッファの空容量のサイズを比較するサイズ比較部(判断部)56と、インタフェース52を介してプリンタ10と通信するための送受信部57とを備えている。
画像データは、アプリケーションで作成された図やグラフなどのイメージデータなどであり、データ変換部54はこのような画像データをページ記述言語(Page
Description Language)のデータ又はこれに準じる中間言語のデータに変換する。尚、前記したページ記述言語およびこれに準じる中間言語をPDL言語と総称し、以降の説明を行う。
データ変換部54は、ドライバ展開処理部(データ形式変換部)58とバンド変換処理部(画像分割変換部)59とを備えている。ドライバ展開処理部58は、PDL言語の画像データに対し、必要に応じてビットマップ展開処理を施す。
バンド変換処理部59は、図2に示すように、画像データを所定のデータサイズに分割してPDL言語へ変換処理する。尚、分割された各データをバンドと称し、以降の説明を行う。図2においては、アプリケーションで作成した1ページ分の画像データを5分割処理し、5個のバンドを生成する。生成された各バンドに対し、バンド1〜バンド5なる名称をそれぞれ付して以降の説明を行う。
送受信部57は、分割処理により生成されたバンド単位でプリンタに送信する処理と、プリンタ10に対し、該プリンタ10の受信バッファ15の空容量を問合せて、その結果を取得する処理とを行うべく、通信制御を行う。
受信バッファ監視部55は、バンド変換処理部59で分割処理した各バンドをプリンタへ送信するのに先立ち、プリンタ10に受信バッファの空容量の問合せを行い、受信バッファの空容量の監視を行う。
サイズ比較部56は、受信バッファ監視部55で取得した受信バッファの空容量と、バンド変換処理部59で生成した各バンドにおいて、プリンタ10へ送信すべきバンドのデータサイズとを比較する。この比較結果に基づいて、送信すべきバンドが受信バッファに受信できないとき、当該バンドに対しビットマップ展開処理をドライバ展開処理部58で行う。
ところで、ホストコンピュータ50からのバンドを受信するプリンタ10は、展開前のバンドを受信バッファ15で受信し、展開後のバンドはデータバッファ16で受信する。従って、受信バッファ15に受信可能な空き容量が無い場合、送信すべきバンドを予めビットマップ展開処理しておき、展開後のバンドをデータバッファ16で受信させることができる。
ここで、プリンタ10の各部を詳細に説明する。
テンポラリバッファ22は、ホストコンピュータ50からのバンドを一時的に受入れる機能を有しており、後述するデータ形式識別部12において、バンドのデータ形式を識別するために必要なデータの収容量が確保されている。例えば受入れるバンドのヘッダでデータ形式を識別できる場合、該ヘッダ部を受入れるだけの容量がテンポラリバッファ22に確保されている。
データ形式識別部12は、テンポラリバッファ22で一時的に保持しているホストコンピュータ50からのバンドを解析し、ビットマップ展開処理前のバンドであるか、ビットマップ展開処理後のバンドであるかを識別し、識別結果をバッファ選択部14に通知する。
バッファ選択部14は、データ形式識別部12の識別結果に基づいて、受信するバンドがビットマップ展開処理前であるとき受信バッファ15へ、受信するバンドがビットマップ展開処理後であるときデータバッファ16へ格納すべく、受信するバンドの格納先を選択する制御を行う。
受信バッファ15は、受信する展開前のバンドを格納可能な、少なくとも1バンドのデータサイズよりも大きな容量で形成されている。
データバッファ16は、バンドに対応した領域を設けており、ビットマップ展開処理後の各バンド1〜バンド5を、該各バンド1〜バンド5に対応して設けた各領域に格納する。
展開処理部18は、受信バッファ15に格納されているビットマップ展開前のバンドをビットマップ展開処理し、ビットマップ展開処理後のバンドをデータバッファ16の所定の位置に格納する処理を行う。ビットマップ展開処理前のバンドが例えばバンド2であるとき、展開処理部18はビットマップ展開処理前のバンド2に対し、ビットマップ展開処理を行って得た展開後のバンド2をデータバッファ16におけるバンド2の格納位置に格納する。
画像処理部19は、データバッファ16に格納している展開後のバンドに対し、必要に応じて画像変換処理を行い、印刷用のビットマップデータを生成し、該データを印刷部20へ出力する。また、ビットマップ展開処理後のバンドが圧縮処理されてデータバッファ16に格納されている場合、画像処理部19は、その圧縮を伸張する処理も行う。
通知部21は、受信バッファ監視部55からの要求に応じて、受信バッファ15の空容量を調べ、その結果を通知する。通知を受けた受信バッファ監視部55は、通知結果に基づいて、受信バッファ15に空容量が無い場合、送信すべきバンドをドライバ展開処理部58でビットマップ展開処理させる。ビットマップ展開処理後のバンドが送受信部57によりプリンタ10へ伝送されると、プリンタ10は、展開後のバンドをデータバッファ16に格納する。これにより、受信バッファに空容量が無い場合、データバッファ16に展開後のバンドを格納することができる。
次に、画像処理システム100の動作をフローチャートを用いて説明する。
ホストコンピュータ50におけるデータ変換処理の動作を図3のフローチャートに沿って説明する。
ホストコンピュータ50のアプリケーション51により画像データが生成された後(ステップS11)、印刷要求があるまで待機する(ステップS12)。
印刷要求があると、ホストコンピュータ50は、インタフェース52を制御してプリンタ10に対し印刷処理を行う要求を通知する(ステップS13)。その後、データ変換部54は、画像データを所定のバンド数に分割処理する(ステップS14)。分割処理で生成された各バンドは、バンド変換処理部59で順にPDLに変換される(ステップS15)。
全てのバンドに対し、PDL変換を行うと処理が終了する(ステップS16)。
次に、ホストコンピュータ50におけるデータ送信処理の動作を図4のフローチャートに沿って説明する。
送受信部57は、データ変換部54で画像データを分割処理して得た各バンドにおいて、少なくとも1つのバンドのPDL変換処理の完了を待っており(ステップS21)、PDL変換処理を終えたバンドを順次送信する。
すなわち、PDL変換処理が完了し、送信すべきバンドがあるとき、受信バッファ監視部55は、プリンタ10に対し、受信バッファ15の空容量を問合せる。この問合せを受けたプリンタ10は、通知部21で受信バッファ15の空容量を調べ、その空容量をホストコンピュータ50へ通知する。
プリンタ10からの通知を受けたホストコンピュータ50は、受信バッファ15の空容量を取得する(ステップS22)。その後、サイズ比較部56は、取得した空容量と、送信すべきバンドのデータサイズとを比較する(ステップS23)。サイズ比較部56は、送信すべきバンドのデータサイズが受信バッファ15の空容量よりも小さいとき(ステップS24)、送受信部57は、当該バンド、すなわちビットマップ展開処理前のバンドをプリンタ10へ送信する(ステップS25)。
送受信部57は、各バンドを送信し終えたか否かを確認する(ステップS26)。全てのバンドの送信を終えていない場合、前記したステップS21からの処理を行う。
ところで、前記したステップS24において、送信すべきバンドのデータサイズが受信バッファ15の空容量よりも大きいと判断したサイズ比較部56は、当該バンドをビットマップ展開処理すべく、ドライバ展開処理部58に対し展開を指示する(ステップS27)。
その後、送受信部57は、ドライバ展開処理部58でビットマップ展開処理されたバンドをプリンタ10へ送信する(ステップS28)。その後、前記したステップS26において、送受信部57は、各バンドを送信し終えたか否か確認する。全バンドの送信が完了すると、送信処理を終了する。尚、送信処理は、PDL変換処理と並行して行われる。
次に、送信されたバンドをプリンタ10で受信する動作を図5のフローチャートに沿って説明する。
プリンタ10は、ホストコンピュータ50から印刷要求があるまで待機状態にあり(ステップS31)、ホストコンピュータ50からの印刷要求の後、受信バッファ15の空容量の問合せに対し、通知部21は受信バッファ15の空容量をホストコンピュータ50へ通知する(ステップS32)。
ホストコンピュータ50からのバンドは、インタフェース11を介してテンポラリバッファ22に一時的に保持される(ステップS33)。データ形式識別部12は、受信したテンポラリバッファ22に保持するバンドが、展開前のバンドであるか展開後のバンドであるか否かを識別する(ステップS34)。
バッファ選択部14は、データ形式識別部12からの識別結果に基づいて収容先を選定する(ステップS35)。すなわち、展開前のバンドは、受信バッファ15で保持され(ステップS36)、展開後のバンド(展開後データ)は、データバッファ16で保持される(ステップS37)。
その後、全バンドの受信を完了したか否かを判定し、全バンドの受信を完了していないとき、全バンドの受信が完了するまでステップS33からの処理を繰返す(ステップS38)。また、受信処理は、前記したPDL変換処理およびデータ送信処理と並行して行われる。
次に、受信バッファに受信したバンドのビットマップ展開処理を図6のフローチャートに沿って説明する。
展開処理部18は、受信したバンドが受信バッファ15に保持されるまで待機しており(ステップS41)、受信バッファ15にバンドが保持されると、保持されたバンドを読出し、該バンドをビットマップ展開処理し、展開後のバンドをデータバッファ16の所定の位置に保持させる(ステップS42)。
その後、受信した全バンド、すなわち、受信したバンドにおいて、受信バッファ15に保持される全バンドの変換処理を終えたか否かを判断し(ステップS43)、全バンドの変換処理を終えるまで前記したステップS41からの処理を繰返す。
ビットマップ展開処理は、前記したPDL変換処理、送信処理および受信処理と並行して行われる。
ビットマップ展開処理を終えた各バンドに基づいて行う印刷処理を図7のフローチャートに沿って説明する。尚、ビットマップ展開処理されたバンドを展開後データと称して、以降の説明を行う。
画像処理部19は、1ページ分の展開後データがデータバッファ16に保持されるまで待機しており(ステップS51)、データバッファ16に1ページ分の展開後データが保持されると、保持されたバンドを読出し、必要に応じて画像処理を行い、印刷部20で処理可能な例えばビットマップなどのデータ形式に変換する(ステップS52)。尚、画像処理は、展開後データが圧縮されている場合、該展開後データに対して行う伸張処理等である。
画像処理を終えた展開後データは印刷部20へ送られると、印刷部20は当該展開後データに基づいて印刷処理を行う(ステップS53)。その後、全ての展開後データに基づく印刷処理、すなわち全ページの印刷処理を終えたか否かを判断し(ステップS54)、全ページの印刷処理を終えるまで前記したステップS51からの処理を繰返す。
印刷処理は、前記したPDL変換処理、送信処理、受信処理およびビットマップ展開処理と並行して行われる。
ところで、前記した各処理において、終了判定に必要なバンド総数やページ総数などは、バンド情報およびページ情報などとして、ホストコンピュータ50から伝送されるバンドに含まれている。すなわちホストコンピュータ50からのバンドを解析し、バンド情報やページ情報を抽出し、抽出したこれらの情報に基づいて各処理の終了判定を行う。また、バンド情報およびページ情報は、総数の外に、当該バンドが何バンド目のバンドであるか、また何ページ目のバンドであるか示す識別情報も含んでいる。
次に、プリンタ10のRAM17、特に受信バッファ15およびデータバッファ16に限って、その使用量の遷移を図8の遷移図を用いて、本発明の要所となる処理のみを詳細に説明する。遷移図は、初期状態、処理中1、処理中2、中略して、処理完了の順に処理の流れと共に、受信バッファ15の使用量およびデータバッファ16の使用量の関係を示している。尚、本実施例では、1ページ分の画像データがバンド1〜バンド5までの5バンドに分割された例で説明する。
受信バッファ15は、展開前のバンドを2バンド分保持可能であり、データバッファ16は、バンド1〜バンド5までの5バンド分の展開後バンドを保持可能である。尚、データバッファ16は、バンド1〜バンド5までのそれぞれを、受入れ順序に関係なく、バンド番号に対応付けられた所定の位置に、展開後のバンドを保持する。
初期状態において、受信バッファ15およびデータバッファ16には何も保持されておらず、その後、ホストコンピュータ50からのバンド1は、テンポラリバッファ22に一時的に保持され、データ形式識別部12でビットマップ展開処理前のバンドであると識別され、バッファ選択部14の制御を受けて受信バッファ15に保持される。バンド2も前記したと同様に受信バッファ15で保持される。
この状態にあるとき、次のバンドを送信すべく、ホストコンピュータ50の受信バッファ監視部55から監視要求があると、この要求に応じて通知部21は、受信バッファ15の空き容量を通知する。
処理中1において、通知部21からの通知で得た受信バッファ15の空容量と、送信すべきバンド、すなわちバンド3のサイズとを比較し、該バンド3のデータサイズが受信バッファ15の空容量より大きいと判断したサイズ比較部56は、バンド3にビットマップ展開処理を施すべく、データ変換部54に対しビットマップ展開処理を指示する。
指示を受けたデータ変換部54は、バンド3をビットマップ展開処理し、該展開後のバンド3がプリンタ10へ送信され、ホストコンピュータ50からのバンド3がテンポラリバッファ22で一時的に保持される。その後、データ形式識別部12によりビットマップ展開処理後のバンドであると識別されたバンド3は、バッファ選択部14の制御を受けて、データバッファ16に保持される。
従って、受信バッファ15に受信可能な空容量が無い場合、データバッファ16で受信することができる。
尚、前記した処理と並行して、受信バッファ15に保持しているバンド1は、展開処理部18でビットマップ展開処理され、展開後のバンド1がデータバッファ16の所定の位置に保持される。またビットマップ展開処理の進捗状況に応じて、受信バッファ15におけるバンド1の使用量が低減する。
処理中3において、引き続き展開後のバンド3をデータバッファ16で保持している間に、バンド1のビットマップ展開処理が終了すると、バンド2のビットマップ展開処理が引き続き行われる。
処理中4において、ホストコンピュータ50から展開後のバンド3の送信が終了、すなわちプリンタ10のデータバッファ16で展開後のバンド3を保持し終えた後、受信バッファ監視部55から監視要求があると、通知部21は、バンド1のビットマップ展開処理が終えバンド2のビットマップ展開処理に伴い使用量が低減している受信バッファ15の空容量を通知する。
処理5において、通知を受け、受信バッファ15の空容量と送信すべきバンド4のデータサイズとを比較したサイズ比較部56は、この比較で空容量がバンド4のサイズより大きいと判断し、バンド4に対しビットマップ展開処理を施すことなく展開前のバンド4がプリンタ10へ送信される。ホストコンピュータ50からのバンド4は、テンポラリバッファ22に一時的に保持される。その後、データ形式識別部12によりビットマップ展開処理前のバンドであると識別されたバンド4は、バッファ選択部14の制御を受けて、受信バッファ15に保持される。
この状態にあるとき、次のバンドを送信すべく、ホストコンピュータ50の受信バッファ監視部55から監視要求があると、この要求に応じて通知部21は、受信バッファ15の空き容量を通知する。
尚、以降の処理は、前記した処理中1と同様であり、サイズ比較部56でバンド5のデータサイズが受信バッファ15の空容量より大きいと判断すると、ドライバ展開処理部58でビットマップ展開処理が施される。その後、展開後のバンド5がホストコンピュータ50からプリンタ10へ送信される。プリンタ10では、受信したバンド5をデータ形式識別部12で識別し、展開後のバンド5をデータバッファ16で保持する。
全てのバンド、すなわちバンド1〜バンド5がデータバッファ16で保持された後、画像処理部19は、必要に応じてバンドに対し、圧縮データの伸張処理等の画像処理を行い、印刷用のビットマップデータを生成し、該ビットマップデータに基づいて印刷部20で印刷処理を行う。
前記したように、実施例1の画像処理システムによれば、ホストコンピュータ50からの監視要求に応じて、プリンタ10の通知部21で受信バッファ15の空容量をホストコンピュータ50へ通知し、通知を受けたホストコンピュータ50では、送信すべきバンドのデータサイズと、受信バッファ15の空容量とを比較し、送信すべきバンドのデータサイズが大きいとき、当該バンドをドライバ展開処理部58でビットマップ展開処理し、展開後のバンドをプリンタ10へ送信する。
一方、バンドを受けたプリンタ10では、データ形式識別部12でビットマップ展開処理前のバンドであるか、ビットマップ展開処理後のバンドであるか否かを判定し、ビットマップ展開処理後のバンドをデータバッファ16で保持させることから、受信バッファ15に空容量が無い場合でも、データバッファ16で展開後のバンドを受信して保持することができ、常にバンドの受信が可能である。よって実施例1の画像処理システム100によれば、ホストコンピュータ50からのバンドをプリンタ10で常に受信できることから、効率的なバンド伝送を行うことができる。
実施例2の画像処理システム200は、受信バッファ15の空容量に応じて送信すべきバンドを選択する送信データ選択部がホストコンピュータ50に追加されている。
すなわち実施例2のホストコンピュータ50は、図9に示すように、アプリケーション51およびドライバ53を備えおり、実施例2のドライバ53は、ドライバ展開処理部58およびバンド変換処理部59から成るデータ変換部54と、受信バッファ監視部55と、サイズ比較部56と、送受信部57と、本実施例の特徴である送信データ選択部60とを備えている。
一方、プリンタ10は、実施例1と同様であり、インタフェース11と、データ形式識別部12を有する制御部13と、バッファ選択部14と、受信バッファ15とデータバッファ16とテンポラリバッファ22を有するRAM17と、ビットマップ展開処理部18と、画像処理部19と、印刷部20とを備えている。
実施例2の特徴である送信データ選択部60は、受信バッファ監視部55で受信バッファ15の空容量を取得し、サイズ比較部56で空容量と展開前のバンドのデータサイズとを比較した結果において、何れのバンドを送信すべきか選択する。すなわち送信データ選択部60は、サイズ比較部56の比較結果に基づいて、取得した受信バッファ15の空容量より小さいデータサイズの展開前のバンドがある場合、当該バンドをバンドの送信順序に関係無く選択する。送信データ選択部60で選択された受信バッファ15の空容量よりデータサイズが小さなバンドは、送受信部57でプリンタ10へ伝送される。
ところで、実施例1のサイズ比較部56は、受信バッファ15の空容量と、送信すべきバンドのデータサイズとのみ比較を行っていたが、実施例2においては、単に受信バッファ15の空容量とバンドのデータサイズとを比較するのではなく、送信すべきバンドのデータサイズが受信バッファ15の空容量より小さいとき、更に次のバンドと受信バッファ15の空容量とを比較する。これにより、送信データ選択部60は、受信バッファ15の空容量より小さいデータサイズのバンドを取得することができる。
次に、ホストコンピュータ50におけるバンドの送信処理を図10のフローチャートに沿って説明する。
送受信部57は、データ変換部54で画像データを分割処理して得た各バンドにおいて、少なくとも1つのバンドのPDL変換処理の完了を待っており(ステップS61)、PDL変換処理を終えたバンドを送信する。
すなわち、PDL変換処理が完了し、送信すべきバンドがあるとき、受信バッファ監視部55は、プリンタ10に対し、受信バッファ15の空容量を問合せる。この問合せを受けたプリンタ10は、通知部21で受信バッファ15の空容量を調べ、その空容量をホストコンピュータ50へ通知する。
プリンタ10からの通知を受けたホストコンピュータ50は、受信バッファ15の空容量を取得すると(ステップS62)、該空容量と、送信すべき各展開前のバンドのデータサイズとをサイズ比較部56で比較する(ステップS63)。送信データ選択部60は、サイズ比較部56の比較結果に基づいて、各展開前のバンドにおいて、受信バッファ15の空容量よりも小さなデータサイズのバンドを選択する。
前記した選択処理で受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが選定できたとき(ステップS64)、当該バンドをプリンタ10へ送信する(ステップS65)。
一方、前記した選択処理で受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが無い場合、バンド番号が若いバンドがドライバ展開処理部58でビットマップ展開処理される(ステップS66)。その後、展開後のバンドがプリンタ10へ送信される(ステップS67)。
送受信部57は、各バンドを送信し終えたか否かを確認する(ステップS67)。全てのバンドの送信が完了していない場合、前記したステップS61からの処理を行い、全バンドの送信が完了すると、送信処理を終了する。尚、送信処理は、PDL変換処理や受信処理などと並行して行われる。
次に、プリンタ10の受信バッファ15およびデータバッファ16の使用量の遷移を図11の遷移図を用いて、本発明の要所となる処理のみを詳細に説明する。遷移図は、初期状態、処理中1、処理中2、中略して、処理完了の順に処理の流れと共に、受信バッファ15の使用量およびデータバッファ16の使用量の関係を示している。尚、本実施例では、1ページ分の画像データがバンド1〜バンド5までの5バンドに分割された例で説明する。
受信バッファ15は、展開前のバンドを3バンド分保持可能であり、データバッファ16は、バンド1〜バンド5までの5バンド分の展開後バンドを保持可能である。尚、データバッファ16は、バンド1〜バンド5までのそれぞれを、受入れ順序に関係なく、バンド番号に対応付けられた所定の位置に、展開後のバンドを保持する。
初期状態において、受信バッファ15およびデータバッファ16には何も保持されておらず、その後、ホストコンピュータ50はプリンタ10の受信バッファ15の空容量を問合せて、受信バッファ15の空容量を取得すると、該空容量と、展開前のバンド1〜バンド5のそれぞれのデータサイズと比較し、バンド1、バンド3およびバンド5のデータサイズが受信バッファの空容量よりも、小さいと判断し、これらの展開前のバンドがホストコンピュータ50からプリンタ10へ送信され、プリンタ10の受信バッファ15で保持された状態を示している。
この状態にあるとき、次のバンドを送信すべく、ホストコンピュータ50の受信バッファ監視部55から監視要求があると、この要求に応じて通知部21は、受信バッファ15の空き容量を通知する。
処理中1において、サイズ比較部56で通知部21からの通知で得た受信バッファ15の空容量と、送信すべきバンド、すなわちバンド2のデータサイズおよびバンド4のデータサイズとを比較し、何れのバンドも受信バッファ15の空容量よりも大きいと判断されると、送信データ選択部60は、バンド番号が若い展開前のバンド2を選択する。データ変換部54は、選択したバンド2をビットマップ展開処理し、展開後のバンド2がプリンタ10へ送信される。
ホストコンピュータ50からのバンド2がテンポラリバッファ22で一時的に保持された後、データ形式識別部12によりビットマップ展開処理後のバンドであると識別されたバンド3は、バッファ選択部14の制御を受けて、データバッファ16に保持される。
尚、前記した処理と並行して、受信バッファ15に保持しているバンド1は、展開処理部18でビットマップ展開処理され、展開後のバンド1がデータバッファ16の所定の位置に保持される。これにより、ビットマップ展開処理の進捗状況に応じて、受信バッファ15におけるバンド1の使用量が低減する。
処理中3において、引き続き展開後のバンド2をデータバッファ16で保持している間に、バンド1のビットマップ展開処理が終了すると、バンド3のビットマップ展開処理が引き続き行われる。
処理中4において、ホストコンピュータ50から展開後のバンド3の送信が終了、すなわちプリンタ10のデータバッファ16で展開後のバンド3を保持し終えた後、受信バッファ監視部55から監視要求があると、通知部21は、バンド1のビットマップ展開処理を終えバンド3のビットマップ展開処理に伴い使用量が低減している受信バッファ15の空容量を通知する。
処理5において、サイズ比較部56は、受信バッファ15の空容量と送信すべきバンド4のデータサイズとを比較する。ここでは、比較結果が受信バッファ15の空容量よりも展開前のバンド4のデータサイズが大きい前提で、以降の説明を行う。
処理6において、サイズ比較部56でバンド4のデータサイズが受信バッファ15の空容量より大きいと判断されると、ドライバ展開処理部58でバンド4に対しビットマップ展開処理を施す。ビットマップ展開処理されたバンドは、送受信部57によりプリンタ10へ送信される。テンポラリバッファ22にホストコンピュータ50からのバンド4が一時的に保持されると、データ形式識別部12は、テンポラリバッファ22に一時的に保持したバンド4が展開後のバンドであると識別すると、識別結果をバッファ選択部14へ通知し、バッファ選択部14は、テンポラリバッファ22に一時的に保持しているバンド4をデータバッファ16に保持する。
尚、以降の処理は、前記した処理中2と同様であり、受信バッファ15に保持しているバンド5が展開処理部18でビットマップ展開処理され、展開後のバンド5がデータバッファ16の所定の位置に保持されると共に、受信中のバンド4をデータバッファ16の所定の位置に保持する処理も並行して行われる。
全てのバンド、すなわちバンド1〜バンド5がデータバッファ16で保持された後、画像処理部19は、必要に応じてバンドに対し、圧縮データの伸張処理等の画像処理を行い、印刷用のビットマップデータを生成し、該ビットマップデータに基づいて印刷部20で印刷処理を行う。
前記したように、実施例2の画像処理システム200によれば、実施例1と同様にホストコンピュータ50からのバンドをプリンタ10で常に受信できる。更に実施例2の画像処理システム200によれば、サイズ比較部56で送信すべき各展開前のバンドにおいて、受信バッファ15の空容量より小さいデータサイズのバンドをバンド番号に関係なく選択し、これを送信する。これにより、実施例2の画像処理システム200によれば、受信バッファ15で保持可能なデータサイズのバンドをバンド番号に関係なく送信することから、
バンド番号による制約を受けることなく、効率的なバンド伝送を行うことができる。
送信タイミングを制御する送信タイミング制御部がホストコンピュータ50に追加されている。
すなわち実施例3のホストコンピュータ50は、図12に示すように、アプリケーション51およびドライバ53を備えおり、実施例3のドライバ53は、ドライバ展開処理部58およびバンド変換処理部59を有するデータ変換部54と、受信バッファ監視部55と、サイズ比較部56と、送受信部57と、送信データ選択部60と、本実施例の特徴である送信タイミング制御部61とを備えている。
一方、プリンタ10は、実施例1と同様であり、インタフェース11と、データ形式識別部12を有する制御部13と、バッファ選択部14と、受信バッファ15とデータバッファ16とテンポラリバッファ22とを有するRAM17と、展開処理部18と、画像処理部19と、印刷部20と、通知部21とを備えている。
実施例2の特徴である送信タイミング制御部61は、ホストコンピュータ50から展開後のバンドを送信中に、定期的に受信バッファ監視部55を起動し、該受信バッファ監視部55で監視する受信バッファ15の空容量を取得し、サイズ比較部56で取得した受信バッファ15の空容量と、各展開前のバンドのデータサイズとを比較し、受信バッファ15の空容量より小さいデータサイズのバンドがある場合、現在送信中の処理を一時中断し、受信バッファ15の空容量より小さいデータサイズの展開前のバンドを送信処理した後、展開前のバンドの送信処理が終了した後、一時中断していた展開後のバンド送信処理を再開する制御を行う。
受信バッファ監視部55は、前記した実施例と同様に、展開前のバンドの送信に先立ち、受信バッファ15の空容量を問い合わせるが、更にドライバ展開処理部58でビットマップ展開処理されたバンドが送信中である間にも、定期的に受信バッファ15の空容量を問い合わせる。
次に、ホストコンピュータ50におけるバンドの送信処理を図13のフローチャートに沿って説明する。
送受信部57は、データ変換部54で画像データを分割処理して得た各バンドにおいて、少なくとも1つのバンドのPDL変換処理の完了を待っており(ステップS71)、PDL変換処理を終えたバンドを送信する。
すなわち、PDL変換処理が完了し、送信すべきバンドがあるとき、受信バッファ監視部55は、プリンタ10に対し、受信バッファ15の空容量を問合せる。この問合せを受けたプリンタ10は、通知部21で受信バッファ15の空容量を調べ、その空容量をホストコンピュータ50へ通知する。
プリンタ10からの通知を受けたホストコンピュータ50は、受信バッファ15の空容量を取得すると(ステップS72)、該空容量と、送信すべき各展開前のバンドのデータサイズとをサイズ比較部56で比較する(ステップS73)。送信データ選択部60は、サイズ比較部56の比較結果に基づいて、各展開前のバンドにおいて、受信バッファ15の空容量よりも小さなデータサイズのバンドを選択する。
前記した選択処理で受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが選定できたとき(ステップS74)、当該バンドをプリンタ10へ送信する(ステップS75)。その後、送受信部57は、各バンドを送信し終えたか否かを確認し(ステップS76)、全てのバンドの送信が完了していない場合、前記したステップS71からの処理を行い、全バンドの送信が完了すると、送信処理を終了する。
一方、前記したステップS74の選択処理において、受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが無い場合、バンド番号が若いバンドがドライバ展開処理部58でビットマップ展開処理される(ステップS77)。その後、展開後のバンドがプリンタ10へ送信される(ステップS78)。
ところで、前記したステップS77における展開後のバンドの送信中に、送信タイミング制御部61は、受信バッファ監視部55を起動制御し、受信バッファ監視部55で受信バッファ15の空容量の問合せを行わせて、受信バッファ15の空容量を取得させる(ステップS79)。
受信バッファ15の空容量を取得すると、該空容量と、送信すべき各展開前のバンドのデータサイズとをサイズ比較部56で比較する(ステップS80)。送信データ選択部60は、サイズ比較部56の比較結果に基づいて、各展開前のバンドにおいて、受信バッファ15の空容量よりも小さなデータサイズのバンドを選択する。
前記した選択処理で受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが選定できたとき(ステップS81)、送信タイミング制御部61は、現在送信中の処理、すなわち展開後のバンド送信処理を一時中断する制御を行った後(ステップS82)、選定した展開前のバンドの送信処理を行う(ステップS83)。
展開前のバンドの送信処理が終了すると、送信タイミング制御部61は、一時中断していた展開後のバンドの送信処理を再開する制御を行う(ステップS84)。その後、ステップS79からの処理を繰返す。
ところで、前記したステップS81において、受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドを選定できなかったとき、展開後のバンドの送信が完了したか否かを判定し(ステップS85)、送信処理が完了していない場合はステップS79からの処理を繰り返し、送信処理が完了している場合は、前記したステップS76における全バンドの送信完了確認の処理を行う。
次に、プリンタ10の受信バッファ15およびデータバッファ16の使用量の遷移を図14の遷移図を用いて、本実施例の要所となる処理を詳細に説明する。遷移図は、初期状態、処理中1、処理中2、中略して、処理完了の順に処理の流れと共に、受信バッファ15の使用量およびデータバッファ16の使用量の関係を示している。尚、本実施例では、1ページ分の画像データがバンド1〜バンド5までの5バンドに分割された例で説明する。
受信バッファ15は、展開前のバンドを3バンド分保持可能であり、データバッファ16は、バンド1〜バンド5までの5バンド分の展開後バンドを保持可能である。尚、データバッファ16は、バンド1〜バンド5までのそれぞれを、受入れ順序に関係なく、バンド番号に対応付けられた所定の位置に、展開後のバンドを保持する。
初期状態において、受信バッファ15およびデータバッファ16には何も保持されておらず、その後、ホストコンピュータ50はプリンタ10の受信バッファ15の空容量を問合せて、受信バッファ15の空容量を取得すると、該空容量と、展開前のバンド1〜バンド5のそれぞれのデータサイズと比較し、バンド1、バンド3およびバンド5のデータサイズが受信バッファの空容量よりも、小さいと判断し、これらの展開前のバンドがホストコンピュータ50からプリンタ10へ送信され、プリンタ10の受信バッファ15で保持された状態を示している。
この状態にあるとき、次のバンドを送信すべく、ホストコンピュータ50の受信バッファ監視部55から監視要求があると、この要求に応じて通知部21は、受信バッファ15の空き容量を通知する。
処理中1において、サイズ比較部56で通知部21からの通知で得た受信バッファ15の空容量と、送信すべきバンド、すなわちバンド2のデータサイズおよびバンド4のデータサイズとを比較し、何れのバンドも受信バッファ15の空容量よりも大きいと判断されると、送信データ選択部60は、バンド番号が若い展開前のバンド2を選択する。データ変換部54は、選択したバンド2をビットマップ展開処理し、展開後のバンド2がプリンタ10へ送信される。
ホストコンピュータ50からのバンド2がテンポラリバッファ22で一時的に保持された後、データ形式識別部12によりビットマップ展開処理後のバンドであると識別されたバンド3は、バッファ選択部14の制御を受けて、データバッファ16に保持される。
尚、前記した処理と並行して、受信バッファ15に保持しているバンド1は、展開処理部18でビットマップ展開処理され、展開後のバンド1がデータバッファ16の所定の位置に保持される。これにより、ビットマップ展開処理の進捗状況に応じて、受信バッファ15におけるバンド1の使用量が低減する。
処理中2において、バンド1のビットマップ展開処理が終了した後、ホストコンピュータ50が展開後のバンド2を送信している間に、受信バッファ監視部55が受信バッファ15の空容量をプリンタ10に問合せて受信バッファ15の空容量を取得すると、該受信バッファ15の空容量と未送信の展開前のバンド4のデータサイズとをサイズ比較部56で比較する。比較結果において展開前のバンド4のデータサイズが受信バッファ15の空容量より小さいと判断され、送信データ選択部60により選定されると、送信タイミング制御部61は、現在送信中の処理、すなわち展開後のバンド2の送信処理を一時中断し、選定した展開前のバンド4の送信処理を開始する制御を行う。
処理中3において、受信バッファ15で保持しているバンド3のビットマップ展開処理が行われている間に、ホストコンピュータ50からの展開前のバンド4をプリンタ10で受信し、該展開前のバンド4を受信バッファ15で保持する。
処理中4において、展開前のバンド4の送信処理が完了すると、送信タイミング制御部61は、中断している展開後のバンド2の送信処理を再開する制御を行う。
尚、以降の処理は、受信バッファ15で保持しているバンド5をビットマップ展開処理した後データバッファ16の所定の位置に保持し、その後受信バッファ15で保持しているバンド4をビットマップ展開処理した後、データバッファ16の所定の位置で保持する。
全てのバンド、すなわちバンド1〜バンド5がデータバッファ16で保持された後、画像処理部19は、必要に応じてバンドに対し画像処理を行い、印刷用のビットマップデータを生成し、該ビットマップデータに基づいて印刷部20で印刷処理を行う。
前記したように、実施例3の画像処理システム300によれば、前記した実施例と同様にホストコンピュータ50からのバンドをバンド番号に関係なくプリンタ10で常に受信できる。更に実施例3の画像処理システム300によれば、展開後のバンドを送信中に、受信バッファ15で保持可能なデータサイズのバンドがあるとき、送信タイミング制御部61が送信中の展開後のバンドの送信処理を一時中断し、前記展開前のバンドを送信し、該展開前のバンドの送信処理が完了した後、中断している送信処理を再開すべく、送信タイミングの制御を行うことにより、データサイズが大きな展開後のバンド伝送よりデータサイズが小さな展開前のバンドを優先的に送信することから、効率的なバンド伝送を行うことができる。
前記した実施例では、ホストコンピュータ50において、必要に応じてビットマップ展開処理を行ったが、実施例4では、予めビットマップ展開処理を行っておき、ビットマップ展開処理が必要なとき、すなわち受信バッファに空容量が無いとき、即座に予めビットマップ展開処理を施したバンドを送信する。
実施例4の画像処理システム400の要部となる構成は、前記した実施例3と同様であることからその説明を割愛し、画像処理システム400の動作をフローチャートに沿って説明する。
実施例4のホストコンピュータ50におけるデータ変換処理が図15のフローチャートに示されており、ホストコンピュータ50における送信処理が図16のフローチャートに示されている。
先ず、データ変換処理を説明する。
ホストコンピュータ50のドライバ展開処理部58は、アプリケーション51で生成された画像データを分割処理し、各画像データ(各バンド)に対しPDL変換処理で展開前のバンドが生成されるまで待機している(ステップS91)。ドライバ展開処理部58は、バンド変換処理部59で、少なくとも1バンド以上の展開前のバンドが生成されると、該各展開前のバンドに対しビットマップ展開処理を行う(ステップS92)。
ドライバ展開処理部58は、少なくとも1バンド分のビットマップ展開処理が完了したか否かを判定する(ステップS93)。その後、全バンドの送信処理が完了したか否か判定し(ステップS94)、全バンドの送信処理が終了していなければ、前記したステップS91からの処理を繰返す。
尚、前記したビットマップ展開処理は、バンド変換処理部59におけるPDL変換処理と並行して行われる。
これにより、展開後のバンドが送信処理に先立ち、予め生成されることから、送信処理中に、展開後のバンドが必要になると、予めビットマップ展開処理したバンドを即座に送信することができる。
次に、送信処理を図16のフローチャートに沿って説明する。尚、図16のフローチャートにおいて、前記した図13におけるステップ番号と同一の処理内容は同一のステップ番号が付されている。
送受信部57は、PDL変換処理の完了を待っており(ステップS71)、PDL変換処理を終えたバンドを送信すべく、受信バッファ監視部55は、プリンタ10から受信バッファ15の空容量を取得すると(ステップS72)、該受信バッファ15の空容量と、送信すべきバンドのデータサイズとをサイズ比較部56で比較し(ステップS73)、送信データ選択部60で、各展開前のバンドにおいて、受信バッファ15の空容量よりも小さなデータサイズのバンドが選択される。
前記した選択処理において、受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが選定されると(ステップS74)、当該バンドをプリンタ10へ送信する(ステップS75)。その後、送受信部57は、各バンドを送信し終えたか否かを確認し(ステップS76)、全てのバンドの送信が完了していない場合、前記したステップS71からの処理を行い、全バンドの送信が完了すると、送信処理を終了する。
ところで、前記したステップS74において、受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが存在しない場合、予めビットマップ展開処理施されたバンドを即座に送信する(ステップS78)。これにより、展開前のバンドを受信バッファで保持するだけの空容量が無いと判明してから、ビットマップ展開処理を開始して、ビットマップ展開処理の完了を待つ必要がなく、即座に展開後のバンドを送信することができる。
尚、ステップS78以降の処理は、前記した実施例3と同様であることから、その説明を割愛する。
前記したように、実施例4の画像処理システム400は、展開後のバンドの送信処理に先立ち、予めビットマップ展開処理を施したバンドを生成することにより、バンドを送信処理中に、展開後のバンドが必要になってから、ビットマップ展開処理を開始する必要が無く、予めビットマップ展開処理しておいたバンドを即座に送信できることから、効率的なバンド伝送を行うことができる。
実施例5の画像処理システム500は、図17に示すように、送信データ制御部と送信済みバンドデータ比較部とがホストコンピュータ50に追加されている。
すなわち実施例3のホストコンピュータ50は、アプリケーション51およびドライバ53を備えおり、実施例5のドライバ53は、ドライバ展開処理部58およびバンド変換処理部59を有するデータ変換部54と、受信バッファ監視部55と、サイズ比較部56と、送受信部57と、送信データ選択部60と、送信タイミング制御部61と、本実施例の特徴である送信データ制御部62および送信済みバンドデータ比較部63とを備えている。
送信データ制御部62および送信済みバンドデータ比較部63以外は、前記した実施例と同様であることから、その説明を割愛し、本実施例の特徴である送信データ制御部62および送信済みバンドデータ比較部63を詳細に説明する。尚、全バンド(バンド1〜バンドm)がデータ変換処理を終えた前提で以降の説明を行う。また、プリンタ10においてビットマップ展開処理する展開前のバンドを、昇順にバンド1からバンド(1+x)(但しxは0からの昇順)と称し、ホストコンピュータ50においてビットマップ展開処理する展開前のバンドを、降順にバンドmからバンド(m-y)(但しyは0からの昇順)と称して、以降の説明を行う。
送信データ制御部62は、バンド1から始まる展開前のバンドと、バンドmから始まる展開前のバンドとの送信順位の制御を行う。
送信済みバンドデータ比較部63は、全バンドの送信が完了したか否かを確認すべく、ホストコンピュータ50からプリンタ10へ送信された展開前のバンドの管理番号と、ホストコンピュータ50でビットマップ展開処理された展開後のバンドの管理番号との比較を行う。
次に、画像処理システム500の動作を説明する。データ変換処理、ビットマップ展開処理、受信処理、印刷処理は、前記した実施例と同様であることから、その説明を割愛し、本発明の特徴である送信処理を図18のフローチャートに沿って説明する。
送受信部57は、バンド変換処理部59においてデータ変換処理が終了するまで待機しており(ステップS91)、データ変換処理が終了すると、受信バッファ監視部55が起動してプリンタ10の受信バッファの空容量を取得する(ステップS92)。
その後、サイズ比較部56で受信バッファ15の空容量と、送信すべき各バンド(バンド(1+x):但しxは0からの昇順)の展開前のデータサイズとを比較する(ステップS93)。送信データ選択部60は、サイズ比較部56の比較結果に基づいて、展開前の各バンドにおいて、最初のバンド(バンド(1+x):但しxは0からの昇順)から順に比較を行って、受信バッファ15の空容量よりも小さいデータサイズの展開前のバンド(1+x)が選定できたとき(ステップS94)、当該バンドをプリンタ10へ送信する(ステップS95)。
尚、全バンドのデータ変換処理が終了すると、ホストコンピュータ50で最後に生成されたバンド(バンドm)から順に、ビットマップ展開処理が開始される。すなわち、図19に示すように、ホストコンピュータ50のドライバ展開処理部58は、アプリケーション51で生成された画像データが分割処理され、全バンド(バンド1〜バンドm)に対しPDL変換処理が施され、PDL変換処理が完了するまで待機している(ステップS120)。
ドライバ展開処理部58は、最後のバンド、すなわちバンドmから降順に、展開前のバンドに対し、ビットマップ展開処理を施す(ステップS130)。その後、全バンドの送信処理が完了したか否か判定し(ステップS140)、全バンドの送信処理が終了していなければ、前記したステップS120からの処理を繰返す。
ところで、ホストコンピュータ50からプリンタ10へ、展開前のバンドがバンド1から昇順にバンド(1+x)まで送信される間に、バンドmから降順にバンド(m−y)まで前記したビットマップ展開処理が並行して行われる。
前記したステップS95におけるバンド送信が完了したか否かを判定し(ステップS96)、送信が終了していない場合は、送信処理を継続する。
送信が終了した場合は、送信済みバンドデータ比較部63で送信状況を示す情報に送信が完了したことを示す情報を更新した後、展開前のバンドのバンド番号(1+x)と、展開後のバンドのバンド番号(m−y)との比較を行う(ステップS97)。尚、送信状況情報やバンド番号は、図示しない記憶部で保持管理される。
ここで、送信済みバンドデータ比較部63の比較処理を説明する。展開前のバンドの送信順序は、図20に示すように、バンド(1+x)(但しxは0からの昇順)、すなわち最初のバンドから、つまりバンド1、バンド2・・・バンド(1+x)の昇順に送信され、展開後のバンドの送信順序は、バンド(m−y)(但しyは0からの昇順)、すなわちバンドm、バンド(m−1)、バンド(m−2)・・・バンド(m−y)の降順に送信されることから、展開前のバンドのバンド番号と、展開後のバンドのバンド番号との差が1未満になると、送信完了と判断でき、この判断を行うべく、送信済みバンドデータ比較部63で展開前のバンド番号と、展開後のバンド番号との比較を行う。
前記した比較処理で、(m−y)−(1+x)>1であるとき、送信処理が完了していないと判断し、(m−y)−(1+x)<=1であるとき、全バンドの送信処理の完了と判断する(ステップS98)。送信処理が完了していない場合、前記したステップS91からの処理を繰返す。
ところで、前記したステップS94において、バンド(1+x)のデータサイズが受信バッファ15の空容量よりも大きいとき、即座に展開後のバンド(m−y)を送信する(但し、送信順序は、y=0からの昇順)(ステップS99)。
その後、受信バッファ監視部55で受信バッファ15の空容量を問合せ、該受信バッファ15の空容量を取得する(ステップS100)。
受信バッファ15の空容量を取得すると、該空容量と、送信データ制御部62で管理する送信すべき各展開前のバンド(1+x)のデータサイズとをサイズ比較部56で比較する(ステップS101)。送信データ選択部60は、サイズ比較部56の比較結果に基づいて、各展開前のバンドにおいて、受信バッファ15の空容量よりも小さなデータサイズのバンドを選択する。
前記した選択処理で受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが選定できたとき(ステップS102)、送信タイミング制御部61は、現在送信中の処理、すなわち展開後のバンド(m−y)の送信処理を一時中断する制御を行った後(ステップS103)、選定した展開前のバンド(1+x)の送信処理を行う(ステップS104)。
選定した展開前のバンド(1+x)の送信処理の完了を待って(ステップS105)、送信済みバンドデータ比較部63で送信状況を示す情報に送信が完了したことを示す情報を更新した後、展開前のバンドのバンド番号(1+x)と、展開後のバンドのバンド番号(m−y)との比較を行う(ステップS106)。
この比較で、(m−y)−(1+x)>1であるとき、全バンドの送信処理が完了していないと判断し(ステップS107)、一時中断している展開後のバンド(m−y)の送信処理を再開し(ステップS108)、ステップS99からの処理を継続する。
一方、前記したステップS107において、(m−y)−(1+x)<=1であるとき、全バンドの送信処理の完了と判断し、展開後のバンド(m−y)の送信処理を中止する(ステップS109)。
ところで、前記したステップS102において、受信バッファ15の空容量よりも小さいデータサイズの展開前のバンドが選定できなかったとき、展開後のバンド(m−y)の送信処理の完了を判定し(ステップS110)、送信処理が完了していない場合は、前記したステップS99からの送信処理を継続する。尚、前記したステップS110の判定で送信処理が完了している場合は、前記したステップS97からの送信済みバンドの比較処理を行う。
前記したように、実施例5の画像処理システム500によれば、展開前のバンドは昇順のバンド番号で送信し、プリンタ10の受信バッファ15に展開前のバンドを受入れるだけの容量が無い場合は、展開後のバンドを降順のバンド番号で送信することから、ステップS101において複数の未送信バンドの展開前のデータサイズと空容量とを比較する必要がなく、単に送信データ制御部62で管理するバンドのデータサイズだけを空容量と比較すればよいことから、効率的に送信すべきバンドの選定を行うことができ、よって効率的なバンド伝送を行うことができる。
前記した実施例では、データ形式識別部12でデータ形式を識別するための容量が少なくとも確保されているテンポラリバッファを用いて説明を行ったが、受信バッファの空容量を管理すること、すなわちデータ形式識別部12でデータ形式を識別するための容量が少なくとも確保できるまで、ビジー状態であることをホストコンピュータ50に通知することで、テンポラリバッファを用いなくてもよい。
実施例1の画像処理システムのブロック図である。 バンド分割を示す図である。 データ変換処理のフローチャートである。 ホストコンピュータにおける送信処理のフローチャートである。 プリンタにおける受信処理のフローチャートである。 プリンタにおける展開処理のフローチャートである。 プリンタにおける印刷処理のフローチャートである。 実施例1のRAM状態遷移を示す図である。 実施例2の画像処理システムのブロック図である。 実施例2のホストコンピュータにおける送信処理のフローチャートである。 実施例2のRAM状態遷移を示す図である。 実施例3の画像処理システムのブロック図である。 実施例3のホストコンピュータにおける送信処理のフローチャートである。 実施例3のRAM状態遷移を示す図である。 実施例4のホストコンピュータにおけるビットマップ展開処理のフローチャートである。 実施例4のホストコンピュータにおける送信処理のフローチャートである。 実施例5の画像処理システムのブロック図である。 実施例5のホストコンピュータにおける送信処理のフローチャートである。 実施例5のホストコンピュータにおけるビットマップ展開処理のフローチャートである。 送信済みバンドデータ比較部の処理内容を示す図である。
符号の説明
10 プリンタ
11 52 I/F
12 データ形式識別部
13 制御部
14 バッファ選択部
15 受信バッファ
16 データバッファ
17 RAM
18 展開処理部
19 画像処理部
20 印刷部
21 通知部
50 ホストコンピュータ
51 アプリケーション
52 インタフェース
53 ドライバ
54 データ変換部
55 受信バッファ監視部
56 サイズ比較部
57 送受信部
58 ドライバ展開処理部
59 バンド変換処理部
80 伝送路

Claims (7)

  1. 上位装置で分割され、かつ複数のデータ形式の何れかを使用して送られてくる分割画像データを受信する受信手段と、
    前記受信した分割画像データのデータ形式を判別する判別手段と、
    前記受信した分割画像データが第1のデータ形式であれば、これを格納する第1の格納部と、
    前記受信した分割画像データが第2のデータ形式であれば、これを格納する第2の格納部と、
    前記第1の格納部に格納している分割画像データを読み出して、前記第2のデータ形式に変換し、前記第2の格納部の所定の位置に格納する画像変換手段と、
    前記第2の格納部に格納されている前記各分割画像データに基づいて印刷する印刷手段と、
    前記第1の格納部の使用状況を判断し、使用状況に応じて前記上位装置が送信すべきデータ形式を判断可能な情報を通知する通知手段とを備えることを特徴とする画像処理装置。
  2. 前記第1のデータ形式は、ページ記述言語であり、前記第2のデータ形式はビットマップ形式であることを特徴とする請求項1記載の画像処理装置。
  3. 画像データに基づく印刷処理を指示するための上位装置と、該上位装置からの印刷指示に応じて印刷処理を行う画像処理装置とからなる画像処理システムにおいて、
    前記画像処理装置は、
    前記上位装置で分割され、かつ複数のデータ形式の何れかに則して送られてくる分割画像データを受信する受信手段と、
    前記受信した分割画像データのデータ形式を判別する判別手段と、
    前記受信した分割画像データが第1のデータ形式であれば、これを格納する第1の格納部と、
    前記受信した分割画像データが第2のデータ形式であれば、これを格納する第2の格納部と、
    前記第1の格納部に格納している分割画像データを読み出して、前記第2のデータ形式に変換して前記第2の格納部の所定の位置に格納する画像変換手段と、
    前記第2の格納部に格納されている前記各分割画像データに基づいて印刷する印刷手段と、
    前記第1の格納部の使用状況を判断し、使用状況に応じて前記上位装置が送信すべきデータ形式を判断可能な情報を通知する通知手段とを備えており、
    前記上位装置は、
    前記画像データを分割すると共に、該各分割画像データを前記第1のデータ形式に変換する画像分割変換部と、
    前記第1のデータ形式の分割画像データを前記第2のデータ形式の分割画像データに変換するデータ形式変換部と、
    前記画像形成装置の前記通知手段からの情報を受信する受信部と、
    該受信部の受信情報に基づいて第1のデータ形式又は第2のデータ形式の何れかで分割画像データを送信すべきか判断する判断部と、
    前記判断部で判断したデータ形式で前記分割画像データを送信する送信部と、
    を備えることを特徴とする画像処理システム。
  4. 前記上位装置の受信部の受信情報は、前記第1の格納部の空き容量情報であり、
    前記上位装置において、該空き容量と前記第1のデータ形式の各分割画像データのデータサイズとを比較し、前記空き容量より小さいデータサイズの該第1のデータ形式の分割画像データを送信データとして選択する送信データ選択部を備えることを特徴とする請求項3記載の画像処理システム。
  5. 前記上位装置の受信部の受信情報は、前記第1の格納部の空き容量情報であり、
    前記上位装置において、前記第2のデータ形式の分割画像データを送信中に、前記第1の格納部の空き容量情報を所定の時間間隔で受信し、前記空き容量が送信前の前記第1のデータ形式の各分割画像データの内、少なくとも一つの分割画像データのサイズを超えて増加した後、前記第2のデータ形式の分割画像データの送信を一時的に中断して前記第1のデータ形式の分割画像データを送信する制御を行う送信タイミング制御部を備えることを特徴とする請求項3記載の画像処理システム。
  6. 前記データ形式変換部は、前記画像分割変換部が前記画像データの分割と第1のデータ形式への変換を完了した後、直ちに該第1のデータ形式の各分割画像データを前記第2のデータ形式に変換処理することを特徴とする請求項3記載の画像処理システム。
  7. 前記上位装置において、前記画像分割変換部が前記画像データの分割と第1のデータ形式への変換を終了した後、該第1のデータ形式での分割画像データの送信を判断した際は、元画像の先頭部にあたる分割画像データより順次送信し、前記第2のデータ形式での送信を判断した際は、元画像の最後部にあたる前記第1のデータ形式の分割画像データより前記第2のデータ形式に変換処理して順次送信する制御を行う送信データ制御部を備えることを特徴とする請求項3記載の画像処理システム。
JP2004157900A 2004-05-27 2004-05-27 画像処理装置および画像処理システム Pending JP2005339257A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004157900A JP2005339257A (ja) 2004-05-27 2004-05-27 画像処理装置および画像処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004157900A JP2005339257A (ja) 2004-05-27 2004-05-27 画像処理装置および画像処理システム

Publications (1)

Publication Number Publication Date
JP2005339257A true JP2005339257A (ja) 2005-12-08

Family

ID=35492751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004157900A Pending JP2005339257A (ja) 2004-05-27 2004-05-27 画像処理装置および画像処理システム

Country Status (1)

Country Link
JP (1) JP2005339257A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011194655A (ja) * 2010-03-18 2011-10-06 Ricoh Co Ltd 画像形成装置
JP2013225256A (ja) * 2012-04-23 2013-10-31 Konica Minolta Inc 画像形成システム、印刷ジョブ送信装置、印刷ジョブ送信方法および印刷ジョブ送信プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011194655A (ja) * 2010-03-18 2011-10-06 Ricoh Co Ltd 画像形成装置
JP2013225256A (ja) * 2012-04-23 2013-10-31 Konica Minolta Inc 画像形成システム、印刷ジョブ送信装置、印刷ジョブ送信方法および印刷ジョブ送信プログラム

Similar Documents

Publication Publication Date Title
US5974232A (en) Image processing apparatus that executes abortion of image processing and method of resuming aborted image processing
JP4543945B2 (ja) 印刷システムおよびその制御方法および印刷管理プログラム
US7746494B2 (en) Data processing apparatus, data processing method, printer driver, print control apparatus, print control method, and printing system
JP4532993B2 (ja) 印刷システム及びその制御方法、印刷方法、ホスト装置、プリンタ
JP2000085211A (ja) 印刷制御方法および印刷システム
JP2005339257A (ja) 画像処理装置および画像処理システム
JP2000029652A (ja) 画像出力装置
JPH08106369A (ja) 出力装置
JPH09107426A (ja) 印刷制御装置並びに印刷装置および印刷制御装置の印刷ジョブ処理方法
JP2008262546A (ja) データの効率的な処理のためにページ印刷順序の情報を利用するpdfダイレクトプリント方法
JPH09305584A (ja) 印刷装置
US7643163B2 (en) Data processing apparatus, data processing method and image forming apparatus having a plurality of compression/decompression devices
JP4252958B2 (ja) 印刷制御装置
JP4337220B2 (ja) 画像記録装置
JP4086380B2 (ja) 画像形成装置および画像形成装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2004021452A (ja) 画像出力システム
JP3578055B2 (ja) 記録システム及び端末装置、コンピュータで実行可能なプログラム
JP2000148418A (ja) 印刷装置
JP3141718B2 (ja) 画像処理装置
JPH10305641A (ja) 印刷システムおよび方法
JPH09214707A (ja) 画像処理装置
JPH0926861A (ja) 印刷装置
JP2005192107A (ja) 指示記述処理装置及び方法、指示記述処理プログラム
JP2004227309A (ja) プリンタ制御装置とプリンタ制御プログラム
JP2000207151A (ja) プリンタドライバプログラムを記録したコンピュ―タ読み取り可能な記録媒体とプリンタ制御装置とプリンタ制御方法