JPH09240075A - 印刷装置とその方法及び印刷システム - Google Patents

印刷装置とその方法及び印刷システム

Info

Publication number
JPH09240075A
JPH09240075A JP8055845A JP5584596A JPH09240075A JP H09240075 A JPH09240075 A JP H09240075A JP 8055845 A JP8055845 A JP 8055845A JP 5584596 A JP5584596 A JP 5584596A JP H09240075 A JPH09240075 A JP H09240075A
Authority
JP
Japan
Prior art keywords
image data
page
compressed
data
block
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.)
Withdrawn
Application number
JP8055845A
Other languages
English (en)
Inventor
Yoji Furuya
陽二 古谷
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 JP8055845A priority Critical patent/JPH09240075A/ja
Publication of JPH09240075A publication Critical patent/JPH09240075A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

(57)【要約】 【課題】オーバーレイ印刷を安価に実現する。 【解決手段】ホスト1からはページごとに圧縮されたイ
メージデータがプリンタに送られる。プリンタ100で
は、受信バッファ9にページごとに格納する。オーバー
レイ印刷を行う場合には、オーバーレイする2つのペー
ジのイメージデータを、伸長回路13でバンドごとに伸
長し、バンドメモリで重ね合わせてから再び圧縮回路1
4で圧縮する。圧縮されたイメージデータは、再びペー
ジごとまとめられて受信バッファに格納される。こうし
て生成したオーバーレイイメージを、イメージ伸張・ビ
デオ転送回路6によりエンジン部3に送り、用紙に印刷
出力する。オーバーレイにかぎらず、複数ページを1ペ
ージに縮小して出力する処理も、バンド単位で行うこと
ができる。こうして、通常のイメージプリンタにわずか
な回路を付加して、オーバーレイプリントが可能とな
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、例えばホストコン
ピュータから送られてくるイメージデータ等を加工して
出力する印刷装置とその方法及び印刷システム及びコン
ピュータ可読メモリに関するものである。
【0002】
【従来の技術】従来、イメージ出力に特化したページプ
リンタは「ホストベースプリンタ」と呼ばれている。
【0003】この種のプリンタでは、ホストコンピュー
タ上で展開した1ページ分のイメージデータを、ページ
先頭から次々に圧縮してプリンタのコントローラ部に送
り、コントローラ部は送られてくる圧縮データを次々に
伸長し、伸長したデータをビデオ信号に変換して、エン
ジン部の排紙のタイミングに同期させて、エンジン部に
出力する。これによって、1ページ分の用紙の印刷を行
なう。
【0004】通常、コントローラ部の持っている受信バ
ッファは、1ページ分の何分の一かの大きさしかなく、
このため、ホストコンピュータから送るデータと、エン
ジンの用紙排出のタイミングは、厳密に同期させる必要
がある。つまり、印刷処理が始まると、特に能力の低い
ホストコンピュータでは、印刷データの送信に専念し
て、他のアプリケーションの動作がロックするという欠
点もある。
【0005】一方、圧縮されたイメージデータのビデオ
信号への変換と、エンジン部へのビデオ信号出力は、ハ
ードウェア回路が行なう仕組となっており、極端に言え
ば、コントローラ部には、CPUも不要であり、非常に
安価なページプリンタが実現可能という長所もある。
【0006】
【発明が解決しようとする課題】しかしながら、上記従
来例の「ホストベースプリンタ」では、1ページのイメ
ージを単純に1枚の用紙に印刷する役目しかない。例え
ば、PDL(ページ記述言語)搭載のプリンタでは可能
となっている、「オーバーレイ印刷」や「2ページ印
刷」「4ページ印刷」といった「複数ページ印刷」など
はできない。「オーバーレイ印刷」とは、表の枠などを
登録しておき、それを各ページの文書データに重ね書き
して用紙出力する機能である。複数ページ印刷とは、例
えば「2ページ印刷」「4ページ印刷」ならば、1ペー
ジの用紙内にそれぞれ2ページ分のページを印刷、4ペ
ージ分のページを印刷する機能である。
【0007】仮に、「ホストベースプリンタ」で、「オ
ーバーレイ印刷」や、「2ページ印刷」「4ページ印
刷」を行なおうとすると、ホストコンピュータ上で、最
終的な形まで、重ね書きの各ページの用紙イメージや、
「2ページ印刷」「4ページ印刷」の用紙イメージを完
成させてから、プリンタにイメージデータを送らなけれ
ばならない。つまり、「ホストベースプリンタ」では、
プリンタ本体では、イメージデータの内容の加工は行な
えないのである。
【0008】本発明は上記従来例に鑑みてなされたもの
で、本発明の第1の目的は、イメージ専用の単純な構成
でありながら、オーバーレイ印刷処理を可能にした印刷
装置及びその制御方法を提供することにある。
【0009】また、第2の目的は、イメージ専用の単純
な構成でありながら、複数ページ同時印刷処理を可能に
した印刷装置及びその制御方法を提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するた
め、本出願の印刷装置は次のような構成から成る。すな
わち、ページごとのイメージデータを各ページの属性と
ともに受信する受信手段と、前記属性により特定される
ページのイメージデータを所定サイズのブロックに分割
し、当該ブロックと、他方のページのイメージデータに
おいて前記ブロックに対応するブロックとを合成する合
成手段と、前記合成手段を制御して、1ページ分のイメ
ージデータを合成するまで、前記合成手段によるブロッ
クごとの合成を繰り返す制御手段と、前記合成手段によ
り合成された1ページ分ごとのイメージデータを、1枚
ごとの印刷媒体上に印刷出力する出力手段とを備える。
【0011】あるいは、ページごとのイメージデータを
各ページの属性とともに受信する受信手段と、前記属性
により特定されるページのイメージデータを所定サイズ
のブロックに分割し、当該ブロックと、他のページのイ
メージデータにおいて前記ブロックに対応するブロック
とを所定の規則で配置する再配置手段と、前記再配置手
段を制御して、各1ページ分のイメージデータを再配置
するまで、前記再配置手段によるブロックごとの再配置
を繰り返す制御手段と、前記再配置手段により再配置さ
れたイメージデータを、1ページのサイズに縮小する縮
小手段と、前記縮小手段により縮小された1ページ分ご
とのイメージデータを、1枚ごとの印刷媒体上に印刷出
力する出力手段とを備える。
【0012】また、本発明の印刷方法はつぎのような構
成から成る。すなわち、ページごとのイメージデータを
各ページの属性とともに受信する受信工程と、前記属性
により特定されるページのイメージデータを所定サイズ
のブロックに分割し、当該ブロックと、他方のページの
イメージデータにおいて前記ブロックに対応するブロッ
クとを合成する合成工程と、前記合成工程を制御して、
1ページ分のイメージデータを合成するまで、前記合成
工程によるブロックごとの合成を繰り返す制御工程と、
前記合成工程により合成された1ページ分ごとのイメー
ジデータを、1枚ごとの印刷媒体上に印刷出力する出力
工程とを備える。
【0013】あるいは、ページごとのイメージデータを
各ページの属性とともに受信する受信工程と、前記属性
により特定されるページのイメージデータを所定サイズ
のブロックに分割し、当該ブロックと、他のページのイ
メージデータにおいて前記ブロックに対応するブロック
とを所定の規則で配置する再配置工程と、前記再配置工
程を制御して、各1ページ分のイメージデータを再配置
するまで、前記再配置工程によるブロックごとの再配置
を繰り返す制御工程と、前記再配置工程により再配置さ
れたイメージデータを、1ページのサイズに縮小する縮
小工程と、前記縮小工程により縮小された1ページ分ご
とのイメージデータを、1枚ごとの印刷媒体上に印刷出
力する出力工程とを備える。
【0014】また、本発明の印刷システムは次のような
構成から成る。すなわち、ホスト装置とページプリンタ
装置とで構成された印刷システムであって、前記ホスト
装置は、ページ単位のイメージデータを圧縮する手段
と、前記圧縮されたイメージデータを印刷命令に変換す
る手段と、前記印刷命令を前記プリンタ装置に送出する
手段とを備え、前記プリンタ装置は、前記ホスト装置か
らの印刷命令を受信する手段と、前記印刷命令内の圧縮
されたページ単位のイメージデータを、1ページ内で複
数のバンド単位に分割して、個々のバンド部分のイメー
ジデータを伸長する手段と、前記伸長されたバンド部分
のイメージデータの上に別のページの同じバンド位置の
イメージデータを伸長して重ね書きする手段と、前記重
ね書きされたイメージデータをデータ圧縮する手段と、
前記バンドごとの伸長と重ね書きと圧縮とを繰り返して
データ圧縮されたオーバーレイページデータを作成する
手段と、前記圧縮されたページ単位のイメージデータを
印刷出力する手段とを備える。
【0015】あるいは、ホスト装置とページプリンタ装
置とで構成された印刷システムであって、前記ホスト装
置は、ページ単位のイメージデータを圧縮する手段と、
前記圧縮されたイメージデータを印刷命令に変換する手
段と、前記印刷命令を前記プリンタ装置に送出する手段
とを備え、前記プリンタ装置は、前記ホスト装置からの
印刷命令を受信する手段と、前記印刷命令内の圧縮され
たページ単位のイメージデータを、1ページ内で複数の
バンド単位に分割して、個々のバンド部分のイメージデ
ータをデータ伸長し所定位置に展開する第1の展開手段
と、前記所定位置と隣接する位置に、別のページの同じ
バンド位置のイメージデータを伸長して展開する第2の
展開手段と、前記第1及び第2の展開手段により展開さ
れたイメージを、1ページの用紙幅に合わせて縮小する
手段と、前記縮小されたイメージをデータ圧縮する手段
と、前記バンドごとのデータ伸長とイメージ縮小とデー
タ圧縮を繰り返して、データ圧縮された同一ページへの
複数ページ分のイメージを形成する手段と、前記圧縮さ
れたページ単位のイメージデータを印刷出力する手段と
を備える。
【0016】また、本発明のコンピュータ可読メモリは
次のような構成から成る。すなわち、印刷手順を実現す
るプログラムを格納するコンピュータ可読メモリであっ
て、ページごとのイメージデータを各ページの属性とと
もに受信する受信工程のコードと、前記属性により特定
されるページのイメージデータを所定サイズのブロック
に分割し、当該ブロックと、他方のページのイメージデ
ータにおいて前記ブロックに対応するブロックとを合成
する合成工程のコードと、前記合成工程を制御して、1
ページ分のイメージデータを合成するまで、前記合成工
程によるブロックごとの合成を繰り返す制御工程のコー
ドと、前記合成工程により合成された1ページ分ごとの
イメージデータを、1枚ごとの印刷媒体上に印刷出力す
る出力工程のコードととを備える。
【0017】あるいは、印刷手順を実現するプログラム
を格納するコンピュータ可読メモリであって、ページご
とのイメージデータを各ページの属性とともに受信する
受信工程のコードと、前記属性により特定されるページ
のイメージデータを所定サイズのブロックに分割し、当
該ブロックと、他のページのイメージデータにおいて前
記ブロックに対応するブロックとを所定の規則で配置す
る再配置工程のコードと、前記再配置工程を制御して、
各1ページ分のイメージデータを再配置するまで、前記
再配置工程によるブロックごとの再配置を繰り返す制御
工程のコードと、前記再配置工程により再配置されたイ
メージデータを、1ページのサイズに縮小する縮小工程
のコードと、前記縮小工程により縮小された1ページ分
ごとのイメージデータを、1枚ごとの印刷媒体上に印刷
出力する出力工程のコードとを備える。
【0018】
【発明の実施の形態】
[第1の実施形態]次に、図を用いて、第1の実施形態
を説明する。 <印刷システムの構成>図1は、システム全体を説明す
るためのブロック構成図である。ホストコンピュータ1
は、圧縮されたイメージデータを出力するパーソナルコ
ンピュータである。ホストコンピュータ1はCPU10
1により制御され、プリンタインターフェース102を
介してプリンタ100に接続され、ディスプレイインタ
ーフェース105を介してディスプレイ200に接続さ
れている。また、ホストコンピュータ1は、データやプ
ログラムを格納しておくための2次記憶装置104や、
プログラムの実行領域としてのランダムアクセスメモリ
(以下、RAMと呼ぶ)103を有している。
【0019】プリンタ100はホストコンピュータ1に
接続され、コントローラ部2及びエンジン部3により構
成されている。コントローラ部2は、ホストコンピュー
タ1から送られてくるイメージデータを受信し、イメー
ジを加工して、加工したデータからビデオ信号を生成
し、エンジン部3に送る役目を負っている。エンジン部
3は、コントローラ部2から受け取ったビデオ信号を用
紙に転写して印刷し、排紙する役目を持つ。
【0020】コントローラ部2は、コントローラ部2全
体を制御する中央処理装置(以下、CPUと呼ぶ)4、
CPU4による処理動作を記述したプログラムの入って
いるリード・オンリ・メモリ(以下、ROMと呼ぶ)
7、ランダム・アクセス・メモリ(以下、RAMと呼
ぶ)8、ホスト1からイメージデータを受信し、受信し
たデータをRAM8内にある受信バッファ9にセットす
る受信部5、受信バッファ9内のイメージデータを伸長
してビデオ信号に変換して、エンジン部3に出力するイ
メージ伸長・ビデオ転送回路6、等で構成されている。
【0021】その他、RAM8内には、「オーバーレイ
処理」の際に用いる、圧縮イメージのバンドの展開領域
としてのバンドメモリ10、プログラムのワーク領域1
1、さらにその中には、受信バッファ9に受信したペー
ジごとのイメージデータを管理するための管理表12が
含まれている。
【0022】また、「オーバーレイ処理」の際には、受
信バッファ9内の圧縮されたイメージデータは、イメー
ジ伸長回路13でバンドメモリ10に展開され、また、
別のページのイメージデータも、イメージ伸長回路13
で同じバンドメモリ10に展開されて重ね書きされ、バ
ンド単位の重ね書きが行なわれる。そして、その重ね書
きされたバンドは、イメージ圧縮回路14でデータ圧縮
され、受信バッファ9に書き出される。
【0023】コントローラ部2のCPU4は、RAM8
の内部の受信バッファ9や管理表12など、メモリ管理
を行なうだけなので、処理能力のそれほど高くない安価
な製品で良い。
【0024】次に、エンジン部3の説明を行なう。エン
ジン部3にもCPU15やメモリ16があり、メモリ1
6には制御プログラムの入ったROM17や、プログラ
ムのワーク領域としてのRAM18が含まれる。ビデオ
受信部19は、コントローラ部2からのビデオ信号を受
信し、現像定着部21で用紙に画像を転写する。給紙部
20は、未使用の白い用紙を用紙カセット等から取り込
む役目をし、現像定着部21は、上述のように用紙に画
像を転写して定着し、排紙部22は印刷済みの用紙を排
出する。
【0025】なお、太い矢印は、イメージデータやビデ
オ信号の流れ、あるいは、エンジン部3では、用紙の流
れを示している。また、コントローラ部2のCPU4
と、エンジン部3のCPU15は、互いに情報のやり取
りを行なう。印刷処理の制御にかかわるやり取りであ
る。
【0026】図29は、エンジン部3として用いること
のできるレーザビームプリンタ(以下、LBPと略す)
の内部構造を示す断面図で、このLBPは、文字パター
ンデータ等を入力して記録紙に印刷することができる。
【0027】図において、740はLBP本体であり、
供給される文字パターン等を基に、記録媒体である記録
紙上に像を形成する。700は操作のためのスイツチ及
びLED表示器などが配されている操作パネル、701
はLBP740全体の制御及び文字パターン情報等を解
析するプリンタ制御ユニツトである。このプリンタ制御
ユニツト701は主に文字パターン情報をビデオ信号に
変換してレーザドライバ702に出力する。この例で
は、図1で説明したコントローラ部2とエンジン部3の
制御部がこのプリンタ制御ユニット701に相当する。
【0028】レーザドライバ702は半導体レーザ70
3を駆動するための回路であり、入力されたビデオ信号
に応じて半導体レーザ703から発射されるレーザ光7
04をオン・オフ切替えする。レーザ光704は回転多
面鏡705で左右方向に振られて静電ドラム706上を
走査する。これにより、静電ドラム706上には文字パ
ターンの静電潜像が形成される。この潜像は静電ドラム
706周囲の現像ユニツト707により現像された後、
記録紙に転写される。この記録紙にはカツトシートを用
い、カツトシート記録紙はLBP740に装着した用紙
カセツト708に収納され、給紙ローラ709及び搬送
ローラ710と711とにより装置内に取込まれて、静
電ドラム706に供給される。
【0029】尚、本実施形態のエンジン部としては、レ
ーザビームプリンタに限定されるものでなく、以下で説
明するインクジェットプリンタ等も適応可能である。
【0030】図30は、インクジェット記録装置IJR
Aの概観図である。同図において、駆動モータ5013
の正逆回転に連動して駆動力伝達ギア5011,500
9を介して回転するリードスクリュー5005の螺旋溝
5004に対して係合するキャリッジHCはピン(不図
示)を有し、矢印a,b方向に往復移動される。このキ
ャリッジHCには、インクジェットカートリッジIJC
が搭載されている。5002は紙押え板であり、キャリ
ッジの移動方向に亙って紙をプラテン5000に対して
押圧する。5007,5008はフォトカプラで、キャ
リッジのレバー5006のこの域での存在を確認して、
モータ5013の回転方向切り換え等を行うためのホー
ムポジション検知手段である。5016は記録ヘッドの
前面をキャップするキャップ部材5022を支持する部
材で、5015はこのキャップ内を吸引する吸引手段
で、キャップ内開口5023を介して記録ヘッドの吸引
回復を行う。5017はクリーニングブレードで、50
19はこのブレードを前後方向に移動可能にする部材で
あり、本体支持板5018にこれらが支持されている。
ブレードは、この形態でなく周知のクリーニングブレー
ドが本例に適用できることは言うまでもない。又、50
21は、吸引回復の吸引を開始するためのレバーで、キ
ャリッジと係合するカム5020の移動に伴って移動
し、駆動モータからの駆動力がクラッチ切り換え等の公
知の伝達手段で移動制御される。
【0031】これら以外にも、イメージ出力可能な方式
であればエンジン部3として適用できる。 <印刷処理手順の概要>図2は、通常の単純なイメージ
ページを出力する際の、データの流れを説明するための
図である。ホスト1から受信部5で圧縮されたイメージ
データを受け取り、受信バッファ9に1ページ目,2ペ
ージ目,…のイメージデータを貯蔵する。そして、イメ
ージ伸長・ビデオ転送回路6は、先頭ページからデータ
を取り込んで、ビデオデータに変換して、エンジン部3
へビデオ転送する。これで、単純なイメージページの印
刷が実行される。
【0032】図3は、「オーバーレイ処理」の際の、デ
ータの流れを説明するための説明図である。ホスト1か
ら圧縮されたイメージデータが2ページ分送られる。こ
の際、1ページ目が重ね書き用のオーバーレイページ、
2ページ目が本文に相当する。ホスト1から送られた2
ページ分のデータは、受信部5により受信バッファ9に
セットされる。1ページを複数のバンドに分割したと仮
定して、ページ先頭から1ページ目のあるバンド位置の
データを、イメージ伸長回路13でバンドメモリ10に
展開し、同じく、2ページ目の同一バンド位置にあるデ
ータを、イメージ伸長回路13でバンドメモリ10に重
ね書きする。これであるバンド位置の重ね書きが完了す
る。このデータをイメージ圧縮回路14で縮小し、受信
バッファの空き領域にセットする。このバンドごとの重
ね書き処理を繰り返すことで、受信バッファ上に、1ペ
ージ目、2ページ目の重ね書きページが、作成される。
なお、本実施形態においては、重ね書きとは、既に書か
れているデータを別のデータで書き直すという意味では
なく、既に書かれているデータに重ね合わせてデータを
書き込むことを意味している。例えば、2値画像であれ
ば、既に書かれているデータと重ね書きしようとするデ
ータとの論理和を対応画素ごとに計算し、それを重ね書
きされたデータとすれば良い。また、多値画像であれ
ば、重ね書きされるデータとするデータとの対応画素同
士の和を計算し、桁あふれが生じたならその画素は最大
階調とするようにすればよい。あるいは、画像に重複が
生じた場合には、前景となる画像と背景となる画像とを
予め定めておき、前記となる画像を優先するということ
もでできる。
【0033】そして、この重ね書きされたページが、イ
メージ伸長・ビデオ転送回路6で、エンジン部3へビデ
オ信号が出力され、オーバーレイ印刷が完了する。実際
にユーザが使用するときは、本文が複数ページあり、2
ページ目,3ページ目,…の各ページに、重ね書き用の
1ページ目が重ね書きされて印刷されることになるが、
ここでは、説明のために、2ページ分のデータに限定し
て図示した。
【0034】図4は、ホスト1からプリンタ100へ送
られるイメージデータのコマンド構造の説明図である。
先頭には、ページ開始コマンド31、次に1ページ目の
イメージの圧縮データ33、さらに、ページ開始コマン
ド31、2ページ目のイメージの圧縮データ33、と各
ページが続き、最後にジョブ終了コマンド34で終わ
る。
【0035】図5は、各コマンドの具体的なコードの説
明図である。単純なページの開始コマンド31は、先頭
に00hがあり、その後に01hが4バイト続く。
【0036】オーバーレイのジョブのページ開始コマン
ド32は、先頭に00hがあり、その後に02hが4バ
イト続く。オーバーレイジョブの場合は、各ページのペ
ージ開始のコマンドは、全て、上記オーバーレイの場合
のページ開始コマンド32になる。そして、1ページ目
のイメージデータが重ね書き用のページであり、2ペー
ジ目以降が本文ページであって、重ね書き用の1ページ
目のイメージが、2ページ目以降の各ページに重ね書き
で印刷されることになる。
【0037】イメージの圧縮データ33は、パックビッ
ツ方式など、連続した4バイトのコードは有り得ない圧
縮方式を用いる。パックビッツ圧縮方式については、公
知の技術なので、ここでは改めて説明することは省く。
【0038】最後に、ジョブ終了コマンド34は、先頭
が00hでその後に08hが4バイト続く。
【0039】また、ホスト1が、途中まで転送したイメ
ージデータを何らかの理由で印刷したくない時は、ホス
ト1は、コマンドの最後を表わすジョブ終了コマンド3
4の代わりに、ジョブクリアコマンド35を付ける。ジ
ョブクリアコマンド35は、先頭が00hでその後09
hが4バイト続く。
【0040】図6は、コントローラ部2のROM7に内
蔵されているプログラムを説明するための図である。受
信バッファ管理プログラム41は、受信バッファ9に貯
蔵される各ページのイメージデータを管理表12を用い
て管理する。また、受信部5への、受信データの受信バ
ッファ9上の書き込む位置の指示も行なう。
【0041】排紙処理プログラム42は、受信バッファ
9に貯蔵されている各ページのイメージデータを、イメ
ージ伸長・ビデオ転送回路6を用いて、エンジン部3へ
ビデオ出力する動作を行なう。
【0042】なお、この二つのプログラムは、プリンタ
の電源オンと同時に立ち上がり、ホスト1からデータ送
信を待ち構えることになる。以後プリンタの電源オフま
で、ふたつのプログラムは、マルチタスクで動作を続け
る。
【0043】図7は、管理表12の構造を説明するため
の図である。
【0044】この表では、番号51が、1から100ま
でふられていて、最大100ページ分の受信したイメー
ジデータが管理できることになっている。
【0045】開始位置52は、各ページのデータの受信
バッファ9上の開始アドレスを示している。種別53
は、その番号のデータが、単純ページか、オーバーレイ
ジョブのページか、あるいは、ジョブの区切りかを区別
するためのものである。種別53の値は、単純ページの
場合は1、オーバーレイジョブのページの場合は2、ジ
ョブの区切りの場合は−1である。また、データがない
ときは0である。
【0046】受信状態54の項目は、そのページデータ
が、受信を完了したものか、受信中なのかを区別するも
ので、受信完了なら1、受信中なら0である。
【0047】図8は、受信部5の動作の説明図である。
受信部5の中には、受信を高速化するために、4バイト
のFIFO(ファーストイン・ファーストアウト)バッ
ファが内蔵されており、ホスト1から送られてくるイメ
ージデータは一旦このFIFOバッファに貯えられてか
ら、受信バッファ管理プログラム41から指示された受
信バッファ9上の書き込み位置へ書き込まれる。
【0048】次に順を追って受信動作を説明するが、受
信部5はハードウェア回路で構成された電子回路であ
り、プログラムをCPU4が処理して具体的な受信動作
をさせているわけではない。よって、高速に受信動作が
行なえる構造になっている。
【0049】図8において、まず、1)で、ホスト1か
ら1バイトデータ01hが送られてくる。すると、受信
部5は、FIFOバッファの3の位置にその1バイトを
セットする。
【0050】次に2)で、ホスト1から2バイト目のデ
ータ02hが送られてくる。FIFOバッファ上の3の
位置にあった01hを、2の位置に移動して、送られて
きた02hのデータを3の位置にセットする。そして、
2の位置の01hと3の位置の02hを比較する。両者
は一致しないので、2の位置の01hを受信バッファに
書き込み、2の位置の01hのデータを削除する。
【0051】3)では、3の位置にあった02hを2の
位置に移動して、新しくホスト1から送られてきた1バ
イトデータ03hを3の位置にセットする。そして、2
の位置の02hと3の位置の03hを比較する。両者は
一致しないので、2の位置の02hを受信バッファに書
き込み、2の位置の02hデータを削除する。
【0052】4)では、3の位置にあった03hを2の
位置に移動して、新しくホスト1から送られてきた1バ
イトデータ03hを3の位置にセットする。そして、2
の位置の03hと3の位置の03hを比較する。両者は
一致するので何もしない。
【0053】5)では、2の位置、3の位置にあった0
3hを、それぞれ1の位置、2の位置に移動して、ホス
ト1から新たに送られてきた1バイトデータの03hを
3の位置にセットする。そして、2の位置の03hと3
の位置の03hを比較する。両者は一致したので何もし
ない。
【0054】6)では、1の位置、2の位置、3の位置
にあった03hを、それぞれ0の位置、1の位置、2の
位置に移動して、ホスト1から新たに送られてきた1バ
イトの04hを3の位置にセットする。そして、2の位
置の03hと3の位置の04hを比較する。両者は一致
しないので、0の位置、1の位置、2の位置の03hを
受信バッファに書き込み、0の位置、1の位置、2の位
置の03hデータを削除する。
【0055】7)では、3の位置にあった04hを2の
位置に移動して、新しくホスト1から送られてきた1バ
イトデータ04hを3の位置にセットする。そして、2
の位置の04hと3の位置の04hを比較したが、一致
したので何もしない。
【0056】8)では、2の位置、3の位置にあった0
4hを、それぞれ1の位置、2の位置に移動して、ホス
ト1から新たに送られてきた1バイトデータの04h
を、3の位置にセットする。そして、2の位置の04h
と3の位置の04hを比較したが、一致したので何もし
ない。
【0057】9)では、1の位置、2の位置、3の位置
にあった04hを、それぞれ0の位置、1の位置、2の
位置に移動して、ホスト1から新たに送られてきた1バ
イトデータの04hを、3の位置にセットする。そし
て、2の位置の04hと3の位置の04hを比較する。
両者は一致し、しかも、0の位置、1の位置、2の位
置、3の位置の4バイトとも04hと同一の値になった
ので、CPU4へ「4バイトの連続データを受信したこ
と。データは04hであること。」を知らせる。
【0058】そして4バイトのFIFOバッファを全て
クリアし、10)の状態となる。
【0059】以上をまとめると、受信部5は、「ホスト
から受信したデータが、1〜3バイトまで連続して同じ
値であるなら受信バッファ9に書き込み、連続した同じ
値のバイトが4バイトに達すればCPU4に通知してク
リアする。」という原則で動作している。
【0060】図5で説明したように、ホスト1から送ら
れてくるイメージデータは、パックビッツ方式など連続
した4バイトデータはありえない圧縮方式を用いてお
り、4バイト連続データは、ページの開始や、ジョブの
終了、ジョブのクリア等に限定できるので、図8に説明
した受信部5の動作によって、完全な受信作業が高速に
行なえることになる。 <プリント動作の詳細>次に、本発明の第1の実施形態
の動作をフローチャートを用いて説明する。
【0061】図9は、ホスト1上のプリンタドライバの
動作を説明するフローチャートである。プリンタドライ
バは、ユーザが用いるアプリケーションソフトで作成し
た文書データから、図4,図5で説明した、プリンタへ
転送するプリンタコマンドを作成する役目を持つ。ユー
ザがアプリケーションソフトから文書の印刷を指示する
と、ホスト1内でプリンタドライバが起動される。図9
はこれ以降の動作となる。
【0062】まず、ステップS1で、印刷する文書が単
純ページで構成されているのか、あるいはオーバーレイ
ページで構成されているのか判断する。オーバーレイペ
ージで構成されているのであれば、ステップS16に進
み、オーバーレイ処理を行なってから、プリンタドライ
バの処理を終了する。オーバーレイ処理については、次
のページの図10,図11で説明する。
【0063】ステップS1で単純ページ文書だと判断さ
れたときは、ステップS2で変数mに文書のページ数を
セットする。また、ステップS3では変数nに1をセッ
トする。そして、ステップS4で変数nが変数mより大
きいかチェックし、YESならステップS17へ移り、
プリンタへジョブ終了コマンドを転送して、プリンタド
ライバの処理を終了する。つまり、文書の全てのページ
の処理が終わったら、ジョブ終了コマンドを転送して、
ドライバの処理を完了するわけである。
【0064】ステップS4でNOなら、ステップS5で
ホスト1のメモリ103上に設けたフレームメモリに、
nページ目の印刷イメージを展開し、ステップS6でプ
リンタへページ開始コマンドを転送する。そして、ステ
ップS7で、変数bに0をセットし、ステップS8で、
ラインカウンタを0クリアする。ステップS9では、ラ
インカウンタ位置の1ラインをデータ圧縮し、ステップ
S10で変数bに圧縮データの大きさの値を加算する。
そして、ステップS11で変数bがプリンタの受信バッ
ファ9の大きさを越えたかチェックし、越えたならばス
テップS18でホスト1のディスプレイ200画面上
に、「メモリオーバー」のメッセージを表示し、ジョブ
クリアコマンドをプリンタへ転送して、プリンタドライ
バの処理を終了する。つまり、1ページ分のイメージデ
ータだけで、プリンタの受信バッファ9があふれた場合
は、印刷の処理を中止するわけである。
【0065】ステップS11でNOの場合は、ステップ
S12で1ライン分の圧縮データをプリンタへ転送し、
ステップS13でラインカウンタに1を加算し、ステッ
プS14で、ラインカウンタをチェックして1ページ分
のラインが全て処理されたかを調べ、NOならステップ
S9の直前に戻り、ループを形成してステップS9以降
の処理を繰り返す。ステップS14でYESならステッ
プS15で変数nに1を加算し、ステップS4の直前に
戻り、ループを形成してステップS4以降の処理を繰り
返す。つまり、次のページの処理を行なう。
【0066】以上のようにして、ホスト1はプリンタ1
00に対してプリントデータを、画像データを1ライン
ずつ圧縮して送信する。なお、ここで示した各種のプリ
ンタコマンドの具体的なコードについては、図5で説明
した通りである。
【0067】図10,図11は、図9のステップS16
で示したオーバーレイ処理ルーチンの詳細を説明するフ
ローチャートである。
【0068】まず、ステップS21では変数bに0をセ
ットし、ステップS22ではホスト1のメモリ上に設け
たフレームメモリにオーバーレイページ、例えば文書の
フォームだけを書いたような重ね書きするページの印刷
イメージを展開し、ステップS23でオーバーレイペー
ジ開始コマンドをプリンタへ転送する。そして、ステッ
プS24ではラインカウンタを0クリアし、ステップS
25ではラインカウンタ位置の1ラインをデータ圧縮
し、ステップS26では変数bに圧縮データの大きさの
値を加算する。そして、ステップS27では変数bがプ
リンタの受信バッファ9の大きさを越えたかチェック
し、越えたならばステップS44でホスト1の画面上に
「メモリオーバー」のメッセージを表示し、ステップS
45でジョブクリアコマンドをプリンタへ転送して、こ
のルーチンからリターンする。つまり、重ね書きするペ
ージのデータだけで受信バッファ9があふれてしまった
ときは、印刷処理を中止することになる。
【0069】ステップS27でNOなら、ステップS2
8で1ライン分の圧縮データをプリンタへ転送し、ステ
ップS29でラインカウンタに1を加算する。そして、
ステップS30でラインカウンタをチェックし、1ペー
ジ分の処理が終了したか判断し、NOならステップS2
5の直前に戻ってループを形成し、ステップS25以降
の処理を繰り返す。
【0070】ステップS30でYESなら、ステップS
31以降の処理に移るが、この時点で重ね書きするペー
ジのイメージデータ転送は終了し、本文ページのデータ
転送に移ることになる。まず、ステップS31で変数m
に文書の本文のページ数をセットし、ステップS32で
変数nに1をセットする。そして、ステップS33で変
数nが変数mより大きいかチェックし、YESならこの
ルーチンをリターンする。つまり、ステップS33で
は、本文のページ数分の処理が完了したかチェックして
いるわけである。
【0071】ステップS33でNOなら、ステップS3
4でホスト1のメモリ上のフレームメモリに、本文nの
ページ目の印刷イメージを展開し、ステップS35でオ
ーバーレイページ開始コマンドをプリンタへ転送し、ス
テップS36でラインカウンタを0クリアする。そし
て、ステップS37では、ラインカウンタ位置の1ライ
ンをデータ圧縮し、ステップS38で変数bに圧縮デー
タの大きさの値を加算し、ステップS39で変数bがプ
リンタの受信バッファ9の大きさを越えているかチェッ
クする。YESならステップS44、及びステップS4
5の処理を行なってこのルーチンからリターンする。つ
まり、重ね書きページと、本文ページのイメージデータ
の大きさの合計が、受信バッファ9の大きさを越えるよ
うなことがあれば、オーバーレイ印刷処理全体が中止さ
れることになる。
【0072】ステップS39でNOなら、ステップS4
0で1ライン分の圧縮データをプリンタへ転送し、ステ
ップS41で、ラインカウンタに1を加算し、ステップ
S42で、ラインカウンタの大きさをチェックして1ペ
ージ分のイメージ転送処理が終了したかチェックし、N
OならステップS38の直前まで戻ってループを形成
し、ステップS38以降の処理を繰り返す。ステップS
42でYESなら、ステップS43で変数nに1を加算
し、ステップS33の直前に戻り、ループを形成してス
テップS33以降の処理を繰り返す。つまり、本文ペー
ジの次のページの処理を開始する。
【0073】以上のようにして、オーバーレイ印刷しよ
うとする各ページを、ライン単位で圧縮してプリンタに
送信する。
【0074】図12,図13は、受信部5の動作を説明
するフローチャートである。受信動作そのものは、図8
で説明した通りである。ここでは更に詳細に説明する。
【0075】電源が立ち上がると同時に、処理も開始す
るが、まず、ステップS51で受信バッファ9への書き
込み位置を示すポインタに0をセットし、ステップS5
2では、ユーザがプリンタを電源オフしたかチェック
し、YESなら受信部5の処理も終了する。NOならば
ステップS53で、ホスト1から1バイトデータの送信
があったかチェックし、受信していないならばステップ
S52の直前に戻ってループを形成し、ホスト1からの
データ送信を待つ形となる。
【0076】ステップS53でYESなら、すなわち1
バイトデータの送信がホストからあったならば、ステッ
プS54で受信部5に含まれるFIFOバッファに受信
した1バイトを追加格納し、そして、ステップS55で
FIFOバッファ内で最後に格納した1バイトとその直
前の1バイトを比較する。両者が互いに異なっているな
らステップS61以降の処理に移り、一致したならステ
ップS56でFIFO内に一致したデータが4バイト格
納されているかチェックする。NOなら、すなわち4バ
イト同じデータが格納されていないならばステップS5
2の直前に戻りループを形成し、ホスト1からの次のデ
ータを待つ形になる。
【0077】一方、ステップS56でYESなら、ステ
ップS57でCPU4へ連続した4バイトのデータを受
信したことを知らせる。これは、ジョブの開始か、ある
いは複数ページのデータ受信の途中であれば、前のペー
ジのイメージデータの受信処理の完了をCPU4に知ら
せたことになる。その際、データの値もCPU4に知ら
せる。これによって、受信バッファ管理プログラム41
は、次のページのイメージデータ受信があるのかないの
か、ジョブが終了したのか、ジョブのクリアなのかがわ
かり、受信バッファ9のメモリ管理が行なえることにな
る。そして、ステップS58で、連続した4バイトデー
タの値が08hか、あるいは09hかチェックし、NO
なら受信バッファ9への次の書き込み位置、つまり、書
き込み位置を示すポインタの値をステップS59でCP
U4へ知らせる。これは、次のページのデータ受信が予
想されていて、そのページの書き込みの開始位置を、受
信バッファ管理プログラム41に知らせるものである。
そのあと、ステップS60でFIFOバッファのクリア
を行なってから、ステップS52の直前に戻りループを
形成して、そのページのデータの受信を待つ。ステップ
S58でYESの場合は、ジョブ終了かジョブクリアを
示しているので、ステップS59の処理は行なわずに、
ステップS60でFIFOバッファのクリアを行なっ
て、ステップS52の直前に戻りループを形成して、次
のジョブのデータの受信を待つ。
【0078】ステップS55でYESの場合はステップ
S61に移り、CPU4から受信処理の停止指示があっ
たかチェックする。YESならステップS62でCPU
4へ次のデータの受信バッファ9への書き込み予定位置
を知らせ、ステップS63でCPU4からの新しい書き
込み位置の指示を待つ。CPU4からの停止指示は、C
PU4が受信バッファ9上で「オーバーレイ処理」等を
行なっていることを示している。
【0079】CPU4から新しい書き込み処理の指示が
届いたのなら、ステップS64以降の処理に移る。ステ
ップS61でNOの場合もステップS64の処理に移
る。ステップS64では、書き込み位置が受信バッファ
9の領域の限界を越えたかチェックし、NOならステッ
プS67以降の処理に移るが、YESならステップS6
5でまずCPU4に「限界により、受信バッファ9に書
き込めない」ことを知らせ、ステップS66でCPU4
からの新しい書き込み位置の指示を待ち、指示があった
らステップS67以降の処理に移る。
【0080】ステップS66で受信部5が待っている間
は、CPU4は排紙処理プログラム42で、受信バッフ
ァ9にたまったページデータを印刷処理して、受信バッ
ファ9上からデータをクリアし、受信バッファ管理プロ
グラム41で受信バッファ9の中を整理して、次のデー
タが書き込み可能になるように、空きを作る作業を行な
っている。その作業が完了したときに、CPU4は受信
部5に新しい書き込み位置を指示する。
【0081】ステップS67では、FIFOバッファの
先頭1バイトを、受信バッファ9上の指示された書き込
み位置に書き出し、ステップS68で書き出した1バイ
トについてはFIFOバッファからクリアし、ステップ
S69で書き込み位置ポインタに1を加算する。そし
て、ステップS70で、まだ書き込みが必要なデータが
FIFOバッファに残っているかチェックし、残ってい
るならステップS64の直前に戻りループを形成して、
次の1バイトの受信バッファ9への書き出し作業を続け
る。ステップS70でNOなら、ステップS52の直前
に戻ってループを形成して、ホスト1からの次のデータ
の受信を待つ。
【0082】以上の手順で、FIFOバッファに取り込
んだデータを、受信バッファに転送する。
【0083】図14,図15は、受信バッファ管理プロ
グラム41の動作を説明するためのフローチャートであ
る。このプログラムは、CPU4により実行されるもの
で、プリンタの電源立ち上げと同時に動作を開始する。
【0084】まず、ステップS71で管理表12をクリ
アし、ステップS72でユーザがプリンタを電源オフし
たかチェックし、YESならこのプログラムの処理を終
了する。管理表12をクリアするとは、種別53の項目
を全て0にセットすることである。
【0085】一方、ステップS72でNOなら、ステッ
プS73で、受信部5から連続4バイトデータの受信の
連絡があったかチェックする。この時、どのようなコー
ドの4バイトデータなのかも受け取る。ステップS73
でNOなら、ステップS91の処理に移る。ステップS
73でYESなら連続4バイトデータがページ開始コマ
ンド、あるいは、オーバーレイジョブのページ開始コマ
ンドかステップS74でチェックする。YESなら、ス
テップS75で一つのジョブの先頭ページかどうか判断
し、先頭ページなら、ステップS76で、図7で説明し
たように管理表12へ、受信バッファ9上のデータの書
き込み開始アドレス52、種別53、受信中54の変数
0をセットする。種別53は単純ページなら1、オーバ
ーレイジョブのページなら2をセットする。そして、ス
テップS72の直前に戻りループを形成して、受信部5
からの連絡を待つ。
【0086】ステップS75でNOならば、ステップS
77で管理表12上の前ページの受信完54の項目が
“受信中を表わす0”だったものを、“受信を完了した
ことを表わす1”にセットする。そして、ステップS7
8で、管理表12へ、次の番号の行に受信バッファ9上
のデータの書き込み開始アドレス52、種別53、受信
中54の変数0をセットする。そして、ステップS72
の直前に戻りループを形成して、受信部5からの連絡を
待つ。
【0087】ステップS74でNOならば、ステップS
79で連続した4バイトデータがジョブ終了を表わすコ
マンドだったか判断し、YESならステップS80で前
の番号の行の受信完54の項目を、“受信完了したこと
を表わす1”にセットする。そして、ステップS72の
直前に戻りループを形成して、受信部5からの連絡を待
つ。
【0088】ステップS79でNOならば、ステップS
81で連続した4バイトデータがジョブクリアコマンド
で表わすものか判断し、NOならステップS72の直前
に戻りループを形成して、受信部5からの連絡を待つ。
YESならステップS82で受信部5に受信中断の指示
を出し、ステップS83で受信部5から次の書き込み位
置の連絡があるまで待ち、連絡があればステップS84
で排紙処理プログラム42に排紙停止を指示し、ステッ
プS85で排紙処理プログラム42から排紙中断した旨
の連絡があるまで待つ。具体的には、排紙処理プログラ
ム42のセットする排紙中を示す変数がおりているか、
つまりオフになっているかを見ることになる。排紙中で
ないことがわかったら、ステップS86で単純ページの
ジョブか、オーバーレイのジョブのページか判断し、単
純ページならステップS87で受信中の1ページのみを
管理表12からクリアする。クリアするとは、管理表1
2の種別53の値を0にするだけである。ステップS8
6でオーバーレイジョブだと判断されたときは、ステッ
プS88で、受信中のオーバーレイジョブの全てのペー
ジデータをクリアする。この時も管理表12の種別53
の値をページ数分0にするだけである。ステップS8
7、あるいは、ステップS88のあとは、ステップS8
9で排紙処理プログラム42に対して排紙停止の指示を
解除し、ステップS90でクリアしたページ、あるいは
クリアしたオーバーレイジョブの先頭ページ位置を、新
しい書き込み位置として受信部5に知らせる。そして、
ステップS72の直前に戻りループを形成して、受信部
5からの次の連絡を待つ。
【0089】ステップS73でNOの場合はステップS
91へ進み、受信部5から受信データの受信バッファ9
への書き込みが限界に達したとの連絡があったかチェッ
クし、NOならステップS72の直前に戻りループを形
成して、受信部5からの次の連絡を待つ。YESならス
テップS92で受信バッファ9の整理を行ない、ステッ
プS93で新しい書き込み位置を受信部5へ指示して、
ステップS72の直前に戻りループを形成して、受信部
5からの次の連絡を待つ。
【0090】以上のようにして、受信部5から連続4バ
イト同じデータを受信した旨の知らせ、あるいは受信バ
ッファがその限界に達した旨の知らせに応じて、コマン
ドに応じて管理表を更新し、また、受信バッファを整理
するといった処理を行う。
【0091】図16は、図14のステップS92にあ
る、受信バッファ整理ルーチンの詳細な動作を説明する
ためのフローチャートである。
【0092】まず、ステップS101では、排紙処理プ
ログラム42に対して排紙処理の中止を指示し、ステッ
プS102で、排紙処理プログラム42からの排紙中止
完了の連絡を待つ。連絡があったならば、ステップS1
03で管理表12の内部で番号の若い行に排紙処理が済
んでしまって空きがあれば、つまり、管理表12に種別
53の項目が0の行があれば、それを、排紙されずに登
録されている行番号のデータを前詰めにして整理する。
そして、ステップS104では、受信バッファ9の中で
も実際の各ページのイメージデータも前づめにして整理
する。整理すると、各ページのデータのデータ開始位置
も変わるので、新しい開始位置はステップS105で管
理表12の開始位置52の項目の修正を行なう。そし
て、ステップS106では、排紙処理プログラム42へ
の排紙処理停止の指示の解除を行ない、このルーチンか
らリターンする。
【0093】図17は、排紙処理プログラム42の動作
を説明するための、フローチャートである。この手順も
CPU4により実行される。
【0094】排紙処理プログラム42は、プリンタの電
源オンと同時に起動するが、まず、ステップS111で
プリンタが電源オフされたかチェックし、YESならこ
のプログラムの処理を終了する。NOならば、ステップ
S112で受信バッファ管理プログラム41から排紙停
止の指示があった場合に、その指示が解除されるまで待
つ。排紙停止の指示が解除されている状態だと判断され
たならば、ステップS113で受信バッファ9上に受信
を完了した単純ページのイメージデータがあるかチェッ
クする。NO、すなわちないならばステップS114に
移り、受信バッファ9上に受信完了したオーバーレイジ
ョブのページデータがあるかチェックし、ない場合には
ステップS111の前に戻り、ループを形成して受信バ
ッファ9へのページデータの受信を待つ形になる。
【0095】ステップS114でYESなら、ステップ
S115でオーバーレイジョブの単純ページ化を行なっ
てから、ステップS111の直前に戻り、単純ページの
排紙処理を行なうことになる。オーバーレイジョブの単
純ページ化ルーチンの詳細については、図18,図19
で説明する。
【0096】一方、ステップS113でYESならば、
まず、ステップS116で排紙中を示す変数を立てる。
つまり、オンにする。この変数は、受信バッファ管理プ
ログラム41が、そのステップS85で現在排紙中かど
うかチェックするための変数である。そのあとステップ
S117で、管理表12にある先頭の単純ページデータ
の開始位置52を、イメージの伸長・ビデオ転送回路6
に指示する。イメージの伸長・ビデオ転送回路6は、ペ
ージ単位のイメージの圧縮データを伸長し、ビデオ信号
に直してエンジン部3へ出力する。イメージの伸長・ビ
デオ転送回路6の動作の詳細は、後述の図20で説明す
る。
【0097】そして、ステップS118では、イメージ
の伸長・ビデオ転送回路6からのビデオ出力が完了する
まで待ち、ステップS119で、受信バッファ上の排紙
済みの単純ページデータをクリアする。これは、管理表
12の種別53の項目を0にするだけである。最後に、
ステップS120で排紙中を示す変数をおろし、つま
り、オフにしてステップS111の直前に戻り、ループ
を形成して、次の単純ページの排紙処理等を引き続き行
なう。
【0098】以上のようにして、管理表12に登録され
たデータに基づいて、ホストより受信始したイメージデ
ータの印刷出力を行う。
【0099】図18,図19は、図17で説明した排紙
処理プログラム41の処理のステップS115で示し
た、オーバーレイジョブの単純ページ化のルーチンの詳
細を説明するためのフローチャートである。
【0100】まず、ステップS121で受信部5に受信
処理の停止を指示する。受信部5は、受信処理を停止す
ると、受信バッファ9上の次の受信する1バイトデータ
の書き込み位置を知らせてくるので、ステップS122
で、受信部5からの書き込み位置の連絡を待ち、連絡が
あったなら、ステップS123で受信バッファ9の前半
部分を空ける処理を行なう。受信済みのデータは、受信
バッファ9の後半部分に待避する。これによるページデ
ータの開始位置の変更結果をステップS124で管理表
12上に反映させる。
【0101】そして、ステップS125で変数mにオー
バーレイジョブの受信ページ数をセットし、ステップS
126で変数mから1を引く。これで、変数mがオーバ
ーレイジョブの本文ページのページ数を表わすことにな
る。そして、ステップS127で管理表12の先端部分
からmページ分空け、ステップS128でこのルーチン
だけで用いる変数としての書き出しポインタを0クリア
し、ステップS129でページカウンタを0クリアし、
ステップS130でブロックカウンタを0クリアする。
ブロックとは、1ページを均等に搬送方向に対して垂直
の線分、すなわちホストコンピュータで画像を圧縮する
単位となっているラインに沿って複数に分けたときの、
ひとつひとつの領域を言っている。ブロックのひとつの
大きさは、バンドメモリ10に展開できる大きさであ
る。
【0102】そして、ステップS131では、伸長回路
13で、バンドメモリ10上にオーバーレイジョブの先
頭ページ、つまり、重ね書き用のページのブロックカウ
ンタ位置のイメージを展開し、ステップS132で伸長
回路13でバンドメモリ10上に、本文ページのmペー
ジ目のブロックカウンタ位置のブロックのイメージを展
開し、ステップS133でイメージの圧縮回路14でバ
ンドメモリ10のイメージをデータ圧縮し、ステップS
134で圧縮したイメージデータを受信バッファ9の書
き出しポインタ位置以降に書き出す。
【0103】そして、ステップS135で、書き出しポ
インタを書き出した圧縮イメージデータ分だけ加算し、
ステップS136でブロックカウンタに1を加算した
後、ステップS137で1ページ分の全ブロック数の処
理が終了したかチェックし、NOならステップS131
の直前まで戻り、次のブロックの重ね書き処理を続け
る。
【0104】ステップS137でYESなら、ステップ
S138で管理表12に新しく作成した単純ページ、つ
まり、オーバーレイ用のページを重ね書きして単純ペー
ジ化したページを登録し、ステップS139でページカ
ウンタに1を加算し、ステップS140で本文ページ全
ての重ね書き処理が完了したかチェックし、NOならス
テップS130の直前に戻り、次の本文ページの重ね書
き処理を続行する。
【0105】ステップS140でYESならば、ステッ
プS141で重ね書き処理済みのオーバーレイジョブの
データを、管理量12上からクリアする。管理表12上
からクリアするとは、管理表12の種別53の項目を0
にすることである。次に、ステップS142で受信バッ
ファ9上で、排紙処理前の各ページのイメージデータを
前詰めし、それに伴ってステップS143で、管理表1
2上の各ページの開始位置も修正する。
【0106】そして、最後にステップS144で受信部
5に新しい書き込み位置を指示して、このルーチンから
リターンする。
【0107】以上のようにして、受信したイメージデー
タに対してオーバレイ処理を施し、印刷出力する。
【0108】図20はイメージ伸長・ビデオ転送回路6
の動作を説明するためのフローチャートでる。イメージ
伸長・ビデオ転送回路6は、ハードウェアとしての電子
回路であって、CPU4上で動作するプログラムではな
いが、プログラムの場合と同様に、フローチャートを用
いて説明する。
【0109】この回路による処理は、排紙処理プログラ
ム42の指示により動作を開始するが、まずステップS
151で変数としての読み出しポインタに、排紙処理プ
ログラム42から指示されたページデータの開始位置を
セットする。次に、ステップS152でラインカウンタ
を0クリアし、ステップS153で読み出しポインタ位
置の1ライン分の圧縮イメージデータを読み出して、デ
ータの伸長を行なう。そして、ステップS154で伸長
したデータからビデオ信号を生成してエンジン部3へ転
送し、ステップS155でラインカウンタに1を加算
し、ステップS156で読み出しポインタに読み出した
データ分加算する。
【0110】そして、ステップS157でラインカウン
タが1ページ分のライン数をオーバーしたかチェック
し、オーバーしていないのであれば、ステップS153
の直前に戻りループを形成し、次のラインのビデオ転送
処理を続ける。ステップS157で、1ページ分のライ
ン数分の処理が完了した場合は、この回路の処理を終了
する。
【0111】なお、本実施形態では、1ページのイメー
ジの幅やライン数は、固定として使っている。つまり、
ホスト1上のプリンタドライバの作る各ページのイメー
ジデータは、イメージ伸長・ビデオ転送回路6で処理可
能なイメージの幅とライン数を前提に作成される。 [第1実施形態特有の効果]本実施形態におけるプリン
タは以上説明したように機能するため、下記のような効
果を奏する。 (1)本実施形態のプリンタは、イメージ専用のプリン
タに、小容量のバンドメモリと、データ伸長回路、デー
タ圧縮回路を追加するだけで、オーバーレイ印刷処理が
できる。イメージ展開用の1ページ分の大きさのフレー
ムメモリ等は不要であり、低コストである。 (2)同様に、内蔵するCPUはメモリ管理を行なうだ
けなので、高性能な製品は不要であり、低コストであ
る。 (3)本実施形態では、重ね書き用のオーバーイメージ
データと、複数の本文ページイメージデータを重ねて、
最終的なオーバーレイの出力イメージデータを作るが、
出力イメージデータが一旦作られてしまうと、複数の本
文イメージデータは排紙を待たずに受信バッファから削
除される。ジャム対策用に本文データを排紙までとって
おく必要がないので、省メモリになる。 [第2の実施形態]本実施形態は、「2ページ印刷」を
例に、「複数ページ印刷」を」実現するプリンタシステ
ムを説明する。 <プリンタの構成>図21は、「2ページ印刷」のシス
テム全体を説明するためのブロック構成図である。各要
素は、第1の実施形態「オーバーレイ印刷」の図1で説
明したものと、ほとんど一致している。ここでは、一致
している要素の説明は省略し、本実施形態で追加した要
素の説明を中心に行なう。
【0112】まず、プリンタ2100において、RAM
8上のバンドメモリ10は、ふたつのページのブロック
を併置して展開できるだけの幅を持った大きさのメモリ
である。つまり、図1で説明したバンドメモリの約2倍
の大きさを持っている。このバンドメモリ10上に、イ
メージデータ伸長回路13を用いてデータ伸長されたふ
たつのページの同一位置のブロックが併置して展開され
る。
【0113】また、本実施形態で追加されたイメージ縮
小回路23は、バンドメモリ10上に展開したふたつの
ページブロックのイメージ自体を縦横、それぞれ2分の
1に縮小する回路である。これによって、ふたつのペー
ジのイメージデータを1ページ分の用紙内に印刷できる
大きさのイメージに縮小することができる。
【0114】そして、この縮小されたページイメージ
を、イメージデータ圧縮回路14でデータ圧縮して、受
信バッファ9に貯蔵し、そのデータをイメージ伸長・ビ
デオ転送回路6を用いて、エンジン部3へビデオ転送す
ることになる。
【0115】また、エンジン部3では、給紙部20の中
に、縦用紙カセット24と、横用紙カセット25の追加
されたことが、第1の実施形態の図1と異なる点であ
る。用紙カセット24は、通常の1ページ1用紙の印刷
を行なうときに用いるものであって、用紙の長手方向が
用紙の搬送方向に一致している。第1の実施形態の場合
も、縦用紙カセットを前提として考えている。
【0116】横用紙カセット25は、2ページ印刷を行
なう場合を使用するもので、用紙の長手方向は、搬送方
向に対して垂直方向を示す。この横長の用紙上に、ふた
つのページイメージがそれぞれ2分の1に縮小された形
で、並べて印刷され出力される。
【0117】その他の要素については、図1で説明した
要素と全く一致している。 <2ページ印刷処理の概要>図22は、「2ページ印刷
処理」の際の、データの流れを説明するための図であ
る。ホスト1から圧縮されたイメージデータが、2ペー
ジ分送られる。このデータは、受信部5によって受信バ
ッファ9の上に貯えられる。1ページを複数のバンドに
分割したと仮定して、ページ先頭から1ページ目のある
バンド位置のデータを、イメージ伸長回路13でバンド
メモリ10の左半分に展開し、同じく2ページ目の同一
バンド位置のデータを、イメージ伸長回路13でバンド
メモリ10の右半分に展開する。これで、あるバンド位
置の2ページ分の併置展開が完了するが、このデータを
イメージ縮小回路23で縦横方向とも2分の1に縮小
し、さらに、イメージデータ圧縮回路14でデータ圧縮
し、受信バッファ9の空き領域にセットする。このバン
ドごとの2ページ分の展開、縮小、圧縮処理を繰り返す
ことで、受信バッファ9上に圧縮された「2ページ併
置」のページデータが作成される。
【0118】そして、この圧縮された「2ページ併置」
のページデータが、イメージ伸長・ビデオ転送回路6で
エンジン部3へビデオ信号が出力され、2ページ印刷が
完了する。
【0119】実際にユーザが使用するときは、本文は複
数ページ有り、奇数ページが用紙の左側、偶数ページが
用紙の右側、という形で繰り返されて、「2ページ併
置」の各用紙が印刷されることになる。本文ページが、
合計して最後は奇数ページで終わる場合は、最後の用紙
上には左半分に最後のページのページイメージだけがあ
ることになる。右半分は空白である。
【0120】なお、図22では説明のために、本文が2
ページ分しかないデータに限定して図示した。
【0121】図23は、各コマンドの具体的なコードの
説明図である。第1の実施形態の図5とほとんど同じだ
が、「オーバーレイのページ開始コマンド」32の代わ
りに、2ページ印刷所部の開始を示す「2ページ印刷の
ページ開始コマンド」36を加えただけである。「2ペ
ージ印刷のページ開始コマンド」36は、先頭に00h
で、そのあとに03hが4バイト続く形である。
【0122】図24は、管理表12の構造を説明するた
めの図である。第1の実施形態の図7の説明とほとんど
同じだが、種別53の項目で、オーバーレイ印刷のジョ
ブのページを表わす「2」の代わりに、2ページ印刷の
ジョブのページを表わす「3」を追加し、さらに、ペー
ジ分を一枚の用紙に並べて書いた単純ページ化後の2ペ
ージ印刷ジョブのページを表わす「4」を追加した。
【0123】その他の項目については、図7と一致して
いる。 <2ページ印刷処理の詳細>次に、本発明の第2の実施
形態の動作を、フローチャートを用いて説明する。大部
分のプログラムや回路の動作は、第1の実施形態の場合
と同一だが、ここでは違いのある処理部分だけとりあげ
て説明する。
【0124】図25は、ホスト1上のプリンタドライバ
の処理の一部を説明するためのフローチャートである。
【0125】プリンタドライバは、ユーザが用いるアプ
リケーションソフトで作成した文書データから、図23
で説明したプリンタへ転送するイメージのプリンタコマ
ンドを作成する役目を持つ。ユーザがアプリケーション
ソフトから文書の印刷を指示すると、ホスト1内でプリ
ンタドライバが起動される。
【0126】プリンタドライバの動作は、第1の実施形
態の図9のフローチャートで説明した処理と略一致す
る。ただし、この第2の実施形態の「2ページ印刷」の
場合は、図9のステップS16「オーバーレイ処理」ル
ーチンの代わりに、ステップS16を「2ページ印刷処
理」ルーチンにしたものである。
【0127】図25は、この「2ページ印刷処理」ルー
チンを説明するフローチャートである。
【0128】このルーチンが動作開始すると、まずステ
ップS161で変数bに0をセットし、ステップS16
2では変数mに文書ページ数をセットし、ステップS1
63では変数nに1をセットする。そして、ステップS
164では変数nが変数mより大きいかチェックし、大
きいならば全ての文書のページの処理が終了したことに
なるので、ステップS165でジョブ終了コマンドをプ
リンタへ転送して、このルーチンからリターンする。
【0129】ステップS164で変数nが変数m以下な
らば、つまり、すべての文書ページの処理がまだ済んで
いないのであれば、ステップS166でホスト1上のフ
レームメモリにnページ目の印刷イメージを展開し、ス
テップS167で「2ページ印刷開始コマンド」をプリ
ンタへ転送し、ステップS168でラインカウンタを0
クリアし、ステップS169でラインカウンタ位置の1
ラインをデータ圧縮し、ステップS170で変数bに圧
縮データの大きさを加算し、ステップS171で変数b
が受信バッファ9の大きさを越えているかチェックし、
この大きさの限界を超えているならば、ステップS17
2でホスト1の画面上に「メモリオーバー」のメッセー
ジを表示し、ステップS173でジョブクリアコマンド
をプリンタへ転送して、このルーチンからリターンす
る。
【0130】ステップS171で変数bが受信バッファ
9の大きさを越えていないと判断したならば、ステップ
S174で圧縮データをプリンタへ転送し、ステップS
175でラインカウンタに1を加算し、ステップS17
6でラインカウンタの値を調べて、1ページ分のライン
の圧縮、転送処理が完了したかチェックし、NOならば
ステップS169の直前に戻って、次のラインの圧縮、
転送処理を続ける。
【0131】ステップS176でYESならば、ステッ
プS177で変数nに1を加算してステップS164の
直前に戻り、次のページの圧縮、転送処理を行なう。
【0132】以上のような手順で、ホストコンピュータ
からプリンタに2ページ印刷のイメージデータが転送さ
れる。
【0133】図26は、「2ページ印刷処理」の場合
の、排紙処理プログラム42の動作を説明するフローチ
ャートである。この手順はCPU4により実行される。
【0134】排紙処理プログラム42は、プリンタの電
源オンと同時に起動するが、まず、ステップS181で
ユーザがプリンタを電源オフしたかチェックし、YES
ならこのプログラムを終了する。NOならばステップS
182で受信バッファ管理プログラム41からの排紙停
止の指示が続いているかチェックし、排紙停止の指示が
解除されているならば、ステップS182のループから
抜けて、ステップS183で管理表12上に受信完了し
た単純ページデータがあるかどうかチェックする。ここ
では、管理表における種別53が「1」か「4」のデー
タである。
【0135】ここでNOならば、ステップS184で受
信バッファ9上に受信した2ページ印刷ジョブのデータ
があるかチェックし、YESならステップS185で、
「2ページ印刷ジョブの単純ページ化」処理を行ない、
そのあと、ステップS181の直前に戻りループを形成
して、単純ページ化したページデータの排紙処理に移
る。ステップS184でNOならば、ステップS181
の直前に戻りループを形成して、ホスト1からプリンタ
へ送られるプリントデータを待つ形になる。
【0136】ステップS183でYESならば、これ以
後単純ページデータの印刷処理に移るわけだが、まず、
ステップS186で排紙中を示す変数をたてる、つま
り、オンにする。受信バッファ管理プログラム41は、
この変数を見て、現在排紙中かどうかを判断する。そし
て、ステップS187で種別53が「1」か「4」か判
断し、「1」ならステップS188で用紙カセットとし
て縦用紙カセットを選択し、「4」ならステップS18
9で用紙カセットとして横用紙カセットを選択してか
ら、ステップS190に移り、単純ページのイメージデ
ータの受信バッファ9上の開始位置を、イメージの伸長
・ビデオ転送回路6に指示し、ステップS191では、
イメージの伸長・ビデオ転送回路6からビデオ転送が完
了したとの連絡が来るまで待つ。そして、ステップS1
92で管理表12から排紙済みの単純ページデータをク
リアする。ここでクリアするとは、種別53の項目を0
にすることである。次に、ステップS193で排紙中を
示す変数をおろし、つまり、オフにし、そしてステップ
S181の直前に戻りループを形成して、次のページの
排紙処理等を行なう形になる。
【0137】以上の手順により、2ページ印刷のジョブ
については単純1ページ化を行った後で横用紙で印刷
し、1ページ印刷のジョブについては1ページずつ縦用
紙で印刷出力する。
【0138】図27,図28は図26のステップS18
5で示した「2ページ印刷ジョブの単純ページ化」処理
の詳細を説明するためのフローチャートである。
【0139】このルーチンが起動されると、まず、ステ
ップS201で受信部5に受信処理の停止を指示する。
受信部5は、受信処理を停止すると、受信バッファ9上
の次の受信する1バイトデータの書き込み位置を知らせ
てくるので、ステップS202で受信部5からの書き込
み位置の連絡を待ち、連絡があったならステップS20
3で受信バッファ9の前半分を空ける処理を行なう。受
信済みのデータは、受信バッファ9の後半部分に待避す
る。これによるページデータの開始位置の変更結果を、
ステップS204で管理表12上に反映させる。
【0140】そして、ステップS205で変数mに2ペ
ージ印刷ジョブの受信ページ数をセットし、ステップS
206で変数mに1を加え、その値を2で割った値の整
数部分を変数nにセットする。これで、変数nが2ペー
ジ印刷したときの出力する用紙の枚数を表わすことにな
る。そして、ステップS207で管理表12の先頭部分
からnページ分空け、ステップS208でこのルーチン
だけで用いる変数としての書き出しポインタを0クリア
し、ステップS209で変数pに1をセットし、ステッ
プS210でブロックカウンタを0クリアする。ブロッ
クとは、1ページを均等に長手方向に対して垂直の線分
で複数に分けたときのひとつひとつの領域を言ってい
る。ブロックのひとつの大きさは、バンドメモリ10の
半分の領域に展開できる大きさである。
【0141】そして、ステップS211では伸長回路1
3でバンドメモリ10上の左半分にpページ目のブロッ
クカウンタ位置のイメージを展開し、ステップS212
で、(p+1)ページ目があるかチェックし、NOなら
ステップS214でバンドメモリ10の右半分をクリア
する。ステップS212でYESなら、ステップS21
3で伸長回路13でバンドメモリ10上の右半分に(p
+1)ページ目のブロックカウンタ位置のイメージを展
開する。
【0142】そして、ステップS213、あるいはステ
ップS214のあとは、ステップS215でイメージ縮
小回路23を用いてバンドメモリ10上のイメージを縦
方向、横方向とも2分の1に縮小し、ステップS216
でバンドメモリ10上の2分の1に縮小されたイメージ
を、イメージの圧縮回路14でデータ圧縮し、ステップ
S217で圧縮したイメージデータを、受信バッファ9
の書き出しポインタ位置以降に書き出す。
【0143】そして、ステップS218で書き出しポイ
ンタを書き出した圧縮イメージデータの大きさ分だけ加
算し、ステップS219でブロックカウンタに1を加算
した後、ステップS220で1ページ分の全ブロック数
の処理が終了したかチェックし、NOならステップS2
11の直前まで戻り、次のブロック位置の「2ページデ
ータの単純1ページデータ化」の処理を続ける。
【0144】ステップS220でYESなら、ステップ
S221で管理表12に新しく作成した単純ページ、つ
まり、2ページ分のイメージを一枚の用紙上に横に並べ
て展開して単純ページ化したページを、その開始位置と
ともに種別を4として登録する。ステップS222で変
数pに2を加算し、ステップS223で変数pが変数m
より大きいかチェックする。これは、本文ページ全ての
「2ページ印刷の単純ページ化」処理が完了したかチェ
ックすることである。ここで、まだ処理が完了していな
いのならステップS210の直前に戻りループを形成し
て、次に続く本文ページの「2ページ印刷の単純ページ
化」処理を続行する。
【0145】ステップS223で全ての処理が完了した
と判断されたならば、ステップS224で「2ページ印
刷の単純ページ化」処理済みの2ページ印刷ジョブのデ
ータを、管理表12上からクリアする。管理表12上か
らクリアするとは、管理表12の種別53の項目を0に
することである。次に、ステップS225で受信バッフ
ァ9上で排紙処理前の各ページのイメージデータを前詰
めし、それに伴ってステップS226で管理表12上の
各ページの開始位置も修正する。
【0146】そして最後に、ステップS227で受信部
5に新しい書き込み位置を指示して、このルーチンから
リターンする。
【0147】以上のようにして、2ページ印刷と指定さ
れた圧縮されたイメージデータを、バンドごとに伸長し
て2ページ印刷のイメージを作成し、それを縦横2分の
1に縮小してから圧縮する。以上を印刷すべきページ全
体について行うことで、1つのバンドを2ページ分伸長
するバンドメモリさえ備えていれば、2ページ印刷を実
現できる。
【0148】なお、本実施形態ではページ印刷を例とし
たが、4ページや8ページ印刷といった2ページ以外の
複数ページ印刷であっても、1ページのデータとして組
合わせるページ数を上記構成と同様にして実現できる。 <第2の実施形態特有の効果>以上の構成・手順によ
り、つぎのような効果を奏する。 (1)本実施形態のイメージ専用プリンタは、小さなバ
ンドメモリと、データ伸長回路、イメージ縮小回路、デ
ータ圧縮回路を追加するだけで、2ページ印刷や4ペー
ジ印刷等、複数ページ印刷処理ができる。イメージ展開
用の1ページ分の大きさのフレームメモリ等は不要であ
り、低コストである。 (2)同様に、内蔵するCPUはメモリ管理を行なうだ
けなので、高性能な製品は不要であり、低コストであ
る。 (3)本実施形態の中では、複数の本文ページで奇数ペ
ージイメージデータと偶数ページイメージデータを小さ
なバンドメモリ上で並べて展開し、縮小圧縮し、最終的
な2ページ印刷の出力イメージデータを次々に作るが、
出力イメージデータがいったん作られてしまうと、元に
なった複数の本文イメージにデータは、排紙を待たずに
受信バッファから削除される。ジャム対策用に本文デー
タを排紙までとっておく必要がないので、省メモリにな
る。 [第3の実施形態]以上第1及び第2の実施形態をそれ
ぞれ独立した装置として説明したが、第1の実施形態及
び第2の実施形態でそれぞれ説明したオーバレイ印刷及
び2ページ印刷両方の機能を1つのプリンタが備えてい
てもよい。第1及び第2の実施形態で説明したとおり、
両機能はまったく独立したものとして扱うことができる
ため両者がそれぞれ単独で使用される場合には、単なる
両機能の組み合わせとして実現できる。また、例えばオ
ーバレイを施したページを2ページ印刷するといった場
合、管理表に登録する種別をビット単位の割当てにし、
2ページ印刷のジョブの種別を「3」ではなく「4」
に、単純ページ化後の2ページ印刷ジョブの種別を
「4」ではなく「8」に変更する。こうすることで、管
理表の種別欄は各ビットごとに独立性が保たれ、両機能
について互いに独立して種別を表現でき、ひいては両機
能が組み合わされていたとしても独立して実施すること
ができる。このように種別を割当て、オーバレイ及び2
ページ印刷をそれぞれ第1実施形態及び第2実施形態の
要領で実行する。この場合順序は問わない。こうするこ
とで、オーバレイ印刷と2ページ印刷を組合わせた印刷
ジョブを処理することができる。
【0149】
【他の実施形態】なお、本発明は、複数の機器(例えば
ホストコンピュータ,インタフェイス機器,リーダ,プ
リンタなど)から構成されるシステムに適用しても、一
つの機器からなる装置(例えば、複写機,ファクシミリ
装置など)に適用してもよい。
【0150】また、本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成されることは言う
までもない。
【0151】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。
【0152】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク,ハードディス
ク,光ディスク,光磁気ディスク,CD−ROM,CD
−R,磁気テープ,不揮発性のメモリカード,ROMな
どを用いることができる。
【0153】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれることは言うまでもない。
【0154】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれることは言うまでもない。
【0155】本発明を上記記憶媒体に適用する場合、そ
の記憶媒体には、先に説明したフローチャートに対応す
るプログラムコードを格納することになるが、簡単に説
明すると、図31あるいは図32のメモリマップ例に示
す各モジュールを記憶媒体に格納することになる。
【0156】すなわち、少なくともページごとのイメー
ジデータを各ページの属性とともに受信する受信工程の
コードと、前記属性により特定されるページのイメージ
データを所定サイズのブロックに分割し、当該ブロック
と、他方のページのイメージデータにおいて前記ブロッ
クに対応するブロックとを合成する合成工程のコード
と、前記合成工程を制御して、1ページ分のイメージデ
ータを合成するまで、前記合成工程によるブロックごと
の合成を繰り返す制御工程のコードと、前記合成工程に
より合成された1ページ分ごとのイメージデータを、1
枚ごとの印刷媒体上に印刷出力する出力工程のコードと
を前記記憶媒体に記憶するか、あるいは、ページごとの
イメージデータを各ページの属性とともに受信する受信
工程のコードと、前記属性により特定されるページのイ
メージデータを所定サイズのブロックに分割し、当該ブ
ロックと、他のページのイメージデータにおいて前記ブ
ロックに対応するブロックとを所定の規則で配置する再
配置工程のコードと、前記再配置工程を制御して、各1
ページ分のイメージデータを再配置するまで、前記再配
置工程によるブロックごとの再配置を繰り返す制御工程
のコードと、前記再配置工程により再配置されたイメー
ジデータを、1ページのサイズに縮小する縮小工程のコ
ードと、前記縮小工程により縮小された1ページ分ごと
のイメージデータを、1枚ごとの印刷媒体上に印刷出力
する出力工程のコードの各モジュールのプログラムコー
ドを記憶媒体に格納すればよい。
【0157】
【発明の効果】以上説明したように、本発明に係る印刷
装置とその方法及び印刷システム及びコンピュータ可読
メモリは、イメージ専用の単純な構成でありながら、オ
ーバーレイ印刷処理を可能にするという効果を奏する。
【0158】またイメージ専用の単純な構成でありなが
ら、複数ページ同時印刷処理を可能にするという効果を
奏する。
【0159】
【図面の簡単な説明】
【図1】第1の実施形態のシステム全体のブロック構成
図である。
【図2】通常の単純なページ出力のデータの流れの説明
図である。
【図3】「オーバーレイ処理」のデータの流れの説明図
である。
【図4】イメージデータのコマンド構造の説明図であ
る。
【図5】各コマンドのコードの説明図である。
【図6】内蔵プログラムの説明図である。
【図7】管理表の説明図である。
【図8】受信部の動作説明図である。
【図9】プリンタドライバの動作を説明するフローチャ
ートである。
【図10】オーバーレイ処理ルーチンを説明するフロー
チャートである。
【図11】オーバーレイ処理ルーチンを説明するフロー
チャートである。
【図12】受信部の動作を説明するフローチャートであ
る。
【図13】受信部の動作を説明するフローチャートであ
る。
【図14】受信バッファ管理プログラムの動作を説明す
るフローチャートである。
【図15】受信バッファ管理プログラムの動作を説明す
るフローチャートである。
【図16】受信バッファ整理ルーチンの動作を説明する
フローチャートである。
【図17】排紙処理プログラムの動作を説明するフロー
チャートである。
【図18】オーバーレイジョブの単純ページ化のルーチ
ンの動作を説明するフローチャートである。
【図19】オーバーレイジョブの単純ページ化のルーチ
ンの動作を説明するフローチャートである。
【図20】イメージ伸長・ビデオ転送回路の動作を説明
するフローチャートである。
【図21】第2の実施形態の「2ページ印刷」のシステ
ム全体のブロック構成図である。
【図22】「2ページ印刷」のデータの流れの説明図で
ある。
【図23】各コマンドの説明図である。
【図24】管理表の構造の説明図である。
【図25】ドライバの「2ページ印刷処理」ルーチンの
動作を説明するフローチャートである。
【図26】「2ページ印刷処理」の場合の排紙処理プロ
グラムの動作を説明するフローチャートである。
【図27】「2ページ印刷ジョブの単純ページ化」処理
の詳細を説明するフローチャートである。
【図28】「2ページ印刷ジョブの単純ページ化」処理
の詳細を説明するフローチャートである。
【図29】電子写真方式のプリンタエンジンの断面図で
ある。
【図30】インクジェット方式のプリンタエンジンの斜
視図である。
【図31】本発明を実現するプログラムを格納する記憶
媒体における第1のメモリマップの図である。
【図32】本発明を実現するプログラムを格納する記憶
媒体における第2のメモリマップの図である。
【符号の説明】
1 ホスト 2 コントローラ部 3 エンジン部 4 CPU 5 受信部 6 イメージ伸長・ビデオ転送回路 7 ROM 8 RAM 9 受信バッファ 10 バンドメモリ 11 ワーク領域 12 管理表 13 イメージ伸長回路 14 イメージ圧縮回路 15 CPU 16 メモリ 17 ROM 18 RAM 19 ビデオ受信部 20 給紙部 21 現像定着部 22 排紙部 23 イメージ縮小回路 24 縦用紙カセット 25 横用紙カセット

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】 ページごとのイメージデータを各ページ
    の属性とともに受信する受信手段と、 前記属性により特定されるページのイメージデータを所
    定サイズのブロックに分割し、当該ブロックと、他方の
    ページのイメージデータにおいて前記ブロックに対応す
    るブロックとを合成する合成手段と、 前記合成手段を制御して、1ページ分のイメージデータ
    を合成するまで、前記合成手段によるブロックごとの合
    成を繰り返す制御手段と、 前記合成手段により合成された1ページ分ごとのイメー
    ジデータを、1枚ごとの印刷媒体上に印刷出力する出力
    手段とを備えることを特徴とする印刷装置。
  2. 【請求項2】 前記受信手段により受信するイメージデ
    ータは圧縮されたイメージデータであり、圧縮されたイ
    メージデータを伸長する伸張手段と、前記合成手段によ
    り合成されたイメージデータを、前記受信手段により受
    信される圧縮されたイメージデータと同じ方式で圧縮す
    る圧縮手段とを更に備え、前記合成手段により合成され
    た1ブロックのイメージデータを前記圧縮手段により圧
    縮し、前記出力手段による出力前に前記伸張手段により
    圧縮されたイメージデータを伸長することを特徴とする
    請求項1に記載の印刷装置。
  3. 【請求項3】 前記属性とは、1ページのイメージデー
    タをそのまま出力するか、複数のページのイメージデー
    タを合成して出力するかを示すことを特徴とする請求項
    1に記載の印刷装置。
  4. 【請求項4】 前記受信手段は、受信したイメージデー
    タをページごとに格納する格納手段を有し、前記制御手
    段は、前記合成手段により1ページ分のイメージデータ
    合成させると、前記他方のページのイメージデータを前
    記格納手段より削除し、合成されたイメージデータを格
    納することを特徴とする請求項1に記載の印刷装置。
  5. 【請求項5】 ページごとのイメージデータを各ページ
    の属性とともに受信する受信手段と、 前記属性により特定されるページのイメージデータを所
    定サイズのブロックに分割し、当該ブロックと、他のペ
    ージのイメージデータにおいて前記ブロックに対応する
    ブロックとを所定の規則で配置する再配置手段と、 前記再配置手段を制御して、各1ページ分のイメージデ
    ータを再配置するまで、前記再配置手段によるブロック
    ごとの再配置を繰り返す制御手段と、 前記再配置手段により再配置されたイメージデータを、
    1ページのサイズに縮小する縮小手段と、 前記縮小手段により縮小された1ページ分ごとのイメー
    ジデータを、1枚ごとの印刷媒体上に印刷出力する出力
    手段とを備えること特徴とする印刷装置。
  6. 【請求項6】 前記受信手段により受信するイメージデ
    ータは圧縮されたイメージデータであり、圧縮されたイ
    メージデータを伸長する伸張手段と、前記合成手段によ
    り合成されたイメージデータを、前記受信手段により受
    信される圧縮されたイメージデータと同じ方式で圧縮す
    る圧縮手段とを更に備え、前記再配置手段により再配置
    された1ブロックのイメージデータを前記圧縮手段によ
    り圧縮し、前記出力手段による出力前に前記伸張手段に
    より圧縮されたイメージデータを伸長することを特徴と
    する請求項5に記載の印刷装置。
  7. 【請求項7】 前記再配置手段は、2ページ分の画像
    を、互いに隣接するように配置することを特徴とする請
    求項5に記載の印刷装置。
  8. 【請求項8】 前記属性とは、1ページのイメージデー
    タをそのまま出力するか、複数のページのイメージデー
    タを再配置して出力するかを示すことを特徴とする請求
    項5に記載の印刷装置。
  9. 【請求項9】 前記受信手段は、受信したイメージデー
    タをページごとに格納する格納手段を有し、前記制御手
    段は、前記再配置手段によりイメージデータを再配置さ
    せると、前記他方のページのイメージデータを前記格納
    手段より削除し、再配置されたイメージデータを格納す
    ることを特徴とする請求項5に記載の印刷装置。
  10. 【請求項10】 前記イメージデータの圧縮は画素ライ
    ン単位に行われ、前記所定サイズのブロックは、前記ラ
    インに沿って1ページのイメージを分割して成ることを
    特徴とする請求項1または5に記載の印刷装置。
  11. 【請求項11】 前記属性により特定されるページのイ
    メージデータを所定サイズのブロックに分割し、当該ブ
    ロックと、他のページのイメージデータにおいて前記ブ
    ロックに対応するブロックとを所定の規則で配置する再
    配置手段と、 前記再配置手段を制御して、各1ページ分のイメージデ
    ータを再配置するまで、前記再配置手段によるブロック
    ごとの再配置を繰り返す制御手段と、 前記再配置手段により再配置されたイメージデータを、
    1ページのサイズに縮小する縮小手段とを更に備えるこ
    とを特徴とする請求項1に記載の印刷装置。
  12. 【請求項12】 ページごとのイメージデータを各ペー
    ジの属性とともに受信する受信工程と、 前記属性により特定されるページのイメージデータを所
    定サイズのブロックに分割し、当該ブロックと、他方の
    ページのイメージデータにおいて前記ブロックに対応す
    るブロックとを合成する合成工程と、 前記合成工程を制御して、1ページ分のイメージデータ
    を合成するまで、前記合成工程によるブロックごとの合
    成を繰り返す制御工程と、 前記合成工程により合成された1ページ分ごとのイメー
    ジデータを、1枚ごとの印刷媒体上に印刷出力する出力
    工程とを備えることを特徴とする印刷方法。
  13. 【請求項13】 前記受信工程により受信するイメージ
    データは圧縮されたイメージデータであり、圧縮された
    イメージデータを伸長する伸張工程と、前記合成工程に
    より合成されたイメージデータを、前記受信工程により
    受信される圧縮されたイメージデータと同じ方式で圧縮
    する圧縮工程とを更に備え、前記合成工程により合成さ
    れた1ブロックのイメージデータを前記圧縮工程により
    圧縮し、前記出力工程による出力前に前記伸張工程によ
    り圧縮されたイメージデータを伸長することを特徴とす
    る請求項12に記載の印刷方法。
  14. 【請求項14】 前記属性とは、1ページのイメージデ
    ータをそのまま出力するか、複数のページのイメージデ
    ータを合成して出力するかを示すことを特徴とする請求
    項12に記載の印刷方法。
  15. 【請求項15】 前記受信工程は、受信したイメージデ
    ータをページごとに格納手段により格納し、前記制御工
    程は、前記合成工程により1ページ分のイメージデータ
    合成させると、前記他方のページのイメージデータを前
    記格納手段より削除し、合成されたイメージデータを格
    納することを特徴とする請求項12に記載の印刷方法。
  16. 【請求項16】 ページごとのイメージデータを各ペー
    ジの属性とともに受信する受信工程と、 前記属性により特定されるページのイメージデータを所
    定サイズのブロックに分割し、当該ブロックと、他のペ
    ージのイメージデータにおいて前記ブロックに対応する
    ブロックとを所定の規則で配置する再配置工程と、 前記再配置工程を制御して、各1ページ分のイメージデ
    ータを再配置するまで、前記再配置工程によるブロック
    ごとの再配置を繰り返す制御工程と、 前記再配置工程により再配置されたイメージデータを、
    1ページのサイズに縮小する縮小工程と、 前記縮小工程により縮小された1ページ分ごとのイメー
    ジデータを、1枚ごとの印刷媒体上に印刷出力する出力
    工程とを備えること特徴とする印刷方法。
  17. 【請求項17】 前記受信工程により受信するイメージ
    データは圧縮されたイメージデータであり、圧縮された
    イメージデータを伸長する伸張工程と、前記合成工程に
    より合成されたイメージデータを、前記受信工程により
    受信される圧縮されたイメージデータと同じ方式で圧縮
    する圧縮工程とを更に備え、前記再配置工程により再配
    置された1ブロックのイメージデータを前記圧縮工程に
    より圧縮し、前記出力工程による出力前に前記伸張工程
    により圧縮されたイメージデータを伸長することを特徴
    とする請求項16に記載の印刷方法。
  18. 【請求項18】 前記再配置工程は、2ページ分の画像
    を、互いに隣接するように配置することを特徴とする請
    求項16に記載の印刷方法。
  19. 【請求項19】 前記属性とは、1ページのイメージデ
    ータをそのまま出力するか、複数のページのイメージデ
    ータを再配置して出力するかを示すことを特徴とする請
    求項16に記載の印刷方法。
  20. 【請求項20】 前記受信工程は、受信したイメージデ
    ータをページごとに格納手段により格納し、前記制御工
    程は、前記再配置工程によりイメージデータを再配置さ
    せると、前記他方のページのイメージデータを前記格納
    手段より削除し、再配置されたイメージデータを格納す
    ることを特徴とする請求項16に記載の印刷方法。
  21. 【請求項21】 前記イメージデータの圧縮は画素ライ
    ン単位に行われ、前記所定サイズのブロックは、前記ラ
    インに沿って1ページのイメージを分割して成ることを
    特徴とする請求項12または16に記載の印刷方法。
  22. 【請求項22】 前記属性により特定されるページのイ
    メージデータを所定サイズのブロックに分割し、当該ブ
    ロックと、他のページのイメージデータにおいて前記ブ
    ロックに対応するブロックとを所定の規則で配置する再
    配置工程と、 前記再配置工程を制御して、各1ページ分のイメージデ
    ータを再配置するまで、前記再配置工程によるブロック
    ごとの再配置を繰り返す制御工程と、 前記再配置工程により再配置されたイメージデータを、
    1ページのサイズに縮小する縮小工程とを更に備えるこ
    とを特徴とする請求項12に記載の印刷方法。
  23. 【請求項23】 ホスト装置とページプリンタ装置とで
    構成された印刷システムであって、 前記ホスト装置は、 ページ単位のイメージデータを圧縮する手段と、 前記圧縮されたイメージデータを印刷命令に変換する手
    段と、 前記印刷命令を前記プリンタ装置に送出する手段とを備
    え、 前記プリンタ装置は、 前記ホスト装置からの印刷命令を受信する手段と、 前記印刷命令内の圧縮されたページ単位のイメージデー
    タを、1ページ内で複数のバンド単位に分割して、個々
    のバンド部分のイメージデータを伸長する手段と、 前記伸長されたバンド部分のイメージデータの上に別の
    ページの同じバンド位置のイメージデータを伸長して重
    ね書きする手段と、 前記重ね書きされたイメージデータをデータ圧縮する手
    段と、 前記バンドごとの伸長と重ね書きと圧縮とを繰り返して
    データ圧縮されたオーバーレイページデータを作成する
    手段と、 前記圧縮されたページ単位のイメージデータを印刷出力
    する手段と、を備えることを特徴とする印刷システム。
  24. 【請求項24】 ホスト装置とページプリンタ装置とで
    構成された印刷システムであって、 前記ホスト装置は、 ページ単位のイメージデータを圧縮する手段と、 前記圧縮されたイメージデータを印刷命令に変換する手
    段と、 前記印刷命令を前記プリンタ装置に送出する手段とを備
    え、 前記プリンタ装置は、 前記ホスト装置からの印刷命令を受信する手段と、 前記印刷命令内の圧縮されたページ単位のイメージデー
    タを、1ページ内で複数のバンド単位に分割して、個々
    のバンド部分のイメージデータをデータ伸長し所定位置
    に展開する第1の展開手段と、 前記所定位置と隣接する位置に、別のページの同じバン
    ド位置のイメージデータを伸長して展開する第2の展開
    手段と、 前記第1及び第2の展開手段により展開されたイメージ
    を、1ページの用紙幅に合わせて縮小する手段と、 前記縮小されたイメージをデータ圧縮する手段と、 前記バンドごとのデータ伸長とイメージ縮小とデータ圧
    縮を繰り返して、データ圧縮された同一ページへの複数
    ページ分のイメージを形成する手段と、 前記圧縮されたページ単位のイメージデータを印刷出力
    する手段と、を備えることを特徴とする印刷システム。
  25. 【請求項25】 印刷手順を実現するプログラムを格納
    するコンピュータ可読メモリであって、 ページごとのイメージデータを各ページの属性とともに
    受信する受信工程のコードと、 前記属性により特定されるページのイメージデータを所
    定サイズのブロックに分割し、当該ブロックと、他方の
    ページのイメージデータにおいて前記ブロックに対応す
    るブロックとを合成する合成工程のコードと、 前記合成工程を制御して、1ページ分のイメージデータ
    を合成するまで、前記合成工程によるブロックごとの合
    成を繰り返す制御工程のコードと、 前記合成工程により合成された1ページ分ごとのイメー
    ジデータを、1枚ごとの印刷媒体上に印刷出力する出力
    工程のコードとを備えることを特徴とするコンピュータ
    可読メモリ。
  26. 【請求項26】 印刷手順を実現するプログラムを格納
    するコンピュータ可読メモリであって、 ページごとのイメージデータを各ページの属性とともに
    受信する受信工程のコードと、 前記属性により特定されるページのイメージデータを所
    定サイズのブロックに分割し、当該ブロックと、他のペ
    ージのイメージデータにおいて前記ブロックに対応する
    ブロックとを所定の規則で配置する再配置工程のコード
    と、 前記再配置工程を制御して、各1ページ分のイメージデ
    ータを再配置するまで、前記再配置工程によるブロック
    ごとの再配置を繰り返す制御工程のコードと、 前記再配置工程により再配置されたイメージデータを、
    1ページのサイズに縮小する縮小工程のコードと、 前記縮小工程により縮小された1ページ分ごとのイメー
    ジデータを、1枚ごとの印刷媒体上に印刷出力する出力
    工程のコードとを備えること特徴とするコンピュータ可
    読メモリ。
