JPH11198462A - 印刷装置及び画像処理方法 - Google Patents

印刷装置及び画像処理方法

Info

Publication number
JPH11198462A
JPH11198462A JP10002629A JP262998A JPH11198462A JP H11198462 A JPH11198462 A JP H11198462A JP 10002629 A JP10002629 A JP 10002629A JP 262998 A JP262998 A JP 262998A JP H11198462 A JPH11198462 A JP H11198462A
Authority
JP
Japan
Prior art keywords
band
rendering
memory
time
schedule
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.)
Granted
Application number
JP10002629A
Other languages
English (en)
Other versions
JP3862396B2 (ja
Inventor
Keisuke Mitani
圭介 三谷
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP00262998A priority Critical patent/JP3862396B2/ja
Priority to US09/225,474 priority patent/US6369910B1/en
Publication of JPH11198462A publication Critical patent/JPH11198462A/ja
Application granted granted Critical
Publication of JP3862396B2 publication Critical patent/JP3862396B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1856Generation of the printable image characterized by its workflow
    • G06K15/1861Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time
    • G06K15/1863Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time by rasterizing in sub-page segments

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

(57)【要約】 【課題】最小限のメモリでプリントオーバーランを防止
する。 【解決手段】1ページをバンドに分割してバンド毎にレ
ンダリングとその出力とを並列に行う場合、各バンドの
レンダリング所要時間を予測しておき、その値と1バン
ドの出力所要時間とを基に、所定数のバンドメモリを用
いてレンダリング/出力を行うスケジュールを作成す
る。その際、プリントオーバーランするバンドがあれ
ば、そのバンドは予めレンダリングしておくものとす
る。また、出力しおえたバンドメモリは、すべて新たな
バンドをレンダリングするために順次用いる。こうして
スケジュールを決定し、それに基づいて各バンドのレン
ダリングと出力とを行う。

Description

【発明の詳細な説明】
【発明の属する技術分野】この発明は、中間データから
ビットマップデータを生成して印刷するレーザビームプ
リンタ等の印刷装置及び画像処理方法に関するものであ
る。
【従来の技術】従来より、ホストコンピュータなどから
印刷内容や印刷形式に関するデータ(印刷データ)を受
信して、それを元に実際に出力するビットマップを形成
(以後レンダリングとする)し、そのビットマップを例
えば紙面上に印刷出力(以後シッピング)するタイプの
印刷装置が広く使われている。このようなタイプの印刷
装置でレンダリングとシソピングを同時に行なった場
合、複雑な印刷データや、多量の印刷データを処理する
場合、レンダリング処理にかかる時間がシッピング処理
に行なうビットマップデータ転送時間より長くかかって
しまい、正常に印刷出力できないという欠点があった。
(以後、この現象をプリントオーバーランと称する)。
また、このプリントオーバーラン現象を回避するため
に、1ページ分の出力ビットマップをレンダリングして
からシソピング処理を行なうタイプの印刷装置もあった
が、この場合必ず1ページ分のビットマップを保持する
記憶装置が必要となり、出力解像度が高い印刷装置など
では記憶装置の容量を大きくしなければならないためメ
モリ効率が悪く、装置が非常に高価なものになってしま
う欠点がある。また、1ページをそれより小さな単位
(バンド)で区切り、1バンド分のレンダリングを終え
てからシッピングし、シソピング処理と並列に次のバン
ドのレンダリングを行なう(バンデイング処理)タイプ
の印刷装置もあるが、この場合、並列に行なっている次
のバンドのレンダリング時間が、前のバンドのシッピン
グ時間より大きくなってしまう場合、やはりプリントオ
ーバーラン現象が起きてしまうという欠点があった。
【発明が解決しようとする課題】本発明は以上のような
従来の欠点を除去するためになされたもので、記憶装置
の容量を低く抑えると共にプリントオーバーランを防ぐ
印刷装置及び画像処理方法を提供することを目的とす
る。
【課題を解決するための手段】本発明は上記従来例に鑑
みてなされたもので、下記のような構成からなる。すあ
なわち、バンドメモリへのバンド画像データのレンダリ
ングと、バンドメモリからのバンド画像データの出力を
並列に行う印刷装置であって、各バンドのレンダリング
所要時間を求める時間予測手段と、前記レンダリング所
要時間と、レンダリングされたバンド画像データの印刷
所要時間とを基に、最少のメモリを用いた各バンドのレ
ンダリングのスケジュールを作成するスケジュール手段
と、前記スケジュールに従って各バンドのレンダリング
を行うレンダリング手段と、各バンドメモリの内容を前
記スケジュールに従って出力する出力手段とを備える。
あるいは、画像処理方法であって、各バンドのレンダリ
ング所要時間を求め、該レンダリング所要時間と、レン
ダリングされたバンド画像データの印刷所要時間とを基
に、最少のメモリを用いた各バンドのレンダリングのス
ケジュールを作成し、該スケジュールに従って各バンド
のレンダリングを行う。あるいは、バンドメモリへのバ
ンド画像データのレンダリングを行うプログラムを格納
したコンピュータ可読メモリであって、前記プログラム
は、各バンドのレンダリング所要時間を求める時間予測
手段と、前記レンダリング所要時間と、レンダリングさ
れたバンド画像データの印刷所要時間とを基に、最少の
メモリを用いた各バンドのレンダリングのスケジュール
を作成するスケジュール手段と、前記スケジュールに従
って各バンドのレンダリングを行うレンダリング手段と
を備える。
【発明の実施の形態】[第1の実施の形態] <図1(装置の説明)の説明>まず、本実施形態の印刷
装置として好適なレーザビームプリンタ(ページプリン
タ)の構成について図1を参照しながら説明する。な
お、本実施例を適用する印刷装置は、レーザビームプリ
ンタに限られるものではなく、インクジェットプリンタ
等の他のプリント方式の印刷装置でも良いことはいうま
でもない。図1は本発明を適用可能な印刷装置の構成を
示す断面図であり、例えばレーザビームプリンタ(LB
P)の場合を示す。図において、LBP本体1000
は、外部に接続されているホストコンピュータから供給
される印刷データ(文字コード、制御コード等からなる
ページ記述言語等のプリンタ言語)やフォーム情報ある
いはマクロ命令等を入力して記憶するとともに、それら
の情報にしたがって対応する文字パターンやフォームパ
ターン等のビットマップデータを作成し、記録媒体であ
る記録紙等に像を形成する。操作パネル1012には操
作のためのスイッチ及びLED表示器等が配されてい
る。プリンタ制御ユニット1001はLBP本体100
0全体の制御及びホストコンピュータから供給される印
刷データ等を解析する。このプリンタ制御ユニット10
01は、主に文字情報(文字コード)を対応する文字パ
ターンのビデオ信号に変換してレーザドライバ1002
に出力する。レーザドライバ1002は半導体レーザ1
003を駆動するための回路であり、入力されたビデオ
信号に応じて半導体レーザ1003から発射されるレー
ザ光1004をオン・オフ切り換えする。レーザ光10
04は回転多面鏡1005で左右方向に振られて静電ド
ラム1006上を操作露光する。これにより、静電ドラ
ム1006上には文字パターンの静電潜像が形成される
ことになる。この潜像は、静電ドラム1006周囲に配
設された現像ユニット1007により現像された後、記
録紙に転写される。ここで静電ドラム1006の回転速
度は一定である。この記録紙にはカットシートを用い、
カットシート記録紙はLBP1000に装着した用紙カ
セット1008に収納され、給紙ローラ1009および
搬送ローラ1010と搬送ローラ1011とにより、装
置内に取り込まれて、静電ドラム1006に供給され
る。またLBP本体1000には、図示しないカードス
ロットを備え、内蔵フォントに加えてオプションフォン
トカード、プリンタ言語系の異なる制御カード(エミュ
レーションカード)を接続できるように構成されてい
る。 <図2(構成ブロック図)の説明>図2は本実施の形態
における印刷装置の制御システムの構成を説明するブロ
ック図である。ここでは、レーザビームプリンタ(図
1)を例にして説明する。なお、本発明の機能が実行さ
れるのであれば、単体の機器であっても、複数の機器か
らなるシステムであっても、LAN等のネットワークを
介して処理が行なわれるシステムであっても本発明を適
用できる。図において、ホストコンピュータ2.1は、
所定のインターフェース(例えば双方向インターフェー
ス)を介して印刷装置2.2に接続されて通信処理を実
行する。入力部2.3はホストコンピュータ2.1との
間の通信処理を行なう。入力部2.3は、ホストコンピ
ュータ2.1より印刷データを受信する処理を行なう。
ここで必要ならば印刷装置2.2の情報をホストコンピ
ュータ2.1へ送信する処理を行なってもよい。中間デ
ータ作成部2.4は、印刷データを、印刷装置内部で扱
いやすい形である中間データに変換する処理を行なう。
RAM2.5は本発明で使用する記憶装置である。RA
M2.5では入力部2.3で受信した印刷データより導
き出された中間データを保持したり、中間データをレン
ダリングした結果のビットマップを保持したり、その他
処理に必要な一時的なバッファエリアや、各種処理ステ
ータスを保持したりする。ROM2.6は、本発明で説
明する処理や、その他印刷装置2.2の行なう処理プロ
グラムを保持する。レンダリング部2.7は、RAM
2.5に格納された中間データの内容に従って、実際に
印刷出力する印刷イメージを作成する。印刷部2.8
は、レンダリング部2.7で作成された印刷イメージを
例えば実際の紙面へ印刷出力する出力部である。CPU
2.9は、本発明の実施例である印刷装置2.2の印刷
処理や後述するデータ処理を実際に行なう。スケジュー
ルリスト2.10は、図15で説明するバンドメモリ使
用スケジュールを保持する。内部バス2.11は本印刷
装置の各部を接続する。ここより、ROM2.6に蓄え
られたプログラムによってCPU2.10が行なう処理
について説明する。まず、本発明の実施例の印刷装置の
印刷データ受信から印刷出力までの大まかな流れと、バ
ンド処理の仕組みを説明し、次にプリントオーバーラン
回避方法についてタイムチャートを使ってその仕組みを
説明し、その後実際の実現例をフローチャートを使って
説明する。<本実施形態の印刷処理のおおまかな流れと
バンド処理の仕組み>まず印刷処理の全体の流れをフロ
ーチャートで説明し、その後メモリの使い方を中心にバ
ンド処理の仕組みを説明する。 <図3(1ページの印刷手順)の説明>図3は、印刷装
置2.2による1ページ分の印刷データを受信してから
印刷出力するまでの手順を示したフローチャートであ
る。 (データ受信)ステップ3.1において、ホストコンピ
ュータ2.1より入力部2.3で印刷データを受信す
る。そしてステップ3.2で受信した印刷データを中間
データ作成部2.4へと送り中間データに変換し、ステ
ップ3.3でRAM2.5へ格納する。中間データの形
式は、例えばレンダリング部2.7で処理しやすい形式
であったり、中間データのサイズが小さくなるような形
式であったり、中間データの処理が速くなるような形式
であったりと、内部処理の都合の良い形式であって良
い。 (レンダリング時間の計算)次にステップ3.4でプリ
ントオーバーランを避ける処理のための計算を行なう。
ステップ3.4ではステップ3.3で格納した中間デー
タについてのレンダリング処理にかかる時間を計算し、
それをバンド毎に集計することにより、バンド単位での
レンダリング時間を測定する。レンダリング時間計算に
ついては、図12で詳細に説明する。次にステップ3.
5で、印刷データを1ページ分処理し終ったかどうかを
判断し、まだページが終了していない場合は次の印刷デ
ータについてステップ3.2から処理を繰り返す。 (プリントオーバーラン回避)印刷データを1ページ分
レンダリング処理し終ったら、ステップ3.6でプリン
トオーバーラン回避処理を行なう。プリントオーバーラ
ン回避処理は、ステップ3.4で計算したバンド毎のレ
ンダリング時間にもとづき、プリントオーバーランが発
生しないようにバンドメモリ数やその使い方のスケジュ
ールを決め、スケジュールリスト2.10を作成する。
プリントオーバーラン回避処理については図16で詳し
く説明する。 (印刷出力)そして最後にステップ3.7で実際の用紙
上に印刷出力する。ここではバンドメモリをプリントオ
ーバーラン回避処理で作成したスケジュールリストに従
って使用する。詳しくは図18で説明する。 <図4(データ入力メモリ図)の説明>図4は、印刷装
置2.2の印刷データ受信時のメモリ処理について説明
する図である。図の4.4〜4.7は印刷装置2.2内
のRAM2.5を示している。ホストコンピュータ2.
1から入力部2.3へ印刷データが通信転送されると、
そのデータは中間データ作成部2.6で中間データに変
換されてRAM2.2内の中間データ格納領域4.6へ
と保管される。中間データの構造については、次の図5
で詳細に説明する。また、RAM2.2には中間データ
格納領域4.6の他に2つの「バンドメモリ」と呼ばれ
る領域であるバンドメモリ1(4.4)、バンドメモリ
2(4.5)が用意されている。この領域は通常の印刷
処理で中間データをレンダリングして得られる、印刷出
力すべき出力イメージをバンド単位で蓄えておく領域で
ある。この領域については図6で説明する。RAM2.
2の残りの部分は空きメモリ4.7である。印刷データ
を受信していない状態では、中間データ作成領域4.6
には1つも中間データが存在しないので、RAM内には
バンドメモリ1(4.4),2(4.5)以外は全て空
きメモリ4.7となっている。また1ページ分の中間デ
ータを中間データ格納領域4.6へ格納してもまだ空き
メモリ4.7がある場合、格納し終ったページの印刷出
力処理と平行して次のページの中間データを引き続き格
納することにより、メモリ容量一杯まで連続した印刷デ
ータを受信することができる仕組みとなっている。以下
に中間データ格納領域4.6内での中間データの管理構
造を説明する。 <図5(中間データ構造)の説明>図5は、印刷装置
2.2による中間データの構造及び管理形式について説
明した図である。本発明に基づく実施例である印刷装置
は、1枚の出力ページを幾つかの小領域(バンド)で区
切って、それぞれのバンドのレンダリングと印刷出力を
並列して行なう。そのため本実施例では印刷データをバ
ンド単位で管理するために、印刷データを中間データと
いう管理しやすい形式で管理する。並列処理について
は、以後に図6などを用いて説明する。1ページの出力
用紙5.1は、バンド1、バンド2…と名付けられたバ
ンドという小領域に区切られている。各バンドは図にあ
るように用紙搬送方向に垂直になるように配置されてい
る。また、それぞれのバンドは同面積を持つように区切
られているため、用紙出力時の各バンドの静電潜像形成
に要する時間は一定である。今、印刷装置が、図5に例
示したように、出力用紙5.1に1つの文字「あ」と斜
めの直線1本が描かれるような印刷データを受信したと
すると、その中間データは以下のような構造になる。ま
ず中間データは、中間データ管理テーブル5.2〜5.
4につながれる。中間データ管理テーブル5.2〜5.
4はバンド数分だけあり、それぞれのバンド内に描画さ
れるべき中間データをリンク構造で保持する。ここで文
字「あ」はバンド2内に描かれるべき文字なので、その
中間データ5.5〜5.8はバンド2の中間データ管理
テーブル5.3につながれている。そしてその構造は、
中間データの種類を示す領域、描画位置を示す領域、そ
の他描画に関する情報などを、それぞれの中間データの
種類によって必要なだけ保持する。文字「あ」の中間デ
ータは、中間データの種類が文字であることを示すデー
タ種別5.5、「あ」を描画する描画位置5.6、描画
する文字が「あ」であることを示す文字コード5.7、
例えば大文字や袋文字、文字色など文字の修飾方法に関
する修飾情報5.8からなっている。用紙5.1に描か
れる直線については、バンド2〜バンド3にまたがって
描画されるため、中間データは2つ作成され、それぞれ
バンド2の中間データ管理テーブル5.3とバンド3の
中間データ管理テーブル5.4につながれる。このよう
に管理される中間データは、印刷出力時にはそれぞれの
バンド毎にレンダリングされ、印刷出力される。このデ
ータは、バンド2については、データの種別が直線であ
ることを示すデータ種別5.9、開始位置5.10、終
了位置5.11、描画される直線が実線の太線であるこ
となど、直線の種別や太さなどを示す線種5.12から
なっている。バンド3についても同様に、データ種別
5.13、開始位置5.14、終了位置5.15、線種
5.16からなっている。 <図6(バンディングメモリ)の説明>図6は中間デー
タ形式で格納された印刷データを実際に印刷出力すると
きのバンドに関する処理(バンディング)を説明した図
である。図6(A)は、中間データを1ページ分中間デ
ータ格納領域に格納後、オーバーラン処理を終えあとの
メモリマップを示している。バンドメモリ1,2は、中
間データをレンダリングした結果の印刷出力イメージを
保管するラスタメモリである。またレンダリングする中
間データは、図5で説明したデータ構造で中間データ格
納領域6.3へ格納されている。中間データを1ページ
分格納後のプリントオーバーラン処理によって、バンド
メモリの数が2より大きい必要があった場合、中間デー
タ格納領域6.3の後など空きメモリを利用して一時的
なバンドメモリ6.4を作成する。この図では一時的な
バンドメモリを1つだけ作成している。図6(B)は、
2つのバンドメモリ1,2及び一時的なバンドメモリ
6.4を利用して印刷出力する場合のデータの流れを示
している。中間データはレンダリング部2.7でレンダ
リングされ、その結果の出力ビットマップは、後で述べ
るプリントオーバーラン回避処理により決定されたスケ
ジュールに従って3つのバンドメモリヘと格納され、印
刷部2.8はその出力イメージを実際の用紙上へ印刷出
力する。この処理は後で図18でフローチャートにより
説明する。 <プリントオーバーラン回避方法>次に本発明の主要部
分であるプリントオーバーランの回避方法についてその
概要を説明する。 <図7(バンディングタイミンク)の説明>図7は縦軸
に時間経過をあらわし、レンダリング部、印刷部のそれ
ぞれの処理内容、及びバンドメモリ1、バンドメモリ2
の保持している出力イメージについての時間的変化を示
したタイムチャートである。この図では第4バンドがプ
リントオーバーランを起こしている。以下、図を時間軸
に沿って説明する。まず時間t0〜t1で、レンダリン
グ部2.7は、用紙の最初に印刷出力される最上部であ
るバンド1のレンダリングを行ない(7.1)、その結
果得られた出力イメージをハンドラスタ1へと格納する
(7.8)。次にt1で静電ドラム1006の回転をス
タートさせる(以後印刷出力開始と表現する)。時間t
1以降では、レンダリング処理と印刷出力処理を並列に
行なう。ここで各バンド面積が一定で、かつ静電ドラム
1006の回転速度も一定なことより、各バンドの印刷
出力時間(時間t2−t1、時間t3−t2、‥.)は
一定であり、それは静電ドラム1006の回転速度によ
って決まる。時間t1〜t2では、既にバンドメモリ1
へ格納されているバンド1の印刷イメージを印刷部2.
8が印刷出力する処理(7.15)と、レンダリング部
が中間データ格納領域に格納されているバンド2の中間
データをレンダリングして(7.2)バンドメモリ2へ
印刷イメージを格納する処理(7.12)を並列で行な
う。同様に時間t2〜t3ではバンド2が印刷出力され
(7.16)、バンド3がバンドメモリ1へ出力イメー
ジ展開される(7.3,7.9)。以後同様の処理を繰
り返し、最終的に時間t7〜t8でバンド7の印刷出力
を行ない(7.21)、1ページ分の印刷を完了する。
以上の方式により最低バンドメモリが2バンドあればよ
く、1ページ分の出力イメージを格納するのに必要なメ
モリサイズよりはるかに少ないメモリで印刷出力処理を
行なうことができるようになっている。しかしながら、
ここでバンド4のレンダリング7.4に注目してみる
と、このバンドのレンダリング時間は時間t4−t3よ
り長くなっている。また、バンド4のレンダリング開始
時間は、レンダリング結果をバンドメモリ2に格納する
ためバンド2の出力イメージを印刷出力した後、つまり
t3以降でなくてはならない。そのため、実際のレンダ
リングはバンド4の印刷出力開始時間であるt4のタイ
ミングでも終了しておらず、プリントオーバーランにな
ってしまう。すなわち、印刷部2.8は、タイミングt
4からバンド4の印刷出力を開始しようとするが、この
時点ではバンド4のレンダリングは終了しておらず、正
常に印刷を開始できない。そこで、このような自体を回
避するために、以下に本発明のプリントオーバーランの
解決方法を説明する。 <図8(プレレンダリングタイミング)の説明>図8
は、プリントオーバーランを回避する第1の方法を説明
したタイムチャートである。まず、先に図6で説明した
ように、一時的なバンドメモリ用のメモリ6.4を確保
し、プリントオーバーランするバンド4を印刷出力開始
タイミングより前にあらかじめレンダリングしておく
(8.14)。他のバンドは通常と同様にレンダリング
及び印刷出力し、バンド4の印刷出力時はレンダリング
は行なわず一時的バンドメモリから印刷出力のみを行な
う(8.18)。このように一時的なバンドメモリを用
意し、レンダリングタイミングを変えることでプリント
オーバーランを回避することができる。この方式は、1
つのバンドのレンダリング時間がいくら長くても、確実
にそのバンドのプリントオーバーランを防ぐことができ
るという利点がある。 <図9(3バンド以上のバンディングタイミング)の説
明>またプリントオーバーランを回避する第2の方法を
図9に示す。この方式もまた図8と同様に一時的なバン
ドメモリ用のメモリを確保し、今度は最初からある2つ
のバンドメモリと一時的なバンドメモリを合わせて3つ
以上のバンドメモリを順番に使ってレンダリングと印刷
出力を並列に行なう。バンドメモリが3つ以上になる
と、図のように個々のバンドメモリの使われる頻度が低
下してくる。そのため各バンドのレンダリング時間はバ
ンドメモリの数が多くなればなるほど長く取ることがで
き、プリントオーバーランを防ぐことができる。図9の
場合、レンダリング時間の長いバンド4のレンダリング
開始タイミングが、バンド3のレンダリング終了直後と
なり、バンドメモリが2つの場合に比べて早くなるた
め、バンド4の印刷出力タイミングt4までにレンダリ
ングを終えることができている。このように順番に使い
まわすバンドメモリ数をふやすことにより、プリントオ
ーバーランを防ぐことができる。この方式は、全体的に
レンダリング可能最大時間を長く取ることができるよう
になる特徴を持つ。例えば、バンドメモリが3つの場合
には、最大2バンド分の印刷に要する時間をレンダリン
グのために用いることができる。 <図10(本発明バンディングタイミンク)の説明>さ
らに本発明では上記2つの方法を組合せ、レンダリング
のタイミングを適切にスケジューリングして、一時的な
バンドメモリの確保数を最小にすることでメモリを効率
よく利用する第3の方法を図10に示す。図10は、図
8あるいは図9の方法のいずれかだけでは2バンド以上
の一時的バンドメモリが必要となるケースでも、本発明
の方式により、必要な一時的バンドメモリの数を1バン
ドに抑えた結果を示す例のタイムチャートである。この
例ではバンド3,4,5,6のレンダリング時間が1バ
ンドの印刷出力に要する時間よりも長い。本発明による
方式では、図10のように一時的バンドメモリ6.4に
はあらかじめバンド3の出力イメージレンダリングして
おく。そしてバンド3の印刷出力が終ったあとはバンド
メモリ1,2、及び一時的バンドメモリの3つで並列に
レンダリングと印刷出力を行なっている。このようにバ
ンドメモリの使用スケジュールを適切にたてることによ
り、1つの一時的バンドメモリを確保することで4つの
バンドのプリントオーバーランを防ぐことができる。 <図11(バンドメモリ使用スケジューリング)の説明
>以上説明したような適切なバンドメモリ使用のスケジ
ューリングの具体例を、図11を使って説明する。図1
1は前図とはまた別のデータについての例である。図の
横軸は各バンドを示し、それぞれのレンダリング時間は
縦軸で示している。図11の例では、バンド3のレンダ
リング時間が最も長く、次にバンド4、次にバンド5、
バンド2と短くなっている。また図の3本の点線は、1
つのバンドをオーバーランせずにレンダリングするため
にかけられる時間を示しており、一番下の点線は、2つ
のバンドメモリを用いた場合、中央は3つのバンドメモ
リを用いた場合、一番上は4つのバンドメモリを用いた
場合の時間をそれぞれ示している。もし本図のような特
徴を持つ印刷データを2バンドのバンドメモリを用いて
印刷出力した場合、バンド2〜バンド5が許容時間を越
えているのでプリントオーバーランになってしまう。こ
こでプリントオーバーランするバンドを全て一時的バン
ドメモリへあらかじめレンダリングする図8のようなス
ケジューリングを行なうと、4バンド分の一時的バンド
メモリが必要となる。そこで、一時的バンドメモリを2
バンドだけ確保し、バンド3についてはあらかじめレン
ダリングしておく。バンド4以降はバンド3で使ってい
たバンドメモリも含めて4バンド全てを使ってレンダリ
ングと印刷出力を並列で行なう。こうすることによりバ
ンド4以外のバンドのレンダリング時間は、4バンドメ
モリを用いた場合のレンダリング許容時間以下なので、
プリントオーバーランは起こさない。このように最適な
レンダリングスケジュールを組むことにより、最小の一
時的バンドメモリを用いることでプリントオーバーラン
を防ぐことが本発明の要点である。 <上記方法を用いた印刷処理の実現方法>以上が本実施
形態の印刷処理の流れ、メモリの使い方、プリントオー
バーラン回避方法の考え方である。以下に本実施形態の
印刷装置における処理手順について、フローチャートを
用いて説明する。なお全体の処理の流れは図3で説明済
みであるので、そのなかのポイントとなるステップS
3.4のレンダリング時間計算、ステップS3.6のオ
ーバーラン対策、ステップS3.7の印刷出力処理手順
を説明する。 <図12(レンダリング時間計算)の説明>図12は、
図3のステップ3.4で行なわれる、バンド単位のレン
ダリング時間を計算する手順のフローチャートである。
ここで求めるレンダリング時間は、図3のステップ3.
6のオーバーラン対策処理で一時的バンドメモリの確保
数やスケジューリングを決めるのに使われる。まずステ
ップ12.1において、中間データの種類によってレン
ダリング時間計算方法を選択する。中間データの種類
が、固定的にレンダリング時間が決まっているようなタ
イプのものである場合は、既にテーブルに保管しておい
た中間データに対するレンダリング時間からレンダリン
グ時間を求めるなどの処理を、ステップ12.2で行
う。このようなタイプの処理については図13で説明す
る。また、例えばイメージビットマップのように、その
レンダリング処理は単純にメモリ内容のコピーであるよ
うなタイプの中間データの場合、計算するレンダリング
時間は中間データのサイズより決まるため、ステップ1
2.3でサイズより処理時間を計算する。また、実際に
レンダリングしてみないとレンダリング時間の分らない
ようなタイプの中間データの場合、ステップS12.4
において、時間測定のために実際にレンダリング処理を
実行して時間を求める。このようなタイプの処理につい
ては図14で説明する。なお、これらの分岐、及び処理
は、ここに示した以外の他のタイプの時間算出アルゴリ
ズムを用いても良い。それら各種中間データのタイプに
応じたレンダリング時間算出処理を行なった後、ステッ
プ12.5において、算出した時間をバンド全体のレン
ダリング時間に加算し、バンド内にレンダリング時間が
計算されていないオブジェクトがあればそれについて計
算を行い、なければ処理を終える。 <図13(固定テーブル方式によるレンダリング時間計
算)の説明>図13は図12のステップ12.2の固定
的なレンダリング時間を求める処理の例を説明した図で
ある。事前にレンダリング時間が分っている中間データ
については、図のように中間データの種類とそれに対応
するレンダリング時間の対応表からレンダリング時間を
検索する。 <図14(実測方式によるレンダリング時間計算)の説
明>図14は図12のステップ12.4のレンダリング
時間の実測処理の例について説明したフローチャートで
ある。ステップ14.1で印刷装置内部タイマーをスタ
ートし、ステップ14.2で実際のレンダリングと同様
に測定したい中間データをレンダリングする。そしてレ
ンダリングが終り次第ステップ14.3でタイマーをス
トップし、その開かかった時間をレンダリング時間とす
る。 <図15(スケジュールリスト)の説明>以上のように
各バンドのレンダリング時間を計算し、図3で示したよ
うに1ページ分の印刷データをメモリ内に格納した後、
図3のステップ3.6でプリントオーバーランしないよ
うにバンドメモリの使用スケジュールをスケジュールリ
スト2.10へ作成する。スケジュールリストの構造は
図15で示すように、レンダリングするバンドの番号を
バンド欄15.1に、その結果得られる出力イメージを
格納するバンドメモリをバンドメモリ欄15.2にペア
として登録し、レンダリングを実行する順番にリスト構
造で並べたものである。図15の場合、まず最初にバン
ド3を一時的バンド1へレンダリングし、その後バンド
1をバンドメモリ1、バンド2をバンドメモリ2、バン
ド4をバンドメモリ1….という順番にレンダリングす
ることを示している。なおこの図15で示しているスケ
ジュールは、タイミングチャート図10のスケジュール
リストである。このスケジュールの決定方法については
次の図16で説明する。またスケジュールに従った印刷
処理については図18で説明する。 <図16(オーバーラン対策)の説明>図16はオーバ
ーランが発生しないようなスケジュールリストの作成方
法について説明したフローチャートである。まずステッ
プ16.1では、バンドメモリ2つを使ってレンダリン
グと印刷出力を並列に実行する場合から検討を始める。
このとき、スケジュールされたレンダリング手順に必要
な最少バンドメモリ数として、初期的に2以下の数を設
定しておく。そしてステップ16.2で実際にスケジュ
ールを作成すると同時に、予めレンダリングしておくた
めに追加で必要となる一時的バンドメモリ数を求める。
この処理の詳細は、次の図17で詳しく説明する。次に
ステップ16.3で、ステップ16.2で求めた必要バ
ンドメモリ数が、今まで検討したスケジュールのうち一
番少ないかどうかを比較する。すなわち、宰相バンドメ
モリ数と比較する。最小であった場合、ステップ16.
4で、今まで決定してきたスケジュールのかわりに今検
討したスケジュールを、現時点における最適スケジュー
ルとする。最小でなかった場合は、検討したスケジュー
ルは無視する。そしてステップ16.5で、並列して使
用するバンドメモリ数を、今検討したバンドメモリ数
(最初は2)より1つ多いものとする。その数が現時点
の最適スケジュールで必要とされるバンドメモリ数、す
なわち現時点での最少ラスタバンド数より少ないかステ
ップ16.6で判定し、少ない場合はさらに必要バンド
メモリ数が少なくてすむ可能性があるため、ステップ1
6.2より検討を繰り返す。一方、最少ラスタバンド数
よりもこれから検討しようとするバンドメモリ数が多
い、あるいは両者が等しい場合には、必要なバンドメモ
リ数が減少する可能性はないため、プリントオーバーラ
ンを生じないために必要な最少のバンドメモリ数が確定
したものとして、現時点で最適なスケジュールを最終的
なスケジュールとして決定する。このようにして最終的
に、最もバンド数が少なくてすむスケジュールを決定す
る。 <図17(スケジュール作成)の説明>次に、図16の
ステップ16.2でスケジュールを作成し、必要バンド
数を計算する方法について、図17で説明する。ここで
は図12で説明した方法で求められた各バンドのレンダ
リング時間を使い、最初のバンドから順に指定されたバ
ンド数でレンダリングと印刷出力を並列に実行していく
スケジュールを作成する。処理は図のステップ17.1
からステップ17.7までを、ページの最初のバンドか
ら順番にレンダリングするとして繰り返して行なう。そ
れぞれのバンドのレンダリングについて、まずステップ
17.1でレンダリングした結果得られる出力イメージ
を格納する先のバンドメモリを決める。バンドメモリは
指定された数のバンドメモリを、図7で説明したように
順番に使っていく。次にステップ17.2でレンダリン
グ開始、レンダリング終了のタイミングを以下のように
計算する。 レンダリング開始=前のレンダリングが終了していて、
かつレンダリング先のバンドメモリが未使用になるタイ
ミング レンダリング終了=レンダリング開始タイミング+その
バンドのレンダリング時間 また、ここでバンドメモリの使用/未使用のタイミング
は以下のように計算する。 バンドメモリ使用開始=そのバンドメモリにレンダリン
グが開始されるタイミング バンドメモリ使用終了=そのバンドメモリに格納されて
いる出力イメージが印刷出力され終ったタイミング バンドメモリ使用開始から使用終了までは、バンドメモ
リが使用中であり、使用終了から使用開始まではバンド
メモリが未使用である。なお指定バンドが印刷出力され
始めるタイミング/印刷出力し終るタイミングは、1つ
のバンドの印刷に要する時間(1バンド分の用紙搬送時
間)は固定値であるため、バンドの印刷順序と用紙搬送
速度から容易に決定できる。こうして求めたレンダリン
グ開始タイミングに基づき、ステップ17.3でプリン
トオーバーランをチェックする。つまり、図10に示し
たように、与えられた数のバンドメモリを使用してバン
ドのレンダリング及び印刷出力を順次行とした場合のレ
ンダリング終了タイミングが印刷出力開始タイミングよ
り遅かった場合、そのバンドはオーバーランするという
ことになる。もしステップ17.3でオーバーランしな
いと判断された場合、ステップ17.5でレンダリング
するバンド番号とレンダリング出力先のバンドメモリ番
号を、スケジュールリストの末尾へ追加する。一方、ス
テップ17.3でオーバーランする判断された場合、ス
テップ17.4で追加が必要なバンドメモリ数を1つ増
やし、ステップ17.6で、その追加されたバンドメモ
リに、ステップS17.3でオーバーランすると判定さ
れたバンドを印刷部の起動前にあらかじめレンダリング
(プリレンダリング)しておくように、スケジュールリ
ストの先頭へバンド番号とバンドメモリ番号とを登録す
る。ここで一度追加したバンドメモリは、そのバンドメ
モリに格納されている印刷イメージが印刷出力された後
は通常のバンドメモリと同様にレンダリングと印刷出力
を並列に行なうために使うようにする。こうすることに
より、以後のレンダリング許容時間が増え、プリントオ
ーバーランの発生率が低くなる。以上のような処理をペ
ージの先頭のバンドから順番に全てのバンドのタイミン
グを計算して、プリントオーバーランが起きないスケジ
ュールを決定する。 <図18(印刷出力処理)の説明>このようにして作成
されたスケジュールリストを使って、実際に印刷する処
理について図18で説明する。この図18は図3のステ
ップ3.7で示された印刷出力処理である。まずステッ
プ18.1でスケジュールリストの最初のスケジュール
を取得する。そしてステップ18.2で、スケジュール
に記載されたレンダリング先のバンドメモリの状態を調
べて、使用中でない、つまりレンダリングに使用しても
よい場合は、そこにスケジュールに記載されたバンドの
中間データをレンダリングする(ステップ18.3)。
最初はどのバンドメモリも使われていないので、必ずレ
ンダリングできることになる。そして再度ステップ1
8.1へ戻り、次のスケジュールをスケジュールリスト
から得る。次もまた同様にバンドメモリが使用中でない
場合レンダリングし、ステップ18.1へ戻る。これを
繰り返すことにより、印刷エンジン始動前に実行できる
レンダリングスケジュールは全てレンダリングしておく
ことになる。従って、プリレンダリングするものとスケ
ジュールされたバンドはスケジュールリストの先頭付近
にあるため、印刷前にレンダリングされてしまう。もう
実行できるレンダリング動作がなくなったら、ステップ
18.4へと進み、印刷エンジンをスタートする。この
際、スケジュールに従った順番で印刷部はバンドメモリ
からデータを順次読み出して印刷する。すなわち、印刷
するバンドの順序は1から昇順であることは決まってい
るため、印刷しようとするバンドがレンダリングされて
いるバンドメモリをスケジュールリストから確認し、そ
のバンドメモリから画像データを出力する。このため
に、印刷部2.8のコントローラにスケジュールを渡
し、コントローラはそのスケジュールに従った順序でバ
ンドメモリからデータを読み出し印刷する。あるいは、
コントローラには読み出すバンドメモリを順序づけして
渡し、コントローラは渡された順序でバンドメモリの内
容を出力するようにしても良い。印刷により印刷がスタ
ートされるとバンド1から順にレンダリング結果が実際
の用紙上に印刷出力され、出力が終ると出力が済んだバ
ンドが格納されていたバンドメモリが未使用となる。ス
テップ18.5では、スケジュールによって次にレンダ
リング結果を格納するべきバンドメモリが未使用になる
のを待って、その後ステップ18.6でレンダリングを
する。ここで、このレンダリングは必ずそのバンドのレ
ンダリング結果を印刷開始するタイミングまでに終了す
ることが保証されているので、プリントオーバーランは
起きない。これをスケジュールリストにある全てのスケ
ジュールについて繰り返し(ステップ18.7)、1ペ
ージの印刷出力処理を終える。終えたならステップ1
8.8で次のページのスケジュールを取得して同様の要
領で印刷する。スケジュールリストのすべてのスケジュ
ールを処理しおえたなら、印刷は終了である。<第1の
実施形態のまとめ>以上説明したように、本実施の形態
の印刷装置では、プリントオーバーランを発生させなく
する一方、レンダリングに必要なバンドメモリの必要数
を最小限に抑えることでメモリ効率を良くすることがで
きる。また、レンダリング時間を必要に応じて実測する
ため、確実にプリントオーバーランを防止できる。ま
た、予めレンダリングしておくだけでも、追加のバンド
メモリを利用するだけでもなく、予めレンダリングして
おいたバンドが空いたならそのバンドを利用してレンダ
リングを印刷出力と並列に行っているため、必要なメモ
リを最小限に抑制することができる。 [第2の実施の形態]次に本発明の第2の実施形態をし
めす。本実施形態は、レンダリング時間の長いバンドに
ついては、そのバンドをあらかじめレンダリングしたの
ち圧縮し、印刷出力時は伸長することによりプリントオ
ーバランを防ぐものである。つまり、圧縮データの伸長
時間は予測できるものである必要がある。図19は第2
の実施形態の印刷装置の構成を示したブロック図であ
る。図の19.1〜19.11は第1の実施形態のブロ
ック図におけるブロック2.1〜2.11と同様であ
る。圧縮/伸長部19.12は、出力イメージを既に知
られた符号化方式により画像データを圧縮及び伸長す
る。第2実施形態の説明として、まず全体の印刷処理手
順を説明し、その後本実施形態の印刷装置によるプリン
トオーバーラン回避のための処理についてフローチャー
トで説明する。 <圧縮/伸長の使用形態>図20は、本実施形態におけ
る1ページの印刷手順を示したフローチャートである。
ステップ20.1〜ステップ20.6は第1実施形態の
図3のステップ3.1〜3.6とそれぞれ同様なので説
明は省く。本実施形態では、ステップ20.6のあと
に、指定されたバンドをレンダリングして圧縮するステ
ップ20.7が行なわれ、そのあとのステップ20.8
で、圧縮されたバンドは伸長されてスケジュールされた
バンドメモリに展開され、圧縮されていないバンドはバ
ンドメモリ上にレンダリングされて印刷される。この処
理の詳細を図21で説明する。ここで、ステップ20.
4は図12の手順で行われ、ステップ20.8は、概ね
図18の手順で行われる。ただし、圧縮されているバン
ドについては、ステップ18.6のレンダリングの代わ
りに伸長処理が行われる。図21(A)は、図20のス
テップ20.7で行なう圧縮処理を説明したメモリ図
で、(B)は、印刷出力時に伸長する動作を説明した図
である。まず圧縮処理では、ステップ20.6で作成さ
れたスケジュールに従って、指定されたバンドの中間デ
ータ21.3をレンダリング部19.7でバンドメモリ
21.1へレンダリングする。その後その出力イメージ
を圧縮伸長部19.12の圧縮機能を使って圧縮し、圧
縮データ格納領域21.4へと格納する。印刷出力時
は、スケジュールに従って圧縮されているデータについ
ては、図21(B)のように、圧縮データ21.4を圧
縮伸長部19.12の伸長機能を使ってバンドメモリヘ
伸長し、それを印刷部19.8により紙面へ印刷出力す
る。圧縮されていないデータはレンダリングして印刷出
力する。 <プリントオーバーラン回避>以上のような圧縮/伸長
動作を使うことでプリントオーバーランを防ぐ処理につ
いて、以下に説明する。図22は、図20におけるステ
ップ20.6において、本実施形態のオーバーラン回避
処理のために、どのバンドを圧縮するかどうか決める処
理を説明したフローチャートである。ステップ22.1
において、圧縮するバンドはないものと設定した場合か
ら始めて、レンダリング時間が長いバンドから順に1つ
ずつ圧縮した場合をステップ22.2〜ステップ22.
6で検討していく。ステップ22.2で、第1実施形態
の図17で説明した手順でスケジュールリストを作成
し、同時に必要バンドメモリ数を最小になるように計算
する。ここで第1の実施形態とは違い、圧縮するとされ
たバンドについては、タイミングの計算にレンダリング
時間ではなく圧縮データの伸長時間を使う。そして求め
られた必要バンドメモリ数と圧縮指定されたバンドの圧
縮データサイズの和から、ステップ22.3で必要メモ
リ量を計算する。そのメモリ量が今まで計算した必要メ
モリ量より小さいとステップ22.4で判断された場
合、ステップ22.5で、検討中のスケジュールが現在
までの最小メモリ使用率のスケジュールであるとする。
そしてステップ22.6で次にレンダリング時間の長い
バンド1つを圧縮するとして、ステップ22.7で全バ
ンド圧縮するまで、ステップ22.2からの検討を繰り
返す。 <第2実施形態のまとめ>このように、レンダリング時
間の長いデータを必要メモリが最小になるバンド数だけ
予めレンダリングしてから圧縮することにより、メモリ
効率良くプリントオーバーランを防止することができる
という効果がある。また、バンドを圧縮して保存するた
め、もっとも多くのメモリが必要とされる場合であって
も、1ページ分のメモリよりも確実に少ないメモリでプ
リントオーバーランを防止できる。また、印刷と並行し
てのレンダリングも行い、レンダリング時間が1バンド
分の搬送時間を越えた場合でも、3つ以上のバンドメモ
リを用いることでオーバーランを防止できる場合には圧
縮は行わないので、メモリを最小限に抑制できる。ま
た、レンダリング時間が1バンド分の搬送時間を越えた
場合でも、予めレンダリングして圧縮することで追加の
バンドメモリを用いずともオーバーランを防止できる場
合には、追加のバンドメモリは用いないので、メモリを
最小限に抑制できる。
【他の実施形態】なお、本発明は、複数の機器(例えば
ホストコンピュータ、インタフェイス機器、リーダ、プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機、ファクシミリ
装置など)に適用してもよい。また、本発明の目的は、
前述した実施形態の機能を実現するソフトウェアのプロ
グラムコードを記録した記憶媒体を、システムあるいは
装置に供給し、そのシステムあるいは装置のコンピュー
タ(またはCPUやMPU)が記憶媒体に格納されたプ
ログラムコードを読出し実行することによっても達成さ
れる。;この場合、記憶媒体から読出されたプログラム
コード自体が前述した実施形態の機能を実現することに
なり、そのプログラムコードを記憶した記憶媒体は本発
明を構成することになる。プログラムコードを供給する
ための記憶媒体としては、例えば、フロッピディスク、
ハードディスク、光ディスク、光磁気ディスク、CD−
ROM、CD−R、磁気テープ、不揮発性のメモリカー
ド、ROMなどを用いることができる。また、コンピュ
ータが読出したプログラムコードを実行することによ
り、前述した実施形態の機能が実現されるだけでなく、
そのプログラムコードの指示に基づき、コンピュータ上
で稼働しているOS(オペレーティングシステム)など
が実際の処理の一部または全部を行い、その処理によっ
て前述した実施形態の機能が実現される場合も含まれ
る。さらに、記憶媒体から読出されたプログラムコード
が、コンピュータに挿入された機能拡張ボードやコンピ
ュータに接続された機能拡張ユニットに備わるメモリに
書込まれた後、そのプログラムコードの指示に基づき、
その機能拡張ボードや機能拡張ユニットに備わるCPU
などが実際の処理の一部または全部を行い、その処理に
よって前述した実施形態の機能が実現される場合も含ま
れる。
【発明の効果】以上の説明したように、本発明による印
刷装置及び画像処理方法は、少ない記憶容量でプリント
オーバーランを防ぐことができるという効果がある。
【図面の簡単な説明】
【図1】本発明を適応可能な出力装置の構成を示す断面
図である。
【図2】本発明の実施例におけるプリンタ制御システム
の構成を説明するブロック図である。
【図3】本発明の第1の実施形態における1ページ印刷
手順を示したフローチャートである。
【図4】本発明の実施形態における印刷データ受信時の
メモリ処理を説明する図である。
【図5】本発明の実施形態における中間データの構造及
び管理形式について説明した図である。
【図6】本発明の実施形態における中間データ形式で格
納された印刷データを実際に印刷出力するときのメモリ
処理を説明した図である。
【図7】本発明の実施の形態における印刷出力処理の処
理タイミングを説明したタイムチャートである。
【図8】本発明の実施の形態におけるプリントオーバー
ランを回避するための処理における、一時的なバンドメ
モリにあらかじめレンダリングしておく処理について説
明したタイムチャートである。
【図9】本発明の実施の形態におけるプリントオーバー
ランを回避するための処理における、3バンド以上のバ
ンドメモリを用いたレンダリング、印刷出力のタイミン
グについて説明したタイムチャートである。
【図10】本発明の実施の形態における最小のメモリ使
用率でプリントオーバーランを回避する場合の例を示し
たタイムチャートである。
【図11】本発明の実施の形態における最小のメモリ使
用率でプリントオーバーランを回避する処理の考え方を
説明した図である。
【図12】本発明の実施の形態におけるレンダリング時
間計算処理手順を示したフローチャートである。
【図13】本発明の実施の形態におけるレンダリング時
間計算の固定テーブル方式を説明する図である。
【図14】本発明の実施の形態におけるレンダリング時
間計算の実測方式の処理手順を示したフローチャートで
ある。
【図15】本発明の実施の形態におけるレンダリング及
びバンドメモリ使用スケジュールを保管するスケジュー
ルリストの構造について示した図である。
【図16】本発明の実施の形態におけるプリントオーバ
ーラン対策処理手順を示したフローチャートである。
【図17】本発明の実施の形態におけるスケジュールリ
スト作成処理手順及び必要バンドメモリ数を求める処理
手順を示したフローチャートである。
【図18】本発明の実施の形態における印刷出力手順を
示したフローチャートである。
【図19】本発明の第2の実施の形態におけるプリンタ
制御システムの構成を説明するブロック図である。
【図20】本発明の第2の実施の形態における1ページ
印刷手順を示したフローチャートである。
【図21】本発明の第2の実施の形態における圧縮/伸
長処理を示したメモリ図である。
【図22】本発明の第2の実施の形態におけるプリント
オーバーラン対策処理手順を示したフローチャートであ
る。
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成10年1月27日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】発明の詳細な説明
【補正方法】変更
【補正内容】
【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、中間データから
ビットマップデータを生成して印刷するレーザビームプ
リンタ等の印刷装置及び画像処理方法に関するものであ
る。
【0002】
【従来の技術】従来より、ホストコンピュータなどから
印刷内容や印刷形式に関するデータ(印刷データ)を受
信して、それを元に実際に出力するビットマップを形成
(以後レンダリングとする)し、そのビットマップを例
えば紙面上に印刷出力(以後シッピング)するタイプの
印刷装置が広く使われている。
【0003】このようなタイプの印刷装置でレンダリン
グとシソピングを同時に行なった場合、複雑な印刷デー
タや、多量の印刷データを処理する場合、レンダリング
処理にかかる時間がシッピング処理に行なうビットマッ
プデータ転送時間より長くかかってしまい、正常に印刷
出力できないという欠点があった。(以後、この現象を
プリントオーバーランと称する)。
【0004】また、このプリントオーバーラン現象を回
避するために、1ページ分の出力ビットマップをレンダ
リングしてからシソピング処理を行なうタイプの印刷装
置もあったが、この場合必ず1ページ分のビットマップ
を保持する記憶装置が必要となり、出力解像度が高い印
刷装置などでは記憶装置の容量を大きくしなければなら
ないためメモリ効率が悪く、装置が非常に高価なものに
なってしまう欠点がある。
【0005】また、1ページをそれより小さな単位(バ
ンド)で区切り、1バンド分のレンダリングを終えてか
らシッピングし、シソピング処理と並列に次のバンドの
レンダリングを行なう(バンデイング処理)タイプの印
刷装置もあるが、この場合、並列に行なっている次のバ
ンドのレンダリング時間が、前のバンドのシッピング時
間より大きくなってしまう場合、やはりプリントオーバ
ーラン現象が起きてしまうという欠点があった。
【0006】
【発明が解決しようとする課題】本発明は以上のような
従来の欠点を除去するためになされたもので、記憶装置
の容量を低く抑えると共にプリントオーバーランを防ぐ
印刷装置及び画像処理方法を提供することを目的とす
る。
【0007】
【課題を解決するための手段】本発明は上記従来例に鑑
みてなされたもので、下記のような構成からなる。すあ
なわち、バンドメモリへのバンド画像データのレンダリ
ングと、バンドメモリからのバンド画像データの出力を
並列に行う印刷装置であって、各バンドのレンダリング
所要時間を求める時間予測手段と、前記レンダリング所
要時間と、レンダリングされたバンド画像データの印刷
所要時間とを基に、最少のメモリを用いた各バンドのレ
ンダリングのスケジュールを作成するスケジュール手段
と、前記スケジュールに従って各バンドのレンダリング
を行うレンダリング手段と、各バンドメモリの内容を前
記スケジュールに従って出力する出力手段とを備える。
【0008】あるいは、画像処理方法であって、各バン
ドのレンダリング所要時間を求め、該レンダリング所要
時間と、レンダリングされたバンド画像データの印刷所
要時間とを基に、最少のメモリを用いた各バンドのレン
ダリングのスケジュールを作成し、該スケジュールに従
って各バンドのレンダリングを行う。
【0009】あるいは、バンドメモリへのバンド画像デ
ータのレンダリングを行うプログラムを格納したコンピ
ュータ可読メモリであって、前記プログラムは、各バン
ドのレンダリング所要時間を求める時間予測手段と、前
記レンダリング所要時間と、レンダリングされたバンド
画像データの印刷所要時間とを基に、最少のメモリを用
いた各バンドのレンダリングのスケジュールを作成する
スケジュール手段と、前記スケジュールに従って各バン
ドのレンダリングを行うレンダリング手段とを備える。
【0010】
【発明の実施の形態】[第1の実施の形態] <図1(装置の説明)の説明>まず、本実施形態の印刷
装置として好適なレーザビームプリンタ(ページプリン
タ)の構成について図1を参照しながら説明する。
【0011】なお、本実施例を適用する印刷装置は、レ
ーザビームプリンタに限られるものではなく、インクジ
ェットプリンタ等の他のプリント方式の印刷装置でも良
いことはいうまでもない。
【0012】図1は本発明を適用可能な印刷装置の構成
を示す断面図であり、例えばレーザビームプリンタ(L
BP)の場合を示す。
【0013】図において、LBP本体1000は、外部
に接続されているホストコンピュータから供給される印
刷データ(文字コード、制御コード等からなるページ記
述言語等のプリンタ言語)やフォーム情報あるいはマク
ロ命令等を入力して記憶するとともに、それらの情報に
したがって対応する文字パターンやフォームパターン等
のビットマップデータを作成し、記録媒体である記録紙
等に像を形成する。操作パネル1012には操作のため
のスイッチ及びLED表示器等が配されている。プリン
タ制御ユニット1001はLBP本体1000全体の制
御及びホストコンピュータから供給される印刷データ等
を解析する。
【0014】このプリンタ制御ユニット1001は、主
に文字情報(文字コード)を対応する文字パターンのビ
デオ信号に変換してレーザドライバ1002に出力す
る。
【0015】レーザドライバ1002は半導体レーザ1
003を駆動するための回路であり、入力されたビデオ
信号に応じて半導体レーザ1003から発射されるレー
ザ光1004をオン・オフ切り換えする。
【0016】レーザ光1004は回転多面鏡1005で
左右方向に振られて静電ドラム1006上を操作露光す
る。
【0017】これにより、静電ドラム1006上には文
字パターンの静電潜像が形成されることになる。この潜
像は、静電ドラム1006周囲に配設された現像ユニッ
ト1007により現像された後、記録紙に転写される。
ここで静電ドラム1006の回転速度は一定である。
【0018】この記録紙にはカットシートを用い、カッ
トシート記録紙はLBP1000に装着した用紙カセッ
ト1008に収納され、給紙ローラ1009および搬送
ローラ1010と搬送ローラ1011とにより、装置内
に取り込まれて、静電ドラム1006に供給される。
【0019】またLBP本体1000には、図示しない
カードスロットを備え、内蔵フォントに加えてオプショ
ンフォントカード、プリンタ言語系の異なる制御カード
(エミュレーションカード)を接続できるように構成さ
れている。
【0020】<図2(構成ブロック図)の説明>図2は
本実施の形態における印刷装置の制御システムの構成を
説明するブロック図である。ここでは、レーザビームプ
リンタ(図1)を例にして説明する。
【0021】なお、本発明の機能が実行されるのであれ
ば、単体の機器であっても、複数の機器からなるシステ
ムであっても、LAN等のネットワークを介して処理が
行なわれるシステムであっても本発明を適用できる。
【0022】図において、ホストコンピュータ2.1
は、所定のインターフェース(例えば双方向インターフ
ェース)を介して印刷装置2.2に接続されて通信処理
を実行する。
【0023】入力部2.3はホストコンピュータ2.1
との間の通信処理を行なう。入力部2.3は、ホストコ
ンピュータ2.1より印刷データを受信する処理を行な
う。ここで必要ならば印刷装置2.2の情報をホストコ
ンピュータ2.1へ送信する処理を行なってもよい。
【0024】中間データ作成部2.4は、印刷データ
を、印刷装置内部で扱いやすい形である中間データに変
換する処理を行なう。
【0025】RAM2.5は本発明で使用する記憶装置
である。RAM2.5では入力部2.3で受信した印刷
データより導き出された中間データを保持したり、中間
データをレンダリングした結果のビットマップを保持し
たり、その他処理に必要な一時的なバッファエリアや、
各種処理ステータスを保持したりする。
【0026】ROM2.6は、本発明で説明する処理
や、その他印刷装置2.2の行なう処理プログラムを保
持する。
【0027】レンダリング部2.7は、RAM2.5に
格納された中間データの内容に従って、実際に印刷出力
する印刷イメージを作成する。
【0028】印刷部2.8は、レンダリング部2.7で
作成された印刷イメージを例えば実際の紙面へ印刷出力
する出力部である。
【0029】CPU2.9は、本発明の実施例である印
刷装置2.2の印刷処理や後述するデータ処理を実際に
行なう。
【0030】スケジュールリスト2.10は、図15で
説明するバンドメモリ使用スケジュールを保持する。
【0031】内部バス2.11は本印刷装置の各部を接
続する。
【0032】ここより、ROM2.6に蓄えられたプロ
グラムによってCPU2.10が行なう処理について説
明する。まず、本発明の実施例の印刷装置の印刷データ
受信から印刷出力までの大まかな流れと、バンド処理の
仕組みを説明し、次にプリントオーバーラン回避方法に
ついてタイムチャートを使ってその仕組みを説明し、そ
の後実際の実現例をフローチャートを使って説明する。
<本実施形態の印刷処理のおおまかな流れとバンド処理
の仕組み>まず印刷処理の全体の流れをフローチャート
で説明し、その後メモリの使い方を中心にバンド処理の
仕組みを説明する。
【0033】<図3(1ページの印刷手順)の説明>図
3は、印刷装置2.2による1ページ分の印刷データを
受信してから印刷出力するまでの手順を示したフローチ
ャートである。 (データ受信)ステップ3.1において、ホストコンピ
ュータ2.1より入力部2.3で印刷データを受信す
る。そしてステップ3.2で受信した印刷データを中間
データ作成部2.4へと送り中間データに変換し、ステ
ップ3.3でRAM2.5へ格納する。中間データの形
式は、例えばレンダリング部2.7で処理しやすい形式
であったり、中間データのサイズが小さくなるような形
式であったり、中間データの処理が速くなるような形式
であったりと、内部処理の都合の良い形式であって良
い。 (レンダリング時間の計算)次にステップ3.4でプリ
ントオーバーランを避ける処理のための計算を行なう。
ステップ3.4ではステップ3.3で格納した中間デー
タについてのレンダリング処理にかかる時間を計算し、
それをバンド毎に集計することにより、バンド単位での
レンダリング時間を測定する。レンダリング時間計算に
ついては、図12で詳細に説明する。
【0034】次にステップ3.5で、印刷データを1ペ
ージ分処理し終ったかどうかを判断し、まだページが終
了していない場合は次の印刷データについてステップ
3.2から処理を繰り返す。 (プリントオーバーラン回避)印刷データを1ページ分
レンダリング処理し終ったら、ステップ3.6でプリン
トオーバーラン回避処理を行なう。
【0035】プリントオーバーラン回避処理は、ステッ
プ3.4で計算したバンド毎のレンダリング時間にもと
づき、プリントオーバーランが発生しないようにバンド
メモリ数やその使い方のスケジュールを決め、スケジュ
ールリスト2.10を作成する。プリントオーバーラン
回避処理については図16で詳しく説明する。 (印刷出力)そして最後にステップ3.7で実際の用紙
上に印刷出力する。ここではバンドメモリをプリントオ
ーバーラン回避処理で作成したスケジュールリストに従
って使用する。詳しくは図18で説明する。 <図4(データ入力メモリ図)の説明>図4は、印刷装
置2.2の印刷データ受信時のメモリ処理について説明
する図である。図の4.4〜4.7は印刷装置2.2内
のRAM2.5を示している。
【0036】ホストコンピュータ2.1から入力部2.
3へ印刷データが通信転送されると、そのデータは中間
データ作成部2.6で中間データに変換されてRAM
2.2内の中間データ格納領域4.6へと保管される。
中間データの構造については、次の図5で詳細に説明す
る。
【0037】また、RAM2.2には中間データ格納領
域4.6の他に2つの「バンドメモリ」と呼ばれる領域
であるバンドメモリ1(4.4)、バンドメモリ2
(4.5)が用意されている。この領域は通常の印刷処
理で中間データをレンダリングして得られる、印刷出力
すべき出力イメージをバンド単位で蓄えておく領域であ
る。この領域については図6で説明する。
【0038】RAM2.2の残りの部分は空きメモリ
4.7である。印刷データを受信していない状態では、
中間データ作成領域4.6には1つも中間データが存在
しないので、RAM内にはバンドメモリ1(4.4),
2(4.5)以外は全て空きメモリ4.7となってい
る。
【0039】また1ページ分の中間データを中間データ
格納領域4.6へ格納してもまだ空きメモリ4.7があ
る場合、格納し終ったページの印刷出力処理と平行して
次のページの中間データを引き続き格納することによ
り、メモリ容量一杯まで連続した印刷データを受信する
ことができる仕組みとなっている。
【0040】以下に中間データ格納領域4.6内での中
間データの管理構造を説明する。 <図5(中間データ構造)の説明>図5は、印刷装置
2.2による中間データの構造及び管理形式について説
明した図である。本発明に基づく実施例である印刷装置
は、1枚の出力ページを幾つかの小領域(バンド)で区
切って、それぞれのバンドのレンダリングと印刷出力を
並列して行なう。そのため本実施例では印刷データをバ
ンド単位で管理するために、印刷データを中間データと
いう管理しやすい形式で管理する。並列処理について
は、以後に図6などを用いて説明する。
【0041】1ページの出力用紙5.1は、バンド1、
バンド2…と名付けられたバンドという小領域に区切ら
れている。各バンドは図にあるように用紙搬送方向に垂
直になるように配置されている。また、それぞれのバン
ドは同面積を持つように区切られているため、用紙出力
時の各バンドの静電潜像形成に要する時間は一定であ
る。
【0042】今、印刷装置が、図5に例示したように、
出力用紙5.1に1つの文字「あ」と斜めの直線1本が
描かれるような印刷データを受信したとすると、その中
間データは以下のような構造になる。
【0043】まず中間データは、中間データ管理テーブ
ル5.2〜5.4につながれる。中間データ管理テーブ
ル5.2〜5.4はバンド数分だけあり、それぞれのバ
ンド内に描画されるべき中間データをリンク構造で保持
する。
【0044】ここで文字「あ」はバンド2内に描かれる
べき文字なので、その中間データ5.5〜5.8はバン
ド2の中間データ管理テーブル5.3につながれてい
る。そしてその構造は、中間データの種類を示す領域、
描画位置を示す領域、その他描画に関する情報などを、
それぞれの中間データの種類によって必要なだけ保持す
る。文字「あ」の中間データは、中間データの種類が文
字であることを示すデータ種別5.5、「あ」を描画す
る描画位置5.6、描画する文字が「あ」であることを
示す文字コード5.7、例えば大文字や袋文字、文字色
など文字の修飾方法に関する修飾情報5.8からなって
いる。
【0045】用紙5.1に描かれる直線については、バ
ンド2〜バンド3にまたがって描画されるため、中間デ
ータは2つ作成され、それぞれバンド2の中間データ管
理テーブル5.3とバンド3の中間データ管理テーブル
5.4につながれる。
【0046】このように管理される中間データは、印刷
出力時にはそれぞれのバンド毎にレンダリングされ、印
刷出力される。このデータは、バンド2については、デ
ータの種別が直線であることを示すデータ種別5.9、
開始位置5.10、終了位置5.11、描画される直線
が実線の太線であることなど、直線の種別や太さなどを
示す線種5.12からなっている。バンド3についても
同様に、データ種別5.13、開始位置5.14、終了
位置5.15、線種5.16からなっている。
【0047】<図6(バンディングメモリ)の説明>図
6は中間データ形式で格納された印刷データを実際に印
刷出力するときのバンドに関する処理(バンディング)
を説明した図である。
【0048】図6(A)は、中間データを1ページ分中
間データ格納領域に格納後、オーバーラン処理を終えあ
とのメモリマップを示している。
【0049】バンドメモリ1,2は、中間データをレン
ダリングした結果の印刷出力イメージを保管するラスタ
メモリである。またレンダリングする中間データは、図
5で説明したデータ構造で中間データ格納領域6.3へ
格納されている。
【0050】中間データを1ページ分格納後のプリント
オーバーラン処理によって、バンドメモリの数が2より
大きい必要があった場合、中間データ格納領域6.3の
後など空きメモリを利用して一時的なバンドメモリ6.
4を作成する。この図では一時的なバンドメモリを1つ
だけ作成している。
【0051】図6(B)は、2つのバンドメモリ1,2
及び一時的なバンドメモリ6.4を利用して印刷出力す
る場合のデータの流れを示している。
【0052】中間データはレンダリング部2.7でレン
ダリングされ、その結果の出力ビットマップは、後で述
べるプリントオーバーラン回避処理により決定されたス
ケジュールに従って3つのバンドメモリヘと格納され、
印刷部2.8はその出力イメージを実際の用紙上へ印刷
出力する。この処理は後で図18でフローチャートによ
り説明する。 <プリントオーバーラン回避方法>次に本発明の主要部
分であるプリントオーバーランの回避方法についてその
概要を説明する。
【0053】<図7(バンディングタイミンク)の説明
>図7は縦軸に時間経過をあらわし、レンダリング部、
印刷部のそれぞれの処理内容、及びバンドメモリ1、バ
ンドメモリ2の保持している出力イメージについての時
間的変化を示したタイムチャートである。この図では第
4バンドがプリントオーバーランを起こしている。以
下、図を時間軸に沿って説明する。
【0054】まず時間t0〜t1で、レンダリング部
2.7は、用紙の最初に印刷出力される最上部であるバ
ンド1のレンダリングを行ない(7.1)、その結果得
られた出力イメージをハンドラスタ1へと格納する
(7.8)。
【0055】次にt1で静電ドラム1006の回転をス
タートさせる(以後印刷出力開始と表現する)。
【0056】時間t1以降では、レンダリング処理と印
刷出力処理を並列に行なう。ここで各バンド面積が一定
で、かつ静電ドラム1006の回転速度も一定なことよ
り、各バンドの印刷出力時間(時間t2−t1、時間t
3−t2、‥.)は一定であり、それは静電ドラム10
06の回転速度によって決まる。
【0057】時間t1〜t2では、既にバンドメモリ1
へ格納されているバンド1の印刷イメージを印刷部2.
8が印刷出力する処理(7.15)と、レンダリング部
が中間データ格納領域に格納されているバンド2の中間
データをレンダリングして(7.2)バンドメモリ2へ
印刷イメージを格納する処理(7.12)を並列で行な
う。
【0058】同様に時間t2〜t3ではバンド2が印刷
出力され(7.16)、バンド3がバンドメモリ1へ出
力イメージ展開される(7.3,7.9)。
【0059】以後同様の処理を繰り返し、最終的に時間
t7〜t8でバンド7の印刷出力を行ない(7.2
1)、1ページ分の印刷を完了する。
【0060】以上の方式により最低バンドメモリが2バ
ンドあればよく、1ページ分の出力イメージを格納する
のに必要なメモリサイズよりはるかに少ないメモリで印
刷出力処理を行なうことができるようになっている。
【0061】しかしながら、ここでバンド4のレンダリ
ング7.4に注目してみると、このバンドのレンダリン
グ時間は時間t4−t3より長くなっている。また、バ
ンド4のレンダリング開始時間は、レンダリング結果を
バンドメモリ2に格納するためバンド2の出力イメージ
を印刷出力した後、つまりt3以降でなくてはならな
い。そのため、実際のレンダリングはバンド4の印刷出
力開始時間であるt4のタイミングでも終了しておら
ず、プリントオーバーランになってしまう。すなわち、
印刷部2.8は、タイミングt4からバンド4の印刷出
力を開始しようとするが、この時点ではバンド4のレン
ダリングは終了しておらず、正常に印刷を開始できな
い。
【0062】そこで、このような自体を回避するため
に、以下に本発明のプリントオーバーランの解決方法を
説明する。 <図8(プレレンダリングタイミング)の説明>図8
は、プリントオーバーランを回避する第1の方法を説明
したタイムチャートである。
【0063】まず、先に図6で説明したように、一時的
なバンドメモリ用のメモリ6.4を確保し、プリントオ
ーバーランするバンド4を印刷出力開始タイミングより
前にあらかじめレンダリングしておく(8.14)。他
のバンドは通常と同様にレンダリング及び印刷出力し、
バンド4の印刷出力時はレンダリングは行なわず一時的
バンドメモリから印刷出力のみを行なう(8.18)。
【0064】このように一時的なバンドメモリを用意
し、レンダリングタイミングを変えることでプリントオ
ーバーランを回避することができる。この方式は、1つ
のバンドのレンダリング時間がいくら長くても、確実に
そのバンドのプリントオーバーランを防ぐことができる
という利点がある。 <図9(3バンド以上のバンディングタイミング)の説
明>またプリントオーバーランを回避する第2の方法を
図9に示す。
【0065】この方式もまた図8と同様に一時的なバン
ドメモリ用のメモリを確保し、今度は最初からある2つ
のバンドメモリと一時的なバンドメモリを合わせて3つ
以上のバンドメモリを順番に使ってレンダリングと印刷
出力を並列に行なう。
【0066】バンドメモリが3つ以上になると、図のよ
うに個々のバンドメモリの使われる頻度が低下してく
る。そのため各バンドのレンダリング時間はバンドメモ
リの数が多くなればなるほど長く取ることができ、プリ
ントオーバーランを防ぐことができる。
【0067】図9の場合、レンダリング時間の長いバン
ド4のレンダリング開始タイミングが、バンド3のレン
ダリング終了直後となり、バンドメモリが2つの場合に
比べて早くなるため、バンド4の印刷出力タイミングt
4までにレンダリングを終えることができている。
【0068】このように順番に使いまわすバンドメモリ
数をふやすことにより、プリントオーバーランを防ぐこ
とができる。この方式は、全体的にレンダリング可能最
大時間を長く取ることができるようになる特徴を持つ。
例えば、バンドメモリが3つの場合には、最大2バンド
分の印刷に要する時間をレンダリングのために用いるこ
とができる。 <図10(本発明バンディングタイミンク)の説明>さ
らに本発明では上記2つの方法を組合せ、レンダリング
のタイミングを適切にスケジューリングして、一時的な
バンドメモリの確保数を最小にすることでメモリを効率
よく利用する第3の方法を図10に示す。
【0069】図10は、図8あるいは図9の方法のいず
れかだけでは2バンド以上の一時的バンドメモリが必要
となるケースでも、本発明の方式により、必要な一時的
バンドメモリの数を1バンドに抑えた結果を示す例のタ
イムチャートである。この例ではバンド3,4,5,6
のレンダリング時間が1バンドの印刷出力に要する時間
よりも長い。
【0070】本発明による方式では、図10のように一
時的バンドメモリ6.4にはあらかじめバンド3の出力
イメージレンダリングしておく。そしてバンド3の印刷
出力が終ったあとはバンドメモリ1,2、及び一時的バ
ンドメモリの3つで並列にレンダリングと印刷出力を行
なっている。
【0071】このようにバンドメモリの使用スケジュー
ルを適切にたてることにより、1つの一時的バンドメモ
リを確保することで4つのバンドのプリントオーバーラ
ンを防ぐことができる。 <図11(バンドメモリ使用スケジューリング)の説明
>以上説明したような適切なバンドメモリ使用のスケジ
ューリングの具体例を、図11を使って説明する。図1
1は前図とはまた別のデータについての例である。図の
横軸は各バンドを示し、それぞれのレンダリング時間は
縦軸で示している。図11の例では、バンド3のレンダ
リング時間が最も長く、次にバンド4、次にバンド5、
バンド2と短くなっている。また図の3本の点線は、1
つのバンドをオーバーランせずにレンダリングするため
にかけられる時間を示しており、一番下の点線は、2つ
のバンドメモリを用いた場合、中央は3つのバンドメモ
リを用いた場合、一番上は4つのバンドメモリを用いた
場合の時間をそれぞれ示している。
【0072】もし本図のような特徴を持つ印刷データを
2バンドのバンドメモリを用いて印刷出力した場合、バ
ンド2〜バンド5が許容時間を越えているのでプリント
オーバーランになってしまう。ここでプリントオーバー
ランするバンドを全て一時的バンドメモリへあらかじめ
レンダリングする図8のようなスケジューリングを行な
うと、4バンド分の一時的バンドメモリが必要となる。
【0073】そこで、一時的バンドメモリを2バンドだ
け確保し、バンド3についてはあらかじめレンダリング
しておく。バンド4以降はバンド3で使っていたバンド
メモリも含めて4バンド全てを使ってレンダリングと印
刷出力を並列で行なう。こうすることによりバンド4以
外のバンドのレンダリング時間は、4バンドメモリを用
いた場合のレンダリング許容時間以下なので、プリント
オーバーランは起こさない。
【0074】このように最適なレンダリングスケジュー
ルを組むことにより、最小の一時的バンドメモリを用い
ることでプリントオーバーランを防ぐことが本発明の要
点である。 <上記方法を用いた印刷処理の実現方法>以上が本実施
形態の印刷処理の流れ、メモリの使い方、プリントオー
バーラン回避方法の考え方である。以下に本実施形態の
印刷装置における処理手順について、フローチャートを
用いて説明する。なお全体の処理の流れは図3で説明済
みであるので、そのなかのポイントとなるステップS
3.4のレンダリング時間計算、ステップS3.6のオ
ーバーラン対策、ステップS3.7の印刷出力処理手順
を説明する。 <図12(レンダリング時間計算)の説明>図12は、
図3のステップ3.4で行なわれる、バンド単位のレン
ダリング時間を計算する手順のフローチャートである。
ここで求めるレンダリング時間は、図3のステップ3.
6のオーバーラン対策処理で一時的バンドメモリの確保
数やスケジューリングを決めるのに使われる。
【0075】まずステップ12.1において、中間デー
タの種類によってレンダリング時間計算方法を選択す
る。
【0076】中間データの種類が、固定的にレンダリン
グ時間が決まっているようなタイプのものである場合
は、既にテーブルに保管しておいた中間データに対する
レンダリング時間からレンダリング時間を求めるなどの
処理を、ステップ12.2で行う。このようなタイプの
処理については図13で説明する。
【0077】また、例えばイメージビットマップのよう
に、そのレンダリング処理は単純にメモリ内容のコピー
であるようなタイプの中間データの場合、計算するレン
ダリング時間は中間データのサイズより決まるため、ス
テップ12.3でサイズより処理時間を計算する。
【0078】また、実際にレンダリングしてみないとレ
ンダリング時間の分らないようなタイプの中間データの
場合、ステップS12.4において、時間測定のために
実際にレンダリング処理を実行して時間を求める。この
ようなタイプの処理については図14で説明する。
【0079】なお、これらの分岐、及び処理は、ここに
示した以外の他のタイプの時間算出アルゴリズムを用い
ても良い。
【0080】それら各種中間データのタイプに応じたレ
ンダリング時間算出処理を行なった後、ステップ12.
5において、算出した時間をバンド全体のレンダリング
時間に加算し、バンド内にレンダリング時間が計算され
ていないオブジェクトがあればそれについて計算を行
い、なければ処理を終える。
【0081】<図13(固定テーブル方式によるレンダ
リング時間計算)の説明>図13は図12のステップ1
2.2の固定的なレンダリング時間を求める処理の例を
説明した図である。事前にレンダリング時間が分ってい
る中間データについては、図のように中間データの種類
とそれに対応するレンダリング時間の対応表からレンダ
リング時間を検索する。
【0082】<図14(実測方式によるレンダリング時
間計算)の説明>図14は図12のステップ12.4の
レンダリング時間の実測処理の例について説明したフロ
ーチャートである。ステップ14.1で印刷装置内部タ
イマーをスタートし、ステップ14.2で実際のレンダ
リングと同様に測定したい中間データをレンダリングす
る。そしてレンダリングが終り次第ステップ14.3で
タイマーをストップし、その開かかった時間をレンダリ
ング時間とする。
【0083】<図15(スケジュールリスト)の説明>
以上のように各バンドのレンダリング時間を計算し、図
3で示したように1ページ分の印刷データをメモリ内に
格納した後、図3のステップ3.6でプリントオーバー
ランしないようにバンドメモリの使用スケジュールをス
ケジュールリスト2.10へ作成する。
【0084】スケジュールリストの構造は図15で示す
ように、レンダリングするバンドの番号をバンド欄1
5.1に、その結果得られる出力イメージを格納するバ
ンドメモリをバンドメモリ欄15.2にペアとして登録
し、レンダリングを実行する順番にリスト構造で並べた
ものである。
【0085】図15の場合、まず最初にバンド3を一時
的バンド1へレンダリングし、その後バンド1をバンド
メモリ1、バンド2をバンドメモリ2、バンド4をバン
ドメモリ1….という順番にレンダリングすることを示
している。なおこの図15で示しているスケジュール
は、タイミングチャート図10のスケジュールリストで
ある。このスケジュールの決定方法については次の図1
6で説明する。またスケジュールに従った印刷処理につ
いては図18で説明する。
【0086】<図16(オーバーラン対策)の説明>図
16はオーバーランが発生しないようなスケジュールリ
ストの作成方法について説明したフローチャートであ
る。
【0087】まずステップ16.1では、バンドメモリ
2つを使ってレンダリングと印刷出力を並列に実行する
場合から検討を始める。このとき、スケジュールされた
レンダリング手順に必要な最少バンドメモリ数として、
初期的に2以下の数を設定しておく。
【0088】そしてステップ16.2で実際にスケジュ
ールを作成すると同時に、予めレンダリングしておくた
めに追加で必要となる一時的バンドメモリ数を求める。
この処理の詳細は、次の図17で詳しく説明する。
【0089】次にステップ16.3で、ステップ16.
2で求めた必要バンドメモリ数が、今まで検討したスケ
ジュールのうち一番少ないかどうかを比較する。すなわ
ち、宰相バンドメモリ数と比較する。最小であった場
合、ステップ16.4で、今まで決定してきたスケジュ
ールのかわりに今検討したスケジュールを、現時点にお
ける最適スケジュールとする。最小でなかった場合は、
検討したスケジュールは無視する。
【0090】そしてステップ16.5で、並列して使用
するバンドメモリ数を、今検討したバンドメモリ数(最
初は2)より1つ多いものとする。その数が現時点の最
適スケジュールで必要とされるバンドメモリ数、すなわ
ち現時点での最少ラスタバンド数より少ないかステップ
16.6で判定し、少ない場合はさらに必要バンドメモ
リ数が少なくてすむ可能性があるため、ステップ16.
2より検討を繰り返す。一方、最少ラスタバンド数より
もこれから検討しようとするバンドメモリ数が多い、あ
るいは両者が等しい場合には、必要なバンドメモリ数が
減少する可能性はないため、プリントオーバーランを生
じないために必要な最少のバンドメモリ数が確定したも
のとして、現時点で最適なスケジュールを最終的なスケ
ジュールとして決定する。
【0091】このようにして最終的に、最もバンド数が
少なくてすむスケジュールを決定する。
【0092】<図17(スケジュール作成)の説明>次
に、図16のステップ16.2でスケジュールを作成
し、必要バンド数を計算する方法について、図17で説
明する。
【0093】ここでは図12で説明した方法で求められ
た各バンドのレンダリング時間を使い、最初のバンドか
ら順に指定されたバンド数でレンダリングと印刷出力を
並列に実行していくスケジュールを作成する。
【0094】処理は図のステップ17.1からステップ
17.7までを、ページの最初のバンドから順番にレン
ダリングするとして繰り返して行なう。
【0095】それぞれのバンドのレンダリングについ
て、まずステップ17.1でレンダリングした結果得ら
れる出力イメージを格納する先のバンドメモリを決め
る。バンドメモリは指定された数のバンドメモリを、図
7で説明したように順番に使っていく。
【0096】次にステップ17.2でレンダリング開
始、レンダリング終了のタイミングを以下のように計算
する。
【0097】レンダリング開始=前のレンダリングが終
了していて、かつレンダリング先のバンドメモリが未使
用になるタイミング レンダリング終了=レンダリング開始タイミング+その
バンドのレンダリング時間 また、ここでバンドメモリの使用/未使用のタイミング
は以下のように計算する。
【0098】バンドメモリ使用開始=そのバンドメモリ
にレンダリングが開始されるタイミング バンドメモリ使用終了=そのバンドメモリに格納されて
いる出力イメージが印刷出力され終ったタイミング バンドメモリ使用開始から使用終了までは、バンドメモ
リが使用中であり、使用終了から使用開始まではバンド
メモリが未使用である。
【0099】なお指定バンドが印刷出力され始めるタイ
ミング/印刷出力し終るタイミングは、1つのバンドの
印刷に要する時間(1バンド分の用紙搬送時間)は固定
値であるため、バンドの印刷順序と用紙搬送速度から容
易に決定できる。
【0100】こうして求めたレンダリング開始タイミン
グに基づき、ステップ17.3でプリントオーバーラン
をチェックする。つまり、図10に示したように、与え
られた数のバンドメモリを使用してバンドのレンダリン
グ及び印刷出力を順次行とした場合のレンダリング終了
タイミングが印刷出力開始タイミングより遅かった場
合、そのバンドはオーバーランするということになる。
【0101】もしステップ17.3でオーバーランしな
いと判断された場合、ステップ17.5でレンダリング
するバンド番号とレンダリング出力先のバンドメモリ番
号を、スケジュールリストの末尾へ追加する。
【0102】一方、ステップ17.3でオーバーランす
る判断された場合、ステップ17.4で追加が必要なバ
ンドメモリ数を1つ増やし、ステップ17.6で、その
追加されたバンドメモリに、ステップS17.3でオー
バーランすると判定されたバンドを印刷部の起動前にあ
らかじめレンダリング(プリレンダリング)しておくよ
うに、スケジュールリストの先頭へバンド番号とバンド
メモリ番号とを登録する。
【0103】ここで一度追加したバンドメモリは、その
バンドメモリに格納されている印刷イメージが印刷出力
された後は通常のバンドメモリと同様にレンダリングと
印刷出力を並列に行なうために使うようにする。こうす
ることにより、以後のレンダリング許容時間が増え、プ
リントオーバーランの発生率が低くなる。
【0104】以上のような処理をページの先頭のバンド
から順番に全てのバンドのタイミングを計算して、プリ
ントオーバーランが起きないスケジュールを決定する。
【0105】<図18(印刷出力処理)の説明>このよ
うにして作成されたスケジュールリストを使って、実際
に印刷する処理について図18で説明する。この図18
は図3のステップ3.7で示された印刷出力処理であ
る。
【0106】まずステップ18.1でスケジュールリス
トの最初のスケジュールを取得する。
【0107】そしてステップ18.2で、スケジュール
に記載されたレンダリング先のバンドメモリの状態を調
べて、使用中でない、つまりレンダリングに使用しても
よい場合は、そこにスケジュールに記載されたバンドの
中間データをレンダリングする(ステップ18.3)。
最初はどのバンドメモリも使われていないので、必ずレ
ンダリングできることになる。
【0108】そして再度ステップ18.1へ戻り、次の
スケジュールをスケジュールリストから得る。次もまた
同様にバンドメモリが使用中でない場合レンダリング
し、ステップ18.1へ戻る。これを繰り返すことによ
り、印刷エンジン始動前に実行できるレンダリングスケ
ジュールは全てレンダリングしておくことになる。従っ
て、プリレンダリングするものとスケジュールされたバ
ンドはスケジュールリストの先頭付近にあるため、印刷
前にレンダリングされてしまう。
【0109】もう実行できるレンダリング動作がなくな
ったら、ステップ18.4へと進み、印刷エンジンをス
タートする。この際、スケジュールに従った順番で印刷
部はバンドメモリからデータを順次読み出して印刷す
る。すなわち、印刷するバンドの順序は1から昇順であ
ることは決まっているため、印刷しようとするバンドが
レンダリングされているバンドメモリをスケジュールリ
ストから確認し、そのバンドメモリから画像データを出
力する。このために、印刷部2.8のコントローラにス
ケジュールを渡し、コントローラはそのスケジュールに
従った順序でバンドメモリからデータを読み出し印刷す
る。あるいは、コントローラには読み出すバンドメモリ
を順序づけして渡し、コントローラは渡された順序でバ
ンドメモリの内容を出力するようにしても良い。
【0110】印刷により印刷がスタートされるとバンド
1から順にレンダリング結果が実際の用紙上に印刷出力
され、出力が終ると出力が済んだバンドが格納されてい
たバンドメモリが未使用となる。
【0111】ステップ18.5では、スケジュールによ
って次にレンダリング結果を格納するべきバンドメモリ
が未使用になるのを待って、その後ステップ18.6で
レンダリングをする。ここで、このレンダリングは必ず
そのバンドのレンダリング結果を印刷開始するタイミン
グまでに終了することが保証されているので、プリント
オーバーランは起きない。
【0112】これをスケジュールリストにある全てのス
ケジュールについて繰り返し(ステップ18.7)、1
ページの印刷出力処理を終える。終えたならステップ1
8.8で次のページのスケジュールを取得して同様の要
領で印刷する。スケジュールリストのすべてのスケジュ
ールを処理しおえたなら、印刷は終了である。
【0113】<第1の実施形態のまとめ>以上説明した
ように、本実施の形態の印刷装置では、プリントオーバ
ーランを発生させなくする一方、レンダリングに必要な
バンドメモリの必要数を最小限に抑えることでメモリ効
率を良くすることができる。
【0114】また、レンダリング時間を必要に応じて実
測するため、確実にプリントオーバーランを防止でき
る。
【0115】また、予めレンダリングしておくだけで
も、追加のバンドメモリを利用するだけでもなく、予め
レンダリングしておいたバンドが空いたならそのバンド
を利用してレンダリングを印刷出力と並列に行っている
ため、必要なメモリを最小限に抑制することができる。 [第2の実施の形態]次に本発明の第2の実施形態をし
めす。
【0116】本実施形態は、レンダリング時間の長いバ
ンドについては、そのバンドをあらかじめレンダリング
したのち圧縮し、印刷出力時は伸長することによりプリ
ントオーバランを防ぐものである。つまり、圧縮データ
の伸長時間は予測できるものである必要がある。
【0117】図19は第2の実施形態の印刷装置の構成
を示したブロック図である。図の19.1〜19.11
は第1の実施形態のブロック図におけるブロック2.1
〜2.11と同様である。
【0118】圧縮/伸長部19.12は、出力イメージ
を既に知られた符号化方式により画像データを圧縮及び
伸長する。
【0119】第2実施形態の説明として、まず全体の印
刷処理手順を説明し、その後本実施形態の印刷装置によ
るプリントオーバーラン回避のための処理についてフロ
ーチャートで説明する。
【0120】<圧縮/伸長の使用形態>図20は、本実
施形態における1ページの印刷手順を示したフローチャ
ートである。ステップ20.1〜ステップ20.6は第
1実施形態の図3のステップ3.1〜3.6とそれぞれ
同様なので説明は省く。本実施形態では、ステップ2
0.6のあとに、指定されたバンドをレンダリングして
圧縮するステップ20.7が行なわれ、そのあとのステ
ップ20.8で、圧縮されたバンドは伸長されてスケジ
ュールされたバンドメモリに展開され、圧縮されていな
いバンドはバンドメモリ上にレンダリングされて印刷さ
れる。この処理の詳細を図21で説明する。ここで、ス
テップ20.4は図12の手順で行われ、ステップ2
0.8は、概ね図18の手順で行われる。ただし、圧縮
されているバンドについては、ステップ18.6のレン
ダリングの代わりに伸長処理が行われる。
【0121】図21(A)は、図20のステップ20.
7で行なう圧縮処理を説明したメモリ図で、(B)は、
印刷出力時に伸長する動作を説明した図である。
【0122】まず圧縮処理では、ステップ20.6で作
成されたスケジュールに従って、指定されたバンドの中
間データ21.3をレンダリング部19.7でバンドメ
モリ21.1へレンダリングする。その後その出力イメ
ージを圧縮伸長部19.12の圧縮機能を使って圧縮
し、圧縮データ格納領域21.4へと格納する。
【0123】印刷出力時は、スケジュールに従って圧縮
されているデータについては、図21(B)のように、
圧縮データ21.4を圧縮伸長部19.12の伸長機能
を使ってバンドメモリヘ伸長し、それを印刷部19.8
により紙面へ印刷出力する。圧縮されていないデータは
レンダリングして印刷出力する。
【0124】<プリントオーバーラン回避>以上のよう
な圧縮/伸長動作を使うことでプリントオーバーランを
防ぐ処理について、以下に説明する。
【0125】図22は、図20におけるステップ20.
6において、本実施形態のオーバーラン回避処理のため
に、どのバンドを圧縮するかどうか決める処理を説明し
たフローチャートである。
【0126】ステップ22.1において、圧縮するバン
ドはないものと設定した場合から始めて、レンダリング
時間が長いバンドから順に1つずつ圧縮した場合をステ
ップ22.2〜ステップ22.6で検討していく。
【0127】ステップ22.2で、第1実施形態の図1
7で説明した手順でスケジュールリストを作成し、同時
に必要バンドメモリ数を最小になるように計算する。こ
こで第1の実施形態とは違い、圧縮するとされたバンド
については、タイミングの計算にレンダリング時間では
なく圧縮データの伸長時間を使う。
【0128】そして求められた必要バンドメモリ数と圧
縮指定されたバンドの圧縮データサイズの和から、ステ
ップ22.3で必要メモリ量を計算する。
【0129】そのメモリ量が今まで計算した必要メモリ
量より小さいとステップ22.4で判断された場合、ス
テップ22.5で、検討中のスケジュールが現在までの
最小メモリ使用率のスケジュールであるとする。
【0130】そしてステップ22.6で次にレンダリン
グ時間の長いバンド1つを圧縮するとして、ステップ2
2.7で全バンド圧縮するまで、ステップ22.2から
の検討を繰り返す。
【0131】<第2実施形態のまとめ>このように、レ
ンダリング時間の長いデータを必要メモリが最小になる
バンド数だけ予めレンダリングしてから圧縮することに
より、メモリ効率良くプリントオーバーランを防止する
ことができるという効果がある。また、バンドを圧縮し
て保存するため、もっとも多くのメモリが必要とされる
場合であっても、1ページ分のメモリよりも確実に少な
いメモリでプリントオーバーランを防止できる。また、
印刷と並行してのレンダリングも行い、レンダリング時
間が1バンド分の搬送時間を越えた場合でも、3つ以上
のバンドメモリを用いることでオーバーランを防止でき
る場合には圧縮は行わないので、メモリを最小限に抑制
できる。また、レンダリング時間が1バンド分の搬送時
間を越えた場合でも、予めレンダリングして圧縮するこ
とで追加のバンドメモリを用いずともオーバーランを防
止できる場合には、追加のバンドメモリは用いないの
で、メモリを最小限に抑制できる。
【0132】
【他の実施形態】なお、本発明は、複数の機器(例えば
ホストコンピュータ、インタフェイス機器、リーダ、プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機、ファクシミリ
装置など)に適用してもよい。
【0133】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても達成される。;この場
合、記憶媒体から読出されたプログラムコード自体が前
述した実施形態の機能を実現することになり、そのプロ
グラムコードを記憶した記憶媒体は本発明を構成するこ
とになる。
【0134】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク、ハードディス
ク、光ディスク、光磁気ディスク、CD−ROM、CD
−R、磁気テープ、不揮発性のメモリカード、ROMな
どを用いることができる。
【0135】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれる。
【0136】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれる。
【0137】
【発明の効果】以上の説明したように、本発明による印
刷装置及び画像処理方法は、少ない記憶容量でプリント
オーバーランを防ぐことができるという効果がある。
【特記事項】 内容に変更なし

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 バンドメモリへのバンド画像データのレ
    ンダリングと、バンドメモリからのバンド画像データの
    出力を並列に行う印刷装置であって、 各バンドのレンダリング所要時間を求める時間予測手段
    と、 前記レンダリング所要時間と、レンダリングされたバン
    ド画像データの印刷所要時間とを基に、最少のメモリを
    用いた各バンドのレンダリングのスケジュールを作成す
    るスケジュール手段と、 前記スケジュールに従って各バンドのレンダリングを行
    うレンダリング手段と、各バンドメモリの内容を前記ス
    ケジュールに従って出力する出力手段とを備えることを
    特徴とする印刷装置。
  2. 【請求項2】 前記スケジュール手段は、所定数のバン
    ドメモリを用意してから空きバンドメモリに順次レンダ
    リングを行った場合に、レンダリング終了時刻が出力開
    始時刻に間に合わないバンドがあると、そのバンドにつ
    いては新たにバンドメモリを追加して該バンドメモリに
    予めレンダリングしておくものとし、前記新たなバンド
    メモリを再利用しながら前記所定数を変化させつつ最少
    のメモリを用いたスケジュールを作成することを特徴と
    する請求項1に記載の印刷装置。
  3. 【請求項3】 前記スケジュール手段は、所定数のバン
    ドメモリを用意してから空きバンドメモリに順次レンダ
    リングを行った場合に、レンダリング終了時刻が出力開
    始時刻に間に合わないバンドがあると、そのバンドにつ
    いては予めレンダリングして圧縮して所定のメモリ領域
    に格納しておくものとし、前記所定数を変化させつつ最
    少のメモリを用いたスケジュールを作成し、前記出力手
    段は、前記スケジュールに従って、圧縮されたバンドは
    伸長して出力することを特徴とする請求項1に記載の印
    刷装置。
  4. 【請求項4】 前記時間予測手段は、各バンドに含まれ
    るオブジェクトの種類ごとに積算してレンダリング時間
    を予測することを特徴とする請求項1乃至3のいずれか
    に記載の印刷装置。
  5. 【請求項5】 各バンドのレンダリング所要時間を求
    め、該レンダリング所要時間と、レンダリングされたバ
    ンド画像データの印刷所要時間とを基に、最少のメモリ
    を用いた各バンドのレンダリングのスケジュールを作成
    し、該スケジュールに従って各バンドのレンダリングを
    行うことを特徴とする画像処理方法。
  6. 【請求項6】 前記スケジュールは、所定数のバンドメ
    モリを用意してから空きバンドメモリに順次レンダリン
    グを行った場合に、レンダリング終了時刻が出力開始時
    刻に間に合わないバンドがあると、そのバンドについて
    は新たにバンドメモリを追加して該バンドメモリに予め
    レンダリングしておくものとし、前記所定数を変化させ
    つつ最少のメモリを用いたスケジュールが作成されるこ
    とを特徴とする請求項5に記載の画像処理方法。
  7. 【請求項7】 前記スケジュールは、所定数のバンドメ
    モリを用意してから空きバンドメモリに順次レンダリン
    グを行った場合に、レンダリング終了時刻が出力開始時
    刻に間に合わないバンドがあると、そのバンドについて
    は予めレンダリングして圧縮して所定のメモリ領域に格
    納しておくものとし、前記所定数を変化させつつ最少の
    メモリを用いたスケジュールが作成されることを特徴と
    する請求項5に記載の画像処理方法。
  8. 【請求項8】 前記レンダリング所要時間は、各バンド
    に含まれるオブジェクトの種類ごとに計算されたレンダ
    リング時間を積算して予測することを特徴とする請求項
    5乃至7のいずれかに記載の画像処理方法。
  9. 【請求項9】 バンドメモリへのバンド画像データのレ
    ンダリングを行うプログラムを格納したコンピュータ可
    読メモリであって、前記プログラムは、 各バンドのレンダリング所要時間を求める時間予測手段
    と、 前記レンダリング所要時間と、レンダリングされたバン
    ド画像データの印刷所要時間とを基に、最少のメモリを
    用いた各バンドのレンダリングのスケジュールを作成す
    るスケジュール手段と、 前記スケジュールに従って各バンドのレンダリングを行
    うレンダリング手段とを備えることを特徴とする記憶媒
    体。
  10. 【請求項10】 前記スケジュール手段は、所定数のバ
    ンドメモリを用意してから空きバンドメモリに順次レン
    ダリングを行った場合に、レンダリング終了時刻が出力
    開始時刻に間に合わないバンドがあると、そのバンドに
    ついては新たにバンドメモリを追加して該バンドメモリ
    に予めレンダリングしておくものとし、前記所定数を変
    化させつつ最少のメモリを用いたスケジュールを作成す
    ることを特徴とする請求項9に記載の記憶媒体。
  11. 【請求項11】 前記スケジュール手段は、所定数のバ
    ンドメモリを用意してから空きバンドメモリに順次レン
    ダリングを行った場合に、レンダリング終了時刻が出力
    開始時刻に間に合わないバンドがあると、そのバンドに
    ついては予めレンダリングして圧縮して所定のメモリ領
    域に格納しておくものとし、前記所定数を変化させつつ
    最少のメモリを用いたスケジュールを作成することを特
    徴とする請求項9に記載の記憶媒体。
  12. 【請求項12】 前記レンダリング所要時間は、各バン
    ドに含まれるオブジェクトの種類ごとに計算されたレン
    ダリング時間を積算して予測することを特徴とする請求
    項9に記載の記憶媒体。
JP00262998A 1998-01-08 1998-01-08 印刷装置及び画像処理方法 Expired - Fee Related JP3862396B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP00262998A JP3862396B2 (ja) 1998-01-08 1998-01-08 印刷装置及び画像処理方法
US09/225,474 US6369910B1 (en) 1998-01-08 1999-01-06 Printing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00262998A JP3862396B2 (ja) 1998-01-08 1998-01-08 印刷装置及び画像処理方法

Publications (2)

Publication Number Publication Date
JPH11198462A true JPH11198462A (ja) 1999-07-27
JP3862396B2 JP3862396B2 (ja) 2006-12-27

Family

ID=11534698

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00262998A Expired - Fee Related JP3862396B2 (ja) 1998-01-08 1998-01-08 印刷装置及び画像処理方法

Country Status (2)

Country Link
US (1) US6369910B1 (ja)
JP (1) JP3862396B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008526555A (ja) * 2005-01-07 2008-07-24 ペキン ユニバーシティ ファウンダー グループ カンパニー リミテッド 印刷メモリの必要量を低減可能な印刷制御方法
JP2011207121A (ja) * 2010-03-30 2011-10-20 Canon Inc 画像処理装置及びその制御方法又はプログラム

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3284464B2 (ja) * 1998-09-29 2002-05-20 セイコーエプソン株式会社 ページプリンタ及びページプリントシステム
JP2000177188A (ja) * 1998-12-17 2000-06-27 Brother Ind Ltd 複写装置および記憶媒体
KR100327246B1 (ko) * 1998-12-31 2002-05-09 윤종용 화상형성장치 및 그 비디오데이터 전송방법
JP3385613B2 (ja) * 1999-12-17 2003-03-10 日本電気株式会社 携帯電話用プリンタケーブル及び通信データの印刷方法
JP2003076583A (ja) * 2001-09-04 2003-03-14 Fujitsu Ltd レンダリング計算処理状況監視プログラムおよび記憶媒体、装置、方法
EP1785838B1 (en) * 2005-11-01 2017-07-05 Kyocera Mita Corporation Image-forming system and image-forming program
JP2008011266A (ja) * 2006-06-29 2008-01-17 Ricoh Co Ltd 複合画像形成方法及び複合画像形成装置
US8184335B2 (en) * 2008-03-25 2012-05-22 Xerox Corporation Method for ad-hoc parallel processing in a distributed environment
JP4956517B2 (ja) * 2008-10-02 2012-06-20 京セラドキュメントソリュ−ションズ株式会社 データ圧縮装置、画像読取装置
JP5210913B2 (ja) * 2009-02-05 2013-06-12 京セラドキュメントソリューションズ株式会社 画像形成装置及び画像形成方法
JP5750103B2 (ja) * 2010-06-16 2015-07-15 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America アニメーション制御装置、アニメーション制御方法およびアニメーション制御プログラム
US20120013938A1 (en) * 2010-07-14 2012-01-19 Hiroshi Nogawa Image processing device, hardware accelerator, and image processing method
JP5942860B2 (ja) * 2013-01-10 2016-06-29 富士ゼロックス株式会社 印刷データ処理システム
JP7119744B2 (ja) * 2018-08-10 2022-08-17 京セラドキュメントソリューションズ株式会社 画像形成装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1023271A (ja) * 1996-07-05 1998-01-23 Canon Inc 画像形成方法とその装置
JPH10147017A (ja) * 1996-11-18 1998-06-02 Canon Inc 印刷装置及びデータ制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008526555A (ja) * 2005-01-07 2008-07-24 ペキン ユニバーシティ ファウンダー グループ カンパニー リミテッド 印刷メモリの必要量を低減可能な印刷制御方法
JP2011207121A (ja) * 2010-03-30 2011-10-20 Canon Inc 画像処理装置及びその制御方法又はプログラム
US8587812B2 (en) 2010-03-30 2013-11-19 Canon Kabushiki Kaisha Image processing apparatus, method, and medium for processing images for printing

Also Published As

Publication number Publication date
US6369910B1 (en) 2002-04-09
JP3862396B2 (ja) 2006-12-27

Similar Documents

Publication Publication Date Title
US8422046B2 (en) Print setting based reprinting
JP3826038B2 (ja) 印刷システム及びその印刷方法並びに印刷装置
US7256908B2 (en) Printing control apparatus, data processing method for printing control apparatus, and storage medium storing computer-readable program
JPH11198462A (ja) 印刷装置及び画像処理方法
JPH11170655A (ja) 画像出力装置及び方法
JPH10147018A (ja) 印刷装置及びメモリ管理方式
US7995233B2 (en) Printing control method capable of reducing printing memory requirement
JPH10217555A (ja) 印刷装置及び画像出力制御方法
US6304336B1 (en) Output control device and image processing apparatus and method and storage medium
JPH10147017A (ja) 印刷装置及びデータ制御方法
JP2815832B2 (ja) ページプリンタのバンドプリント方法
JP3204136B2 (ja) 画像処理装置及び圧縮処理方法
JP2000335021A (ja) 画像処理装置及び画像処理方法
JPH11235849A (ja) 画像処理装置および画像処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP3957859B2 (ja) 印刷制御装置及び印刷制御方法及びプログラム記憶媒体
JPH08307695A (ja) ページプリンタ及びそのデータ処理方法
JP2001171185A (ja) 画像形成装置及び画像処理方法
JPH10151815A (ja) 印刷処理装置
JPH09218763A (ja) 印刷処理システム
JP2003039744A (ja) 印刷装置及びその制御方法
JPH10305639A (ja) 印刷処理装置および印刷処理方法
JP2000148418A (ja) 印刷装置
JPH11188932A (ja) 印刷制御装置および印刷制御装置のバンド処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP2001045304A (ja) 画像処理装置およびその方法
JP2004326266A (ja) 印刷制御方法、情報処理装置及び印刷装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060623

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060822

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060926

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091006

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101006

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101006

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111006

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121006

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131006

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees