JPH0679955A - プリンタ装置 - Google Patents

プリンタ装置

Info

Publication number
JPH0679955A
JPH0679955A JP23457192A JP23457192A JPH0679955A JP H0679955 A JPH0679955 A JP H0679955A JP 23457192 A JP23457192 A JP 23457192A JP 23457192 A JP23457192 A JP 23457192A JP H0679955 A JPH0679955 A JP H0679955A
Authority
JP
Japan
Prior art keywords
data
resolution mode
area
buffer
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP23457192A
Other languages
English (en)
Inventor
Yasuharu Tanaka
康晴 田中
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.)
Minolta Co Ltd
Original Assignee
Minolta Co Ltd
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 Minolta Co Ltd filed Critical Minolta Co Ltd
Priority to JP23457192A priority Critical patent/JPH0679955A/ja
Publication of JPH0679955A publication Critical patent/JPH0679955A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Dot-Matrix Printers And Others (AREA)

Abstract

(57)【要約】 【目的】 メモリオーバフロー発生に迅速に対処する手
段を備えるプリンタ制御装置を提供する。 【構成】 高解像度モードと低解像度モードを備え、受
信データを中間コードデータに変換した後、これに基づ
いてビットマップデータを作成し印字処理を実行するプ
リンタ装置であって、中間コードデータを格納するエリ
アとビットマップデータを格納するエリアを備える記憶
手段と、記憶手段のオーバフローを検出する検出手段
と、高解像度モードが設定されている場合であって、検
出手段によりオーバフローが検出された場合、低解像度
モードに設定を変更し、これにより生じる記憶手段の不
使用エリアを中間コードデータを格納するためのエリア
として使用し、印字処理を続行可能とするメモリ制御手
段を備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、編集モードとして高解
像度モードと低解像度モードを備えるプリンタ装置に関
する。
【0002】
【従来の技術及び発明が解決しようとする課題】ホスト
コンピュータやワードプロセッサ等から送信されてくる
印字データに基づいて印字処理を実行するプリンタにお
いて、印字データが、画像データとフォントデータから
なる場合、即ち、プリンタ本体にフォントデータを持た
ず、印字処理毎にフォントデータを受信し、これと画像
データとを1つのRAMに格納し、この2つのデータに
基づいて印字処理を実行する形式を採るプリンタでは、
受信したフォントデータの容量が大きく、画像データが
RAMに格納できない状態が発生する。このような状態
をメモリオーバフローという。
【0003】また、システムのエラーが原因で、システ
ムをリセットしたにも拘わらず、画像データの消去のみ
が実行され、フォントデータがRAMに残留した場合、
これが原因で新規のフォントデータ及び画像データをR
AMに格納することができず、その結果、メモリオーバ
フローが発生する場合もある。
【0004】またさらに、プリンタ本体にフォントデー
タを備える形式のものであっても、受信した画像データ
を中間コードデータ、イメージデータに順に変換し、記
憶装置(1個のRAM)に格納する際に、例えば中間コ
ードデータの容量が記憶装置内に割り当てられた所定の
容量を越えた場合、メモリオーバフローを発生する。
【0005】通常、あるドキュメントを印字処理中に、
メモリオーバフローが発生した場合は、ホストコンピュ
ータ側でエラー処理(印字停止)を実行し、プリンタを
リセットする。このため、使用者が印字処理を続ける場
合には、再度ホストコンピュータから続きのページ指定
を行い、印字を再開する必要がある。このように、メモ
リオーバフローの発生時には、通常のエラー発生時と同
様の処理を実行する必要があるため、不便である。
【0006】従来、上記不便を回避するには、使用者が
予め印字文書を分割して印字処理を実行していた。ま
た、特開昭61−19279号公報に示されるような高
解像度モードと低解像度モードの2つの印字モードを切
り換えることが可能なプリンタでは、印字する前に低解
像度モードを設定してから印字処理を実行するか、もし
くは、メモリオーバフローが発生した時点で、使用者
が、低解像度モードに切り換え、再度ページ指定を行っ
た後に印字処理を再開する必要がある。従って、従来の
システムでは、使用者に対する不便を根本的に解消する
ことはできない。
【0007】本発明は、プリンタのメモリオーバフロー
が発生した場合には、迅速にこれに対処する手段を備え
るプリンタを提供することを目的とする。
【0008】
【問題を解決するための手段】請求項1に記載されたプ
リンタ装置は、高解像度モードと低解像度モードを備
え、受信データを中間コードデータに変換した後、これ
に基づいてビットマップデータを作成し印字処理を実行
するプリンタ装置であって、中間コードデータを格納す
るエリアとビットマップデータを格納するエリアを備え
る記憶手段と、記憶手段のオーバフローを検出する検出
手段と、高解像度モードが設定されている場合であっ
て、検出手段によりオーバフローが検出された場合、低
解像度モードに設定を変更し、これにより生じる記憶手
段の不使用エリアを、中間コードデータを格納するため
のエリアとして使用し、印字処理を続行可能とするメモ
リ制御手段を備えることを特徴とするプリンタ装置。
【0009】また、請求項2に記載されたプリンタ装置
は、請求項1に記載されたプリンタ装置であって、メモ
リ制御手段は、検出手段がオーバフローを検出した際、
既に格納されている中間コードデータを使用して印字処
理を続行可能とする。
【0010】また更に、請求項3に記載されたプリンタ
装置は、請求項1に記載されたプリンタ装置であって、
メモリ制御手段は、検出手段がオーバフローを検出した
際、既に格納されている受信データを用いて再度、中間
コードデータを作成し、該中間コードデータを用いて印
字処理を続行可能とする。
【0011】
【作用】請求項1に記載されたプリンタ装置は、高解像
度モードが設定されている場合であって、検出手段が記
憶手段のオーバフローを検出した場合、メモリ制御手段
が低解像度モードに設定を変更し、ビットマップデータ
を格納するエリアを減少し、これにより生じる不使用エ
リアを中間コードデータを格納するエリアとして用い、
印字処理を続行可能とする。
【0012】請求項2に記載されたプリンタ装置は、請
求項1に記載されたプリンタ装置であって、メモリ制御
手段は、検出手段が記憶手段のオーバフローを検出した
際、記憶装置内に既に格納されている中間コードデータ
を用いて印字処理を続行可能とする。
【0013】請求項3に記載されたプリンタ装置は、請
求項1に記載されたプリンタ装置であって、メモリ制御
手段は、検出手段が記憶手段のオーバフローを検出した
際、再度、受信データを解析して中間コードデータに変
換し、これに基づいてビットマップデータを作成して印
字処理を続行可能とする。
【0014】
【実施例】以下、添付の図面を参照して、以下の順に本
発明の実施例を説明する (1)プリンタの構成 (2)解像度制御処理の概略 (3)メインルーチン (4)各ルーチンの詳細な説明
【0015】(1)プリンタの構成 図1は、プリンタ装置の全体図を示す図である。プリン
タ本体101は、データ受信、編集、印字等の動作を実
行する。上段給紙トレイ102、下段給紙トレイ103
は、プリンタ本体101に給紙する用紙をセットする。
操作パネル104は、後に説明するように、使用者にプ
リンタの状態を認識させると共に、プリントの条件を設
定する。排紙トレイ105は、プリンタ本体101から
排出される用紙を保持する。
【0016】図2(a)〜(c)は、操作パネル104
の正面図である。操作パネル104は、表示部201
と、各種キー202〜211と、各種LED212から
構成される。
【0017】モードキー202は、印字スタイルの選択
を行うキーである。メニューキー203は、各スタイル
のメニュー項目の確認及び選択を行うキーである。設定
変更キー204及び205は、各メニュー項目の設定値
を変更する。エンターキー206は、スタイル名称の設
定及び実行を行う。リセットキー207は、ホストコン
ピュータから受信した画像データ及びフォントデータの
リセットを行う。解像度モード切換キー208は、低解
像度/高解像度モードの切換を行う。コンティニュー・
テストキー209は、テストプリント及び強制プリント
を実行する。フォームフィードキー210は、印字中に
メモリオーバフローを発生し、ホストコンピュータに強
制停止が実行された場合、プリンタ本体に残留している
用紙を強制的に排出する。オンラインキー211は、オ
ンライン/オフラインを切り換えるために用いられ、オ
ンライン時に点灯するLEDを伴うキーである。
【0018】図3は、本発明のプリンタのシステム構成
図である。本システムは、ホスト301と、ホストイン
ターフェース302と、ROM303と、パネル104
と、RAM305と、CPU306と、エンジンインタ
ーフェース307と、エンジン308とから構成され
る。
【0019】ホスト301は、外部入力装置であり、コ
ンピュータやワードプロセッサ等がこれに該当する。ホ
ストインターフェース302は、ホスト301から送ら
れてきた画像データ及びフォントデータを受け取る。R
OM303には、画像データの変換方法や、各種処理方
法、エンジンの駆動方法等のプログラムが格納されてい
る。RAM305は、大きく分けてホスト301から入
力された受信データ、中間コードデータであるパケット
データ、ビットマップデータを記憶するバッファエリア
と、フォントデータや送信データ等を記録するその他の
メモリエリアの2つのエリアから構成される。本発明で
問題にするのは、上記入力データ等を記憶するバッファ
エリアである。CPU306は、ROM303に格納さ
れているプログラムに従って、実際に処理を実行する。
エンジンインターフェース307は、CPU206で最
終的に形成されたデータを、駆動部分であるエンジン3
08に送り出す。
【0020】次の図4は、図3に示したシステム構成に
おける各機能ブロックの構成を示す図である。機能ブロ
ックは、受信部410、編集部411、描画部412、
印字部413、エンジン制御部403、パネル操作部4
07の6つの部分に大きく分けられる。
【0021】受信部410は、受信データバッファ40
8とホストインターフェース401から構成される。受
信バッファは、ホスト301から送られて来る印字に関
する受信データをホストインターフェース401を介し
て一旦格納する。
【0022】編集部411は、エミュレーション部40
9と、パケットバッファ414と、プロトコル解析部4
02と、編集制御部404とから構成される。プロトコ
ル解析部402は、受信データを解析し、インターフェ
ース制御コマンド、印字データ等の識別を実行する。編
集制御部404は、プロトコル解析部402によって解
析された印字データよりカーソル位置を計算し、中間コ
ードデータであるパケットデータを作成してパケットバ
ッファ414にこれを送信する。
【0023】描画部412は、フォントメモリ415
と、描画制御部405とからなる。描画制御部405
は、パケットバッファ414に格納されるパケットデー
タを読み出し、フォント指定がある場合には、フォント
メモリ415から該当するフォントを読み出し、フォン
トの管理等を行う。また、描画制御部412では、他の
印字データ(グラフィックス)等の処理を行う。ここ
で、作成されたデータは、ビットマップデータとしてフ
レームバッファ416に格納される。
【0024】印字部413は、フレームバッファ416
と、イメージ展開部406とからなる。イメージ展開部
406は、描画制御部405によりフレームバッファ4
16に格納されたビットマップデータを実際に印字する
ためのイメージデータ(圧縮データ)に変換し、プリン
タエンジン308へ出力する。
【0025】ユーザインターフェース制御部407は、
使用者が操作パネル104を介して設定した内容に従っ
てプリンタ本体の設定を変更し、プリンタ内部の各機能
部全体を制御する。
【0026】エンジンインターフェース制御部403
は、プリントシーケンスの制御及び印字制御を行う。
【0027】(2)解像度制御処理の概略 次に、本発明の解像度制御処理の概略について説明す
る。RAM306内部に形成される入力データを記憶す
るエリア(以下、入力データ記憶エリア)は、図9に示
すような構成を採る。ここで、ビットマップデータを展
開するためのフレームバッファ416のエリアは、例え
ばA4サイズ1頁分のようにその範囲が予め固定されて
いる。即ち、パケットバッファ414として使用可能な
エリアの上位アドレスの値は一定である。一方、パケッ
トバッファ414として使用可能なエリアの下位アドレ
スの値は、ホスト301からホストインターフェース4
01を介して入力された受信データを格納する受信デー
タバッファ408のエリアの設定により決定される。
【0028】エリアの決定されたパケットバッファ41
4に、プロトコル解析部402により解析され、作成さ
れたパケットデータが格納される。ここで、パケットバ
ッファ414の容量よりも、格納するパケットデータの
容量の方が大きな場合には、オーバフローが発生するこ
ととなる。
【0029】本発明の解像度制御処理では、オーバフロ
ーが発生した場合に、まず、プリンタ装置に設定されて
いる解像度モードが高解像度モードであるのか、もしく
は低解像度モードであるのかを調べる。ここで、プリン
タ装置に高解像度モードが設定されている場合には、こ
れを使用者の操作により、もしくは自動的に、低解像度
モードに切り替える。
【0030】プリンタ装置に設定される解像度モード
が、高解像度モードから低解像度モードに切り替えられ
ることで、フレームバッファ416として用られるエリ
アが減少する。これにより生じる不使用エリアをパケッ
トバッファ414の追加エリアとして用いることで、印
字処理を続行することを可能とする。
【0031】(3)メインルーチン 図5は、本発明のプリンタ装置のメインルーチンを示す
図である。プリンタ装置の電源がONされた場合、ま
ず、プリンタ装置内部の各機能ブロックの初期化が実行
される(ステップS1101)。次に、RAM305内
に割り当てられる受信データバッファエリア(受信デー
タバッファ408)、パケットバッファエリア(パケッ
トバッファ414)、フレームバッファエリア(フレー
ムバッファ416)、その他のメモリエリアに格納され
ている一時的なデータをクリアする(ステップS110
2)。この後に、各変数の初期化を実行する(ステップ
S103)。
【0032】受信データ処理(ステップS1104)で
は、ホスト301から受信したデータを分類し、それに
応じたパケットデータPI.Jの作成を行う。このパケッ
トデータPI.Jは、受信データからフレームバッファの
データを作成する際に用いられる所定単位の中間コード
データのことである。ここで、パケットデータPI.J
パラメータIはページ番号、パラメータJは、Iページ
のパケットNo.を示す(図6及び図7参照)。
【0033】メモリ制御(ステップS1105)では、
後に説明するようにメモリオーバフローの発生をチェッ
クする。ここで、メモリオーバフローを検出した場合に
は、これを操作パネル104に表示し、後に説明する解
像度制御処理(ステップS1106)を実行する。また
更に、後に説明するパケット処理(ステップS110
7)では、受信データ処理(ステップS1104)で作
成されたパケットデータPI.Jを読み出し、フレームバ
ッファ416に順次、ビットマップ展開を行う。
【0034】次に、ステップS1108において排紙要
求がされているか否かを調べる。ここで、排紙要求がさ
れている場合には(ステップS1108でYES)、プ
リントエンジン308のインターフェース制御部307
とのプリントシーケンスを処理しながらフレームバッフ
ァ416内のデータを送出するプリントコントロールを
行い、フレームバッファ416内に展開されているビッ
トマップデータをプリンタエンジン308へ出力する
(ステップS1109)。この後、続くパケットデータ
I.Jを格納するために、上記ステップS1109によ
りプリンタエンジンへ出力したビットマップデータに該
当するページのパケットデータPI.Jをパケットバッフ
ァ414から消去し、そのエリアを開放する(ステップ
S1110)。ここで、ページ番号を示す変数Iの値を
インクリメントする。また、ステップS1108におい
て、排紙要求がされない場合には、ステップS1104
に戻り、次の受信データの処理を実行する。
【0035】(4)各ルーチンの詳細な説明 次の図6は、メインルーチン内のステップS1104に
おける受信データ処理のフロチャートを示す。ステップ
S1120において、受信したデータは、プロトコル解
析部402によって解析され、インターフェース制御コ
マンド、印字データ等に識別される。プロトコル制御部
402により識別された印字データは、編集制御部40
4によりカーソル位置が計算され、中間コードデータで
あるパケットデータPI.Jが作成される。作成されたパ
ケットデータPI.Jは、一旦パケットバッファ414に
格納される。ここで、PI.Jは、パケットNo.を示し、
Iはページ番号、Jは、IページのパケットNo.を示
す。
【0036】図7に示されるように受信データは、通
常、所定の方式で圧縮されており、これを中間コードデ
ータであるパケットデータPI.Jに解析した場合、占有
するデータ量は増加する。このため、これが原因でメモ
リオーバフローが発生する。
【0037】またさらに、ステップS1120では、パ
ケットバッファ414に格納されたパケットデータP
I.Jが描画制御部412により読み出され、フレームバ
ッファ416にビットマップ展開される。
【0038】次の図8は、メインルーチン内のメモリ制
御処理(ステップS1105)のフロチャートを示す図
である。この処理は、メモリオーバフローを監視し、メ
モリオーバフローの発生時には、使用者に操作パネル1
04を介して警告を発し、解像度の切換を行うか否かの
判断を使用者に求める処理を実行する。また、使用者
は、メモリオーバフローが発生しなくとも任意に解像度
の変更を行うことができる。
【0039】まず最初に、ステップS1401におい
て、メモリオーバフローの検出を実行する。図9に示さ
れるように、ホストコンピュータ301からホストイン
ターフェース302を介して受信したデータは、RAM
305内に形成される受信データバッファ408に格納
される。このデータは、CPU306により読み出さ
れ、プロトコル解析部402及び編集制御部404によ
って中間コードデータであるパケットデータPI.Jとさ
れる。このパケットデータPI.Jは、図9に示されるよ
うにRAM305内に形成されるパケットバッファ41
4に格納される。ここで、編集制御部404により形成
されたパケットデータPI.Jは、RAM305内のパケ
ットバッファエリアの下位アドレスから順に格納される
(図7参照)。CPU306は、パケットデータPI.J
を格納するに従って、順次アドレスを増加する。
【0040】CPU306は、この後、パケットデータ
I.Jを順に読み出し、描画制御部405によりビット
マップデータに変換した後に、RAM305内に形成さ
れるフレームバッファ416に該ビットマップデータを
展開する。フレームバッファ416に展開されたビット
マップデータはイメージ展開部406により所定の圧縮
方式によって圧縮されたイメージデータに変換され、プ
リンタエンジンへ出力される。
【0041】メモリオーバフローは、CPU306が受
信バッファ408から受信データを読み出し、これをパ
ケットデータPI.Jへ変換した後、パケットバッファ4
14へ格納する際に生じる。ステップS1401では、
パケットデータPI.Jを書き込むためにアクセスするR
AM305のアドレスが図9に示すパケットバッファエ
リアの上位アドレスの値より大きくなった場合、メモリ
オーバフローが発生したと判断する。
【0042】ステップS1401でメモリオーバフロー
が検出された場合には、設定されている解像度モードが
高/低の何れであるかを状態フラグの値からチェックす
る。ここで、高解像度モードが設定されている場合(状
態フラグの値が1の場合)には、操作パネル104上の
表示部201に”メモリが足りません低解像度モードに
切り換えますか”の表示を行い(図2(b)参照)、使
用者のキー入力を待つ。ここで、使用者により解像度モ
ード変更キー208が押下された場合には(ステップS
1404でYES)、解像度切換フラグを1にセットし
て解像度切換要求を出力する(ステップS1405)。
【0043】上記ステップS1401において、メモリ
オーバフローが発生していない場合であっても(ステッ
プS1401でNO)、ステップS1406において使
用者による解像度モード変更キー208の入力を待ち、
使用者により解像度モード変更キー208が押下された
際には(ステップS1406でYES)、解像度切換フ
ラグに1をセットして解像度切換要求を出力する(ステ
ップS1405)。また、使用者により解像度モード変
更キー208が押下されず、コンティニュー・テストキ
ー209が押下された場合には(ステップS1406で
NO)、そのまま、リターンする。
【0044】上記ステップS1402において、低解像
度モードが設定されている場合(状態フラグの値が0の
場合)、もしくはステップS1404において、使用者
が解像度モード変更キー208を押下せず、コンティニ
ュー・テストキー209を押下した場合には、操作パネ
ル104上の表示部201に”メモリオーバフローで
す”の表示を行い(図2(c)参照)、エラー終了を行
う。
【0045】次の図10は、メインルーチン内の解像度
制御処理(ステップS1106)のフロチャートであ
る。この処理は、メモリ制御処理によって解像度切換要
求(解像度切換フラグの値が1)が出力されている場
合、解像度モードの切換処理を実行する。
【0046】まず最初に、解像度切換フラグの値を調
べ、値が1の場合には、解像度切換要求が出力されてい
ると判断して(ステップS1501でYES)、以下の
処理を実行する。まずステップS1502でパケットバ
ッファ414から読み出すパケットデータPI.Jのパラ
メータJの値を1とする(パラメータIの値は保持す
る)。次のステップS1503において、上記ステップ
S1502の処理を実行することで不要となるビットマ
ップデータの格納されているフレームバッファエリアを
開放し、このエリアをパケットバッファ414の追加エ
リアとして用いる(図11参照)。次のステップS15
04において、状態フラグの値が1の場合には0に変更
し、また、状態フラグの値が0の場合には1に変更して
解像度モードの切換を行う。また、解像度切換フラグの
値をリセットして0とする。
【0047】次の図12は、メインルーチン内のパケッ
ト処理(ステップS1107)のフロチャートを示す図
である。この処理は、パケットバッファ414の読み出
し位置にあるパケットデータPI.Jの制御を行う。
【0048】ステップS1601では、パケットバッフ
ァ414の読み出し位置のパケットデータPI.Jが印字
パケットであるのか制御パケットであるのかを判断す
る。ここで、パケットデータが印字パケットである場合
には(ステップS1601でYES)、パケットバッフ
ァ414に格納されるパケットデータPI.Jを、後に説
明するように描画制御部405によって処理し、フレー
ムバッファ416に出力する(ステップS1602)。
一方、ステップS1601におけるパケットが制御パケ
ットである場合には(ステップS1601でNO)、改
行等の設定された各制御処理を実行する(ステップS1
610)。上記処理の後にパケットバッファ414の読
み出し位置(ポインタ)の値Jに1を加算する(ステッ
プS1605)。
【0049】次の図13は、図12に示したパケット処
理(ステップS1107)のルーチン内のステップS1
602の処理フロチャートを示す図である。このフロチ
ャートは、パケットバッファ414に格納されているパ
ケットデータPI.Jを、使用者により設定されている解
像度モードでフレームメモリ416にビットマップ展開
するための処理である。
【0050】まずステップS1701において、現在、
プリンタ本体に設定されている解像度モードを、状態フ
ラグの値から調べる。ここで、高解像度モードが設定さ
れている場合(ステップS1701でYES)、パケッ
トデータの設定解像度が高解像度(400dpi)であ
るのか、低解像度(200dpi)であるのかを判断す
る(ステップS1702)。
【0051】パケットデータの設定解像度が高解像度
(400dpi)である場合には(ステップS1702
でYES)、そのままパケットデータPI.Jの指示通り
に描画位置を設定し(ステップS1703)、フレーム
バッファ416にビットマップデータを展開する(ステ
ップS1704)。
【0052】一方、パケットデータの設定解像度が低解
像度(200dpi)である場合には(ステップS17
02でNO)、パケットデータの保管処理を行い、パケ
ットデータを高解像度相当(400dpi)に編集した
後(ステップS1705)、描画位置を設定し(ステッ
プS1703)、フレームバッファ416に展開する
(ステップS1706)。
【0053】ここで、低解像度(200dpi)に設定
されているパケットデータPI.Jから高解像度(400
dpi)のビットマップデータを形成し、フレームバッ
ファ416に展開するには、パケットデータPI.Jから
形成されるビットマップデータd(x,y)の各々を図
16に示すように、4個づつフレームバッファ416に
展開することで達成される。なお、上記データのパラメ
ータxは、列アドレス、パラメータyは、行アドレスで
ある。また、データd(x,y)は、座標(x,y)に
おける画素の濃度データを表す。1つの画素のビットマ
ップデータd(x,y)は、フレームバッファ416の
アドレス(2x−1,2y−1)、(2x,2y−
1)、(2x−1,2y)、(2x,2y)に書き込ま
れる。
【0054】また、ステップS1701において、現
在、低解像度モードが設定されている場合、ステップS
1702の場合と同様にパケットデータPI.Jの設定解
像度が高解像度(400dpi)であるのか低解像度
(200dpi)であるのかを判断する(ステップS1
706)。
【0055】パケットデータPI.Jの設定解像度が高解
像度(400dpi)である場合には(ステップS17
06でYES)、ビットマップデータの間引き処理を実
行し(ステップS1707)、データを低解像度相当
(200dpi)に減少し、描画位置を決定してから
(ステップS1703)、フレームバッファ416にビ
ットマップ展開する(ステップS1704)。
【0056】一方、ステップS1706において、パケ
ットデータPI.Jの設定解像度が低解像度(200dp
i)であった場合には(ステップS1706でNO)、
そのままパケットデータPI.Jの指示通りに描画位置を
設定し(ステップS1703)、フレームバッファ41
6にビットマップ展開する(ステップS1704)。
【0057】上記ステップS1707におけるビットマ
ップデータの間引き処理は、以下のように実行される。
編集制御部404において、受信データを解析して得ら
れるパケットデータPI.Jには、フレームバッファエリ
アにビットマップ展開するアドレスとデータd(x,
y)が含まれている。データd(x,y)のパラメータ
xは、列アドレス、パラメータyは、行アドレスを表
し、d(x,y)は、座標(x,y)にある画素の濃度
データを表す。
【0058】図17に示されるようにパケットデータP
I.Jを解析して得られるビットマップデータのうち、
x,y座標の偶数アドレスに在るビットマップデータd
(x,y)を放棄し、奇数アドレスにあるビットマップ
データをフレームバッファエリアに展開する。即ち、パ
ケットデータPI.Jから形成されるビットマップデータ
d(x,y)の内、パラメータx及びyの値が共に奇数
であるデータd(x,y)をフレームメモリ416のア
ドレス((x+1)/2,(y+1)/2)に書き込
み、1/4にデータの量を減少させる。
【0059】ところが、高解像度(400dpi)のパ
ケットデータPI.Jを低解像度(200dpi)に間引
き、フレームバッファ416に展開されたビットマップ
データをそのまま印字部へ出力すると、図14に示され
るように、例えば原稿がA4の場合には1/4のA6に
縮小されて印字出力される。これに対処するため、図1
5に示されるように基準クロックに対するデータの読み
出し速度を1/2に減少させ、受信したサイズ(A4な
らA4)で印字出力を実行する。即ち、図示されるよう
に、パケットデータの設定解像度が高解像度である場合
に、高解像度モードで印字出力する場合には、基準クロ
ックの立ち上がりタイミング2回に1度の割合でフレー
ムバッファ416に格納されたビットマップデータを読
み出すが、パケットバッファエリアがオーバフローを発
生し、低解像度モードに切り替えられ、上記間引き処理
が実行されてフレームバッファ416に書き込まれたビ
ットマップデータは、基準クロックの立ち上がりタイミ
ング4回に1度の割合でプリンタエンジンへ出力され
る。
【0060】以上のような構成を採ることで、メモリオ
ーバフローの発生時には、使用者の意志によって、設定
解像度を変更することができる。このため、従来と比較
してオーバフローに対して迅速に対処することが可能と
なる。
【0061】また、本実施例では、メモリオーバフロー
が発生した際には、使用者にその対応を選択させるよう
にしているが、本発明はこれに限定されるものではな
い。パケットデータPI.Jから形成されるビットマップ
データが高解像度(400dpi)の場合であって、R
AM305がオーバフローを発生した際、メモリ制御処
理において自動的に解像度を低解像度(200dpi)
に切り替え、印字処理を続行するようにしても良い。
【0062】また、解像度を切り替えるのでなく、フレ
ームバッファ416がA4サイズ用に設定されている場
合であって、受信データのサイズがB5の場合、フレー
ムバッファ416の余りのエリアをパケットバッファ4
14がオーバフローを発生した場合の追加エリアとして
使用することで印字処理を続行可能とするものであって
も良い。
【0063】
【発明の効果】本発明のプリンタ装置を用いることで、
プリンタ装置に備えられる受信データ、中間コードデー
タ、ビットマップデータ等を格納する記憶手段のメモリ
がオーバフローを発生した際であっても、記憶手段に展
開するビットマップデータの解像度を減少させることで
不使用エリアを形成し、これを用いて印字処理を続行す
ることが可能となる。
【図面の簡単な説明】
【図1】 プリンタ本体の全体構成図である。
【図2】 (a)〜(c)は、操作パネル104の正面
図である。
【図3】 プリンタのシステム構成図である。
【図4】 図3に示すシステム構成における各機能ブロ
ックを示す図である。
【図5】 本発明のプリンタ制御装置のメインルーチン
のフロチャートである。
【図6】 受信データ処理(ステップS1104)の処
理フロチャートを示す図である。
【図7】 受信データと、これを処理して得られる中間
コードデータであるパケットデータPI.Jとのメモリ容
量の比較を示す図である。
【図8】 メモリ制御処理(ステップS1105)の処
理フロチャートを示す図である。
【図9】 RAM305内のデータマップ及びデータの
流れを示す図である。
【図10】 解像度制御処理(ステップS1106)の
処理フロチャートを示す図である。
【図11】 メモリオーバフローが発生した際、RAM
305内の使用ずみのフレームバッファエリアをパケッ
トバッファエリアとして用いる場合の例を示す図であ
る。
【図12】 パケット処理(ステップS1107)の処
理フロチャートを示す図である。
【図13】 パケットデータPI.Jをフレームメモリに
ビットマップ展開するための処理(ステップS160
2)の処理フロチャートを示す図である。
【図14】 解像度モードが低解像度モード(200d
pi)の場合に、フレームバッファエリアに展開された
高解像度(400dpi)のビットマップデータを所定
の演算処理により200dpiのビットマップデータに
間引く処理を実行した場合のフレームバッファエリアの
様子を示す図である。
【図15】 高解像度モード(400dpi)から低解
像度モード(200dpi)へ間引き処理が実行された
場合の画素クロックに対応するイメージデータの読み出
しタイミングを示すタイミングチャートを示す図であ
る。
【図16】 パケットデータPI.Jの設定解像度が低解
像度(200dpi)の場合に、印字モードが高解像度
モード(400dpi)の場合、フレームバッファ41
6に書き込むビットマップデータの処理の様子を示す図
である。
【図17】 パケットデータPI.Jの設定解像度が高解
像度(400dpi)の場合に、印字モードが低解像度
モード(200dpi)の場合、フレームバッファ41
6にビットマップデータを展開するための処理の様子を
示す図である。
【符号の説明】
104…操作パネル 301…ホスト 302…ホストインターフェース 303…ROM 305…RAM 306…CPU 307…エンジンインターフェース 308…プリンタエンジン

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 高解像度モードと低解像度モードを備
    え、受信データを中間コードデータに変換した後、これ
    に基づいてビットマップデータを作成し印字処理を実行
    するプリンタ装置であって、 中間コードデータを格納するエリアとビットマップデー
    タを格納するエリアを備える記憶手段と、 記憶手段のオーバフローを検出する検出手段と、 高解像度モードが設定されている場合であって、検出手
    段によりオーバフローが検出された場合、低解像度モー
    ドに設定を変更し、これにより生じる記憶手段の不使用
    エリアを、中間コードデータを格納するためのエリアと
    して使用し、印字処理を続行可能とするメモリ制御手段
    を備えることを特徴とするプリンタ装置。
  2. 【請求項2】 請求項1に記載されたプリンタ装置にお
    いて、 メモリ制御手段は、検出手段がオーバフローを検出した
    際、既に格納されている中間コードデータを使用して印
    字処理を続行することを特徴とするプリンタ装置。
  3. 【請求項3】 請求項1に記載されたプリンタ装置にお
    いて、 メモリ制御手段は、検出手段がオーバフローを検出した
    際、既に格納されている受信データを用いて再度、中間
    コードデータを作成し、該中間コードデータを用いて印
    字処理を続行することを特徴とするプリンタ装置。