JP8055845A 1996-03-13 1996-03-13 印刷装置とその方法及び印刷システム Withdrawn JPH09240075A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8055845A JPH09240075A (ja) 1996-03-13 1996-03-13 印刷装置とその方法及び印刷システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8055845A JPH09240075A (ja) 1996-03-13 1996-03-13 印刷装置とその方法及び印刷システム

Publications (1)

Publication Number Publication Date
JPH09240075A true JPH09240075A (ja) 1997-09-16

Family

ID=13010369

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8055845A Withdrawn JPH09240075A (ja) 1996-03-13 1996-03-13 印刷装置とその方法及び印刷システム

Country Status (1)

Country Link
JP (1) JPH09240075A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015186121A (ja) * 2014-03-25 2015-10-22 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び画像形成プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015186121A (ja) * 2014-03-25 2015-10-22 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び画像形成プログラム

Similar Documents

Publication Publication Date Title
US6304335B1 (en) Printing system for dividing a page into blocks
US5920685A (en) Printing machine with merging/annotating/signaturizing capability
EP0895184A2 (en) Print control apparatus, print control method, and storage medium
US5978553A (en) System for processing received print data prior to printing
US5732202A (en) Data processing apparatus, data processing method, memory medium storing data processing program, output device, output control method and memory medium storing control program therefor
JP3792823B2 (ja) 印刷装置及び印刷制御装置
US5608848A (en) Processing blank data-lines of print data
US5870534A (en) Image processing apparatus and method
US6483604B1 (en) Disk-based image storage system and method with prioritized loading and retrieval operations
US5970222A (en) Memory management system for printing a print job with limited capacity
JPH09233315A (ja) 画像処理装置及び方法
US6016155A (en) Character processing apparatus, character processing method, and memory
JPH11136459A (ja) 画像入出力装置及び方法
JPH09240075A (ja) 印刷装置とその方法及び印刷システム
JPH09147093A (ja) 印刷システムと情報処理装置、並びに情報処理方法
JP2000335021A (ja) 画像処理装置及び画像処理方法
US6246795B1 (en) Image processing apparatus and method
JPH10320152A (ja) 印刷処理システム、印刷処理装置ならびに、印刷処理方法
JP2003237147A (ja) 画像処理方法及びその装置
JP3428817B2 (ja) 印字制御装置及び方法
KR0174701B1 (ko) 페이지 프린터의 이미지 압축처리방법
JP2002152488A (ja) スプールデータ生成装置および方法ならびに記憶媒体
JPH04314559A (ja) プリンタ装置
JPH0568162A (ja) プリンター
JPH04323058A (ja) 印刷制御装置及び方法

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030603