JPH11249833A - 印刷制御装置及び印刷制御方法及びプログラム記憶媒体 - Google Patents

印刷制御装置及び印刷制御方法及びプログラム記憶媒体

Info

Publication number
JPH11249833A
JPH11249833A JP10051953A JP5195398A JPH11249833A JP H11249833 A JPH11249833 A JP H11249833A JP 10051953 A JP10051953 A JP 10051953A JP 5195398 A JP5195398 A JP 5195398A JP H11249833 A JPH11249833 A JP H11249833A
Authority
JP
Japan
Prior art keywords
band
print
printing
data
output 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.)
Granted
Application number
JP10051953A
Other languages
English (en)
Other versions
JP3957859B2 (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 JP05195398A priority Critical patent/JP3957859B2/ja
Publication of JPH11249833A publication Critical patent/JPH11249833A/ja
Application granted granted Critical
Publication of JP3957859B2 publication Critical patent/JP3957859B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

(57)【要約】 【課題】 バンディング処理のみで完全にオーバーラン
を防ぐことにより、プログラムROMサイズが減少して
装置価格を下げ、かつ再印刷の頻度を下げることのでき
る印刷処理を提供することを目的とする。 【解決手段】 設定された印刷処理モードに基づいて、
印刷データのすべてのバンドを格納する一時的バンドラ
スタを確保するか、描画時間が所定値を超えるバンドを
格納する一時的バンドラスタを確保するかを制御する構
成を特徴とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、印刷データから
出力用ビットマップデータを生成して印刷するレーザビ
ームプリンタ等の印刷制御装置及び印刷制御方法及びプ
ログラム記憶媒体に関するものである。
【0002】
【従来の技術】従来より、ホストコンピュータなどから
印刷内容や印刷形式に関するデータ(印刷データ)を受信
して、それを元に実際に出力するビットマップを形成
(以後レンダリングとする)し、そのビットマップを例え
ば紙面上に印刷出力(以後シッピング)するタイプの印刷
装置が広く使われている。
【0003】このようなタイプの印刷装置で1ページ分
の出力ビットマップをレンダリングしてからシッピング
処理を行なうタイプ(以後フルペイント処理と呼ぶ)の印
刷装置があるが、この場合必ず1ページ分のビットマッ
プを保持する記憶装置が必要となり、出力解像度が高い
印刷装置やカラー印刷装置などでは記憶装置の容量を大
きくしなければならないため、装置が非常に高価なもの
になってしまう欠点がある。また、1ページ分のビット
マップのレンダリングを終えてからシッピングを行い、
シッピングが終わったから次ページのビットマップのレ
ンダリングを行うため、印刷スループットが悪いという
欠点がある。
【0004】そのため1ページをそれより小さな単位(バ
ンド)で区切り、1バンド分のレンダリングを終えてから
シッピングし、シッピング処理と並列に次のバンドのレ
ンダリングを行なうタイプ(以後バンディング処理と呼
ぶ)の印刷装置が開発された。この方式ではレンダリン
グ用とシッピング用の最低2つのバンド分の記憶装置が
あれば良いので、1ページ分必要な前出の方式より印刷
装置の記憶装置容量を少なく押さえることができ、印刷
スループットもあがる。
【0005】しかし一般的にレーザビーム等の印刷装置
はシッピング処理をページの途中で止めることができな
いため、レンダリングに時間のかかるバンドがあった場
合に、前のバンドのシッピングが終わっても次のバンド
のレンダリングが終わらないため、正常な印刷ができな
いこと(以後オーバーランと呼ぶ)があった。
【0006】さらに昨今の技術革新でシッピング処理は
高速化する傾向にあり、逆に高解像度化、カラー印刷な
どレンダリング処理はより時間がかかる傾向にあるた
め、オーバーランが発生しやすくなってきている。
【0007】そこで回避策として印刷装置にバンディン
グ処理とフルペイント処理の両方を搭載し、バンディン
グ処理でオーバーランしてしまう印刷データに関して
は、印刷装置をフルペイント処理を行うように切り替え
て再度印刷しなおすようにしていた。
【0008】
【発明が解決しようとする課題】ここでバンディング処
理とフルペイント処理は、印刷装置内に印刷データを保
管する形式や印刷処理の単位がバンドか1ページ分かと
大きく違うため、処理プログラムや記憶装置の使い方が
まったく相いれない方式である。そのため2系統の処理
プログラムが必要なため印刷装置のプログラムROMサ
イズが大きくなって装置価格を上げる要因となってい
た。
【0009】またバンディング処理で大量ページを印刷
していてオーバーランが起きた場合、別方式であるフル
ペイント処理に切り替えて再度最初から印刷しなおす必
要があるため、処理プログラムの変更と記憶装置の使用
方法を変更するため、印刷スループットが悪いという欠
点があった。
【0010】本発明は以上のような従来の欠点を除去す
るためになされたもので、バンディング処理においてバ
ンド毎にフルペイント処理のようなオーバーランを完全
に回避する機構をつけ、オーバーランの発生を予測して
事前に回避することにより、オーバーランの発生率を低
下させる。
【0011】さらにそれでもオーバーランする場合に
も、バンド毎に行うオーバーラン回避処理の実行頻度を
上げることにより、完全にオーバーランを回避する。
【0012】このように本発明ではバンディング処理の
みで完全にオーバーランを防ぐことで、プログラムRO
Mサイズが減少して装置価格が下げることができ、かつ
再印刷の頻度を下げることのできる印刷処理を提供する
ことを目的としている。
【0013】
【課題を解決するための手段】本発明の印刷制御装置
は、以下の構成からなる。即ち、外部装置より入力され
た印刷データをバンド単位で管理する管理手段と、印刷
処理モードを設定する設定手段と、前記印刷データに基
づいてバンド単位の出力データを描画生成する描画時間
を導出する導出手段と、バンドの印刷データを格納する
一次メモリを記憶手段に確保する確保手段と、前記設定
手段により設定された印刷処理モードに基づいて、前記
印刷データのすべてのバンドを格納する一次メモリを前
記確保手段で確保するか、前記導出手段により導出され
た前記描画時間が所定値を超えるバンドを格納する一次
メモリを前記確保手段で確保するかを制御する制御手段
とを有するものである。
【0014】また、他の発明は、出力データを格納する
複数のバンド出力メモリと、前記印刷データに基づいて
出力データを前記バンド出力メモリもしくは前記一次メ
モリに描画生成する描画手段と、前記出力データを印刷
する印刷手段とを更に有し、前記印刷手段は、バンド順
序で印刷開始前に前記一次メモリに格納されている出力
データを読み出し、前記一次メモリにバンド順序に対応
するバンドの出力データがない場合は印刷開始後に前記
描画手段により前記バンド出力メモリに描画生成された
出力データを読み出して印刷することを特徴とするもの
である。
【0015】また、その他の発明は、前記設定手段は、
前記外部装置より入力された命令により印刷処理モード
を設定することを特徴とするものである。
【0016】また、その他の発明は、前記設定手段は、
操作パネルにより設定されることを特徴とするものであ
る。
【0017】また、その他の発明は、前記導出手段は、
印刷データに基づいて生成された中間データから出力デ
ータを描画生成するための描画時間を、中間データの種
類に応じて導出することを特徴とするものである。
【0018】また、その他の発明は、前記導出手段は、
前記中間データの種類により、レンダリング時間対応テ
ーブルの検索による導出、中間データのサイズによる導
出、レンダリング時間を実測する導出のなかから導出方
法を切り替えてレンダリング時間を導出することを特徴
とするものである。
【0019】また、その他の発明は、出力データを圧縮
する圧縮手段と、前記圧縮手段により圧縮された出力デ
ータを伸長する伸長手段とを更に有し、前記導出手段に
より導出された前記描画時間が所定時間を超えるバンド
を格納する一次メモリを前記確保手段で前記記憶手段に
確保できない場合に、該バンドを前記描画手段により描
画生成された出力データを前記圧縮手段により圧縮して
前記一次メモリに格納することを特徴とするものであ
る。
【0020】また、その他の発明は、前記圧縮手段によ
り圧縮された出力データを格納する前記一次メモリに確
保できない場合に、前記印刷手段により出力データの印
刷を始めることを特徴とするものである。
【0021】また、その他の発明は、前記制御手段は、
前記記憶手段に一次メモリを確保できなくなるか、印刷
データに対する一次メモリの確保が終わるまで、順次印
刷ページを進めて制御することを特徴とするものであ
る。
【0022】また、その他の発明は、前記所定値を入力
された命令に基づいて変更する変更手段を更に有してい
ることを特徴とするものである。
【0023】更に、本発明に係る印刷制御方法は、以下
の構成からなる。即ち、外部装置より入力された印刷デ
ータをバンド単位で管理させる管理工程と、印刷処理モ
ードを設定させる設定工程と、前記印刷データに基づい
てバンド単位の出力データを描画生成する描画時間を導
出させる導出工程と、バンドの印刷データを格納する一
次メモリを記憶手段に確保する確保工程と、前記設定工
程で設定された印刷処理モードに基づいて、前記印刷デ
ータのすべてのバンドを格納する一次メモリを前記確保
工程で確保するか、前記導出工程で導出された前記描画
時間が所定値を超えるバンドを格納する一次メモリを前
記確保工程で確保するかを制御させる制御工程とを含む
方法である。
【0024】更に、本発明に係るコンピュータ読み取り
可能なプログラムが格納された記憶媒体は、以下のプロ
グラム工程からなる。即ち、外部より入力された印刷デ
ータをバンド単位で管理させる管理工程と、印刷処理モ
ードを設定させる設定工程と、前記印刷データに基づい
てバンド単位の出力データを描画生成する描画時間を導
出させる導出工程と、バンドの印刷データを格納する一
次メモリを記憶手段に確保する確保工程と、前記設定工
程で設定された印刷処理モードに基づいて、前記印刷デ
ータのすべてのバンドを格納する一次メモリを前記確保
工程で確保するか、前記導出工程で導出された前記描画
時間が所定値を超えるバンドを格納する一次メモリを前
記確保工程で確保するかを制御させる制御工程とを含む
プログラムを格納したものである。
【0025】
【発明の実施の形態】〔第一実施例〕以下に添付図面を
参照して本発明の好適な実施の形態を説明する。まず、
本実施の形態の構成を説明する前に、本実施の形態を適
用するに好適なレーザービームプリンタの構成について
図1及び図2を参照しながら説明する。なお、本実施例
を適用する画像処理装置は、レーザビームプリンタに限
られるものではなく、他のプリント方式の画像処理装置
でも良いことはいうまでもない。
【0026】図1は本発明を適用可能な印刷制御装置の
構成を示すレーザービームプリンタ(LBP)の構成を
示す断面図である。
【0027】図において、1000はLBP本体であ
り、外部に接続されているホストコンピュータから供給
される印刷データ(文字コード、制御コード等からなる
ページ記述言語等のプリンタ言語)やフォーム情報ある
いはマクロ命令等を入力して記憶するとともに、それら
の情報にしたがって対応する文字パターンやフォームパ
ターン等のビットマップデータを作成し、記録媒体であ
る記録紙等に像を形成する。1012は操作のためのス
イッチ及びLED表示器等が配されている操作パネル、
1001はLBP本体1000全体の制御及びホストコ
ンピュータから供給される印刷データ等を解析するプリ
ンタ制御ユニットである。
【0028】このプリンタ制御ユニット1001は、主
に文字情報(文字コード)を対応する文字パターンのビデ
オ信号に変換してレーザドライバ1002に出力する。
【0029】レーザドライバ1002は半導体レーザ1
003を駆動するための回路であり、入力されたビデオ
信号に応じて半導体レーザ1003から発射されるレー
ザ光1004をオン・オフ切り換えする。レーザ光10
04は回転多面鏡1005で左右方向に振られて静電ド
ラム1006上を操作露光する。
【0030】これにより、静電ドラム1006上には文
字パターンの静電潜像が形成されることになる。この潜
像は、静電ドラム1006周囲に配設された現像ユニッ
ト1007により現像された後、記録紙に転写される。
ここで静電ドラム1006の回転速度は一定である。こ
の記録紙にはカットシートを用い、カットシート記録紙
はLBP1000に装着した用紙カセット1008に収
納され、給紙ローラ1009および搬送ローラ1010
と搬送ローラ1011とにより、装置内に取り込まれ
て、静電ドラム1006に供給される。
【0031】またLBP本体1000には、図示しない
カードスロットを備え、内蔵フォントに加えてオプショ
ンフォントカード、プリンタ言語系の異なる制御カード
(エミュレーションカード)を接続できるように構成され
ている。
【0032】図2は本発明の一実施例を示すプリンタ制
御システムの構成を説明するブロック図である。ここで
は、レーザビームプリンタ(図1)を例にして説明す
る。なお、本発明の機能が実行されるのであれば、単体
の機器であっても、複数の機器からなるシステムであっ
ても、LAN等のネットワークを介して処理が行なわれ
るシステムであっても本発明を適用できることは言うま
でもない。
【0033】図において、2000はホストコンピュー
タ等の外部装置で、所定のインターフェース(例えば双
方向インターフェース)を介して印刷装置1000に接
続されて通信処理を実行する。
【0034】201はホストコンピュータ2000との
間の通信処理を行なう入力部である。入力部はホストコ
ンピュータ2000より印刷データを受信する処理を行
なう。ここで必要ならば印刷装置1000の情報をホス
トコンピュータ2000へ送信する処理を行なってもよ
い。
【0035】202は印刷データを、印刷装置内部で扱
いやすい形である中間データに変換する処理を行なう中
間データ作成部である。
【0036】203は本発明で使用する記憶装置の一例
としてのRAMを示している。RAM203では入力部
201で受信した印刷データより導き出された中間デー
タを保持したり、中間データをレンダリングした結果の
ビットマップを保持したり、その他処理に必要な一時的
なバッファエリアや、各種処理ステータスを保持したり
する。
【0037】204は本発明で説明する図10、11、
13〜16、18のフローチャートの処理や、その他印
刷装置1000の行なう処理プログラムを保持するRO
Mである。205はRAM203に格納された中間デー
タの内容に従って、実際に印刷出力する印刷イメージを
作成するレンダリング部である。206はビットマップ
イメージを圧縮したり、圧縮されたビットマップイメー
ジを伸長する処理を行なう圧縮/伸長部である。207
はレンダリング部205で作成された印刷イメージや、
圧縮/伸長部206で伸長されたイメージを例えば実際
の紙面へ印刷出力する出力部である。
【0038】208は本発明の実施例である印刷装置1
000の印刷処理や後述するデータ処理を実際に行なう
CPUである。209は本印刷装置の各部を接続する内
部バスである。210は強制オーバーラン回避フラグで
あり、本発明で実現するオーバーラン回避方法を、オー
バーランするかどうかをバンド毎に予測して必要なバン
ドのみ行うのか、または強制的に全バンド回避処理を行
うかどうかを決めるフラグである。このフラグはホスト
コンピュータからの命令(プリンタドライバにより生成
される印刷データに含まれる)や印刷装置本体1000
のスイッチや操作パネル1012のメニューで、ユーザ
によって必要な方法に切り替えられる。
【0039】本実施例でいう印刷制御装置とは、印刷装
置1000のコントローラ(制御部分)もしくは、コン
トローラと印刷部を含むものの両方の意味を有してい
る。以後は、一般に印刷装置という。
【0040】以後、ROM204に蓄えられたプログラ
ムによってCPU208が行なう処理について、まず図
3〜図5でバンディング処理について説明し、次に図6
〜図9でオーバーラン回避処理について説明する。最後
に図10〜図16で全体の処理手順をフローチャートを
用いて説明する。
【0041】〔バンディング処理についての説明〕図3
は、本実施例の印刷装置の中間データの構造及び管理形
式について説明した図である。
【0042】本発明に基づく一実施例である印刷装置
は、1枚の出力ページを幾つかの小領域(以下バンドと呼
ぶ)で区切って、そのバンド単位で処理を行う。例え
ば、RAM203には最低2つのバンドの領域を保持し
ており、バンドに出力データのレンダリングとバンドに
描画されたビットマップデータの印刷部への印刷出力を
並列処理で同時に行なうのである。そのため本実施例で
は印刷データをバンド単位で管理するために、印刷デー
タを中間データという管理しやすい形式で管理する。並
列処理については、以後に図4などを用いて説明する。
【0043】図3において301は出力用紙1ページ分
をあらわし、それぞれバンド1、バンド2と名付けられた
バンドに区切られている。バンドは図にあるように用紙
搬送方向に垂直になるように配置されている。また、そ
れぞれのバンドは同面積を持つように区切られているた
め、用紙出力時のバンドの静電潜像時間は一定である。
【0044】今印刷装置が、出力用紙301にあるよう
に1つの文字「あ」と斜めの直線1本が描かれるような印
刷データを受信したとすると、その中間データは以下の
ような構造になる。
【0045】まず中間データは302〜304で示され
る中間データ管理テーブルにつながれる。中間データ管
理テーブル302〜304はバンド数分だけあり、それ
ぞれのバンド内に描画されるべき中間データをリンク構
造で保持する。
【0046】中間データの内容を305〜308に示
す。305は中間データの種類を示す情報であり、
「あ」の場合は文字となる。306は描画オブジェクト
の描画位置を示している。307は描画オブジェクトの
データを示しており、「あ」の場合は文字コードが格納
されている。この文字コードに対応してレンダリング時
にはフォントROMからフォントのビットマップデータ
を読み出して来るのである。308は修飾方法に関する
情報が格納されている。
【0047】301に示される出力情報において、文字
「あ」はバンド2内に描かれるべき文字なので、その中
間データ305〜308はバンド2の中間データ管理テ
ーブル303につながれている。そしてその構造は、中
間データの種類を示す領域、描画位置を示す領域、その
他描画に関する情報などを、それぞれの中間データの種
類によって必要なだけ保持する。文字「あ」の中間デー
タは、中間データの種類が文字であることを示す30
5、「あ」を描画する描画位置306、描画する文字が
「あ」であることを示す文字コード307、例えば太文
字や袋文字、文字色など文字の修飾方法に関する情報3
08からなっている。
【0048】更に出力情報301に描かれる直線につい
ては、バンド2〜バンド3にまたがって描画されるため、
中間データは2つ作成され、それぞれバンド2の中間デー
タ管理テーブル303とバンド3の中間データ管理テー
ブル304にリンクされている。ここで309はデータ
の種類が直線であることを示し、310はその直線の描
画開始位置を示し、311で描画の終了位置を示してい
る。312は線種を示している。線種とは線の太さや破
線等の線の修飾情報のことである。
【0049】このように管理される中間データは、印刷
出力時にはそれぞれのバンド毎にレンダリングされ、印
刷出力される。
【0050】図4は中間データ形式で格納された印刷デ
ータを実際に印刷出力するときのバンドに関する処理を
説明した図である。
【0051】今まで述べたようにRAM203内に確保
されている中間データ格納領域401にバンド別に管理
されて格納された中間データは、各バンド毎にレンダリ
ング部205によってレンダリングされる。レンダリン
グによって得られた印刷イメージ(ビットマップデー
タ)はバンドラスタ1(402)とバンドラスタ2(4
03)のどちらかに格納され、印刷部207に送られて
紙面上に印刷出力される。これらの処理は図16で後述
する。
【0052】〔バンディングタイミングの説明〕印刷イ
メージを402と403のどちらのバンドラスタに格納
するかは、図5を用いて説明する。
【0053】図5は縦軸に時間経過をあらわし、レンダ
リング部205、出力部である印刷部207のそれぞれ
の処理内容、及びバンドラスタ1、バンドラスタ2の保持
している出力イメージについての時間的変化を示したタ
イムチャートである。
【0054】以下、図を時間軸に沿って説明する。
【0055】まず時間t0〜t1でレンダリング部は、用紙
の最初に印刷出力される最上部であるバンド1のレンダ
リングを行ない(5.1)、その結果得られた出力イメー
ジをバンドラスタ1へと格納する(5.8)。次にt1で静
電ドラム1006の回転をスタートさせる(以後印刷出
力開始と表現する)。
【0056】時間t1以降では、レンダリング処理と印刷
出力処理を並列に行なう。ここで各バンド面積が一定
で、かつ静電ドラム1006の回転速度も一定なことよ
り、各バンドの印刷出力時間(時間t2-t1、時間t3-t
2、...)は一定であり、それは静電ドラム1006の回
転速度によって決まる。
【0057】時間t1〜t2では、既にバンドラスタ1へ格
納されているバンド1の印刷イメージを印刷部が印刷出
力する処理(5.15)と、レンダリング部が中間データ
格納領域に格納されているバンド2の中間データをレン
ダリングしバンドラスタ2へ印刷イメージを格納する処
理(5.12)を並列で行なう。同様に時間t2〜t3ではバ
ンド2が印刷出力され(5.16)、バンド3がバンドラス
タ1へ出力イメージ展開される(5.9)。以後それらを
繰り返し、最終的に時間t7〜t8でバンド7の印刷出力を
行ない(5.21)、1ページ分の印刷を完了する。
【0058】以上の方式によりバンドラスタの領域が最
低2バンドあればよく、1ページ分の出力イメージを格納
するのに必要なメモリサイズよりはるかに少ないメモリ
で印刷出力処理を行なうことができる。なおバンドラス
タは2つに限るわけではなく、3つ以上であっても良いこ
とは言うまでもない。バンドラスタの数が多いほどオー
バーランを回避するための時間が多くなり、それだけ複
雑な描画が可能となる効果がある。
【0059】ここで先に述べたように各バンドの印刷出
力時間は静電ドラム1006の回転速度に依存して一定
だが、各バンドのレンダリングに要する時間はその中間
データにより変化する。そのためあるバンドの中間デー
タが非常にレンダリングに時間がかかるタイプのもので
あった場合、バンドのレンダリング時間が印刷出力時間
より大きくなってしまい、プリントオーバーランしてし
まう。
【0060】そこで本発明では、次のようにその障害を
回避する。
【0061】〔オーバーラン回避処理についての説明〕
図6はプリントオーバーランを回避するための処理につ
いて説明した図である。図6ではすでに説明したものは
同じ番号が振られている。ここでは例としてバンド4の
レンダリング時間がバンド出力処理時間を越えているケ
ースを考える。
【0062】Aは中間データを1ページ分中間データ格
納領域に格納し終ったあとのメモリマップを示してい
る。この時点でプリントオーバーランするバンドを予測
し、そのバンド数分だけ一時的なバンドラスタを確保す
る。今回の例では4バンド目だけがオーバーランするこ
とが予測される場合について考え、1つの一時的バンド
ラスタ601を確保する。オーバーランするバンドの予
測方法については、後で図10と図11を用いて詳細に
説明する。また、これらの処理手順については図14で
フローチャートを用いて説明する。
【0063】オーバーランすると予測されるバンドがあ
る場合は、図6のBのように、レンダリングをバンドラ
スタ1(402)、バンドラスタ2(403)、一時的
バンドラスタ601に対して適切に行ない、印刷出力も
それら3つのバンドラスタから行なうことによりプリン
トオーバーランを回避する。これらの処理手順は図16
で後述する。
【0064】それぞれのバンドのレンダリング、印刷出
力タイミングとバンドラスタの使われ方については、次
図を用いて説明する。
【0065】図7はプリントオーバーランを回避するた
めの処理における、一時的なバンドラスタを用いたレン
ダリング、印刷出力のタイミングについて説明したタイ
ムチャートである。この処理では図5で説明したタイミ
ングとは異なり、印刷出力開始前に2つのバンドについ
て予めレンダリングを行なう。
【0066】まず時間t0〜t1をでプリントオーバーラン
すると予測されたバンド4の中間コードをレンダリング
し(7.1)、その結果得られる出力イメージを一時的バ
ンドラスタへと格納する(7.14)。
【0067】次に通常と同じく時間t1〜t2で最初に印刷
出力されるバンドであるバンド1についてレンダリング
を行ない(7.2)、出力イメージをバンドラスタ1へ格
納する(7.8)。そして時間t2で印刷出力を開始する。
時間t2以降は先に図5で述べたタイミングと同様に各バ
ンドのレンダリングと印刷出力を並列に処理していく。
【0068】そして図5ではバンド4をレンダリングし
ていた時間t4〜t5ではレンダリングを行なわず、バンド
4を印刷出力する時間t5〜t6では、既に一時的バンドラ
スタにレンダリングしてあるバンド4の出力イメージを
印刷出力する(7.18)。
【0069】このように一時的なバンドラスタを用意
し、レンダリングタイミングを変えることでプリントオ
ーバーランを回避することができる。
【0070】しかし、ここでプリントオーバーランする
バンド数が多い場合、例えば全バンドがオーバーランす
ると予測された場合は、結局フルペイント方式と同等に
1ページ分レンダリングできるだけの多量のメモリが必
要となる。また強制オーバーラン回避フラグ210の状
態によっては、強制的に全バンドがオーバーラン回避処
理されるが、この場合も多量のメモリが必要である。こ
れでは印刷装置が高価格になってしまう。
【0071】このような場合を本発明では次に述べる方
法で回避する。
【0072】〔プレレンダリング圧縮処理の説明〕図8
は、一時的なバンドラスタの容量を低く押さえる処理を
示す図である。なお前に説明したものは同じ番号をふっ
てある。
【0073】図のAでは印刷出力を開始する前に行なう
処理について示してある。一時的なバンドラスタを確保
できない場合にはまず、プリントオーバーランすると予
測されたバンドをバンドラスタ402にレンダリングす
る。そして得られた出力イメージを圧縮/伸長部801
の圧縮機能を使ってイメージ圧縮し、圧縮データ802
としてRAM203へと格納する(以後バンド圧縮処理
とする)。
【0074】圧縮データ802の大きさは通常のバンド
ラスタより圧縮した分小さいので、RAM203の容量
は低く押さえられる。
【0075】そして印刷出力時には図のBのように、通
常のバンドは2つのバンドラスタを使ってレンダリン
グ、印刷出力し、圧縮データとして格納されたバンドに
ついては圧縮伸長部の伸長機能を使って伸長しながら印
刷出力する。
【0076】これらの処理手順は図15、図16でフロ
ーチャートを用いて後で説明する。
【0077】〔プレレンダリング圧縮タイミングの説
明〕図8で説明した処理方式に基づいてレンダリング、
印刷出力を行なうタイミングを、図9のタイムチャート
を用いて説明する。この図でも例として4バンド目(バ
ンド4)がプリントオーバーランすると予測されたとす
る。
【0078】まず印刷出力を開始する前に時間t0〜t2の
間にプリントオーバーランするバンド4をバンドラスタ1
へレンダリングし(9.8)、得られた出力イメージを圧
縮/伸長部の圧縮機能を用いて圧縮し(9.17)、圧縮
データをとしてRAM203へ格納する(9.16)。以
降図5で説明したタイミングと同様に、時間t3〜t4で先
頭のバンド1をレンダリングし(9.9)、印刷出力を開
始する。
【0079】プリントオーバーランすると予測されたバ
ンド以外のバンドはレンダリング、印刷出力を並列して
行なうが、オーバーランすると予測されたバンド4につ
いては圧縮データを伸長してバンドラスタ2へと格納す
る(9.18)。
【0080】しかしここでバンドの伸長処理時間(時間t
6〜t7)はバンドの印刷出力処理時間より短くなければ、
伸長処理によりプリントオーバーランしてしまう。ここ
で圧縮/伸長部は、その伸長処理時間によりプリントオ
ーバーランしないスピードを持った方式を選択しなけれ
ばならない。一般的に伸長スピードはレンダリングスピ
ードに比べて予測しやすいものであるので、伸長スピー
ドがオーバーランしないくらい速い圧縮方式を使うか、
場合によっては伸長処理をハードウエアを使うなどして
高速化する必要がある。
【0081】〔全体処理手順の説明〕図10は本発明の
一実施例を示すプリンタ制御システムの、1ページ分の
印刷データを受信してから印刷出力するまでの手順を示
したフローチャートである。
【0082】ステップS1001において、ホストコン
ピュータ2000より転送され入力部201で受信され
た印刷データを、中間データ作成部202により中間デ
ータに変換し、RAM203内に格納する。中間データ
の形式は、例えばレンダリング部205で処理しやすい
形式であったり、中間データのサイズが小さくなるよう
な形式であったり、中間データの処理が速くなるような
形式であったりと、内部処理の都合の良い形式であって
良い。更に、印刷データと共にホストコンピュータ20
00から送信されてくる強制オーバーラン回避コマンド
に応じて、強制オーバーラン回避フラグ210を更新す
る。なお、この強制オーバーラン回避コマンドはページ
単位で存在しており、ページ単位で強制オーバーラン回
避フラグ210を更新する。
【0083】次にステップS1002でプリントオーバ
ーランを避ける処理のための計算を行なう。ステップS
1002ではステップS1001で格納した中間データ
のレンダリング処理にかかる時間を計算し、それをバン
ド毎に集計することにより、バンド単位でのレンダリン
グ時間を測定する。レンダリング時間計算手順について
は、図11で詳細に説明する。
【0084】次にステップS1003で、印刷データを
1ページ分処理し終ったかどうかを判断し、まだページ
が終了していない場合は次の印刷データについてステッ
プS1001から処理を繰り返す。1ページ分の中間デ
ータを格納し終わったら、ステップS1004でプリン
トオーバーラン回避処理を行なう。
【0085】プリントオーバーラン回避処理は、ステッ
プS1002で計算したバンド毎のレンダリング時間が
しきい値を越えた場合、そのバンドを印刷出力前にレン
ダリングすること(本実施例ではプリレンダリング処理
という)により行なう。ここでしきい値は、印刷処理に
おける紙搬送速度とバンドのサイズより、以下の式から
求める。
【0086】しきい値 = 用紙搬送時間 × バンド高さ
÷ 用紙紙高さ − オーバーヘッド
【0087】ここで、それぞれの用語の説明は以下の通
りである。
【0088】用紙搬送時間 … 印刷エンジンの特性によ
り決まる1ページの用紙の搬送にかかる時間 用紙高さ … 印刷用紙の用紙搬送方向の長さ バンド高さ … バンドの用紙搬送方向の長さ オーバーヘッド … 1つのバンドのレンダリング処理に
かかる、レンダリング時間以外の要素
【0089】本実施例ではこのような計算でしきい値を
求めるが、例えばしきい値はしきい値=用紙搬送時間×
バンド高さ÷用紙紙高さ−オーバーヘッド+(前のバン
ドのしきい値−前のバンドのレンダリング時間)として
もよい。ここで前のバンドがプリントオーバーラン対策
している場合は、前のバンドのレンダリング時間は0で
あるということができる。
【0090】またしきい値を求める別の方法として、し
きい値を直前のレンダリング終了時点からそのバンドの
レンダリングを開始しなければならない時点までの時間
としてもよい。この場合も直前のレンダリング終了時点
とは、処理しているバンド以前の、最後にプリントオー
バーラン処理していないバンドのレンダリングが終った
時点のことである。
【0091】ステップS1004ではバンド毎のレンダ
リング時間がしきい値を越えた場合、そのバンドをレン
ダリングして得られるビットマップを保管するための一
時的なラスタメモリをRAM203に確保する。
【0092】これらのラスタメモリが確保できた場合、
印刷出力前にプリントオーバーランすると予測される全
てのバンドの中間データをそれぞれの一時的なラスタメ
モリにレンダリングして格納することによって、プリン
トオーバーランせずに印刷できる確率を非常に低く押さ
えることができるようになる。このプリントオーバーラ
ン対策処理は、図14で詳細に説明する。
【0093】そしてステップS1004の処理において
RAM203内に全てのプリントオーバーラン対策のた
めのラスタメモリを確保するだけ容量の空き領域がある
かステップS1005で判断する。つまりプリレンダリ
ング処理が必要なすべてのバンドに対してラスタメモリ
が確保できるかをRAM203の空きアドレスを参照し
て判断するのである。ステップS1005でプリントオ
ーバーラン対策のラスタメモリが確保できないと判断さ
れた場合、ステップS1006において、プリントオー
バーランするバンドのレンダリングを行ない、得られた
ビットマップイメージを圧縮し、圧縮データ形式でRA
M203内に保管する。この処理は、図15で後述す
る。
【0094】ステップS1006でバンド圧縮処理を終
えたら、ステップS1007で、もう一度メモリが不足
しているかを判断する。もしメモリが不足していると判
断された場合は、ステップS1009でプリントオーバ
ーランする全てのバンドについてレンダリングした後、
実際に紙面に印刷出力する。この印刷出力処理手順は図
16で説明する。
【0095】ステップS1005で、ラスタメモリを確
保できると判断された場合は、ステップS1008に処
理を進め、ホストコンピュータ2000から入力された
印刷データの全ページがすべて中間データに変換された
かを判断する。まだ全ページが終了していない場合は次
のページの印刷データについてステップS1001から
処理を繰り返す。この時、強制オーバーラン回避フラグ
は前述したようにページ単位で更新される。印刷データ
の全ページ分の中間データを格納し終わったら、ステッ
プS1009で印刷出力の処理(図16)を行なう。
【0096】ここで、既に述べたように圧縮データの伸
長時間は本実施例では紙搬送速度より十分に高速である
ため、圧縮されたバンドがプリントオーバーランを起こ
すことはない。
【0097】〔レンダリング時間計算の説明〕図11
は、図10のステップS1002で行なう、バンド単位
のレンダリング時間を計算する方法について述べたフロ
ーチャートである。ここで求めるレンダリング時間は、
図10のステップS1004のオーバーラン対策処理で
しきい値と比べるのに使われる。
【0098】まずステップS1101において、中間デ
ータの種類によってレンダリング時間計算方法を選択す
るために、CPU208は入力された中間データを解析
し、中間データの種類を識別する。
【0099】例えば中間データの種類が、固定的にレン
ダリング時間が決まっているようなタイプのものである
場合は、例えば既にテーブルに保管しておいた中間デー
タに対するレンダリング時間の対応テーブルからレンダ
リング時間を求めるなどの処理を行なうステップS11
02に分岐する。ステップS1102では、レンダリン
グ時間対応テーブル(図12)よりレンダリング時間を
検索する。
【0100】またステップS1101の識別判断で、例
えばイメージビットマップのように、そのレンダリング
処理は単純にメモリ内容のコピーであるようなタイプの
中間データの場合、計算するレンダリング時間は中間デ
ータのサイズより求める処理であるステップS1103
へと分岐する。ステップS1103では、中間データの
サイズによりCPU208はレンダリング時間を算出す
る。
【0101】その他例えば、実際にレンダリングしてみ
ないとレンダリング時間の分らないようなタイプの中間
データの場合、時間測定のために実際にレンダリング処
理を実行するような処理であるステップS1104に分
岐し、実際にレンダリング時間を求める。このようなタ
イプの処理については図13で説明する。
【0102】これらの分岐、及び処理は、ここに示した
以外の他のタイプの時間算出アルゴリズムを用いても良
いことは言うまでもない。また、レンダリング時間と
は、何分何秒というような具体的な時間であってもよい
が、ここではタイムファクタやクロック数であってもよ
い。タイムファクタとは、描画単位を決めておき、その
描画単位の何倍かを示すものである。描画単位には、例
えば1ピクセルのドットをコピーするのに必要な単位で
あったり、12pのフォントをROM204からコピー
するのに必要な時間単位である。クロック数とは、例え
ばアウトラインフォントで一本線を描画するのに必要な
CPU208の演算時間(クロック)である。本実施例
でいうレンダリング時間とは、このように時間を示す情
報のことである。
【0103】ステップS1102〜S1104のような
各種中間データのタイプに応じたレンダリング時間算出
処理を行なった後、ステップS1105において算出し
た時間をバンド全体のレンダリング時間に加算し、処理
を終える。それぞれのバンドのレンダリング時間は、R
AM203にバンドレンダリング時間として格納されて
いる。
【0104】〔レンダリング時間計算 - 固定テーブル
方式の説明〕図12は図11のS1102の固定的なレ
ンダリング時間を求める処理の例を説明した図である。
【0105】事前にレンダリングが固定的に分っている
中間データについては、図12のように中間データの種
類とそれに対応するレンダリング時間の対応テーブルか
らレンダリング時間を検索する。事前にレンダリング時
間が固定的にわかっている中間データとは、例えばビッ
トマップフォントである。ビットマップフォントはラス
タメモリにコピーするだけだからである。また、アウト
ラインフォントも中間データを作る際にビットマップに
展開しキャッシュしておくので同様である。
【0106】〔レンダリング時間計算 - 実測方式の説
明〕図13は図11のステップS1104のレンダリン
グ時間の実測処理の例について説明したフローチャート
である。
【0107】ステップS1301で印刷装置内部タイマ
ーをスタートし、ステップS1302で実際のレンダリ
ングと同様に測定したい中間データをレンダリング部2
05がレンダリングする。そしてレンダリングが終り次
第ステップS1303でタイマーをストップし、その間
かかった時間をレンダリング時間とする。
【0108】〔オーバーラン対策の説明〕図14は、図
10のステップS1004で行なうオーバーラン対策処
理を説明したフローチャートである。
【0109】処理はまずステップS1401で強制オー
バーラン回避フラグ210を参照し、もし強制回避する
モードであった場合はステップS1403で処理中のペ
ージのすべてのバンドのカウントアップを行なう。つま
り1ページ分のバンド数を求める。本実施例では図3に
示したように7バンド分である。
【0110】強制回避しないモードであった場合はステ
ップS1402でバンド全体のレンダリング時間と図1
0(ステップS1002)で説明したしきい値を比較
し、もしレンダリング時間がしきい値を越えるかを判断
する。もしレンダリング時間がしきい値を超える、つま
りオーバーランが発生すると判断された場合、ステップ
S1403でプリントオーバーランするバンドのカウン
トアップを行なう。
【0111】そしてステップS1404でページの全バ
ンドについて処理を行なうまで、ステップS1401か
らの手順を繰り返す。
【0112】1ページ分のカウントアップ処理を終えた
らステップS1405において、現在のRAM203の
空き領域にステップS1403でカウントアップされた
バンドバンド数分の一時的なバンドラスタを確保できる
かどうかを調べ、その結果を処理結果として確保できる
のであれば処理を終了し、確保できないのであればステ
ップS1406でメモリ不足として後述の処理をするた
めにオーバーラン対策の図14の処理は終わる。
【0113】図14で説明したオーバーラン対策の処理
プログラムに基づいてCPU208がメモリ不足と判断
した場合、次に図15で説明するバンド圧縮処理を行な
う。
【0114】〔バンド圧縮処理の説明〕図15は、図1
0のステップS1006で説明した、プリントオーバー
ランバンド用の一時的なバンドラスタ領域がRAM20
3の空き領域不足により確保できなかった場合の、バン
ドの中間データを圧縮データに変換するバンド圧縮処理
を説明したフローチャートである。
【0115】まずステップS1501においてオーバー
ランするバンドの1つをRAM203のバンドラスタ1
(バンドラスタ2でもよい)にレンダリングする。そし
てステップS1502で得られたビットマップイメージ
を圧縮/伸長部801の圧縮機能を使って圧縮データに
変換する。そしてステップS1503で全てのオーバー
ランするバンドについて同様の処理を行なうまで、ステ
ップS1501から処理を繰り返す。
【0116】〔印刷出力処理の説明〕図16は、図10
のステップS1009で示された印刷出力処理を説明し
たフローチャートである。
【0117】まず図14で説明したプリントオーバーラ
ン対策によって確保された、プリントオーバーランバン
ド用の一時的なバンドラスタに対して処理を行なう。
【0118】ステップS1601で、プリントオーバー
ランバンド用の一時的バンドラスタがあるかどうかを調
べ、確保されている場合は、ステップS1602で対応
するすべてのバンドの中間データを一時的バンドラスタ
601へとレンダリングする。この時点ではまだ印刷エ
ンジンはスタートされていないため、これらのレンダリ
ング処理に時間がかかっても、プリントオーバーラン現
象は起きない。このステップで、オーバーランが発生す
ると予測されたすべてのバンドと、強制オーバーラン回
避の処理が行われるページのすべてのバンドの中間デー
タがレンダリングされる。すべての中間データのレンダ
リングが終了するとステップS1603に処理を進め
る。
【0119】次にステップS1603で実際に紙面に印
刷出力するために印刷エンジンをスタートさせる。その
後ステップS1604において、CPU208はそのバ
ンドの印刷データの保持形態を調べる。
【0120】印刷データが中間データであった場合はス
テップS1605へと分岐し、ステップS1605でレ
ンダリング部205は通常のバンドラスタ領域(バンド
ラスタ1もしくは2)に中間データをレンダリングす
る。
【0121】このレンダリングでは、既に説明したよう
に事前にプリントオーバーランと予測されるバンドをは
じいているので、プリントオーバーラン現象は発生しな
いはずである。その後、ステップS1606で得られた
印刷イメージを紙面へと印刷出力する。
【0122】ステップS1604で、もしバンドの印刷
データがステップS1602で一時的バンドラスタ60
1へ中間データが既にレンダリングされていると判断さ
れた場合、それらはすぐに印刷出力できる印刷イメージ
なので、ステップS1606で一時的バンドラスタ60
1から印刷イメージを印刷出力する。
【0123】もしバンドの印刷データがバンド圧縮処理
によって作成された圧縮データである場合、ステップS
1607で圧縮データ802を圧縮/伸長部801が伸
長しながら印刷出力を行なう。この場合既に述べたよう
に、本実施例では伸長処理にかかる時間はエンジンの出
力スピードより十分速いとしてあるので、プリントオー
バーランが起きることは決してない。
【0124】最後にステップS1608において、全バ
ンドを印刷出力処理したかどうかを判断し、まだの場合
はステップS1604より処理を繰り返す。この判断は
オーバーラン対策(図10のステップS1004)が行
われたすべてのページの全バンドの印刷出力が行われ
る。
【0125】以上までが本発明の実施例にもとづく印刷
装置の、オーバーラン回避及び強制オーバーラン回避の
処理の説明である。
【0126】以上の説明したように本願発明の印刷制御
装置は、以下の構成からなる。即ち、外部装置(ホスト
コンピュータ2000)より入力された印刷データをバ
ンド単位で管理する管理手段(中間データ作成部20
2)と、印刷処理モード(強制オーバーラン回避フラグ
210によるモード)を設定する設定手段(ホストコン
ピュータより入力された命令もしくは操作パネルからの
指示によりCPU208が強制オーバーラン回避フラグ
210を更新する)と、前記印刷データに基づいてバン
ド単位の出力データを描画生成する描画時間を導出する
導出手段(図11処理プログラムにより制御するCPU
208の機能)と、バンドの印刷データを格納する一次
メモリ(一時的バンドラスタ601)を記憶手段(RA
M203)に確保する確保手段(ステップS1405の
プログラムによるCPU208の制御)と、前記設定手
段により設定された印刷処理モードに基づいて、前記印
刷データのすべてのバンドを格納する一次メモリを前記
確保手段で確保するか、前記導出手段により導出された
前記描画時間が所定値(しきい値)を超えるバンドを格
納する一次メモリを前記確保手段で確保するかを制御す
る制御手段(図14のの処理プログラムに基づくCPU
208の制御)とを有することものである。
【0127】また、出力データを格納する複数のバンド
出力メモリ(バンドラスタ1およびバンドラスタ2)
と、前記印刷データに基づいて出力データを前記バンド
出力メモリもしくは前記一次メモリに描画生成する描画
手段(レンダリング部205)と、前記出力データを印
刷する印刷手段(印刷部207)とを更に有し、前記印
刷手段は、バンド順序で印刷開始前に前記一次メモリに
格納されている出力データを読み出し、前記一次メモリ
にバンド順序に対応するバンドの出力データがない場合
は印刷開始後に前記描画手段により前記バンド出力メモ
リに描画生成された出力データを読み出して印刷する
(図16)ことを特徴とするものである。
【0128】また、前記導出手段は、印刷データに基づ
いて生成された中間データから出力データを描画生成す
るための描画時間を、中間データの種類に応じて導出す
る(図11)ことを特徴とするものである。
【0129】また、出力データを圧縮する圧縮手段(圧
縮/伸長部206)と、前記圧縮手段により圧縮された
出力データを伸長する伸長手段(圧縮/伸長部206)
とを更に有し、前記導出手段により導出された前記描画
時間が所定時間を超えるバンドを格納する一次メモリを
前記確保手段で前記記憶手段に確保できない場合に、該
バンドを前記描画手段により描画生成された出力データ
を前記圧縮手段により圧縮して前記一次メモリに格納す
る(図15)ことを特徴とするものである。
【0130】また、前記圧縮手段により圧縮された出力
データを格納する前記一次メモリに確保できない場合
に、前記印刷手段により出力データの印刷を始める(図
10のステップS1007)ことを特徴とするものであ
る。
【0131】また、前記制御手段は、前記記憶手段に一
次メモリを確保できなくなるか、印刷データに対する一
次メモリの確保が終わるまで、順次印刷ページを進めて
制御する(図10のステップS1007とS1008)
ことを特徴とするものである。
【0132】以上のように本発明を第一実施例の印刷装
置及び印刷制御方法及びプログラム記憶媒体に適応する
と、少ないメモリ容量で印刷できるバンディング処理に
おいてプリントオーバーランの起きる確率を非常に低く
押さえることができるという効果がある。
【0133】また強制オーバーラン回避フラグにより、
確実にオーバーランを防ぐ処理が、別処理であるフルペ
イント処理を行わずにバンディング処理のみで実現でき
るため、プログラムROMを小さくすることができ、装
置価格を下げることができるという効果がある。
【0134】〔第二実施例〕 図17(第二実施例のブロック図)の説明 図17は本発明の他の実施例を示すプリンタ制御システ
ムの構成を説明するブロック図である。ここでも、レー
ザビームプリンタ(図1)を例にして説明する。実施例
1で説明した図2との違いは、1701のオーバーラン
回避率だけであるので、他の説明は省略する。なお、図
2と同じものには同番号をふってある。
【0135】オーバーラン回避率1701は、バンド毎
にオーバーランするかどうかを計算する際に使われる係
数を格納してあるブロックであり、このフラグはホスト
コンピュータからの命令や印刷装置本体1000のスイ
ッチやパネルメニューで変更される。それ以外のブロッ
クは実施例1の図2で説明したものと同様であるので、
説明を省略する。
【0136】図18(実施例2のオーバーラン対策)の説
明 本第二実施例の印刷装置では、レンダリング時間計算で
は予測できなかったオーバーランを回避する処理を、第
一実施例で示したように全バンドに強制的にオーバーラ
ン回避処理を行うかわりに、オーバーランを起こしそう
なバンドがより回避処理を行いやすくすることで解決し
ている。
【0137】図18は、次に本発明にもとづく第二実施
例の特徴であるオーバーラン回避率を使う実際の処理手
順を説明するフローチャートである。
【0138】本第二実施例のオーバーラン対策処理は、
各バンドについてオーバーラン回避処理をするかどうか
を判断し、処理を行うと判断されたバンドについて一時
的なバンドラスタを確保するという全体の流れは第一実
施例と同じである。
【0139】第一実施例との違いはステップS1801
で、ここで各バンドについて予測されたレンダリング時
間にオーバーラン回避率を掛け合わせる。そしてその結
果をステップS1802でしきい値と比較してオーバー
ラン回避処理を行うかどうかを判断する。
【0140】ここでオーバーラン回避率は通常1である
が、オーバーランしてしまった時やオーバーランしやす
そうな印刷処理を行う時は、ユーザが行う操作パネルか
らの指定やホストコンピュータ2000にあるプリンタ
ドライバからの指定によって1より大きな値に変更され
る。
【0141】こうすることにより、レンダリング時間が
計算で求められたものより長くかかると予想されること
となり、オーバーラン回避率が1の時にしきい値ぎりぎ
りで回避されなかったバンドに対して、オーバーラン回
避処理が行われることになる。
【0142】以上説明したように本第二実施例の印刷制
御装置は、以下の構成からなる。即ち、外部装置より入
力された印刷データをバンド単位で管理する管理手段
と、印刷処理モードを設定する設定手段と、前記印刷デ
ータに基づいてバンド単位の出力データを描画生成する
描画時間を導出する導出手段と、バンドの印刷データを
格納する一次メモリを記憶手段に確保する確保手段と、
前記設定手段により設定された印刷処理モードに基づい
て、前記印刷データのすべてのバンドを格納する一次メ
モリを前記確保手段で確保するか、前記導出手段により
導出された前記描画時間が所定値を超えるバンドを格納
する一次メモリを前記確保手段で確保するかを制御する
制御手段と、前記所定値を入力された命令に基づいて変
更する変更手段(オーバーラン回避率1701によりC
PU208が制御する)とを有しているものである。
【0143】以上のように本発明を第二実施例の印刷装
置及び印刷制御方法及びプログラム記憶媒体に適応する
と、少ないメモリ容量で印刷できるバンディング処理に
おいてプリントオーバーランの起きる確率を非常に低く
押さえることができるという効果がある。
【0144】またオーバーラン回避率を調整することに
より、現実的にはオーバーランを完全に防ぐことが可能
であり、かつフルペイント処理のように必要以上に多く
のメモリを使うことがないため、装置価格を下げること
ができるという効果がある。
【0145】なお、上記第一、第二実施例で示された処
理は、主としてCPU208が処理するものであり、そ
のプログラムは外部のメモリカードにより供給されると
いう形態でも実現できる。すなわち、前述した各実施形
態の機能を実現するソフトウェアのプログラムコードを
記憶した記憶媒体を、システムあるいは装置に供給し、
そのシステムあるいは装置のコンピュータ(またはCP
UやMPU)が記憶媒体に格納されたプログラムコード
を読み出し、実行することによっても、達成されること
は言うまでもない。
【0146】この場合、記憶媒体から読み出されたプロ
グラムコード自体が前述した実施形態の機能を実現する
ことになり、そのプログラムコードを記憶した記憶媒体
は本発明を構成することになる。
【0147】プログラムコードを供給するための記憶媒
体としては、例えば、プロッピーディスク、ハードディ
スク、光ディスク、光磁気ディスク、CD−ROM、C
D−R、磁気テープ、不揮発性メモリカード、ROM、
DVD等をもちいることができる。
【0148】また、コンピュータが読み出したプログラ
ムコードを実行することにより、前述した実施形態の機
能が実現されるだけでなく、そのプログラムコードの指
示に基づき、コンピュータ上で稼動しているOS(オペ
レーティングシステム)などが実際の処理の一部または
全部を行い、その処理によって前述した実施形態の機能
が実現される場合も含まれることは言うまでもない。
【0149】更に、記憶媒体から読み出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書き込まれた後、そのプログラムコードの指示
に基づき、その機能拡張ボードや機能拡張ユニットに備
わるCPUなどが実際の処理の一部または全部を行い、
その処理によって前述した実施形態の機能が実現される
場合も含まれることは言うまでもない。
【0150】また、実施形態ではレーザープリンタを例
にして説明したが、これに限るものではなく、いかなる
方式のプリンタにも適用できる。
【0151】このようにプログラムを格納した記憶媒体
で本発明を実現するには以下のようなプログラム工程が
必要となる。即ち、外部より入力された印刷データをバ
ンド単位で管理させる管理工程と、印刷処理モードを設
定させる設定工程と、前記印刷データに基づいてバンド
単位の出力データを描画生成する描画時間を導出させる
導出工程と、バンドの印刷データを格納する一次メモリ
を記憶手段に確保する確保工程と、前記設定工程で設定
された印刷処理モードに基づいて、前記印刷データのす
べてのバンドを格納する一次メモリを前記確保工程で確
保するか、前記導出工程で導出された前記描画時間が所
定値を超えるバンドを格納する一次メモリを前記確保工
程で確保するかを制御させる制御工程とを含むものであ
る。
【0152】以上の説明から明らかなように本発明によ
る印刷装置及び印刷制御方法及びプログラム記憶媒体
は、少ないメモリ容量で印刷できるバンディング処理に
おいてプリントオーバーランの起きる確率を非常に低く
押さえることができるという効果がある。
【0153】また、本発明の印刷装置及び印刷制御方法
及びプログラム記憶媒体は、強制オーバーラン回避フラ
グにより、確実にオーバーランを防ぐ処理が、別処理で
あるフルペイント処理を行わずにバンディング処理のみ
で実現できるため、プログラムROMを小さくすることが
でき、装置価格を下げることができるという効果があ
る。
【0154】また、本発明の印刷装置及び印刷制御方法
及びプログラム記憶媒体は、オーバーラン回避率を調整
することにより、現実的にはオーバーランを完全に防ぐ
ことが可能であり、かつフルペイント処理のように必要
以上に多くのメモリを使うことがないため、装置価格を
下げることができるという効果がある。
【0155】
【発明の効果】以上の説明から明らかなように本発明に
よる印刷装置及び印刷制御方法及びプログラム記憶媒体
は、少ないメモリ容量で印刷できるバンディング処理に
おいてプリントオーバーランの起きる確率を非常に低く
押さえることができるという効果がある。
【0156】また、本発明の印刷装置及び印刷制御方法
及びプログラム記憶媒体は、強制オーバーラン回避フラ
グにより、確実にオーバーランを防ぐ処理が、別処理で
あるフルペイント処理を行わずにバンディング処理のみ
で実現できるため、プログラムROMを小さくすることが
でき、装置価格を下げることができるという効果があ
る。
【0157】また、本発明の印刷装置及び印刷制御方法
及びプログラム記憶媒体は、オーバーラン回避率を調整
することにより、現実的にはオーバーランを完全に防ぐ
ことが可能であり、かつフルペイント処理のように必要
以上に多くのメモリを使うことがないため、装置価格を
下げることができるという効果がある。
【図面の簡単な説明】
【図1】本発明を適応可能な出力装置の構成を示す断面
図である。
【図2】本発明の実施例におけるプリンタ制御システム
の構成を説明するブロック図である。
【図3】本発明の実施例における中間データの構造及び
管理形式について説明した図である。
【図4】本発明の実施例における中間データ形式で格納
された印刷データを実際に印刷出力するときのバンドに
関する処理を説明した図である。
【図5】本発明の実施例における印刷出力処理の処理タ
イミングを説明したタイムチャートである。
【図6】本発明の実施例におけるプリントオーバーラン
を回避するための処理について説明した図である。
【図7】本発明の実施例におけるプリントオーバーラン
を回避するための処理における、一時的なバンドラスタ
を用いたレンダリング、印刷出力のタイミングについて
説明したタイムチャートである。
【図8】本発明の実施例におけるバンド圧縮を説明する
図である。
【図9】本発明の実施例におけるバンド圧縮処理に基づ
いてレンダリング、印刷出力を行なうタイミングを説明
するタイムチャートである。
【図10】本発明の実施例における1ページ印刷手順を
示したフローチャートである。
【図11】本発明の実施例におけるレンダリング時間計
算処理手順を示したフローチャートである。
【図12】本発明の実施例におけるレンダリング時間計
算の固定テーブル方式を説明する図である。
【図13】本発明の実施例におけるレンダリング時間計
算の実測方式の処理手順を示したフローチャートであ
る。
【図14】本発明の実施例におけるプリントオーバーラ
ン対策処理手順を示したフローチャートである。
【図15】本発明の実施例におけるバンド圧縮処理手順
を示したフローチャートである。
【図16】本発明の実施例における印刷出力手順を示し
たフローチャートである。
【図17】本発明の実施例2におけるプリンタ制御シス
テムの構成を説明するブロック図である。
【図18】本発明の実施例2におけるプリントオーバー
ラン対策処理手順を示したフローチャートである。

Claims (30)

    【特許請求の範囲】
  1. 【請求項1】 外部装置より入力された印刷データをバ
    ンド単位で管理する管理手段と、印刷処理モードを設定
    する設定手段と、前記印刷データに基づいてバンド単位
    の出力データを描画生成する描画時間を導出する導出手
    段と、バンドの印刷データを格納する一次メモリを記憶
    手段に確保する確保手段と、前記設定手段により設定さ
    れた印刷処理モードに基づいて、前記印刷データのすべ
    てのバンドを格納する一次メモリを前記確保手段で確保
    するか、前記導出手段により導出された前記描画時間が
    所定値を超えるバンドを格納する一次メモリを前記確保
    手段で確保するかを制御する制御手段とを有することを
    特徴とする印刷制御装置。
  2. 【請求項2】 出力データを格納する複数のバンド出力
    メモリと、前記印刷データに基づいて出力データを前記
    バンド出力メモリもしくは前記一次メモリに描画生成す
    る描画手段と、前記出力データを印刷する印刷手段とを
    更に有し、前記印刷手段は、バンド順序で印刷開始前に
    前記一次メモリに格納されている出力データを読み出
    し、前記一次メモリにバンド順序に対応するバンドの出
    力データがない場合は印刷開始後に前記描画手段により
    前記バンド出力メモリに描画生成された出力データを読
    み出して印刷することを特徴とする請求項1記載の印刷
    制御装置。
  3. 【請求項3】 前記設定手段は、前記外部装置より入力
    された命令により印刷処理モードを設定することを特徴
    とする請求項1記載の印刷制御装置。
  4. 【請求項4】 前記設定手段は、操作パネルにより設定
    されることを特徴とする請求項1記載の印刷制御装置。
  5. 【請求項5】 前記導出手段は、印刷データに基づいて
    生成された中間データから出力データを描画生成するた
    めの描画時間を、中間データの種類に応じて導出するこ
    とを特徴とする請求項1記載の印刷制御装置。
  6. 【請求項6】 前記導出手段は、前記中間データの種類
    により、レンダリング時間対応テーブルの検索による導
    出、中間データのサイズによる導出、レンダリング時間
    を実測する導出のなかから導出方法を切り替えてレンダ
    リング時間を導出することを特徴とする請求項5記載の
    印刷制御装置。
  7. 【請求項7】 出力データを圧縮する圧縮手段と、前記
    圧縮手段により圧縮された出力データを伸長する伸長手
    段とを更に有し、前記導出手段により導出された前記描
    画時間が所定時間を超えるバンドを格納する一次メモリ
    を前記確保手段で前記記憶手段に確保できない場合に、
    該バンドを前記描画手段により描画生成された出力デー
    タを前記圧縮手段により圧縮して前記一次メモリに格納
    することを特徴とする請求項2記載の印刷制御装置。
  8. 【請求項8】 前記圧縮手段により圧縮された出力デー
    タを格納する前記一次メモリに確保できない場合に、前
    記印刷手段により出力データの印刷を始めることを特徴
    とする請求項7記載の印刷制御装置。
  9. 【請求項9】 前記制御手段は、前記記憶手段に一次メ
    モリを確保できなくなるか、印刷データに対する一次メ
    モリの確保が終わるまで、順次印刷ページを進めて制御
    することを特徴とする請求項1乃至8記載の印刷制御装
    置。
  10. 【請求項10】 前記所定値を入力された命令に基づい
    て変更する変更手段を更に有していることを特徴とする
    請求項1記載の印刷制御装置。
  11. 【請求項11】 外部より入力された印刷データをバン
    ド単位で管理させる管理工程と、印刷処理モードを設定
    させる設定工程と、前記印刷データに基づいてバンド単
    位の出力データを描画生成する描画時間を導出させる導
    出工程と、バンドの印刷データを格納する一次メモリを
    記憶手段に確保する確保工程と、前記設定工程で設定さ
    れた印刷処理モードに基づいて、前記印刷データのすべ
    てのバンドを格納する一次メモリを前記確保工程で確保
    するか、前記導出工程で導出された前記描画時間が所定
    値を超えるバンドを格納する一次メモリを前記確保工程
    で確保するかを制御させる制御工程とを含むことを特徴
    とする印刷制御方法。
  12. 【請求項12】 前記印刷データに基づいて出力データ
    をバンド出力メモリもしくは前記一次メモリに描画生成
    させる描画工程と、前記出力データを印刷手段により印
    刷させる印刷工程とを更に有し、前記印刷工程は、バン
    ド順序で印刷開始前に前記一次メモリに格納されている
    出力データを読み出し、前記一次メモリにバンド順序に
    対応するバンドの出力データがない場合は印刷開始後に
    前記描画工程で前記バンド出力メモリに描画生成された
    出力データを読み出して印刷させることを特徴とする請
    求項11記載の印刷制御方法。
  13. 【請求項13】 前記設定工程は、前記外部装置より入
    力された命令により印刷処理モードを設定させることを
    特徴とする請求項11記載の印刷制御方法。
  14. 【請求項14】 前記設定工程は、操作パネルにより設
    定されることを特徴とする請求項11記載の印刷制御方
    法。
  15. 【請求項15】 前記導出工程は、印刷データに基づい
    て生成された中間データから出力データを描画生成する
    ための描画時間を、中間データの種類に応じて導出させ
    ることを特徴とする請求項11記載の印刷制御方法。
  16. 【請求項16】 前記導出工程は、前記中間データの種
    類により、レンダリング時間対応テーブルの検索による
    導出、中間データのサイズによる導出、レンダリング時
    間を実測する導出のなかから導出方法を切り替えてレン
    ダリング時間を導出することを特徴とする請求項15記
    載の印刷制御方法。
  17. 【請求項17】 出力データを圧縮する圧縮工程と、前
    記圧縮工程で圧縮された出力データを伸長する伸長工程
    とを更に含み、前記導出工程で導出された前記描画時間
    が所定時間を超えるバンドを格納する一次メモリを前記
    確保工程で前記記憶手段に確保できない場合に、該バン
    ドを前記描画工程で描画生成された出力データを前記圧
    縮工程で圧縮して前記一次メモリに格納させることを特
    徴とする請求項12記載の印刷制御方法。
  18. 【請求項18】 前記圧縮工程で圧縮された出力データ
    を格納する前記一次メモリに確保できない場合に、前記
    印刷手段に出力データの印刷を始めさせることを特徴と
    する請求項17記載の印刷制御方法。
  19. 【請求項19】 前記制御工程は、前記記憶手段に一次
    メモリを確保できなくなるか、印刷データに対する一次
    メモリの確保が終わるまで、順次印刷ページを進めて制
    御させることを特徴とする請求項11乃至18記載の印
    刷制御方法。
  20. 【請求項20】 前記所定値を入力された命令に基づい
    て変更する変更工程を更に含んでいることを特徴とする
    請求項11記載の印刷制御方法。
  21. 【請求項21】 外部より入力された印刷データをバン
    ド単位で管理させる管理工程と、印刷処理モードを設定
    させる設定工程と、前記印刷データに基づいてバンド単
    位の出力データを描画生成する描画時間を導出させる導
    出工程と、バンドの印刷データを格納する一次メモリを
    記憶手段に確保する確保工程と、前記設定工程で設定さ
    れた印刷処理モードに基づいて、前記印刷データのすべ
    てのバンドを格納する一次メモリを前記確保工程で確保
    するか、前記導出工程で導出された前記描画時間が所定
    値を超えるバンドを格納する一次メモリを前記確保工程
    で確保するかを制御させる制御工程とを含むことを特徴
    とするコンピュータ読み取り可能なプログラムが格納さ
    れた記憶媒体。
  22. 【請求項22】 前記印刷データに基づいて出力データ
    をバンド出力メモリもしくは前記一次メモリに描画生成
    させる描画工程と、前記出力データを印刷手段により印
    刷させる印刷工程とを更に有し、前記印刷工程は、バン
    ド順序で印刷開始前に前記一次メモリに格納されている
    出力データを読み出し、前記一次メモリにバンド順序に
    対応するバンドの出力データがない場合は印刷開始後に
    前記描画工程で前記バンド出力メモリに描画生成された
    出力データを読み出して印刷させることを特徴とする請
    求項21記載のプログラム記憶媒体。
  23. 【請求項23】 前記設定工程は、前記外部装置より入
    力された命令により印刷処理モードを設定させることを
    特徴とする請求項21記載のプログラム記憶媒体。
  24. 【請求項24】 前記設定工程は、操作パネルにより設
    定されることを特徴とする請求項21記載のプログラム
    記憶媒体。
  25. 【請求項25】 前記導出工程は、印刷データに基づい
    て生成された中間データから出力データを描画生成する
    ための描画時間を、中間データの種類に応じて導出させ
    ることを特徴とする請求項21記載のプログラム記憶媒
    体。
  26. 【請求項26】 前記導出工程は、前記中間データの種
    類により、レンダリング時間対応テーブルの検索による
    導出、中間データのサイズによる導出、レンダリング時
    間を実測する導出のなかから導出方法を切り替えてレン
    ダリング時間を導出することを特徴とする請求項25記
    載のプログラム記憶媒体。
  27. 【請求項27】 出力データを圧縮する圧縮工程と、前
    記圧縮工程で圧縮された出力データを伸長する伸長工程
    とを更に含み、前記導出工程で導出された前記描画時間
    が所定時間を超えるバンドを格納する一次メモリを前記
    確保工程で前記記憶手段に確保できない場合に、該バン
    ドを前記描画工程で描画生成された出力データを前記圧
    縮工程で圧縮して前記一次メモリに格納させることを特
    徴とする請求項22記載のプログラム記憶媒体。
  28. 【請求項28】 前記圧縮工程で圧縮された出力データ
    を格納する前記一次メモリに確保できない場合に、前記
    印刷手段に出力データの印刷を始めさせることを特徴と
    する請求項27記載のプログラム記憶媒体。
  29. 【請求項29】 前記制御工程は、前記記憶手段に一次
    メモリを確保できなくなるか、印刷データに対する一次
    メモリの確保が終わるまで、順次印刷ページを進めて制
    御させることを特徴とする請求項21乃至28記載のプ
    ログラム記憶媒体。
  30. 【請求項30】 前記所定値を入力された命令に基づい
    て変更する変更工程を更に含んでいることを特徴とする
    請求項21記載のプログラム記憶媒体。
JP05195398A 1998-03-04 1998-03-04 印刷制御装置及び印刷制御方法及びプログラム記憶媒体 Expired - Fee Related JP3957859B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05195398A JP3957859B2 (ja) 1998-03-04 1998-03-04 印刷制御装置及び印刷制御方法及びプログラム記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05195398A JP3957859B2 (ja) 1998-03-04 1998-03-04 印刷制御装置及び印刷制御方法及びプログラム記憶媒体

Publications (2)

Publication Number Publication Date
JPH11249833A true JPH11249833A (ja) 1999-09-17
JP3957859B2 JP3957859B2 (ja) 2007-08-15

Family

ID=12901249

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05195398A Expired - Fee Related JP3957859B2 (ja) 1998-03-04 1998-03-04 印刷制御装置及び印刷制御方法及びプログラム記憶媒体

Country Status (1)

Country Link
JP (1) JP3957859B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8446628B2 (en) 2009-02-05 2013-05-21 Kyocera Document Solutions Inc. Image forming apparatus and image forming method having improved rendering

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8446628B2 (en) 2009-02-05 2013-05-21 Kyocera Document Solutions Inc. Image forming apparatus and image forming method having improved rendering

Also Published As

Publication number Publication date
JP3957859B2 (ja) 2007-08-15

Similar Documents

Publication Publication Date Title
US6369910B1 (en) Printing apparatus and image processing method
US6304336B1 (en) Output control device and image processing apparatus and method and storage medium
JPH10147018A (ja) 印刷装置及びメモリ管理方式
US6124943A (en) Printing apparatus and method for managing print data in units of a band
US6914692B1 (en) Printing control apparatus, data processing method for printing control apparatus, and storage medium storing computer-readable program
JPH08224917A (ja) 印刷装置及びデータ制御方法
JP4343461B2 (ja) 印刷装置及びその制御方法
US6819447B1 (en) Print control apparatus, print control method, and memory medium
JPH10222319A (ja) 印刷装置及び印刷制御方法
JPH09234910A (ja) 画像処理装置及び方法
JP3957859B2 (ja) 印刷制御装置及び印刷制御方法及びプログラム記憶媒体
EP0510932B1 (en) Method and apparatus for printer control
JPH07178972A (ja) 画像記録装置及び方法
JPH1086451A (ja) 画像処理装置
JP2981400B2 (ja) 印刷装置および印刷装置のデータ処理方法
JP2001146049A (ja) プリンタシステム及びそれを用いた描画処理方法及び描画処理を行うプログラムを記録した記録媒体
JP2003039744A (ja) 印刷装置及びその制御方法
JP2001088366A (ja) 画像形成装置及び画像形成方法
JPH07137355A (ja) 画像処理装置
JP3211711B2 (ja) 描画装置、描画方法、プリンタおよび画像表示装置
JP2001325086A (ja) 印刷制御装置、データ格納方法、及び記憶媒体
JP3428817B2 (ja) 印字制御装置及び方法
JPH09272231A (ja) 出力装置および出力装置のデータ処理方法およびコンピュータが読むことができるプログラムを格納した記憶媒体
JP2001146047A (ja) 印刷制御装置並びに印刷制御装置の印刷データ処理方法および記憶媒体
JP2003039747A (ja) 画像形成装置およびその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040610

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060905

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061106

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: 20070508

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070509

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: 20100518

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110518

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120518

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120518

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130518

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140518

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees