(57)【特許請求の範囲】
【請求項１】
ビットマップデータの一端から逐次、連続した２ドットを１ドットに変換して縮小パターンを作成する縮小方法であって、
前記ビットマップデータの各ビットの画像側を｛１｝、背景側を｛０｝で表現し、前記縮小処理対象となる２ドットのデータを、縮小処理を開始した側から順に｛ａｂ｝の形式で表現した場合に、
前回の変換対象を｛００｝とし、その変換結果を｛０｝とする前処理工程と、
今回の変換対象が｛１１｝である場合は、｛１｝に変換する第１の変換工程と、
前記今回の変換対象が｛００｝である場合は、｛０｝に変換する第２の変換工程と、
前記今回の変換対象が｛１０｝である場合は、前回の変換対象の変換結果の論理否定に変換する第３の変換工程と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝である場合は、前記前回の変換対象の変換結果の論理否定に変換する第４の変換工程と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝でない場合は、｛１｝に変換する第５の変換工程とを備えたことを特徴とするビットマップデータの縮小方法。
【請求項２】
請求項１記載のビットマップデータの縮小方法において、縮小前の前記ビットマップデータの長さが奇数である場合に、
前記ビットマップデータ列の先頭に｛０｝があるものとみなす工程及び／又は前記ビットマップデータ列の最後尾に｛０｝があるものとみなす工程を備えたことを特徴とするビットマップデータの縮小方法。
【請求項３】
ビットマップデータの一端から逐次、連続した２ドットを１ドットに変換して縮小パターンを作成する情報処理装置であって、
前記ビットマップデータの各ビットの画像側を｛１｝、背景側を｛０｝で表現し、縮小処理対象となる前記２ドットのデータを、縮小処理を開始した側から順に｛ａｂ｝の形式で表現した場合に、
前回の変換対象を｛００｝とし、その変換結果を｛０｝とする前処理手段と、
今回の変換対象が｛１１｝である場合は、｛１｝に変換する第１の変換手段と、
前記今回の変換対象が｛００｝である場合は、｛０｝に変換する第２の変換手段と、
前記今回の変換対象が｛１０｝である場合は、前回の変換対象の変換結果の論理否定に変換する第３の変換手段と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝である場合は、前記前回の変換対象の変換結果の論理否定に変換する第４の変換手段と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝でない場合は、｛１｝に変換する第５の変換手段とを備えたことを特徴とする情報処理装置。
【請求項４】
請求項３記載の情報処理装置において、縮小前のデータの長さが奇数である場合に、
前記ビットマップデータ列の先頭に｛０｝があるものとみなす手段及び／又は前記ビットマップデータ列の最後尾に｛０｝があるものとみなす手段を備えたことを特徴とする情報処理装置。
【請求項５】
請求項３または請求項４記載の情報処理装置において、前記縮小パターンを印刷する印刷手段を備えたことを特徴とする情報処理装置。
【請求項６】
請求項３または請求項４記載の情報処理装置において、前記縮小パターンを表示する表示手段を備えたことを特徴とする情報処理装置。
【請求項７】
ビットマップデータの一端から逐次、連続した２ドットずつを１ドットに変換して縮小パターンを作成する情報処理装置の制御プログラムであって、
前記ビットマップデータの各ビットの画像側を｛１｝、背景側を｛０｝で表現し、前記縮小処理対象となる２ドットのデータを、縮小処理を開始した側から順に｛ａｂ｝の形式で表現した場合に、
前回の変換対象を｛００｝とし、その変換結果を｛０｝とする前処理工程と、
今回の変換対象が｛１１｝である場合は、｛１｝に変換する第１の変換工程と、
前記今回の変換対象が｛００｝である場合は、｛０｝に変換する第２の変換工程と、
前記今回の変換対象が｛１０｝である場合は、前回の変換対象の変換結果の論理否定に変換する第３の変換工程と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝である場合は、前記前回の変換対象の変換結果の論理否定に変換する第４の変換工程と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝でない場合は、｛１｝に変換する第５の変換工程とを備えたことを特徴とする制御プログラムを記録した情報記録媒体。
【請求項８】
請求項７記載の制御プログラムにおいて、縮小前のデータの長さが奇数である場合に、
前記ビットマップデータ列の先頭に｛０｝があるものとみなす工程及び／又は前記ビットマップデータ列の最後尾に｛０｝があるものとみなす工程を備えたことを特徴とする制御プログラムを記録した情報記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、フォントデータやイメージデータなどのビットマップデータの縮小方法、この縮小方法を用いて処理を行う情報処理装置、およびこれを実現するためのプログラムを記録した情報記録媒体に関する。
【０００２】
【従来の技術】
従来の技術を図４を用いて説明する。図４（ａ）は、印刷装置の持つ通常サイズのビットマップフォントデータの一例である。ビットマップデータの縮小印刷を行うことができる従来の印刷装置においては、縮小前の２ｎ（以下、ｎは１以上の整数）または２ｎ−１ドット長のビットマップデータをｎドット長に縮小して印刷装置内のメモリに展開する場合、ビットマップデータの一端から順番に２ドットラインずつの論理和を演算して１ドットラインに変換し、この論理和演算処理を各列毎に行い縮小パターンを作成する方法がある。この方法にて図４（ａ）に示したビットマップフォントデータを文字の高さ方向に縮小した結果が図４（ｂ）である。また、別の方法として、ビットマップデータを単純に１ドットライン間隔で間引いてゆき縮小パターンを作成する方法もある。この方法にて図４（ａ）を縮小した結果が図４（ｃ）である。また、縮小印刷する場合における別の方法として、通常サイズのフォントデータとは別に、あらかじめ縮小印字用フォントデータを印刷装置内のＲＯＭなどに格納しておき、その縮小印字用フォントデータを用いて印刷装置内のメモリに展開し印刷する方法もある。
【０００３】
【発明が解決しようとする課題】
ところが、上述した従来の技術のうち、１番目に記した２ドットラインずつの論理和を演算して１ドットラインに変換し縮小パターンを作成する方法においては、ビットマップデータの背景部分が潰れてしまい、特にビットマップデータがフォントデータである場合には図４（ｂ）のように文字の判読が困難になるという問題がある。
【０００４】
また、２番目に記した単純に１ドットライン間隔で間引いて縮小パターンを作成する方法においては、間引くことによって、例えば１ドットラインの線などで消えてはならないドットまで消してしまうことがあり、この場合も図４（ｃ）のように文字の判読が困難になるという問題がある。
【０００５】
また、３番目に記した縮小印字用フォントデータをあらかじめ用意しておくという方法は、メモリ容量の増大につながり、製造コストが上がってしまうという問題がある。
【０００６】
本発明は、以上のような問題を解決するためになされたもので、フォントデータやイメージデータなどのビットマップデータを縮小した場合に潰れやドット抜けを極力抑えることができる縮小方法、情報処理装置、および、これを実現する情報記録媒体を提供することを目的とする。
【０００７】
【課題を解決するための手段】
以上の目的を達成するための発明は下記の発明である。
【０００８】
本発明のビットマップデータの縮小方法は、
（１）ビットマップデータの一端から逐次、連続した２ドットを１ドットに変換して縮小パターンを作成する縮小方法であって、
前記ビットマップデータの各ビットの画像側を｛１｝、背景側を｛０｝で表現し、前記縮小処理対象となる２ドットのデータを、縮小処理を開始した側から順に｛ａｂ｝の形式で表現した場合に、
前回の変換対象を｛００｝とし、その変換結果を｛０｝とする前処理工程と、
今回の変換対象が｛１１｝である場合は、｛１｝に変換する第１の変換工程と、
前記今回の変換対象が｛００｝である場合は、｛０｝に変換する第２の変換工程と、
前記今回の変換対象が｛１０｝である場合は、前回の変換対象の変換結果の論理否定に変換する第３の変換工程と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝である場合は、前記前回の変換対象の変換結果の論理否定に変換する第４の変換工程と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝でない場合は、｛１｝に変換する第５の変換工程とを備えたことを特徴とする。
（２）  上記（１）記載のビットマップデータの縮小方法において、縮小前の前記ビットマップデータの長さが奇数である場合に、
前記ビットマップデータ列の先頭に｛０｝があるものとみなす工程及び／又は前記ビットマップデータ列の最後尾に｛０｝があるものとみなす工程を備えたことを特徴とする。
また、本発明の情報処理装置は、
（３）ビットマップデータの一端から逐次、連続した２ドットを１ドットに変換して縮小パターンを作成する情報処理装置であって、
前記ビットマップデータの各ビットの画像側を｛１｝、背景側を｛０｝で表現し、縮小処理対象となる前記２ドットのデータを、縮小処理を開始した側から順に｛ａｂ｝の形式で表現した場合に、
前回の変換対象を｛００｝とし、その変換結果を｛０｝とする前処理手段と、
今回の変換対象が｛１１｝である場合は、｛１｝に変換する第１の変換手段と、
前記今回の変換対象が｛００｝である場合は、｛０｝に変換する第２の変換手段と、
前記今回の変換対象が｛１０｝である場合は、前回の変換対象の変換結果の論理否定に変換する第３の変換手段と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝である場合は、前記前回の変換対象の変換結果の論理否定に変換する第４の変換手段と、
前記今回の変換対象が｛０１｝であって、かつ前記前回の変換対象が｛０１｝でない場合は、｛１｝に変換する第５の変換手段とを備えたことを特徴とする。
（４）  上記（３）記載の情報処理装置において、縮小前のデータの長さが奇数である場合に、
前記ビットマップデータ列の先頭に｛０｝があるものとみなす手段及び／又は前記ビットマップデータ列の最後尾に｛０｝があるものとみなす手段を備えたことを特徴とする。
【０００９】
本発明により、２ｎドット長のビットマップデータをｎドット長に縮小する場合に、今回の変換対象のみに着目して１ドットに変換する処理だけでなく、更に前回の変換対象の組み合わせパターンおよびその変換結果までを考慮に入れて、今回の変換結果を決定することにより、ビットマップデータの背景部分の潰れや１ドットラインの線などで消えてはならないドットまで消してしまうことを極力回避し、データの潰れと抜けのバランスのとれた、見易い縮小パターンを作成することができる。
【００１１】
また、上述した縮小方法を実現する情報処理装置を用いて縮小結果を出力することができる。縮小結果を出力することのできる情報処理装置として、印刷装置あるいは表示装置が考えられる。
【００１２】
また、上述した縮小方法は、情報処理装置で実行可能な制御プログラムとして供給することが可能であり、その制御プログラムを記録した記録媒体を介して提供することができる。あるいは、インターネットなどのコンピュータネットワークを介して制御プログラムを提供し、ユーザ側の情報処理装置の記録媒体に記録して使用することも可能である。
【００１３】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態を説明する。
【００１４】
図１は本発明の一実施形態の印刷装置の概略構成を示す図である。図１に示すように、本例の印刷装置１はホスト２と接続されており、ホスト２から転送されたデータに基づいて動作する。印刷装置１は、ホスト２と接続されるインタフェース１１を備えており、このインタフェース１１が受信したデータをＣＰＵ１２が制御ＲＯＭ１３に格納されている制御プログラムに従って処理する。この制御ＲＯＭ１３には、制御プログラムの一つとして文字パターンの縮小方法を記述したプログラム１３ａが格納されている。ホスト２から受信したデータが文字データである場合には、現在指定されている文字サイズ、文字装飾等の文字を展開するために必要な情報をＲＡＭ１５から読み出し、これに応じてフォントＲＯＭ１４から読み出したデータを加工し、プリントバッファ１６へ展開する。フォントＲＯＭ１４に格納されている各フォントはビットマップパターンで形成されている。プリントバッファ１６に展開された印字データは印刷機構１７によって用紙上に印刷される。
【００１５】
ＣＰＵ１２は、制御ＲＯＭ１３に格納されたプログラムに従って動作するが、制御ＲＯＭ１３を消去書込み可能なＲＯＭによって実現すれば、このプログラムの更新や修正が容易になる。印刷装置などの情報処理装置に導入するプログラム自体は、フロッピーディスクやハードディスクなどの情報記録媒体に記録することが可能である。
【００１６】
次に、ホスト２から文字の縮小印刷が指定された場合に、印刷装置１がフォントＲＯＭ１４に内蔵されているビットマップフォントデータを用いて縮小文字をプリントバッファに作成する方法について説明する。ここで、縮小処理を行うビットマップデータのドット長が２ｎ−１長である場合に、（１）そのビットマップデータの最後尾に｛０｝があるものとみなし縮小処理を行う方法と、（２）そのビットマップデータの先頭に｛０｝があるものとみなし縮小処理を行う方法の２種類の方法について説明する。また、以下の説明において、印字するドットを｛１｝、印字しないドットを｛０｝と表現する。また、ビットマップデータの一端から順に２ドットライン毎に縮小処理を行うが、この縮小処理の変換対象となる２ドットを{ａｂ}のように表現する。  最初に図６および図７、図８のフローチャートを参照し、縮小前のビットマップデータが２ｎ−１ドット長で構成されている場合は、そのビットマップデータの最後尾に｛０｝があるものとみなし縮小処理を行う方法について説明する。
【００１７】
縮小処理を行う前処理として、前回の変換対象を｛００｝とし、その変換結果を｛０｝としておく（Ｓ６０１）。
【００１８】
次に、ビットマップデータの残り縮小対象ドット長（以下、単に「残りドット長」と呼ぶ）が１ドットであるかを判定する（Ｓ６０２）。Ｓ６０２が真である場合は、今回の変換対象の第１ドットをこの残り１ドットのデータとし（Ｓ６０３）、今回の変換対象の第２ドットを｛０｝とする（Ｓ６０４）。その後、Ｓ７０１へ進む。一方、Ｓ６０２が偽である場合にはそのままＳ７０１へ進む。
【００１９】
次に、今回の変換対象が｛１１｝であるかを判定する（Ｓ７０１）。Ｓ７０１が真である場合には今回の変換対象の変換結果（以下、単に「今回の変換結果」と呼ぶ）を｛１｝とし（Ｓ７０２）、Ｓ７１１へ進む。一方、Ｓ７０１が偽である場合にはＳ７０３へ進む。
【００２０】
次に、今回の変換対象が｛００｝であるかを判定する（Ｓ７０３）。Ｓ７０３が真である場合には今回の変換結果を｛０｝とし（Ｓ７０４）、Ｓ７１１へ進む。一方、Ｓ７０３が偽である場合にはＳ７０５へ進む。
【００２１】
次に、今回の変換対象が｛１０｝であるかを判定する（Ｓ７０５）。Ｓ７０５が偽ならば、前回の変換対象が｛０１｝であるかを判定する（Ｓ７０９）。Ｓ７０９が偽ならば、今回の変換結果を｛１｝とし（Ｓ７１０）、Ｓ７１１に進む。一方、Ｓ７０５が真またはＳ７０９が真ならば、前回の変換対象の変換結果（以下、単に「前回の変換結果」と呼ぶ）を判定する（Ｓ７０６）。ここで、前回の変換結果が｛１｝ならば今回の変換結果を｛０｝とし（Ｓ７０７）、前回の変換結果が｛０｝ならば今回の変換結果を｛１｝とする（Ｓ７０８）。その後、Ｓ７１１に進む。
【００２２】
以上により、今回の変換結果が決定したら、この変換結果をプリントバッファ１６に展開する（Ｓ７１１）。
【００２３】
次に、残りドット長を判定し（Ｓ８０１）、残りドット長が３ドット以上ならば今回処理した２ドットを差し引き（Ｓ８０２）、変換対象を２ドット先に進めて（Ｓ８０３）、Ｓ６０２へ戻る。また、Ｓ８０２において残りドット長が２ドット以下ならば縮小処理を終了する。
【００２４】
プリントバッファ１６に展開された縮小イメージは、ホスト２から送信される印字改行コマンドなどにより、ＣＰＵ１２が制御ＲＯＭ１３に従って印刷機構１７を制御し、印刷を行う。
【００２５】
上記縮小方法によって、図４（ａ）に示したデータを縮小すると図４（ｄ）に示すように読み易い縮小文字を得ることができる。
【００２６】
次に、縮小前のビットマップデータが２ｎ−１ドット長で構成されている場合に、そのビットマップデータの先頭に｛０｝があるものとみなして縮小処理を行う方法について、図９および図１０、図７のフローチャートを参照して説明する。
【００２７】
まず、縮小処理を行う前処理として、前回の変換対象を｛００｝とし、その変換結果を｛０｝としておく（Ｓ９０１）。次に、残りドット長が奇数であるかを判定する（Ｓ９０２）。Ｓ９０２が真ならば、今回の変換対象の第１ドットを｛０｝とし（Ｓ９０３）、今回の変換対象の第２ドットを縮小前のビットマップデータの先頭のデータとする（Ｓ９０４）。その後、Ｓ７０１へ進む。一方、Ｓ９０２が偽である場合には、そのままＳ７０１へ進む。
【００２８】
次に続くＳ７０１からＳ７１１までの処理は、前述の通りであり説明を省略する。
【００２９】
Ｓ７１１の次に、残りドット長が奇数であるか判定する（Ｓ１００１）。Ｓ１００１が真ならば、残りドット長から１を差し引き（Ｓ１００２）、残りドット長を判定する（Ｓ１００３）。この判定の結果、残りドット長が０ドットならば縮小処理を終了し、残りドット長が０ドットでなければ変換対象を１ドット先に進めて（Ｓ１００４）、Ｓ７０１へ戻る。一方、Ｓ１００１が偽である場合は、残りドット長から２を差し引き（Ｓ１００５）、残りドット長を判定する（Ｓ１００６）。この判定の結果、残りドット長が０ドットならば縮小処理を終了し、残りドット長が０ドットでなければ変換対象を２ドット先に進めて（Ｓ１００７）、Ｓ７０１へ戻る。
【００３０】
このように、縮小前のビットマップデータの先頭に｛０｝があるものとみなすと、縮小前のビットマップデータの先頭データと縮小後の先頭データとは同一になる。したがって縮小前のビットマップデータの先頭データが重要な意味を持っている場合、例えばこの先頭のドットデータが縮小処理で印刷されないと文字の判読が困難になるような場合においては、この方法を用いることによって、縮小後のデータの先頭に縮小前のデータの先頭ドットをそのまま残すことができる。
【００３１】
したがって、上述した二つの縮小処理、すなわち、縮小前のビットマップデータの最後尾に｛０｝があるものとみなす縮小処理と先頭に｛０｝があるものとみなす縮小処理とを併存させることが望ましく、文字に応じて２つの方法を使い分けることにより、縮小後であっても読みやすい文字を得ることができる。  ここで、縮小パターンを上述した変換処理により作成する理由を図２および図３を用いて説明する。
【００３２】
図２に今回の変換対象の組み合わせパターン（Ａ〜Ｄ）およびその変換結果を示す。図中の●は｛１｝を、○は｛０｝を表す。パターンＡ、Ｂの場合は図示した通りそれぞれ｛１｝、｛０｝に変換する。また、パターンＣ、Ｄについては、この２ドットの組み合わせパターンからだけでは変換結果を判断しかねるので、前回対象となった２ドットの情報、すなわち前回の変換対象を用いて決定するという意味で｛？｝とする。
【００３３】
次に、図２中のパターンＣ、Ｄの場合についての決定方法を図３を用いて説明する。図３は図２中のパターンＣおよびパターンＤについて、今回の変換対象（図３中のｃｄ行で示されるドット）に対して、前回の変換対象（図３中のａｂ行で示されるドット）がとり得るすべての組み合わせを示し、これら４ドットの組み合わせパターンを考慮した上で今回の変換対象（ｃｄ行のデータ）の変換結果を示したものである。図３中の｛＃｝は、図３中の前回の変換対象の変換結果が｛１｝となっていれば｛０｝に、｛０｝となっていれば｛１｝に決定する。
【００３４】
以下、パターンＣの決定理由について、個々に説明する。
【００３５】
パターンＣ１の場合は、前回の変換結果は必ず｛１｝であり、また、変換前の状態は｛１｝が３ドット連続しているので、ｃｄ行を間引いてしまっても大きな情報の欠落はないと考えられる。したがって、今回の変換結果は｛０｝とする。
【００３６】
パターンＣ２の場合は、込み入った線または点である可能性が高いが、すべての場合について印字してしまうと背景が潰れてしまうし、単純に間引いてしまえば連続してドットを欠落してしまう可能性がある。このような場合は適度に間引くことが必要である。したがって、今回の変換結果は、前回の変換結果が｛１｝となっていれば｛０｝、｛０｝となっていれば｛１｝と決定する。
【００３７】
パターンＣ３の場合は、ｂｃ行において｛１｝が２ドット連続しているので、図２におけるパターンＡが中央で分割された状態であり、どちらか一方（ｂ行またはｃ行）を印字すべきである。したがって、 今回の変換結果は、前回の変換結果が｛１｝となっていれば｛０｝、｛０｝となっていれば｛１｝と決定する。
【００３８】
パターンＣ４の場合は、前回の変換結果は必ず｛０｝であり、かつｃ行の｛１｝の前後のドットが｛０｝であるため、１ドットの線または点を消さないためにも印字すべきである。したがって、今回の変換結果は｛１｝と決定する。
【００３９】
次に、パターンＤの決定理由について説明する。
【００４０】
パターンＤのうち、パターンＤ３だけは今回の変換結果を、前回の変換結果が｛１｝となっていれば｛０｝、｛０｝となっていれば｛１｝と決定する。これはパターンＣ２の場合の決定方法と同様の理由による。
【００４１】
また、パターンＤのうちの残りのパターンＤ１、Ｄ２、Ｄ４については、今回の変換結果を｛１｝とする。
【００４２】
パターンＤ１の場合の場合の決定理由を図５を用いて説明する。図５（ａ）の文字を縮小する場合、パターンＤ１を｛０｝とすると、図５（ｂ）のように著しく形が崩れて判読しにくくなる。これに対して、パターンＤ１を｛１｝とすると、図５（ｃ）のように形が崩れず、判読しやすくなる。この例のように、文字の構成が単純な場合でもパターンＤ１が現れる頻度は高く、これを考慮してパターンＤ１を｛１｝とする。
【００４３】
パターンＤ２の場合は、ｂｃ行で｛０｝が２ドット連続している。２ドット以上｛０｝が連続してから｛１｝が現れたら、その｛１｝の情報は重要度が高いと判断して消さずに残しておく。
【００４４】
パターンＤ４の場合は、パターンＤ２の場合で述べたことと同等の理由により、｛１｝とする。
【００４５】
このように本発明では、今回の変換対象のみならず、前回の変換対象や前回の変換結果を考慮して、今回の変換対象を変換処理することにより、データの潰れや抜けのバランスがよく見やすい縮小パターンを作成することができる。
【００４６】
本発明の縮小方法は、特別な回路等を使用しなくても、通常サイズのビットマップデータの印字が可能な印刷装置であれば、実現可能である。実現するためには、図６〜図１０のフローチャートの処理に従っても良いし、公知の技術を使ってこれと同等の変換結果を得られるような論理演算を用いても良い。論理演算で実現する場合は何種類かの演算方法が考えられるが、演算回数が少ない方法を採用すれば縮小処理を高速にすることができる。
【００４７】
上記実施の形態では文字の高さ方向に縮小する例を説明したが、本発明はこれに限定されるものではなく、文字の幅方向に縮小する場合においても適用することができる。
【００４８】
また、縮小処理の対象は文字のみではなくビットマップデータで構成されるグラフィックデータ等にも適用することができる。
【００４９】
また、上記実施の形態では印刷装置を例に説明したが、まったく同様な縮小方法を表示装置にも応用できる。すなわち図１において、プリントバッファ１６を表示バッファに、印刷機構１７を表示機構に置き換えることにより、本発明を適用した表示装置を実現できる。
【００５０】
また、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で変形可能であることは勿論である。
【００５１】
【発明の効果】
以上説明したように、本発明の手法を用いれば、フォントデータやイメージデータなどのビットマップデータを縮小した場合に潰れやドット抜けを極力抑えることができる。また、情報処理装置内のＲＯＭなどの記憶装置の中にビットマップデータを保持している場合には、文字を縮小して印字または表示するために縮小された大きさの専用のフォントデータを別に保持する必要がないため、縮小機能を追加したためにメモリ容量が増大して製造コストが上がってしまうという問題は発生しない。
【図面の簡単な説明】
【図１】本発明の実施形態である印刷装置の概略構成を示す説明図である。
【図２】本発明の縮小変換を行うときに、今回の変換対象のパターンおよびその変換結果を示す図である。
【図３】図２におけるパターンＣ、Ｄについて、前回の変換対象の考えられ得るすべてのパターンを対応させた図である。
【図４】通常サイズのビットマップデータ（文字「重」）および従来の縮小方法による縮小結果および本発明による縮小結果を示した図である。
【図５】通常サイズのビットマップデータ（文字「≦」）およびその縮小結果を示す図である。
【図６】本発明の縮小方法を示すフローチャートである。
【図７】本発明の縮小方法を示すフローチャートである。
【図８】本発明の縮小方法を示すフローチャートである。
【図９】本発明の縮小方法を示すフローチャートである。
【図１０】本発明の縮小方法を示すフローチャートである。
【符号の説明】
１  印刷装置
２  ホスト
１１  インタフェース
１２  ＣＰＵ
１３  制御ＲＯＭ
１３ａ  制御ＲＯＭ内の文字パターン縮小方法が記述されたプログラム
１４  フォントＲＯＭ
１５  ＲＡＭ
１６  プリントバッファ
１７  印刷機構
【図１】
0003539203.tif 000002
【図２】
0003539203.tif 000003
【図３】
0003539203.tif 000004
【図４】
0003539203.tif 000005
【図５】
0003539203.tif 000006
【図６】
0003539203.tif 000007
【図７】
0003539203.tif 000008
【図８】
0003539203.tif 000009
【図９】
0003539203.tif 000010
【図１０】
0003539203.tif 000011