JP3507387B2 - ホストコンピュータおよびプリンタドライバによる文字印字処理方法 - Google Patents
ホストコンピュータおよびプリンタドライバによる文字印字処理方法Info
- Publication number
- JP3507387B2 JP3507387B2 JP2000029291A JP2000029291A JP3507387B2 JP 3507387 B2 JP3507387 B2 JP 3507387B2 JP 2000029291 A JP2000029291 A JP 2000029291A JP 2000029291 A JP2000029291 A JP 2000029291A JP 3507387 B2 JP3507387 B2 JP 3507387B2
- Authority
- JP
- Japan
- Prior art keywords
- character
- data
- registered
- printed
- font 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.)
- Expired - Fee Related
Links
Landscapes
- Record Information Processing For Printing (AREA)
Description
タから文字のイメージデータをプリンタ等の印刷装置に
登録し、同一の文字を印字する際に印刷装置に登録され
ているイメージデータを再利用して印字を行なうホスト
コンピュータおよびプリンタドライバによる文字印字処
理方法に関する。
ュータ内に文字イメージデータを生成する機能を有し、
ディスプレイおよびプリンタにそれぞれ解像度に応じた
文字イメージデータを作成し、作成された文字イメージ
データをディスプレイおよびプリンタに転送することに
より、ディスプレイ上に表示された文字と同一のデザイ
ンでプリンタに印字を行なういわゆるWYSIWYGの
印字環境が実現されている。
のイメージデータを1文字毎に転送する方法が行なわれ
てきた。また、一度転送した文字イメージデータをプリ
ンタ内に記憶しておき、同一の文字を印字するときには
記憶された文字イメージデータを再利用するといった方
法が用いられている。
印刷システムでは、印字の際にフォントの種類、大き
さ、修飾などのフォントに関する情報と文字コードとを
使用して文字の印字を行なう場合に較べ、文字イメージ
データをプリンタに転送する場合には転送されるデータ
量が大きくなり、印字速度が低下するといった問題があ
った。
ータを記憶しておく場合、文字イメージデータのデータ
量が大きくなるので、RAMの空き容量が減り、プリン
ト処理速度を低下させてしまうといった問題があった。
らプリンタに転送するデータ量を減少させることにより
印字速度およびプリント処理速度を向上できるホストコ
ンピュータおよびプリンタドライバによる文字印字処理
方法を提供することを目的とする。
に、本発明の請求項1に記載のホストコンピュータは、
印刷装置にインターフェースを介して接続されるホスト
コンピュータであって、印刷すべき文字のフォントデー
タが前記印刷装置に登録されているか否かを判別する判
別手段と、前記判別手段により印刷すべき文字のフォン
トデータが前記印刷装置に登録されていないと判別され
た場合、印刷すべき文字のフォントデータを追加登録可
能か否かを判定する判定手段と、前記判定手段により印
刷すべき文字のフォントデータを追加登録可能でないと
判定された場合、印刷すべき文字毎のイメージ描画コマ
ンドを前記印刷装置に転送し、前記判定手段により印刷
すべき文字のフォントデータを追加登録可能であると判
定された場合、印刷すべき文字のフォントデータを登録
するコマンド及び登録した文字を印字する登録文字印字
コマンドを前記印刷装置に転送する転送手段とを有する
ことを特徴とする。
は、請求項1に係るホストコンピュータにおいて、前記
フォントデータは、アウトラインフォントデータよりラ
スタライズされたフォントデータを含むことを特徴とす
る。
は、請求項1に係るホストコンピュータにおいて、前記
転送手段は、前記判定手段により印刷すべき文字のフォ
ントデータを追加登録可能であると判定された場合、前
記印刷装置のフォントデータを登録するメモリの空き容
量を更新し、印刷すべき文字の圧縮したフォントデータ
を登録するコマンド及び登録した文字を印字する登録文
字印字コマンドを前記印刷装置に転送し、前記判定手段
は、印刷すべき文字のフォントデータのサイズと前記印
刷装置のフォントデータを登録するメモリの空き容量と
に基づき、印刷すべき文字のフォントデータを追加登録
可能か否かを判定することを特徴とする。
は、請求項1に係るホストコンピュータにおいて、前記
判別手段は、前記ホストコンピュータに記憶される前記
印刷装置に登録されたフォントデータを識別するための
登録文字管理テーブルに基づき、判別することを特徴と
する。
る文字印字処理方法は、プリンタドライバによる文字印
字処理方法であって、印刷すべき文字のフォントデータ
が印刷装置に登録されているか否かを判別する判別ステ
ップと、前記判別ステップにより印刷すべき文字のフォ
ントデータが前記印刷装置に登録されていないと判別さ
れた場合、印刷すべき文字のフォントデータを追加登録
可能か否かを判定する判定ステップと、前記判定ステッ
プにより印刷すべき文字のフォントデータを追加登録可
能でないと判定された場合、印刷すべき文字毎のイメー
ジ描画コマンドを前記印刷装置に転送し、前記判定ステ
ップにより印刷すべき文字のフォントデータを追加登録
可能であると判定された場合、印刷すべき文字のフォン
トデータを登録するコマンド及び登録した文字を印字す
る登録文字印字コマンドを前記印刷装置に転送する転送
ステップとを有することを特徴とする。
る文字印字処理方法では、請求項5に係るプリンタドラ
イバによる文字印字処理方法において、前記フォントデ
ータは、アウトラインフォントデータよりラスタライズ
されたフォントデータを含むことを特徴とする。
る文字印字処理方法では、請求項5に係るプリンタドラ
イバによる文字印字処理方法において、前記転送ステッ
プは、前記判定ステップにより印刷すべき文字のフォン
トデータを追加登録可能であると判定された場合、前記
印刷装置のフォントデータを登録するメモリの空き容量
を更新し、印刷すべき文字の圧縮したフォントデータを
登録するコマンド及び登録した文字を印字する登録文字
印字コマンドを前記印刷装置に転送し、前記判定ステッ
プは、印刷すべき文字のフォントデータのサイズと前記
印刷装置のフォントデータを登録するメモリの空き容量
とに基づき、印刷すべき文字のフォントデータを追加登
録可能か否かを判定することを特徴とする。
る文字印字処理方法では、請求項5に係るプリンタドラ
イバによる文字印字処理方法において、前記判別ステッ
プは、前記ホストコンピュータに記憶される前記印刷装
置に登録されたフォントデータを識別するための登録文
字管理テーブルに基づき、判別することを特徴とする。
よる文字印字処理方法の実施の形態について説明する。
図1は第1の実施の形態における印刷システムの構成を
示すブロック図である。図において、3000はホスト
コンピュータであり、ROM3のプログラム用ROMあ
るいは外部メモリ11に記憶された文書処理プログラム
などに基づいて、図形、イメージ、文字、表(表計算等
を含む)などが混在した文書処理を実行するCPU1を
備える。CPU1はシステムバス4に接続された各デバ
イスを総括的に制御する。
いは外部メモリ11は、CPU1の制御プログラムであ
るオペレーティングシステム(以下、OSという)など
を記憶し、ROM3のフォント用ROMあるいは外部メ
モリ11は文書処理の際に使用するフォントデータなど
を記憶し、ROM3のデータ用ROMは文書処理等を行
う際に使用する各種データを記憶する。
るいはワークエリアなどとして機能する。5はキーボー
ドコントローラ(KBC)であり、キーボード(KB)
9や図示しないポインティングデバイスからのキー入力
を制御する。6はCRTコントローラ(CRTC)であ
り、CRTディスプレイ(CRT)10の表示を制御す
る。7はディスクコントローラ(DKC)であり、ブー
トプログラム、各種のアプリケーション、フォントデー
タ、ユーザファイル、編集ファイル、文字イメージデー
タ生成プログラム(フォントラスタライザ)、プリンタ
制御コマンド生成プログラム(プリンタドライバ)など
を記憶するハードディスク(HD)、フロッピーディス
ク(FD)などの外部メモリ11とのアクセスを制御す
る。
あり、所定の双方向性インターフェース(インターフェ
ース)21を介してプリンタ1500に接続されてプリ
ンタ1500との通信制御を実行する。
れた表示情報RAMへのアウトラインフォントの展開
(ラスタライズ)処理を実行し、CRT10のWYSI
WYGを可能にしている。また、CPU1はCRT10
の図示しないマウスカーソルなどで指示されたコマンド
に基づいて登録された種々のウィンドウを開き、種々の
データ処理を実行する。
であり、ROM13のプログラム用ROMに記憶された
制御プログラム等、あるいは外部メモリ14に記憶され
た制御プログラム等に基づいてシステムバス15に接続
された印刷部(プリンタエンジン)17に出力情報とし
ての画像信号を出力する。
は、CPU12の制御プログラム等が記憶される。RO
M13のフォント用ROMにはハードディスクなどの外
部メモリ14がないプリンタの場合には、ホストコンピ
ュータ3000で利用される情報などを記憶する。CP
U12は入力部18を介してホストコンピュータ300
0との通信処理が可能であり、プリンタ1500内の情
報などをホストコンピュータ3000に通知する。
ア等として機能するRAMであり、図示しない増設ポー
トに接続されるオプションRAMによりメモリ容量を拡
張できる。
データ格納領域、NVRAMなどに用いられる。前述し
たハードディスク(HD)、ICカードなどの外部メモ
リ14はメモリコントローラ(MC)20によりアクセ
ス制御される。外部メモリ14はオプションとして接続
され、フォントデータ、エミュレーションプログラム、
フォームデータなどが記憶される。1501は操作パネ
ルに設けられた操作部であり、操作パネルにはスイッチ
およびLED表示器などが配されている。
らず、内蔵フォントに加えてオプションフォントカード
や言語系の異なるプリンタ制御言語を解釈するプログラ
ムを格納した外部メモリを複数個接続できる。
パネルに設けられた操作部1501からのプリンタモー
ド設定情報を記憶するようにしてもよい。
ドライバによる文字印字処理ルーチンを示すフローチャ
ートである。まず、プリンタドライバをコントロールし
ているホストコンピュータ3000のオペレーティング
システム(OS)あるいはアプリケーションから印字デ
ータを受け取る(ステップS21)。
字イメージデータが既にプリンタに登録済であるか否か
を判別する(ステップS22)。登録済であると判別さ
れたとき、登録された文字を印字する命令(コマンド)
を生成する(ステップS28)。
たとき、ステップS21で受け取った印字データを基に
文字イメージデータをフォントラスタライザから取得す
る(ステップS23)。取得された文字イメージデータ
を圧縮し(ステップS24)、圧縮された文字イメージ
データをプリンタ1500に登録するプリンタコマンド
を生成し(ステップS25)、生成されたプリンタコマ
ンドをプリンタ1500に転送する(ステップS2
6)。
1500に登録済であることを示すフラグをセットし
(ステップS27)、プリンタ1500に登録されてい
る文字を印字するコマンドを生成し(ステップS2
8)、登録文字の印字コマンドをプリンタ3000に転
送して(ステップS29)終了する。
いての具体例を説明する。ステップS21における印字
データの取得は、プリンタドライバを制御するOSやア
プリケーションとのインターフェースがどのように実現
されているか否かに依存し、具体例ではOSから以下の
ような印字データを取得する場合を示す。
タが登録済か否かを判別する登録判別処理ルーチンを示
すフローチャートである。この登録判別処理では、プリ
ンタドライバによって管理される文字登録管理テーブル
を使用する。文字登録管理テーブルは各文字の文字イメ
ージデータがプリンタに既に登録済であるか否かを示
す。例えば、総ての文字コードに対して1文字1ビット
で登録済、未登録を表現する。文字イメージデータをプ
リンタ1500に登録する際に、文字登録管理テーブル
中の該当する文字を示す位置に登録済のフラグをセット
する。ここでは、Code、FaceName、Style、Pointによっ
て文字が確定するようなフォント環境を想定している
が、フォント環境がこれと異なる場合であっても、文字
登録管理テーブル中に文字を特定するのに十分なデータ
が含まれていればよい。
が一致するものを1つの文字セットとして管理し、同一
の文字セットに属する文字に対しては1つの文字登録管
理テーブルを使用する。1つの文字登録管理テーブルは
以下に示す内容を有する。
(ステップS31)。続いて、変数iが文字登録管理テ
ーブルの数Nより小さいか否かを判別して文字登録管理
テーブルが最後の文字登録管理テーブルに達したか否か
を調べる(ステップS32)。
いとき、文字登録管理テーブルTable[i]のFaceName、St
yle、PointがすべてステップS21で取得した印字デー
タのFaceName、Style、Pointと一致するか否かを調べ
(ステップS33)、一致する場合にはそのTable[i]の
文字コードがCodeの文字が登録済であるか否かを示
すフラグFlagTable[Code]のON/OFFを調べる(ス
テップS34)。
登録済であると判定して(ステップS37)処理を終了
する。FlagTable[Code]=OFFである場合には、未登録で
あると判定して処理を終了する。
ble[i]のデータが印字データの各データと異なる場合に
は、変数iをインクリメントしてステップS32に戻り
(ステップS35)、次の文字登録管理テーブルの処理
に移行する。
タに一致するものが存在しなかった場合には未登録と判
定して(ステップS36)本ルーチンを終了する。
タの取得処理では、ステップS21で取得した印字デー
タに基づいて、フォトラスタライザから印字に使用する
文字イメージデータを取得する。
ントなどのスケーラブルなフォントの文字イメージデー
タを作成するプログラムであり、図1のROM3のプロ
グラムROMあるいは外部メモリ11に格納され、RA
M2にロードされて実行される。文字イメージデータを
取得するために必要なデータは、フォントラスタライザ
を管理するOSなどの仕様に依存するが、ここでは前記
印字データに必要なデータがすべて含まれているものと
し、以下に示すデータをフォントラスタライザに渡すこ
ととする。
タと共に、以下のようなデータを取得できる。
文字イメージデータの圧縮を行う。ここでは、様々な圧
縮方法を使用することが可能である。但し、元のイメー
ジデータが文字のイメージデータに限定されるので、例
えば2次元ランレングス、MR、MMR他、文字の圧縮
に効果的な圧縮方法を採用することが望ましい。本実施
の形態では、圧縮の一例として、公知の手法であるWyle
の符号化によるランレングス圧縮法を用いた場合を示
す。
タライザから得た場合を示す説明図である。イメージデ
ータはイメージの左上の点のデータから横一ラインのデ
ータが続き、順次その下のラインの左からのデータが続
くものとする。また、データ値はオフビットを値0、オ
ンビットを値1として得られる。この場合、どの文字イ
メージデータも256ビットで表現される。それぞれの
文字イメージのランレングスを記述すると次のようにな
る。
(0)から始まるものとし、上記ランレングスの最初の
値はオフビットのランレングスを示している。図5はラ
ンレングスの符号化の表を示す説明図である。例えば、
ランレングスがnの場合に(n−1)を求め、それを2
進数で符号化したものを*の部分に挿入したものが符号
化の結果となる。文字Eの先頭の36ならば、表の33
〜64に示す11110に続けて35を2進数で符号化
したデータ100011を繋げた1111010001
1が符号化の結果となる。以下に、上記それぞれの文字
イメージデータの符号化の結果をビット列で示す。これ
は、上記ランレングスを符号化したものである。
209ビット、171ビットに圧縮されている。
イメージデータをプリンタに登録するプリンタコマンド
を作成する。コマンドの例を以下に示す。
プリンタコマンドをインターフェース21を介してプリ
ンタ1500に転送する。図2のステップS27では、
文字登録管理テーブルにステップS26でプリンタ15
00に登録した文字のフラグをセットする。
示すフローチャートである。まず、この処理ルーチンで
使用する変数の初期化を行う(ステップS61)。続
く、ステップS62では、変数iが文字登録管理テーブ
ルの数Nより小さいか否かを判別して(ステップS6
2)、最後の文字登録管理テーブルに達したか否かを調
べる。
e、Style、Pointが全てステップS21で取得した印字
データのFaceName、Style、Pointと一致するか否かを調
べ(ステップS63)、一致する場合にそのTable[i]の
Codeで表される文字が登録済みであるか否かを示すFlag
Table[Code]にONをセットしてステップS64の処理
を終了する。
データの各データと異なる場合には、変数iをインクリ
メントして(ステップS65)ステップS62に戻り、
次の文字登録管理テーブルに関する処理に移行する。
の一致するものが存在しなかった場合には、新たに文字
登録管理テーブルを作成し(ステップS66)、その文
字登録管理テーブルのCodeで表される文字の登録フラグ
FlagTable[Code]をONにセットしてステップS67の
処理を終了する。
1500に登録済みの文字を印字するプリンタコマンド
を生成する。コマンドの例を以下に示す。
タコマンドをステップS26の場合と同様にプリンタ1
500に転送する。
るプリンタコマンド解析処理ルーチンを示すフローチャ
ートである。本ルーチンはプリンタコマンドを処理する
手順を示したものであり、通常の印刷時に繰り返し行わ
れる。
取り(ステップS71)、そのコマンドが文字イメージ
データ登録命令であるか、登録文字印字命令であるかを
調べる(ステップS72、S74)。文字イメージデー
タ登録命令であるとき、圧縮された文字イメージデータ
をプリンタ1500のRAM19あるいは外部メモリ1
4に格納して(ステップS73)本ルーチンを終了す
る。
字の圧縮された文字イメージデータをRAM19あるい
は外部メモリ14から読み出してデータを伸長し(ステ
ップS75)、伸長して得られた文字イメージデータを
描画する処理を行って(ステップS76)本ルーチンを
終了する。
字印字命令のいずれでもないとき、そのまま本ルーチン
を終了する。
体的な例を示す。プリンタコマンドの解析を行うプログ
ラムはROM13のプログラムROMまたは外部メモリ
14からRAM19にロードされて実行される。ホスト
コンピュータ3000から転送されてきたデータ(プリ
ンタコマンド)は、入力部18を経由し、前記プログラ
ムに取り込まれ、RAM19でコマンド単位に切り分け
られる。
受け取ると、受け取ったデータのプリンタコマンドを示
す部分がCommandであったとし、ステップS72ではC
ommandを文字イメージデータ登録命令RCと比較
する。
合に圧縮された文字イメージデータの格納を行う。受け
取ったデータは、前述のコマンド1の内容である。
る。
して、RAM19あるいは外部メモリ14に格納する。
格納の方法は、後で複数のエントリからCharSetIDとCod
eを頼りに特定の文字の圧縮された文字イメージデータ
を取得できるように行う。単にある領域に次々と並べて
いっても良いし、後の取得時の効率を考慮し、CharSetI
D毎にまとめて管理してもよい。ここでは、単に文字イ
メージデータ管理データ用としてRAM19に確保した
領域に、順次上記文字イメージ管理データを付け加えて
いくものとする。
でなかった場合には、ステップS74でCommand=DC
であるか否かを調べる。そうでない場合はステップS7
1で取得したプリンタコマンドが文字イメージデータ関
連のプリンタコマンドでないので、処理を終了する。
合に指定された文字イメージデータの伸長を行う。受け
取ったデータは前記コマンド2の内容である。
ている文字イメージデータ管理データのエントリから、
CharSetIDとCodeのデータが一致するエントリを検索
し、取得する。取得されるデータは前記データ5の内容
である。
データをRAM19で伸長する。伸長の方法は、図2の
ステップS24で使用した圧縮方法に応じた復号法で行
う。本実施の形態では、Wyleの符号化を用いたランレン
グス圧縮法を使用したので、ここではその復号を行い、
元の文字イメージデータを得る。
と、圧縮されたデータの先頭から最初の0が出てくるま
でのビット数を数え、それに1を加えたビット数のデー
タを続くデータからとり、それに1を加えたものを最初
のデータ(白)とする。
で5ビットであるので、その値0に続く(5+1)ビッ
トのデータ(100011=35)をとり、それに値1
を加えた値36が最初の白データのランレングスとな
る。以下に、圧縮されたデータと伸長データの一例を示
す。
れるとしてランレングスのデータに変換することができ
る。尚、ここでは簡単のために最初のデータは常に白を
仮定している。
理で得た文字イメージデータをRAM19からバス1
5、印刷部I/F16を経て印刷部17に転送し、描画
処理を行う。
プリンタ1500に転送してプリンタ1500内に登録
しておき、使用する時に登録しておいた文字イメージデ
ータを使用して文字の印字を行う印刷システムにおい
て、プリンタ1500に文字イメージデータを登録する
際に圧縮して転送し、転送するデータ量を減少させるこ
とにより印字速度を向上させることができる。また、プ
リンタのRAM19上に圧縮された文字イメージデータ
を記憶しておくことにより、RAM19上に記憶してお
くデータ量を減少させることができ、プリント処理速度
を向上させることができる。
の形態における印刷システムについて説明する。図8は
第2の実施の形態におけるプリンタドライバによる文字
印字処理ルーチンを示すフローチャートである。前記第
1の実施の形態と較べてステップS81、S82、S8
3、S84、S85の処理が加わっている。前記第1の
実施の形態と同一のステップには同一の番号が付されて
いる。
得した印字データの示す文字の文字イメージデータをプ
リンタに登録するべきか否かを判定するための基準とな
るデータを取得する。この判定の基準となるデータには
様々なものが存在するが、本実施の形態では以下のデー
タを判定の基準となるデータとする。
ている文字イメージデータ登録用メモリの容量であり、
FreeSizeはその空き容量である。RamSizeはそのメモリ
空間を文字イメージデータ登録に使用してもプリント処
理速度に低下を起こさないメモリサイズとする。RamSiz
eは、プリンタドライバが内部に固定データとして予め
持っているもので、何等かの手段で修正を行えるように
してもよい。
ズ(ixとiyの積)がFreeSizeより大きいか否かを比
較する。これは、文字イメージデータをメモリの空き領
域に追加登録可能であるか否かを調べる処理である。実
際には、文字イメージデータは圧縮されて格納されるの
で、圧縮後のデータサイズを使用するべきであるが、登
録をしないと判定した場合に圧縮処理が無駄になるの
で、ここでは圧縮したデータサイズは確実に圧縮前のサ
イズ以下という仮定の元で圧縮前のデータサイズを使用
している。
の登録時にメモリを使用する場合には、その使用するサ
イズを文字イメージデータのサイズに加えた値をFreeSi
zeと比較する必要がある。
判断されたとき、ステップS83ではFreeSizeの値を更
新する。前述の文字イメージデータ以外のデータにメモ
リを使用する場合はそのサイズもFreeSizeから減じる必
要がある。
判断されたときには、文字イメージデータをプリンタ1
500に転送して描画を行う。このとき、印字位置、文
字イメージデータの縦、横の大きさ、プリンタコマンド
を解析する上で必要とする総データサイズ(バイト数な
ど)を含む以下のようなプリンタコマンドを生成する
(ステップS84)。
(コマンド3)をインターフェース21を介してプリン
タ1500に転送する。
コマンド解析処理ルーチンを示すフローチャートであ
る。図7で示した処理と同一の処理には同一の番号が付
されている。
マンドがステップS84で生成されたイメージデータ描
画命令であるか否かを判別する。イメージデータ描画命
令と判別されたときには、ステップS76でのイメージ
データ描画処理を行う。
圧縮してプリンタ1500に転送してプリンタ内に登録
しておき、使用するときに伸長して文字の印字を行う印
刷システムにおいて、印字を行う文字によってプリンタ
1500に登録するか否かを判定し、プリンタのRAM
19に記憶しておくデータ量を減少させることにより、
プリント処理速度を向上させることができる。
の形態における印刷システムについて説明する。図10
は第3の実施の形態におけるプリンタドライバによる文
字印字処理ルーチンを示すフローチャートである。図2
に示した前記第1の実施の形態と較べてステップS10
1、S102の処理が加わっている。前記第1の実施の
形態と同一の処理には同一の番号が付されている。
取得した印字データの示す文字の文字イメージデータを
圧縮してプリンタ1500に登録するべきか否かを判定
するための基準となるデータの取得を行う。この判定の
基準となるデータには様々なものが存在するが、本実施
の形態では以下のデータを判定の基準となるデータとす
る。
ムが処理可能な最大イメージデータサイズ、およびプリ
ンタ内で伸長を行うプログラムが処理可能な最大イメー
ジデータサイズの内、小さい方の値に設定される。MaxS
izeは、プリンタドライバが内部に固定データとして予
め持っておく。
イズ(ixとiyの積)がMaxSizeより大きいか否かを
比較する。この処理は、文字イメージデータの圧縮処理
と伸長処理が可能であるか否かを調べる処理である。ス
テップS102で圧縮不可であると判断されたときには
文字イメージデータを圧縮せずにプリンタ1500に登
録する処理を行う。これに対処するために、ステップS
25の文字登録コマンドの生成処理で生成されるプリン
タコマンドを圧縮時およひ非圧縮時の両方で使用できる
ように以下のように修正する。
となり、CompressFlag=OFFの場合には非圧縮データ
となる。
タコマンド解析処理ルーチンを示すフローチャートであ
る。前記第2の実施の形態と同一の処理には同一の番号
が付されている。
タ登録命令2のCompressFlagデータがON(圧縮使用)
であるか否かを調べる。CompressFlagがONであるか、
あるいはOFFであるかによって、圧縮された文字イメ
ージデータを格納するか(ステップS73)あるいは圧
縮されていない文字イメージデータを格納する(ステッ
プS112)。受け取ったデータは前記コマンド4の内
容となる。ここで得られたデータから以下に示すデータ
を作成する。
ータ管理データの替わりに用いることにより、圧縮され
ている文字イメージデータと共に、圧縮されてない文字
イメージデータを登録することができる。
印字の際に、上記文字イメージデータ管理データ2のCo
mpressFlagの値を調べ、ONのときには文字イメージデ
ータの伸長(ステップS75)を行う。OFFのときに
はdataは圧縮されていないデータなので、ステップS7
5の処理を行わない。
圧縮してプリンタ1500に転送してプリンタ1500
内に登録しておき、使用する時に伸長して文字の印字を
行う印刷システムにおいて、印字を行う文字によって圧
縮して登録を行うか非圧縮で登録を行うかを判定し、ど
ちらのデータでもプリンタ1500のRAM19に格納
可能とすることにより、圧縮処理不可能および伸長処理
不可能な文字イメージデータの両方を登録して再利用す
ることができる。
おいて、使用する圧縮方法はプリンタに搭載されている
スケーラブルフォントのキャッシング時に使用する圧縮
方法と同様の圧縮方法を用い、プリンタフォントのキャ
ッシュされた文字イメージデータの伸長と、ホストコン
ピュータによって登録され圧縮された文字イメージデー
タの伸長との両方の伸長処理を同様の伸長処理プログラ
ムあるいは伸長処理装置によって処理を行うようにして
もよい。
の形態における印刷システムについて説明する。図12
は第4の実施の形態におけるプリンタドライバによる文
字印字処理ルーチンを示すフローチャートである。前記
第1、第2の実施の形態と同一の処理には同一の番号が
付されている。
は、印字を行う文字イメージデータを登録するか否かを
判定するための基準となるデータを取得する手段、およ
び前記印字を行う文字イメージデータを登録するか否か
を判定する手段に特徴を有する。
取得した印字データの示す文字のイメージデータをプリ
ンタ1500に登録するべきか否かを判定するための基
準となるデータの取得を行う。ここでは、以下のデータ
を取得する。
字イメージデータ登録用メモリの容量であり、FreeSize
はその空き容量である。RamSizeはそのメモリ空間を文
字イメージデータ登録に使用しても、プリント処理速度
の低下を起こさないメモリサイズとする。RamSizeは、
プリンタドライバが内部に固定データとして予め持って
おくものであり、このデータを何等かの手段で修正でき
るようにしてもよい。
対する使用頻度テーブルの値であるTable(Code)が、Th
(RamSize,FreeSize)で表される値以上であるか否かを比
較する。ここで、Tableは、文字コード毎にその文字の
使用頻度のデータを格納したテーブルである。本実施の
形態では、各文字コードに対して優先度最低の値0から
優先度最高の値4の5通りの数値で定義されているもの
で、予めプリンタドライバ内にデータとして持っている
ものであり、このデータを何等かの手段で修正できるよ
うにしてもよい。また、Th(RamSize,FreeSize)はRamSiz
eとFreeSizeに依存する関数で、RAMの消費率によっ
て以下のような数値を返す。
字の使用頻度を考慮した登録の判断を行う。
圧縮してプリンタ1500に転送してプリンタ1500
内に登録しておき、使用する時に伸長して文字の印字を
行う印刷システムにおいて、印字を行う文字によってプ
リンタ1500に登録するか否かを判定し、プリンタ1
500のRAM19に記憶しておくデータ量を減少させ
ることにより、プリント処理速度を向上させることがで
きる。
きるものであれば、単体の機器でも、複数の機器から構
成されるものでもよい。また、LANなどのネットワー
クを介して処理が行なわれるシステムであってもよい。
ら印刷装置に転送するデータ量を減少でき、印字速度お
よびプリント処理速度を向上できる。また、印刷すべき
文字によって印刷装置に登録するか否かを判定して印刷
装置の記憶容量の減少を抑えつつ、印字速度およびプリ
ント処理速度を向上できる。
を示すブロック図である。
よる文字印字処理ルーチンを示すフローチャートであ
る。
ータが登録済か否かを判別する登録判別処理ルーチンを
示すフローチャートである。
ら得た場合を示す説明図である。
る。
チャートである。
コマンド解析処理ルーチンを示すフローチャートであ
る。
よる文字印字処理ルーチンを示すフローチャートであ
る。
析処理ルーチンを示すフローチャートである。
による文字印字処理ルーチンを示すフローチャートであ
る。
解析処理ルーチンを示すフローチャートである。
による文字印字処理ルーチンを示すフローチャートであ
る。
Claims (8)
- 【請求項1】 印刷装置にインターフェースを介して接
続されるホストコンピュータであって、 印刷すべき文字のフォントデータが前記印刷装置に登録
されているか否かを判別する判別手段と、 前記判別手段により印刷すべき文字のフォントデータが
前記印刷装置に登録されていないと判別された場合、印
刷すべき文字のフォントデータを追加登録可能か否かを
判定する判定手段と、 前記判定手段により印刷すべき文字のフォントデータを
追加登録可能でないと判定された場合、 印刷すべき文字
毎のイメージ描画コマンドを前記印刷装置に転送し、前
記判定手段により印刷すべき文字のフォントデータを追
加登録可能であると判定された場合、印刷すべき文字の
フォントデータを登録するコマンド及び登録した文字を
印字する登録文字印字コマンドを前記印刷装置に転送す
る転送手段とを有することを特徴とするホストコンピュ
ータ。 - 【請求項2】 前記フォントデータは、アウトラインフ
ォントデータよりラスタライズされたフォントデータを
含むことを特徴とする請求項1記載のホストコンピュー
タ。 - 【請求項3】 前記転送手段は、前記判定手段により印
刷すべき文字のフォントデータを追加登録可能であると
判定された場合、前記印刷装置のフォントデータを登録
するメモリの空き容量を更新し、印刷すべき文字の圧縮
したフォントデータを登録するコマンド及び登録した文
字を印字する登録文字印字コマンドを前記印刷装置に転
送し、前記判定手段は、印刷すべき文字のフォントデー
タのサイズと前記印刷装置のフォントデータを登録する
メモリの空き容量とに基づき、印刷すべき文字のフォン
トデータを追加登録可能か否かを判定することを特徴と
する請求項1記載のホストコンピュータ。 - 【請求項4】 前記判別手段は、前記ホストコンピュー
タに記憶される前記印刷装置に登録されたフォントデー
タを識別するための登録文字管理テーブルに基づき、判
別することを特徴とする請求項1記載のホストコンピュ
ータ。 - 【請求項5】 プリンタドライバによる文字印字処理方
法であって、 印刷すべき文字のフォントデータが印刷装置に登録され
ているか否かを判別する判別ステップと、 前記判別ステップにより印刷すべき文字のフォントデー
タが前記印刷装置に登録されていないと判別された場
合、印刷すべき文字のフォントデータを追加登録可能か
否かを判定する判定ステップと、 前記判定ステップにより印刷すべき文字のフォントデー
タを追加登録可能でないと判定された場合、 印刷すべき
文字毎のイメージ描画コマンドを前記印刷装置に転送
し、前記判定ステップにより印刷すべき文字のフォント
データを追加登録可能であると判定された場合、印刷す
べき文字のフォントデータを登録するコマンド及び登録
した文字を印字する登録文字印字コマンドを前記印刷装
置に転送する転送ステップとを有することを特徴とする
プリンタドライバによる文字印字処理方法。 - 【請求項6】 前記フォントデータは、アウトラインフ
ォントデータよりラスタライズされたフォントデータを
含むことを特徴とする請求項5記載のプリンタドライバ
による文字印字処理方法。 - 【請求項7】 前記転送ステップは、前記判定ステップ
により印刷すべき文字のフォントデータを追加登録可能
であると判定された場合、前記印刷装置のフォントデー
タを登録するメモリの空き容量を更新し、印刷すべき文
字の圧縮したフォントデータを登録するコマンド及び登
録した文字を印字する登録文字印字コマンドを前記印刷
装置に転送し、 前記判定ステップは、印刷すべき文字のフォントデータ
のサイズと前記印刷装置のフォントデータを登録するメ
モリの空き容量とに基づき、印刷すべき文字のフォント
データを追加登録可能か否かを判定 することを特徴とす
る請求項5記載のプリンタドライバによる文字印字処理
方法。 - 【請求項8】 前記判別ステップは、前記ホストコンピ
ュータに記憶される前記印刷装置に登録されたフォント
データを識別するための登録文字管理テーブルに基づ
き、判別することを特徴とする請求項5記載のプリンタ
ドライバによる文字印字処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000029291A JP3507387B2 (ja) | 1995-02-09 | 2000-02-07 | ホストコンピュータおよびプリンタドライバによる文字印字処理方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4477695 | 1995-02-09 | ||
JP7-44776 | 1995-02-09 | ||
JP8026230A JP3061562B2 (ja) | 1995-02-09 | 1996-01-22 | 印刷システム、情報処理装置、情報処理方法、印字装置および印字方法 |
JP2000029291A JP3507387B2 (ja) | 1995-02-09 | 2000-02-07 | ホストコンピュータおよびプリンタドライバによる文字印字処理方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8026230A Division JP3061562B2 (ja) | 1995-02-09 | 1996-01-22 | 印刷システム、情報処理装置、情報処理方法、印字装置および印字方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000172473A JP2000172473A (ja) | 2000-06-23 |
JP3507387B2 true JP3507387B2 (ja) | 2004-03-15 |
Family
ID=32110586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000029291A Expired - Fee Related JP3507387B2 (ja) | 1995-02-09 | 2000-02-07 | ホストコンピュータおよびプリンタドライバによる文字印字処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3507387B2 (ja) |
-
2000
- 2000-02-07 JP JP2000029291A patent/JP3507387B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000172473A (ja) | 2000-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6570664B2 (en) | Printing system, printing apparatus, information processing apparatus and storage medium storing font download control program | |
US6192157B1 (en) | Modifications of postscript adaptive data compression (ADC) for 3 plane, 8 bit color images, JPEG lossy compression, and variable Q factors | |
US5444445A (en) | Master + exception list method and apparatus for efficient compression of data having redundant characteristics | |
US6785424B1 (en) | Encoding method and apparatus for compressing a data structure having two or more dimensions, decoding method, and storage medium | |
JPH06169405A (ja) | データ圧縮/伸長方法及びその装置 | |
JP3327650B2 (ja) | 記録装置 | |
US5732197A (en) | Printing control apparatus | |
JP4451908B2 (ja) | ユニコード・コンバータ | |
US6016155A (en) | Character processing apparatus, character processing method, and memory | |
US7002581B2 (en) | Character information processing apparatus, character information processing method and storage medium | |
JP3507387B2 (ja) | ホストコンピュータおよびプリンタドライバによる文字印字処理方法 | |
JP3061562B2 (ja) | 印刷システム、情報処理装置、情報処理方法、印字装置および印字方法 | |
JP3618828B2 (ja) | 情報処理装置及び情報処理方法 | |
JPH07271528A (ja) | 印字システム及びその印字方式 | |
JPS5928190A (ja) | 文字パタ−ン発生方式 | |
JPH06171160A (ja) | 印刷情報処理装置 | |
US6281985B1 (en) | Print control apparatus, print control method, and memory medium | |
JP2683506B2 (ja) | データ圧縮方法及び装置、データ伸長方法及び装置 | |
CN1172266C (zh) | 一种压缩汉字库芯片 | |
JP3514027B2 (ja) | 記録装置、記録システム、画像転送システム | |
JPH10198530A (ja) | プリンタシステム | |
JPH09270919A (ja) | ページプリンタにおけるデータ圧縮方法 | |
JP2972466B2 (ja) | ドットパターンの圧縮方法及び装置と出力方法及び装置 | |
JPH07137341A (ja) | 記録装置 | |
JPH11265438A (ja) | 画像処理装置および画像処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20031218 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081226 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081226 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091226 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091226 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101226 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111226 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121226 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131226 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |