JP3591096B2 - ページプリンタの制御方法 - Google Patents
ページプリンタの制御方法 Download PDFInfo
- Publication number
- JP3591096B2 JP3591096B2 JP32477495A JP32477495A JP3591096B2 JP 3591096 B2 JP3591096 B2 JP 3591096B2 JP 32477495 A JP32477495 A JP 32477495A JP 32477495 A JP32477495 A JP 32477495A JP 3591096 B2 JP3591096 B2 JP 3591096B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- bitmap
- page
- stored
- area
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
Description
【発明の属する技術分野】
本発明は、ページプリンタにおいて、必要なメモリ容量を減少させる技術、あるいは、メモリ容量を増加させることなくメモリフルエラーの発生頻度を減少させる技術に関する。
【0002】
【従来の技術】
通常のページプリンタは1ページ分のビットマップメモリを備え、そのビットマップメモリに記憶されているビットマップに基づいて印刷手段を制御して1ページの所望の印刷を実行する。ここでビットマップはページ内の画素毎に1ビットの信号を持ち、その画素に対する印刷の有無を示すデータの並びをいう。近年高画質化の要望から画素数が多くなり、ビットマップメモリの必要容量も大容量化している。
【0003】
ページプリンタが機能するためには、その記憶手段のなかにビットマップメモリを確保する他、ホストコンピュータ(プリンタに印刷させるためのデータを生成するコンピュータをいう)から送られる頁記述コードを記憶するエリアや、その頁記述コードをビットマップに展開する処理に用いるワークメモリをも確保しなければならず、ビットマップメモリの必要容量が大容量化すると、それだけ他の処理のための記憶容量が減少し、メモリフルエラーが発生し易くなる。特に、グラフィクスを含む頁記述コードのデータ長は、ホストコンピュータを使用するオペレータがどれほど複雑な画面を作成するかによって変化し、それがために必要なワークエリアの容量も変化する。このためにプリンタの生産段階では、標準的な画面の複雑度を想定して必要容量を推定し、それに若干の猶余をもたせているものの、設計時に想定したよりも必要容量が多くなる画面が作成されるとメモリフルエラーの発生が避けられない。これを避けるためには大容量の記憶手段を用いざるを得なくなるが、そうするとプリンタの生産コストが増大してしまう。
【0004】
【発明が解決しようとする課題】
そこで本発明では、限られた容量のメモリを有効に活用し、必要なメモリ容量を減少させるか、あるいは同一のメモリ容量でありながらメモリフルエラーが発生しにくくする技術を実現する。
【0005】
【課題を解決するための手段】
本発明の一つの手段では、1ページ分のビットマップメモリを有するページプリンタの制御方法において、ページ内の一部領域に対するビットマップをその領域に対応するビットマップブロックメモリに記憶し、そのビットマップブロックメモリの使用状態を示す信号を対応する管理メモリに記憶し、管理メモリにビットマップブロックメモリの使用状態を示す信号が記憶されていれば、そのビットマップブロックメモリに記憶されているビットマップに基づいて印刷し、一方記憶されていなければ、そのビットマップブロックメモリの領域に対応する分の用紙送り指示を与え印刷をスキップさせることを特徴とする。
この方法によると、印刷処理の必要とされない領域に対応するビットマップブロックメモリを、他の処理のために使用しても、他の処理のためにそのビットマップブロックメモリに記憶されたデータに基づいた印刷が実行されず、所望の印刷が実行される。
この方法によると、限られた記憶容量のなかでメモリフルエラーの発生を低減し、高価な大記憶容量の記憶手段に対する必要性を低下できる。
【0006】
本発明の他の一つの手段は、頁記述コードをビットマップに展開する処理に用いられるワークメモリと、展開されたビットマップを記憶するビットマップメモリとを有するページプリンタの制御方法において、1ページを構成する複数個の領域についてそれぞれの領域毎にビットマップに展開し、展開されたビットマップをその領域に対応するビットマップブロックメモリに記憶し、そのビットマップブロックメモリの使用状態を示す信号を対応する管理メモリに記憶し、ワークメモリのメモリフル時に、前記管理メモリに使用状態を示す信号が記憶されていないビットマップブロックメモリをワークメモリとして使用することを特徴とする。
【0007】
この方法によると、印刷処理の必要とされない領域に対応するビットマップブロックメモリを用いて、ビットマップの展開処理が実行でき、仮にブロック分割しないでビットマップメモリを使用すればメモリフルエラーが発生する場合にもメモリフルエラーの発生を防止しつつ、ビットマップへの展開処理を継続することができる。
この方法によると、限られた記憶容量のなかでメモリフルエラーの発生を低減することができる。換言すると、メモリフルエラーの発生頻度を減少するために、大容量の記憶手段を使用する必要性を低減することができる。
【0008】
【発明の実施の形態】
この発明の好ましい実施の形態としては、図1に例示するように、頁記述コードを記憶する受信バッファ22と、その頁記述コードをビットマップに展開する処理手順を記憶しておくROM16と、その手順に基づいて処理を実行するCPU14と、その手順に基づいた処理を実行する際にデータを一時的に記憶するために用いられるワークメモリ24と、展開されたビットマップを記憶するビットマップメモリ28とを有するページプリンタ10において、
1ページ40を構成する複数個の領域42,44…ごとにビットマップブロックメモリ32,34…を設け、
各ビットマップブロックメモリ32,34…毎に、対応する領域42,44…のビットマップを記憶したか否かを示す信号を記憶しておく管理メモリ26を設け、
受信バッファ22内の頁記述コードをROM16の手順に従ってCPU14がビットマップに展開し、展開されたビットマップをその領域に対応するビットマップブロックメモリ32,34…に記憶する際に、そのビットマップブロックメモリに対応する管理メモリ26に使用状態を示す信号を記憶し、
ワークメモリ24のメモリフル時には、前記管理メモリ26に使用状態を示す信号が記憶されていないビットマップブロックメモリ(32,34…のうちの1つか2以上)を拡張されたワークメモリとして使用し、
印刷時には、管理メモリ26に使用状態を示す信号が記憶されているビットマップブロックメモリに記憶されているビットマップに基づいて印刷手段18を制御する。
【0009】
なおここでいう印刷手段18は印字ヘッドや印字ヘッドを左右動させる機構や用紙送り機構等で構成され、直接的に印刷処理に寄与する手段を総称する。これは印刷処理中、ROM16に記憶されている手順と、ビットマップメモリ28に記憶されているビットマップに基づいて、CPU14によって制御される。
なおRAM20は1つの素子で構成される必要はなく、物理的には複数個の素子で構成されてもよい。またこの発明は単色プリンタのみならず、カラープリンタに具現化することが可能である。特に、各色毎にビットマップメモリを持つ形式のカラープリンタには各色ごとにこの発明を適用することができる。
【0010】
【実施例】
次に本発明を具現化した一実施例について例示する。以下の実施例では、図2に示すページ40を印刷する場合を例にして説明を進める。また図2に示すように1頁を4つの領域42,44,46,48に分割し、各領域42,44,46,48ごとにビットマップブロックメモリ32,34,36,38を設けた例を示す。なお頁を分割する数は2以上であればよい。
【0011】
各ビットマップブロックメモリ32,34,36,38は各領域42,44,46,48の画素数に等しいビット数を有している。この実施例の場合、1頁が2481×3508の画素で構成される例を示し、各領域42,44,46,48の面積が等しいために、各ビットマップブロックメモリ32,34,36,38は2481×3508/4ビットの容量となっている。ビットマップメモリ内の特定アドレスは、ページ40内の特定画素に対応し、そのアドレスのデータによってその特定画素に対する印刷の有無が制御される。図2の場合、ページ40内に2つの円52,54が印刷される場合を例示している。
【0012】
図3は、ホストコンピュータ8から送られて受信バッファ22内に記憶される頁記述コードの内容を模式的に示しており、各図形の位置と形状等、印刷画面を定義するのに必要な情報を少ない記憶容量で含んでいる。この頁記述コードは、ホストコンピュータ8を使用するオペレータにとって記述し易いコードであり、データ容量が少ない反面、そのままでは印刷手段18の制御が困難である。印刷手段18を最終的に制御するには、ビットマップが必要とされる。ホストコンピュータ8から送られてくる頁記述コードは、インターフェイス12を介して、受信バッファ22に一旦記憶される。
【0013】
受信バッファ22に所定量の頁記述コードが入力されると、CPU14はROM16のプログラム(手順)に基づいて、頁記述コードで記述される図面に対応するビットマップを演算する。以後これをビットマップに展開するという。
この展開処理では、例示の場合、中心座標を(2000,2250)にもつ半径250の円を描くためには、どこの画素に対して印刷するかといった幾何学的演算を行なう。また頁記述コードの一部が文字コードであれば、予め用意されているその文字コードに対応するフォントROM(ROM16内に設けられている)内のビットマップを検索し、それをビットマップメモリ28にコピーする処理を行なう。
【0014】
図4(A) は、中心座標を(2000,2250)にもつ半径250の円を描くための頁記述コードをビットマップメモリ28に展開した様子を模式的に示す。なおビットマップメモリ28は、対応するアドレスのデータを対応する画素の空間位置に合わせて図示し、黒色はその画素に対する印刷を実現するデータに対応し、白色はその画素に対する印刷を実行しないデータに対応するように図示されている。ビットマップに展開する前においては、管理エリア26には、未使用ないしビットマップを記憶していない状態を示す情報が初期値として記憶されている。図4(A) の場合、ビットマップに展開した結果、領域46に対応するビットマップブロックメモリ36にビットマップが展開されて記憶されたのに対応して、領域46ないしブロックメモリ36に対応する管理エリア26−3に対して使用ないしビットマップが記憶されている状態を示す情報に書き変えられたことを示している。図4(B) はさらに続けて2つの図形コードをビットマップに展開したときの様子を示す。
【0015】
図5は、1頁の印刷処理を終了したあと、次のページの印刷をする間にCPU14がROM16内のブログラムによってRAM20を用いて処理する処理内容を示し、最初に管理エリア26−1〜26−4の内容を全部未使用状態に初期化し、ついでホストコンピュータ8からインターフェイス12を介して受信バッファ22に頁記述コードを記憶する(104)。所定量のコードが入力されたあと、ビットマップに展開し、ビットマップメモリ28にビットマップを記憶する(106)。このとき、ビットマップが記憶されたブロックメモリに対応する管理メモリに、使用ないしビットマップが記憶されたことを示す情報を書き加える(108)。これを全部の頁記述コードについて、1頁分が終了するまで繰返す(110)。
【0016】
頁記述データをビットマップに展開する処理ではワークメモリ24が使用される。このワークメモリ24には、例えば次ページに同様の図形を印刷するような場合に備えて、展開処理に用いたデータを蓄積記憶していくといった用い方がなされる。この結果、展開処理が進むほど、未使用のワークエリアが減少し、メモリフルといったことが生じ易くなる。
【0017】
例えば図4(B) は、中心座標を(1000,1875)に持つ半径500の円を記述するコードをビットマップに展開したときの様子を示している。この処理の実行中にワークメモリ24がメモリフルとなって、ビットマップへの展開処理が実行不能となることがあり得る。
【0018】
図6は、ROM16に記憶されている、ワークメモリ24のメモリフル時に実行される手順を示している。ワークメモリ24がメモリフルとなると処理202が実行され、最初の管理メモリ、この場合、管理メモリ26−1の情報が読み出され、これが使用済みか未使用かが判別される(204)。未使用ならば、それに対応するビットマップブロックメモリ32を拡張されたワークメモリとし(206)、その拡張されたワークメモリの容量で展開処理に必要な容量を確保できるか否かを判断する(208)。充分なワークメモリが確保されるのなら、以後ブロックメモリ32を拡張されたワークメモリとして処理を進める(216)。これによってメモリフル対策が達成される。1つのブロックメモリを拡張するだけでは足りないときには(208でNのとき)、最後のブロックにいたるまで(210)、次のブロック(212)が利用可能か否か検索し(204)、必要容量が確保されるまでビットマップブロックメモリを拡張されたワークメモリに転用していく(206)。最後のブロックメモリまで検索してもなお必要容量が確保できないとき、あるいは全部のブロックメモリにビットマップが展開されていてワークメモリとして使用できるブロックメモリが存在しなければ、メモリフルエラーの発生処理を行なう(214)。この場合はすべての記憶容量を無駄なく使用してもなおメモリフルとなる場合であり、本発明によっても克服することはできない。
【0019】
図4(B) は、2つ目の頁記述コードのビットマップへの展開処理の途中でワークメモリ24がメモリフルとなったのにもかかわらず、使用されていないビットマップブロックメモリ32を用いてビットマップに展開した結果、2つ目の円に対応するビットマップへの展開に成功した例を例示している。なおこの処理によってブロックメモリ34にもビットマップが記憶されたために、対応する管理メモリ26−3も使用状態に書き変えられている。
【0020】
図5の処理300以後は、1頁分をビットマップに展開したあと、印刷手段18を制御して印刷処理を実行するときの手順を示し、まず、最初に印刷する領域(この場合は42であるが下から印字する場合には48)に対応するビットマップブロックメモリ32に関する管理メモリ26−1に使用中を示す情報が記憶されているか否かを判別し、使用状態でなければ、エンジン(この場合印刷手段18)に領域42に対応する分だけ用紙を送る指示を与え(302)、領域42に対する印刷をスキップさせる(304)。この場合、用紙送り信号を送るかわりに、印刷しないことを指示するデータ(いわゆるNULLデータ)を領域42に対応する分だけエンジンに出力するようにしてもよい。一方使用中であれば、そのブロックメモリ中のビットマップをエンジン(印刷手段18)に送って、領域42内に印刷を実行する(308)。この場合、エンジン18はビットマップに基づいて制御され、そのビットマップは頁記述コードから展開されているために、頁記述コードに対する印刷が実行される。
以上の処理が最後のブロックメモリないし領域まで繰返され(312)、一頁分の印刷が実行される。
【0021】
前述の実施例では、ビットマップメモリ28によって一頁分のビットマップを記憶するビットマップメモリが構成され、そのビットマップメモリ28が領域42,44,46,48に対応してビットマップブロックメモリ32,34,36,38に区割される。そして各ビットマップブロックメモリに対応して管理メモリ26−1,26−2,26−3,26−4が設けられている。また図4(A) に典型的に例示されるように、ページ内の一部領域(この場合46)に対応するビットマップを、その領域に対応するビットマップブロックメモリ36に記憶し、そのときに、そのブロックメモリに対応する管理メモリ26−3に使用状態を示す信号を記憶し(図5の106,108)、印刷時には、使用状態を示す信号が記憶されているビットマップブロックメモリに記憶されているビットマップに基づいて印刷し(306,308)、未使用ブロックメモリのデータに基づく印刷は行なわれない(302,304)。
【0022】
さらにワークメモリ24のメモリフル時には、管理メモリ26−1〜4のうちの使用状態を示す信号が記憶されていないブロックを検索し(図6の204)、検索されたブロックをワークメモリとして使用する処理を実行する(206)。なおこの実施例では、領域を横縞状に区割したが、縦縞状に区割したり、格子状に区割することが可能であり、区割の態様に格別の制限はない。
【0023】
【発明の効果】
この結果、最も典型的には、一部の領域には非常な複雑な画形がある一方、他の領域には印刷しなくて済むような場合において、従来の技術によると、その一部領域に存在する複雑な画形のための処理でワークメモリがフルとなって印刷処理が実行できないような場合でも、ワークメモリがメモリフルとなる事態の発生が回避され、限られた記憶容量を有効に活用してメモリフルエラーの発生頻度を少なく押えることが可能となる。
【図面の簡単な説明】
【図1】本発明の好ましい実施の形態を模式的に示す図
【図2】印刷するページの一例を示す図
【図3】図2のページのための頁記述コードの内容を模式的に示す図
【図4】最初の円についてビットマップに展開した状態を模式的に示す図と、2番目の円についてビットマップに展開した状態を模式的に示す図
【図5】1頁の処理において実行する処理手順の全体の流れを示す図
【図6】メモリフル時において実行する処理手順を示す図
【符号の説明】
18 印刷手段(エンジン)
22 受信バッファ
24 ワークメモリ
26 管理メモリ
28 ビットマップメモリ
32,34,36,38 ビットマップブロックメモリ
Claims (2)
- 1ページ分のビットマップメモリを有するページプリンタの制御方法において、
ページ内の一部領域に対するビットマップをその領域に対応するビットマップブロックメモリに記憶し、
そのビットマップブロックメモリの使用状態を示す信号を対応する管理メモリに記憶し、
管理メモリにビットマップブロックメモリの使用状態を示す信号が記憶されていれば、そのビットマップブロックメモリに記憶されているビットマップに基づいて印刷し、一方記憶されていなければ、そのビットマップブロックメモリの領域に対応する分の用紙送り指示を与え印刷をスキップさせることを特徴とするページプリンタの制御方法。 - 頁記述コードをビットマップに展開する処理に用いられるワークメモリと、展開されたビットマップを記憶するビットマップメモリとを有するページプリンタの制御方法において、
1ページを構成する複数個の領域についてそれぞれの領域毎にビットマップに展開し、
展開されたビットマップをその領域に対応するビットマップブロックメモリに記憶し、
そのビットマップブロックメモリの使用状態を示す信号を対応する管理メモリに記憶し、
ワークメモリのメモリフル時に、前記管理メモリに使用状態を示す信号が記憶されていないビットマップブロックメモリをワークメモリとして使用することを特徴とするページプリンタの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP32477495A JP3591096B2 (ja) | 1995-12-13 | 1995-12-13 | ページプリンタの制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP32477495A JP3591096B2 (ja) | 1995-12-13 | 1995-12-13 | ページプリンタの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09164729A JPH09164729A (ja) | 1997-06-24 |
JP3591096B2 true JP3591096B2 (ja) | 2004-11-17 |
Family
ID=18169531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP32477495A Expired - Fee Related JP3591096B2 (ja) | 1995-12-13 | 1995-12-13 | ページプリンタの制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3591096B2 (ja) |
-
1995
- 1995-12-13 JP JP32477495A patent/JP3591096B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09164729A (ja) | 1997-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8422046B2 (en) | Print setting based reprinting | |
JP3018337B2 (ja) | 画像処理装置 | |
US20060061794A1 (en) | Method of drawing image, circuit therefor, and image output control apparatus | |
JP6385406B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
US5136688A (en) | Print data processing apparatus for an image forming apparatus | |
JPH0345076A (ja) | 画像データの処理方式 | |
JP3591096B2 (ja) | ページプリンタの制御方法 | |
EP1398688A2 (en) | Information processing apparatus, image formation apparatus, drawing processing method | |
JP2001096854A (ja) | 印刷処理装置および印刷処理方法 | |
JP2003051929A (ja) | 画像処理方法及び装置 | |
JP3450961B2 (ja) | 印刷装置及びその制御方法 | |
JPH09240073A (ja) | 印刷制御方法及び装置及び該装置を含む印刷システム及び前記方法を実施する制御手順を記憶した記憶媒体 | |
JPH10151815A (ja) | 印刷処理装置 | |
JP3636891B2 (ja) | カラー画像出力方法 | |
JP2006215918A (ja) | 画像処理装置および画像処理方法 | |
JP2715475B2 (ja) | 図形出力装置 | |
JP3018692B2 (ja) | 印字装置 | |
JP3143118B2 (ja) | プリンタ及び印字イメージパターン展開方法 | |
JP3129133B2 (ja) | カラー印刷装置 | |
JP2000255116A (ja) | 印刷処理装置および印刷処理方法 | |
JPH086542A (ja) | 文字フォント及び該文字フォントのパターン展開方法及び装置 | |
JP3651214B2 (ja) | 印刷処理装置及び印刷処理方法 | |
JPH08216462A (ja) | 印刷装置およびその制御方法 | |
JPH07274011A (ja) | 画像形成方法及び装置 | |
JPH07137355A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20031219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040203 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040303 |
|
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: 20040803 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040816 |
|
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: 20070903 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080903 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090903 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090903 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100903 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100903 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110903 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110903 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120903 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130903 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |