(57)【特許請求の範囲】
【請求項１】
アウトラインデータに基づきビットマップデータを生成する生成手段と、
前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別手段と、
前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをキャッシュし、前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成手段により生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをキャッシュする手段とを有することを特徴とする出力装置。
【請求項２】
ビットマップデータが分割して圧縮されているか否かを判別する第２判別手段と、
前記第２判別手段によりビットマップデータが分割して圧縮されていると判別された場合、分割されたビットマップデータの伸長が終了するまで、圧縮されたビットマップデータを伸長し、伸長したビットマップデータを回転器で回転し、ページメモリに展開し、前記第２判別手段によりビットマップデータが分割して圧縮されていないと判別された場合、圧縮されたビットマップデータを伸長し、伸長されたビットマップデータを回転器で回転し、ページメモリに展開する手段とを有することを特徴とする請求項１記載の出力装置。
【請求項３】
アウトラインデータに基づきビットマップデータを生成する生成手段と、
前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別手段と、
前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送し、前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成手段により生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送する手段とを有することを特徴とするデータ処理装置。
【請求項４】
アウトラインデータに基づきビットマップデータを生成する生成手段と、
前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別手段と、
前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送し、前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成手段により生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送する手段と、
ビットマップデータが分割して圧縮されているか否かを判別する第２判別手段と、
前記第２判別手段によりビットマップデータが分割して圧縮されていると判別された場合、分割されたビットマップデータの伸長が終了するまで、圧縮されたビットマップデータを伸長し、伸長したビットマップデータを回転器で回転し、ページメモリに展開し、前記第２判別手段によりビットマップデータが分割して圧縮されていないと判別された場合、圧縮されたビットマップデータを伸長し、伸長されたビットマップデータを回転器で回転し、ページメモリに展開する手段とを有することを特徴とする印刷システム。
【請求項５】
アウトラインデータに基づきビットマップデータを生成する生成ステップと、
前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別ステップと、
前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをキャッシュし、前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成ステップにより生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをキャッシュするステップとを有することを特徴とする出力制御方法。
【請求項６】
ビットマップデータが分割して圧縮されているか否かを判別する第２判別ステップと、
前記第２判別ステップによりビットマップデータが分割して圧縮されていると判別された場合、分割されたビットマップデータの伸長が終了するまで、圧縮されたビットマップデータを伸長し、伸長したビットマップデータを回転器で回転し、ページメモリに展開し、前記第２判別ステップによりビットマップデータが分割して圧縮されていないと判別された場合、圧縮されたビットマップデータを伸長し、伸長されたビットマップデータを回転器で回転し、ページメモリに展開するステップとを有することを特徴とする請求項５記載の出力制御方法。
【請求項７】
アウトラインデータに基づきビットマップデータを生成する生成ステップと、
前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別ステップと、
前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送し、前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成ステップにより生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送するステップとを有することを特徴とする出力制御方法。
【請求項８】
アウトラインデータに基づきビットマップデータを生成する生成ステップと、
前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別ステップと、
前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送し、前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成ステップにより生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送するステップと、
ビットマップデータが分割して圧縮されているか否かを判別する第２判別ステップと、
前記第２判別ステップによりビットマップデータが分割して圧縮されていると判別された場合、分割されたビットマップデータの伸長が終了するまで、圧縮されたビットマップデータを伸長し、伸長したビットマップデータを回転器で回転し、ページメモリに展開し、前記第２判別ステップによりビットマップデータが分割して圧縮されていないと判別された場合、圧縮されたビットマップデータを伸長し、伸長されたビットマップデータを回転器で回転し、ページメモリに展開するステップとを有することを特徴とする出力制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ビットマップデータの圧縮処理等を行う出力装置、データ処理装置、印刷システム及び出力制御方法に関する。
【０００２】
また、本発明はビットマップデータの伸張処理、回転処理等を行う出力装置及び方法及び制御プログラムを格納した記憶媒体に関するものである。
【０００３】
【従来の技術】
従来、アウトライン形式によって表現された文字等をビットマップ形式にて表現されるビットマップフォントに変換した際、メモリ節約の為に１文字づつ圧縮して格納している。印刷する際には、圧縮されたフォントデータを伸張して、９０°単位にて回転する必要があれば、回転器にて回転したビットマップフォントをビットマップメモリ上に展開して印刷している。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記従来例では、９０°単位にてビットマップフォントを回転する際、圧縮されたフォントデータを伸張して、伸張されたビットマップデータをメモリに書き込み、伸張されたビットマップデータが回転器のＭ×Ｎのマトリックスより大きければＭ×Ｎのマトリックスより小さいサイズにて伸張されたビットマップデータを分割して処理する為、メモリへのアクセスが多くなり、又分割処理に時間がかかる課題を有している。
【０００５】
本発明は、上述の課題を解決するために、圧縮されたビットマップデータを高速に伸張して、回転処理を行うために、回転器のサイズに基づいて分割して圧縮或いは回転可能なサイズ以下のデータの圧縮をするデータ処理装置及び方法及び当該データ処理プログラムを格納した記憶媒体を提供することを目的とする。
【０００６】
また、本発明は、上位装置から周辺装置にビットマップデータを周辺装置が高速に処理できる状態（回転可能なサイズのデータ）で高速に転送することができるデータ処理装置及び方法及び当該データ処理プログラムを格納した記憶媒体を提供することを目的とする。
【０００７】
更に、本発明は、上位装置から高速に転送された圧縮ビットマップデータを効率的に伸張して回転出力する出力装置及び方法及び当該制御プログラムを格納した記憶媒体を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するために本発明の出力装置は、アウトラインデータに基づきビットマップデータを生成する生成手段と、
前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別手段と、
前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをキャッシュし、前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成手段により生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをキャッシュする手段とを有することを特徴とする。
【０００９】
また、本発明のデータ処理装置は、アウトラインデータに基づきビットマップデータを生成する生成手段と、
前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別手段と、
前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送し、前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成手段により生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送する手段とを有することを特徴とする。
【００１０】
また、本発明の印刷システムは、アウトラインデータに基づきビットマップデータを生成する生成手段と、
前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別手段と、
前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送し、前記第１判別手段により前記生成手段により生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成手段により生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成手段により生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送する手段と、
ビットマップデータが分割して圧縮されているか否かを判別する第２判別手段と、
前記第２判別手段によりビットマップデータが分割して圧縮されていると判別された場合、分割されたビットマップデータの伸長が終了するまで、圧縮されたビットマップデータを伸長し、伸長したビットマップデータを回転器で回転し、ページメモリに展開し、前記第２判別手段によりビットマップデータが分割して圧縮されていないと判別された場合、圧縮されたビットマップデータを伸長し、伸長されたビットマップデータを回転器で回転し、ページメモリに展開する手段とを有することを特徴とする。
【００１１】
また、本発明の出力制御方法は、
アウトラインデータに基づきビットマップデータを生成する生成ステップと、
前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別ステップと、
前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをキャッシュし、前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成ステップにより生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをキャッシュするステップとを有することを特徴とする。
【００１２】
また、本発明の出力制御方法は、
アウトラインデータに基づきビットマップデータを生成する生成ステップと、
前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別ステップと、
前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送し、前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成ステップにより生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送するステップとを有することを特徴とする。
【００１３】
また、本発明の出力制御方法は、
アウトラインデータに基づきビットマップデータを生成する生成ステップと、
前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいか否かを判別する第１判別ステップと、
前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きいと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割し、分割されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送し、前記第１判別ステップにより前記生成ステップにより生成されたビットマップデータのサイズが回転器のサイズより大きくないと判別された場合、前記生成ステップにより生成されたビットマップデータを回転器のサイズに基づき分割せずに前記生成ステップにより生成されたビットマップデータを圧縮し、圧縮されたビットマップデータをプリンタに転送するステップと、
ビットマップデータが分割して圧縮されているか否かを判別する第２判別ステップと、
前記第２判別ステップによりビットマップデータが分割して圧縮されていると判別された場合、分割されたビットマップデータの伸長が終了するまで、圧縮されたビットマップデータを伸長し、伸長したビットマップデータを回転器で回転し、ページメモリに展開し、前記第２判別ステップによりビットマップデータが分割して圧縮されていないと判別された場合、圧縮されたビットマップデータを伸長し、伸長されたビットマップデータを回転器で回転し、ページメモリに展開するステップとを有することを特徴とする。
【００２０】
【発明の実施の形態】
〔第１の実施例〕
図１において、１はホストコンピュータ１０等の上位装置とデータのやりとりを行う入出力部であり、２はアウトライン形式により表現された文字等をビットマップ形式にて表現されるビットマップデータに変換し、変換されたビットマップデータを圧縮する圧縮部であり、３は圧縮部２により圧縮されたビットマップデータを伸張する伸張部であり、５は１２８×１２８のマトリックスデータを９０°単位で回転する回転器である。伸張部３にて伸張されたデータは、伸張データ格納制御部４により、ハードウエアの回転器５に連続的に書きこまれていく。６はプリンタ装置全体の制御を行うＣＰＵであり、７は図４、図５等の制御プログラムやアウトラインフォントデータ等を格納するＲＯＭ。８は上位装置から入力された印字コマンド、印字データを記憶するバッファメモリ、ＣＰＵ４の作業域であるところのワークメモリ、展開され印刷されるビットマップデータを記憶するページメモリ、アウトラインデータから生成されたビットマップデータを格納するキャッシュメモリ等からなるＲＡＭであり、９はＲＡＭ８に格納されたビットイメージデータの可視表示出力を行うデータ出力部であり、レーザービームプリンタ等のプリンタエンジン部が適用される。
【００２１】
なお、図４、図５等のフローチャートに示すプログラムはＲＯＭ７以外に、プリンタに装着されるＩＣカードに記憶されていても良いし、ホストコンピュータからからＲＡＭ８にダウンロードされても良い。
【００２２】
１０は、上位装置全体の処理を行うＣＰＵであり、１１は、図７のフローチャートに係る制御プログラムやアウトラインフォントデータ等を格納するＲＯＭであり、１２は、ＣＰＵ１０の作業域であるところのワークメモリ等からなるＲＡＭであり、１３は、各種データを表示出力するＣＲＴディスプレイ等の表示部であり、１４はプリンタ装置とデータのやりとりを行う入出力部である。
【００２３】
上位装置１０から入出力部１を介して印字コマンド、印字データが転送され、ＲＡＭ８のバッファメモリに格納される。ＣＰＵ６は格納された印字コマンド、データを解析し、ＲＯＭ７に記憶されるアウトラインフォントデータからビットマップフォントデータを生成する。又、メモリ節約の意味から、圧縮部２によりビットマップフォントデータを圧縮するが、回転器５のマトリックスサイズ１２８×１２８の大きさに従い、ビットマップフォントデータを１２８×１２８のマトリックス、または、それより小さいブロックに分割し圧縮する。
【００２４】
図２に示す例においてはまず、▲１▼を圧縮し、順に▲２▼、▲３▼、▲４▼と圧縮し、ＲＡＭ８のキャッシュメモリに格納する。詳細は後述する図４を参照。解析が全て終了し、データ出力部９への準備が完了すると、ＲＡＭ８のページメモリに１ｐａｇｅ分のビットイメージデータをキャッシュメモリにキャッシュされたデータに基づき作成し、作成されたビットイメージデータをデータ出力部９へ出力していく。
【００２５】
ここで圧縮データは伸張され、ＲＡＭ８のキャッシュメモリに格納されていくわけであるが、図２、図３を参照し説明する。
【００２６】
図２における▲１▼の圧縮された圧縮データを伸張部３に順次書き込んでいく。伸張部３では圧縮データを伸張し、伸張データを作成していき、伸張データ格納制御部４にて回転器５に逐次、伸張データは格納されていく。伸張が終了すると同時に回転器５には、伸張データが格納されており、ＣＰＵ６はこの回転器５からデータを読み出すことにより９０°単位にて回転された回転データを得ることができる（図３ブロック▲１▼に示す）。▲２▼、▲３▼、▲４▼においても同様の制御が行われ、図３に示される９０°回転したデータが得られることになる（詳細は後述する図５の説明参照）。
【００２７】
次に、図４のフローチャートを用いてビットマップデータを圧縮してキャッシュする処理を説明する。
【００２８】
まず、ステップＳ１でＣＰＵ６は、キャッシュすべき文字のアウトラインフォントデータからビットマップデータをワークメモリに生成する。
【００２９】
次に、ステップＳ２でＣＰＵ６は、生成されたビットマップデータのサイズを認識し、ステップＳ３で回転器５のサイズを認識する。
【００３０】
次に、ステップＳ４でＣＰＵ６は、生成されたビットマップデータのサイズが回転器５のサイズより大きいか否かを判別する。
【００３１】
ステップＳ４で回転器５のサイズより大きいと判別された場合、ステップＳ５に進み、生成されたビットマップデータを回転器５のサイズに基づいて回転器５のサイズ以下のサイズに分割する。ステップＳ６でＣＰＵ６は、分割されたビットマップデータを圧縮部２で圧縮し、ステップＳ７で圧縮されたビットマップデータをＲＡＭ８のキャッシュメモリにキャッシュし、ステップＳ８で分割されたビットマップデータの圧縮が終了したか否かかを判別し、終了しないと判別された場合、ステップＳ６に進み、前述した圧縮、キャッシュ処理を繰り返す。
【００３２】
また、ステップＳ４でＣＰＵ６は、回転器５のサイズより小さいと判別された場合、ステップＳ９に進み、ステップＳ１で生成されたビットマップデータを圧縮部２で圧縮し、ステップＳ１０に進み、圧縮されたビットマップデータをＲＡＭ８のキャッシュメモリにキャッシュする。
【００３３】
次に図５のフローチャートを用いてキャッシュされたビットマップデータを回転してページメモリに展開する処理を説明する。
【００３４】
まず、ステップＳ１１でＣＰＵ６は、ページメモリに展開する文字に対応するＲＡＭ８のキャッシュメモリにキャッシュされているビットマップデータが分割して圧縮されているか否かを判別する。ステップＳ１１で分割して圧縮されている場合、ステップＳ１２に進み、圧縮されているビットマップデータを伸張部３で伸張させる。次に、ステップＳ１３に進みＣＰＵ６は、伸張されたビットマップデータを回転器５で回転させる。
【００３５】
次に、ステップＳ１４に進み、ＣＰＵ６は、回転されたビットマップデータをＲＡＭ８のページメモリに展開する。次に、ステップＳ１５に進み、ＣＰＵ６は、分割されたビットマップデータの伸張が終了したか否かを判別し、終了しないと判別された場合ステップＳ１２に進み、伸張、回転、展開処理を繰り返す。
【００３６】
このステップＳ１２〜Ｓ１５の処理はＣＰＵ６によって処理されるが伸張データ格納制御部によって制御されても良い。
【００３７】
また、ステップＳ１１で分割して圧縮されていないと判別された場合、ステップＳ１６に進み、圧縮されているビットマップデータを伸張部３で伸張し、ステップＳ１７に進み、伸張されたビットマップデータを回転器５で回転し、ステップＳ１８に進み、ＲＡＭ８のページメモリに展開する。
【００３８】
なお、ページメモリに１ページ分のデータが展開された後、データ出力部９により可視出力される。
【００３９】
以上説明したように、圧縮された圧縮データを９０°単位にて回転する際、圧縮データを伸張部に書き込み伸張データが回転器に連続的に格納され、回転器に格納された後、回転器から９０°回転されたデータが取り出せることができる為、高速な伸張、回転処理が行える効果がある。
【００４０】
〔第２の実施例〕
尚、前第１の実施例では、プリンタ側にて分割、圧縮されたビットマップデータを圧縮するとしたが、上位装置側で分割、圧縮されたビットマップデータをプリンタ側に転送してもよく、この第２の実施例を図６、図７を用いて説明する。
【００４１】
図６は、本第２の実施例のブロック図であるが、上位装置側に圧縮部を設けたところ以外は図１と変わっていないので説明は省略する。
【００４２】
次に、図７のフローチャートを用いて上位装置でのビットマップデータの分割、圧縮、転送処理を説明する。
【００４３】
なお、図７のフローチャートに示すプログラムは、ＲＯＭ１１に記憶されていても良いし、ホストコンピュータに装着されるデバイスドライバ等のフロッピーディスクでも良いし、プリンタからホストコンピュータへアップロードされてＲＡＭ１２に記憶されていても良い。
【００４４】
まず、ステップＳ１０１でＣＰＵ１０は、キャシュすべき文字のＲＯＭ１１に記憶されているアウトラインフォントデータからビットマップデータをワークメモリに生成する。
【００４５】
次に、ステップＳ１０２でＣＰＵ１０は、生成されたビットマップデータのサイズを認識し、ステップＳ１０３で回転器５のサイズを認識する。回転器５のサイズはプリンタに問い合わせて双方向インタフェースを介して獲得してもよいし、あらかじめ上位装置のＲＯＭ１１またはＲＡＭ１０にサイズをプリンタに対応させて記憶させておいてもよい。
【００４６】
次に、ステップＳ１０４でＣＰＵ１０は、生成されたビットマップデータのサイズが回転器５のサイズより大きいか否かを判別する。
【００４７】
ステップＳ１０４で回転器５のサイズより大きいと判別された場合、ステップＳ１０５に進み、生成されたビットマップデータを回転器５のサイズに基づいて回転器５のサイズ以下のサイズに分割する。ステップＳ１０６でＣＰＵ１０は分割されたビットマップデータを上位装置の圧縮部１５で圧縮し、ステップＳ１０７で圧縮されたビットマップデータをプリンタのＲＡＭ８のキャッシュメモリに転送する。
【００４８】
次に、ステップＳ１０８でＣＰＵ１０は、分割されたビットマップデータの圧縮、転送が終了したか否かを判別し、終了しないと判別された場合、ステップＳ１０６に進み、前述した圧縮、転送処理を繰り返す。
【００４９】
また、ステップＳ１０４で回転器５のサイズ以下と判別された場合、ステップＳ１０９に進み、ステップＳ１０１でＣＰＵ１０は、生成されたビットマップデータを上位装置の圧縮部１５で圧縮し、ステップＳ１０１に進み、圧縮されたビットマップデータをプリンタのＲＡＭ８のキャッシュメモリに転送する。
【００５０】
プリンタ側でキャッシュされているビットマップデータに基づき展開を行う処理は、図５と同様なので省略する。
【００５１】
本第２の実施例によれば転送すべきデータが圧縮されているため前述の実施例より転送時間を短くできる効果がある。
【００５２】
また、本第２の実施例では、アウトライン形式のデータから変換されたビットマップ形式のデータの例について説明したが、イメージデータの処理であってもよいことはいうまでもない。
【００５３】
以上説明したように、本実施例によれば、ビットマップデータを圧縮し、圧縮されたデータを伸張する際、高速に９０°単位回転した伸張データを得ることができる。
【００５４】
また、本実施例によれば、上位装置から周辺装置に周辺装置が高速にデータ処理を行える状態で高速にデータ転送を行うことができる。
【００５５】
【発明の効果】
以上説明したように、回転可能なサイズにビットマップ形式のデータを分割して圧縮することができる。
【００５６】
また、以上説明したように、回転可能なサイズ以下のビットマップ形式のデータを圧縮することができる。
【００５７】
また、以上説明したように、回転可能なサイズで圧縮されたビットマップ形式のデータを効率的に伸張することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施例に係るブロック図である。
【図２】ビットマップデータを分割した図である。
【図３】ビットマップデータを９０°回転した図である。
【図４】プリンタ側で行う圧縮処理を説明する図である。
【図５】プリンタ側で行う伸張、回転処理を説明する図である。
【図６】本発明の第２の実施例に係るブロック図である。
【図７】上位装置側で行う圧縮処理を説明する図である。
【図１】
0003673580.tif 000002
【図２】
0003673580.tif 000003
【図３】
0003673580.tif 000004
【図４】
0003673580.tif 000005
【図５】
0003673580.tif 000006
【図６】
0003673580.tif 000007
【図７】
0003673580.tif 000008