JP23457192A 1992-09-02 1992-09-02 プリンタ装置 Pending JPH0679955A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23457192A JPH0679955A (ja) 1992-09-02 1992-09-02 プリンタ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23457192A JPH0679955A (ja) 1992-09-02 1992-09-02 プリンタ装置

Publications (1)

Publication Number Publication Date
JPH0679955A true JPH0679955A (ja) 1994-03-22

Family

ID=16973107

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23457192A Pending JPH0679955A (ja) 1992-09-02 1992-09-02 プリンタ装置

Country Status (1)

Country Link
JP (1) JPH0679955A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0712095A2 (en) 1994-10-28 1996-05-15 Seiko Epson Corporation Method and apparatus for image data compression

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0712095A2 (en) 1994-10-28 1996-05-15 Seiko Epson Corporation Method and apparatus for image data compression
US5852710A (en) * 1994-10-28 1998-12-22 Seiko Epson Corporation Apparatus and method for storing image data into memory

Similar Documents

Publication Publication Date Title
JPH05318840A (ja) 画像形成装置及びその方法
US5422985A (en) Output method
JPH05318838A (ja) 画像形成装置及びその方法
JPH0679955A (ja) プリンタ装置
JP3049158B2 (ja) 文字処理装置および文字処理装置の文字処理方法
JP4306973B2 (ja) 印刷制御装置およびデータ処理方法
JP2002373068A (ja) 印刷システム
JPH05324930A (ja) 画像形成装置及びその制御方法
JPH06210907A (ja) プリンタ制御方法及び装置
JP3167775B2 (ja) 画像形成方法及び装置
JP2846806B2 (ja) プリンタコントローラ
JPH0744687A (ja) 画像形成装置
JP3397514B2 (ja) 出力装置及び出力方法
JP2744025B2 (ja) 印字制御装置
JPH10202987A (ja) プリンタ装置
JPH0631989A (ja) ページプリンタの印字制御方法
JPH0537701A (ja) 画像記録装置
JPH1125041A (ja) 通信機能付きデータ処理装置およびそのプログラム記録媒体
JP3320229B2 (ja) 画像形成方法及びプリンタ制御システム
JP3359318B2 (ja) 印刷装置及び印刷制御方法及び印刷制御装置
JPH09174955A (ja) 印刷データ処理装置
JP3083026B2 (ja) 出力データの転送制御装置及び転送制御方法
JP2898153B2 (ja) 表示制御装置
JPH0725106A (ja) プリンタ装置
JPH0816336A (ja) 印刷装置および印刷装置の状態切替え方法