(57)【特許請求の範囲】
【請求項１】
上位装置から送信されたページ記述言語を解析して、指定のフォントでテキスト描画を行って文字を印刷する際、印刷する文字に関して指定された解像度が所定の解像度以上である場合には、所定の解像度でフォントのビットマップ展開を行ってビットマップデータを生成し、生成されたビットマップデータを指定された解像度に合わせて拡大させ、文字を印刷することを特徴とする画像形成装置。
【請求項２】
前記ビットマップデータを生成する過程で、ビットマップデータの生成条件が厳しいためにエラーが発生した場合、前記ページ記述言語を解析して蓄積された印刷する文字に関して指定された拡大率及び文字サイズを段階的に低下させ、再度前記ビットマップデータを生成する請求項１に記載の画像形成装置。
【請求項３】
前記ビットマップデータを生成した場合の情報を保存しておき、前記指定のフォントでテキスト描画を行って文字を印刷する際、前記ビットマップデータを生成するために保存した前記情報を検索する請求項２に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関するものである。
【背景技術】
【０００２】
従来、プリンタ装置においては、スケーラブルフォントによって記録された文字を印刷する場合、ページ記述言語によって指定された文字サイズ、傾き／回転、拡大／縮小等の文字修飾状態と出力解像度の指定値とに従って、フォントラスタライザがスケーラブルフォントのベクターデータをラスターデータに変換し、ビットマップを生成するようになっている（例えば、特許文献１参照。）。
【特許文献１】特開平８−２６３０４３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、前記従来のプリンタ装置においては、高解像度化しており、例えば、１２００〔ｄｐｉ〕、２４００〔ｄｐｉ〕等の高い解像度で印刷するようになっているので、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ：ページ記述言語）コマンドによって指定された文字サイズ拡大を組み合わせ、指定通りのビットマップの生成をフォントラスタライザに要求した場合、該フォントラスタライザの演算精度が上限に達してしまい、正常な文字形状のビットマップを生成することができなくなってしまうことがある。
【０００４】
本発明は、前記従来の問題点を解決して、画像データの主走査方向又は副走査方向の解像度が所定解像度より大きい場合には、該所定解像度より大きい走査方向の解像度を所定解像度に下げて、前記画像データを、解像度を下げた分だけ前記解像度を下げた走査方向に沿って文字を拡大して印字するようにして、印字品位を大幅に低下させず、また、ビットマップを生成する速度を低下させずに、文字を拡大して印字することができる画像形成装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
そのために、本発明の画像形成装置においては、上位装置から送信されたページ記述言語を解析して、指定のフォントでテキスト描画を行って文字を印刷する際、印刷する文字に関して指定された解像度が所定の解像度以上である場合には、所定の解像度でフォントのビットマップ展開を行ってビットマップデータを生成し、生成されたビットマップデータを指定された解像度に合わせて拡大させ、文字を印刷する。
【発明の効果】
【０００６】
本発明によれば、画像形成装置は、画像データの主走査方向又は副走査方向の解像度が所定解像度より大きい場合には、該所定解像度より大きい走査方向の解像度を所定解像度に下げて、前記画像データを、解像度を下げた分だけ前記解像度を下げた走査方向に沿って文字を拡大して印字するようになっている。そのため、印字品位を大幅に低下させず、また、ビットマップを生成する速度を低下させずに、文字を拡大して印字することができる。
【発明を実施するための最良の形態】
【０００７】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
【０００８】
図１は本発明の第１の実施の形態におけるプリンタ装置の構成を示すブロック図である。
【０００９】
図において、１１は画像形成装置としてのプリンタ装置であり、図示されないパーソナルコンピュータ等の上位装置が送信するページ記述言語における印字コマンドを解析し、指定のフォントで印刷を行うようになっている。なお、前記プリンタ装置１１はインクジェット式、電子写真式、熱転写式等いかなる種類のプリンタ装置であってもよい。
【００１０】
そして、前記プリンタ装置１１は、ページ記述言語解析部１２、ページ記述言語テキスト描画部１３、文字管理部１４、文字形状情報格納部１５、フォントラスタライザ１６及びフォントデータ格納部１７を有する。ここで、前記ページ記述言語解析部１２は上位装置が送信したページ記述言語を解析し、前記ページ記述言語テキスト描画部１３は、ページ記述言語解析部１２が解析したページ記述言語のうち、テキスト描画に関連するコマンドを扱い、さらに、前記文字管理部１４は、ページ記述言語テキスト描画部１３が指定した文字を扱う。
【００１１】
そして、前記ページ記述言語テキスト描画部１３は、 描画する文字の種別、サイズ、形状修飾等の指定内容をフォントラスタライザ１６への設定値に変換し、 変換した設定値を文字形状情報格納部１５に格納する。該文字形状情報格納部１５は、フォント、文字セット、解像度、拡大率、文字サイズ、回転角度、文字傾斜、輪郭の太らせ量等の文字を生成するために必要な情報を格納して保持する。
【００１２】
また、前記文字管理部１４は、指定された文字のフォントがスケーラブルフォントとしてのアウトラインフォントである場合にはフォントラスタライザ１６にビットマップ１８を生成させる。また、前記文字管理部１４は、指定された文字のフォントがビットマップフォントである場合にはフォントデータ格納部１７にアクセスして、指定された文字の文字コードに該当するビットマップ１８の格納位置を検索する。
【００１３】
さらに、前記フォントラスタライザ１６は、前記フォントデータ格納部１７から指定された文字コードに該当する１文字分の輪郭線情報を読み込み、文字のイメージデータをビットマップ形式に変換して当該文字のビットマップ１８を生成する。なお、前記フォントデータ格納部１７に格納されているフォントは、ビットマップ形式で表したビットマップフォントや、輪郭線情報として文字の輪郭線を座標点で表したスケーラブルフォントである。
【００１４】
ここで、前記ビットマップ１８は、フォントラスタライザ１６が生成したドットのＯＮ／ＯＦＦで文字を表現したドットデータであり、図においては、文字が「Ａ」である場合の例が示されている。そして、フォントラスタライザ１６が生成したビットマップ１８に対して実際に印字するときに何倍するかを示す変換倍率１９に１が格納してある場合は、拡大する必要がなくビットマップ１８をそのまま使用し、変換倍率１９に１より大きい数値が格納してある場合は、拡大する必要があるのでビットマップ１８を拡大するようにする。図においては、変換倍率１９に４が格納され、文字が「Ａ」を４倍に拡大する例が示されている。
【００１５】
さらに、前記プリンタ装置１１は、文字、図形等のページに描画する内容を中間言語に変換するページデータ生成部２０、及び、該ページデータ生成部２０が中間言語として生成したページ描画内容をすべてドットデータに展開して印刷イメージを生成する展開部２１を有する。
【００１６】
次に、前記構成のプリンタ装置１１の動作について説明する。ここでは、文字の輪郭線を補正する輪郭補正の動作について説明する。
【００１７】
図２は本発明の第１の実施の形態におけるプリンタ装置の文字の縮小生成と拡大展開の例を示す第１の図、図３は本発明の第１の実施の形態におけるプリンタ装置の文字の縮小生成と拡大展開の例を示す第２の図、図４は本発明の第１の実施の形態におけるプリンタ装置の動作を示すフローチャートである。
【００１８】
まず、プリンタ装置１１は、上位装置から画像データとしてのテキスト印字を含むページ記述言語による印刷データを受信する。すると、ページ記述言語解析部１２は該当するコマンド処理を起動する。前記ページ記述言語に含まれるコマンド群のうちフォント、文字の傾きや太さ、テキストのサイズ等のテキスト印字に関連するものについては、ページ記述言語テキスト描画部１３にコマンドの内容が通知される。なお、本実施の形態におけるプリンタ装置１１は、ページ記述言語によってテキスト以外の図形描画やイメージに関するコマンドも解析して印刷することが可能であるが、テキスト以外の図形描画やイメージについては、説明を省略する。
【００１９】
続いて、ページ記述言語テキスト描画部１３は、ページ記述言語を解析し、 書体、文字修飾等、印字する文字に関する指定を蓄積する。この場合、前記ページ記述言語テキスト描画部１３は、ページ記述言語を解析し、 描画する文字の種別やサイズ、形状修飾の指定内容をフォントラスタライザ１６への設定値に変換し、 変換した設定値を文字形状情報格納部１５に格納する。
【００２０】
続いて、前記ページ記述言語テキスト描画部１３は、印字コードを受信すると、文字管理部１４に対して、文字形状情報格納部１５に設定した形状でのビットマップ１８を要求する。
【００２１】
すると、前記文字管理部１４は、フォントラスタライザ１６が生成したビットマップ１８又はフォントデータ格納部１７が格納しているビットマップフォントに対し、拡大が必要であることを示す変換倍率１９の初期値として１を設定する。すなわち、変換倍率１９を１に初期化する。
【００２２】
続いて、前記文字管理部１４は、選択フォント、すなわち、指定のフォントがビットマップフォントであるか又はスケーラブルフォントであるかを判断する。そして、指定のフォントがビットマップフォントである場合、 文字管理部１４は、指定のフォントと印字コードとから、フォントデータ格納部１７内のビットマップ１８の格納位置を検出し、処理を終了する。
【００２３】
また、指定のフォントがスケーラブルフォントである場合、文字管理部１４は、フォントラスタライザ１６に文字を生成させる。しかし、 フォントラスタライザ１６で生成することができないことが予想される厳しい条件が指定されている場合、 文字の生成をすることができずに印字することができないよりは、若干印字品位が落ちても文字を印字することを優先とし、文字を生成することができるように条件を緩める。
【００２４】
例えば、図２（ｂ）に示されるように、文字形状情報格納部１５の解像度として２４００〔ｄｐｉ〕が指定されている場合、１２００〔ｄｐｉ〕で作成したビットマップ１８に対して２倍に拡大する。また、例えば、文字形状情報格納部１５の解像度として４８００〔ｄｐｉ〕が指定された場合、１２００〔ｄｐｉ〕で作成したビットマップ１８に対して４倍に拡大する。
【００２５】
これにより、輪郭線の滑らかさは失われるが、形状としては十分同一の文字であると認識することができる結果を得ることができる。そこで、文字管理部１４は、文字形状情報格納部１５の解像度としての出力解像度が１２０１〔ｄｐｉ〕以上であるか、又は、１２００〔ｄｐｉ〕以下であるかを判断する。
【００２６】
ここで、出力解像度が１２０１〔ｄｐｉ〕以上である場合、前記文字管理部１４は、変換倍率１９を計算し、文字形状情報の拡大倍率を逆算する。そして、１２００〔ｄｐｉ〕のビットマップ１８の生成を設定するとともに、文字形状情報格納部１５の解像度指定は１２００〔ｄｐｉ〕とし、 変換倍率１９は１２００〔ｄｐｉ〕に対する倍率を設定する。
【００２７】
続いて、前記文字管理部１４はフォントラスタライザ１６に文字を生成させる。すると、フォントラスタライザ１６は、文字形状情報格納部１５の条件で、 フォントデータ格納部１７から輪郭線情報を読み込み、ビットマップ１８を生成する。なお、生成過程でエラーが発生した場合、前記フォントラスタライザ１６はエラー発生内容を示すエラーコードを文字管理部１４に返す。
【００２８】
続いて、フォントラスタライザ１６が異常終了としてエラーコードを返してくると、文字管理部１４は、生成条件が厳しいために発生したエラーであるか否かをエラーコードの種別から判断する。そして、フォントデータに異常がある場合等のように、 リトライする必要がないエラーである場合は、そのまま異常終了である生成結果をページ記述言語テキスト描画部１３へ返し、処理を終了する。また、正常にビットマップ１８を生成することができた場合も、ビットマップデータの先頭アドレスをページ記述言語テキスト描画部１３へ返し、処理を終了する。すなわち、前記文字管理部１４は、フォントラスタライザ１６による文字の生成結果について判断し、異常がなくＯＫであるか又は指定サイズ異常以外のエラーである場合には、ページ記述言語テキスト描画部１３へ返して処理を終了する。
【００２９】
また、フォントラスタライザ１６による文字の生成結果が指定サイズ異常である場合、すなわち、生成条件が厳しいために発生したエラーである場合、再設定した解像度はそのままとし、次は、文字形状情報格納部１５の拡大率設定に着眼する。この場合、文字管理部１４は、拡大率が指定されているか否かを判断する。本来、拡大率設定が１より大きい場合にはフォントラスタライザ１６が指定された倍率通りに拡大したビットマップ１８を生成するが、フォントラスタライザ１６での拡大を行わせないことにする。なお、拡大倍率が１の場合は倍率の変更は行わない。
【００３０】
そして、拡大率が指定されている場合、文字管理部１４は、図２（ｃ）に示されるように、文字形状情報格納部１５の拡大率設定値を１／２値とする。拡大率を１／２としたビットマップ１８に対して逆に２倍拡大する必要があるため、変換倍率１９に設定している値を２倍する。すなわち、拡大率を１／２とし、変換倍率を２倍加算する。
【００３１】
続いて、文字管理部１４は、フォントラスタライザ１６に文字を生成させる。すると、フォントラスタライザ１６は、拡大率設定値を変更した文字形状情報格納部１５の条件で、 再度ビットマップ１８を生成する。
【００３２】
そして、フォントラスタライザ１６が生成結果としてエラーコードを返してきた場合、 文字管理部１４は、生成条件が厳しいために発生したエラーであるか否かを、エラーコードの種別から判断する。 正常にビットマップ１８を生成することができた場合は、ビットマップデータの先頭アドレスをページ記述言語テキスト描画部１３へ返す。すなわち、前記文字管理部１４は、フォントラスタライザ１６による文字の生成結果について判断し、異常がなくＯＫである場合には、ページ記述言語テキスト描画部１３へ返す。
【００３３】
また、フォントラスタライザ１６による文字の生成結果が指定サイズ異常である場合、すなわち、生成条件が厳しいために発生したエラーである場合、 再設定した解像度と再設定した拡大倍率はそのままとし、次は、文字形状情報格納部１５の文字サイズに着眼する。この場合、文字管理部１４は、図２（ｄ）に示されるように、文字形状情報格納部１５の文字サイズ設定値を１／２値とする。 文字サイズを１／２としたビットマップ１８に対して逆に２倍拡大する必要があるため、変換倍率１９に設定している値を２倍する。すなわち、文字サイズを１／２とし、変換倍率１９を２倍加算する。
【００３４】
続いて、文字管理部１４は、フォントラスタライザ１６に文字を生成させる。すると、フォントラスタライザ１６は、文字サイズを変更した文字形状情報格納部１５の条件で、 再度ビットマップ１８を生成する。
【００３５】
そして、前記文字管理部１４は、フォントラスタライザ１６による文字の生成結果について判断し、異常がなくＯＫである場合、すなわち、正常にビットマップ１８を生成することができた場合、ビットマップデータの先頭アドレスをページ記述言語テキスト描画部１３へ返す。また、フォントラスタライザ１６による文字の生成結果が指定サイズ異常である場合、すなわち、前述の３項目の設定を変えてもビットマップ１８を生成することができなかった場合には、あきらめて、ページ記述言語テキスト描画部１３へ異常終了を返し、処理を終了する。
【００３６】
続いて、ページ記述言語テキスト描画部１３は、ビットマップデータの先頭アドレスと変換倍率１９、ビットマップ１８の配置とをページデータ生成部２０に通知する。すると、該ページデータ生成部２０は、変換倍率１９とビットマップ１８とを対とした中間言語に置き換える。すなわち、ビットマップ１８の配置と拡大倍率とを中間言語に変換する。
【００３７】
そして、ページ記述言語解析部１２は、ページ排出コマンドを認識すると、 １ページ分の解析終了をページデータ生成部２０に通知する。すると、該ページデータ生成部２０は展開部２１に対して画像データ作成開始を通知する。
【００３８】
続いて、展開部２１は中間言語を解析して印刷画像を作成する。ビットマップ１８の展開時には拡大倍率に従い縦横方向に拡大する。なお、ビットマップ１８を縦横方向に拡大すること自体については、従来から存在する技術であるので、説明を省略する。
【００３９】
次に、フローチャートについて説明する。
ステップＳ１  テキスト印字を含むページ記述言語による印刷データを受信する。
ステップＳ２  ページ記述言語を解析し、書体、文字修飾等、印字する文字に関する指定を蓄積する。
ステップＳ３  印字コードを受信する。
ステップＳ４  変換倍率１９を１に初期化する。
ステップＳ５  選択フォントがビットマップフォントであるか、又は、スケーラブルフォントであるかを判断する。選択フォントがビットマップフォントである場合は処理を終了し、選択フォントがスケーラブルフォントである場合はステップＳ６に進む。
ステップＳ６  出力解像度が１２０１〔ｄｐｉ〕以上であるか、又は、１２００〔ｄｐｉ〕以下であるかを判断する。出力解像度が１２０１〔ｄｐｉ〕以上である場合はステップＳ７に進み、出力解像度が１２００〔ｄｐｉ〕以下である場合はステップＳ８に進む。
ステップＳ７  変換倍率１９を計算し、文字形状情報の拡大倍率を逆算する。
ステップＳ８  フォントラスタイザ１６に文字を生成させる。
ステップＳ９  文字の生成結果がＯＫ又はその他エラーであるか、又は、指定サイズ異常であるかを判断する。文字の生成結果がＯＫ又はその他エラーである場合は処理を終了し、文字の生成結果が指定サイズ異常である場合はステップＳ１０に進む。
ステップＳ１０  拡大率が指定されているか否かを判断する。拡大率が指定されている場合はステップＳ１１に進み、拡大率が指定されていない場合はステップＳ１４に進む。
ステップＳ１１  拡大率を１／２とし、変換倍率１９を２倍加算する。
ステップＳ１２  フォントラスタイザ１６に文字を生成させる。
ステップＳ１３  文字の生成結果がＯＫであるか、又は、指定サイズ異常であるかを判断する。文字の生成結果がＯＫである場合はステップＳ１６に進み、文字の生成結果が指定サイズ異常である場合はステップＳ１４に進む。
ステップＳ１４  文字サイズを１／２とし、変換倍率１９を２倍加算する。
ステップＳ１５  フォントラスタイザ１６に文字を生成させる。
ステップＳ１６  文字の生成結果がＯＫであるか、又は、指定サイズ異常であるかを判断する。文字の生成結果がＯＫである場合はステップＳ１７に進み、文字の生成結果が指定サイズ異常の場合は処理を終了する。
ステップＳ１７  ビットマップ１８の配置と拡大倍率を中間言語に変換し、処理を終了する。
【００４０】
このように、本実施の形態においては、上位装置から送信された画像データの主走査方向（Ｘ方向）又は副走査方向（Ｙ方向）の解像度が所定値（例えば、１２００〔ｄｐｉ〕）より大きい場合、該所定値より大きい主走査方向又は副走査方向の解像度を前記所定値にまで低下させるとともに、前記画像データを、低下させた解像度の走査方向に沿って、前記解像度の低下分だけ拡大して印字するようになっている。そのため、印字品位を大幅に低下させず、また、ビットマップ１８を生成する速度を低下させずに、文字を拡大して印字することができる。
【００４１】
さらに、指定通りの条件でフォント生成を行った結果、ビットマップ１８を生成することができない場合、まず、解像度を下げ、次に、拡大指定倍率を下げ、そして、文字サイズを下げる、というように、段階的に生成サイズを調節する。すなわち、ビットマップ１８を生成することができない場合は、解像度、拡大率及び文字サイズを段階的に低下させ、前記解像度、拡大率及び文字サイズの低下分だけ拡大して印字する。これにより、極力印字品位を落とすことなくビットマップ１８を生成し、文字印刷を行うことができる。
【００４２】
次に、本発明の第２の実施の形態について説明する。なお、第１の実施の形態と同じ構造を有するものについては、同じ符号を付与することによって、その説明を省略する。また、前記第１の実施の形態と同じ動作及び効果についても、その説明を省略する。
【００４３】
図５は本発明の第２の実施の形態におけるプリンタ装置の構成を示すブロック図である。
【００４４】
本実施の形態において、プリンタ装置１１は、前記第１の実施の形態における文字生成形式の変換が発生した場合における変換前後の文字形状情報の設定値と変換後の拡大倍率値とを保存する変換保存領域２２を更に有する。なお、その他の点の構成については、前記第１の実施の形態と同様であるので説明を省略する。
【００４５】
次に、本実施の形態におけるプリンタ装置１１の動作について説明する。
【００４６】
図６は本発明の第２の実施の形態におけるプリンタ装置の動作を示す第１のフローチャート、図７は本発明の第２の実施の形態におけるプリンタ装置の動作を示す第２のフローチャートである。
【００４７】
なお、プリンタ装置１１が上位装置からテキスト印字を含むページ記述言語による印刷データを受信してから、文字管理部１４が、指定のフォントがビットマップフォントであるか又はスケーラブルフォントであるかを判断するまでの動作については、前記第１の実施の形態と同様であるので、説明を省略する。
【００４８】
そして、スケーラブルフォントからのビットマップ生成となった場合、すなわち、指定のフォントがスケーラブルフォントである場合、文字管理部１４は、文字形状情報格納部１５の設定で以前にフォントラスタライザ１６を動作させたことがないか否かを判断するために、変換保存領域２２に保存してある変更前設定値を検索する。すなわち、同じ設定で生成したことがないか変換保存領域２２を検索し、同設定の有無を判断する。
【００４９】
そして、同設定がない場合、すなわち、文字形状情報格納部１５の設定値が変換保存領域２２に存在しない場合、以前にその設定値で文字を生成したことがないか、又は、その設定値は変換を行わなくても正常にビットマップ１８を生成することができたかのどちらかであるため、文字管理部１４は、フォントラスタライザ１６に文字を生成させる。
【００５０】
また、同設定がある場合、すなわち、文字形状情報格納部１５の設定値が変換保存領域２２に存在する場合は、以前にその設定値で文字を生成した結果、前記第１の実施の形態に記載した倍率変換を行った実績があることを示している。そこで、文字管理部１４は、変換保存領域２２の検索によって抽出した変換後設定値を文字形状情報格納部１５と変換倍率１９に上書きし、フォントラスタライザ１６にビットマップ１８を生成させる。すなわち、変換保存領域２２から設定を取り出し、文字形状情報格納部１５と拡大倍率とを上書きする。そして、フォントラスタライザ１６に文字を生成させる。
【００５１】
次に、文字管理部１４が、文字形状情報格納部１５の解像度としての出力解像度が１２０１〔ｄｐｉ〕以上であるか、又は、１２００〔ｄｐｉ〕以下であるかを判断してから、文字サイズを１／２とし、変換倍率１９を２倍加算して、フォントラスタライザ１６に文字を生成させるまでの動作については、前記第１の実施の形態と同様であるので、説明を省略する。すなわち、生成サイズ変更が発生した場合の動作については、前記第１の実施の形態と同様であるので、説明を省略する。
【００５２】
そして、フォントラスタライザ１６に文字を生成させた後、文字管理部１４は、同じ設定で生成したことがないか変換保存領域２２を検索する。すなわち、文字形状情報格納部１５の設定で以前にフォントラスタライザ１６を動作させたことがないかを、変換保存領域２２に保存してある変更前設定値から検索する。そして、変換保存領域２２に該当がない場合、新たな設定値として文字形状情報格納部１５の必要な項目と変換倍率１９を変換保存領域２２に追加する。すなわち、変換保存領域２２に文字形状情報の設定値と拡大倍率とを保存する。また、変換保存領域２２に該当がない場合は、指定値通りにビットマップ１８を生成することができているため変換保存領域２２に文字形状情報の設定値と拡大倍率とを保存する必要はない。なお、以降の動作については、前記第１の実施の形態と同様であるので、説明を省略する。
【００５３】
次に、フローチャートについて説明する。
ステップＳ２１  テキスト印字を含むページ記述言語による印刷データを受信する。
ステップＳ２２  ページ記述言語を解析し、書体、文字修飾等、印字する文字に関する指定を蓄積する。
ステップＳ２３  印字コードを受信する。
ステップＳ２４  変換倍率１９を１に初期化する。
ステップＳ２５  選択フォントがビットマップフォントであるか、又は、スケーラブルフォントであるかを判断する。選択フォントがビットマップフォントである場合は処理を終了し、選択フォントがスケーラブルフォントである場合はステップＳ２６に進む。
ステップＳ２６  同じ設定で生成したことがないか変換保存領域２２を検索する。
ステップＳ２７  同じ設定で生成したことがあるか否かを判断する。同じ設定で生成したことがある場合はステップＳ２８に進み、同じ設定で生成したことがない場合はステップＳ２９に進む。
ステップＳ２８  変換保存領域２２から設定を取り出し、文字形状情報と拡大倍率を上書きする。
ステップＳ２９  出力解像度が１２０１〔ｄｐｉ〕以上であるか、又は、１２００〔ｄｐｉ〕以下であるかを判断する。出力解像度が１２０１〔ｄｐｉ〕以上である場合はステップＳ３０に進み、出力解像度が１２００〔ｄｐｉ〕以下である場合はステップＳ３１に進む。
ステップＳ３０  変換倍率１９を計算し、文字形状情報の拡大倍率を逆算する。
ステップＳ３１  フォントラスタイザ１６に文字を生成させる。
ステップＳ３２  文字の生成結果がＯＫ又はその他エラーであるか、又は、指定サイズ異常であるかを判断する。文字の生成結果がＯＫ又はその他エラーである場合は処理を終了し、文字の生成結果が指定サイズ異常の場合はステップＳ３３に進む。
ステップＳ３３  拡大率が指定されているか否かを判断する。拡大率が指定されている場合はステップＳ３４に進み、拡大率が指定されていない場合はステップＳ３７に進む。
ステップＳ３４  拡大率を１／２とし、変換倍率１９を２倍加算する。
ステップＳ３５  フォントラスタイザ１６に文字を生成させる。
ステップＳ３６  文字の生成結果がＯＫであるか、又は、指定サイズ異常であるかを判断する。文字の生成結果がＯＫである場合はステップＳ３９に進み、文字の生成結果が指定サイズ異常の場合はステップＳ３７に進む。
ステップＳ３７  文字サイズを１／２とし、変換倍率１９を２倍加算する。
ステップＳ３８  フォントラスタイザ１６に文字を生成させる。
ステップＳ３９  変換保存領域２２に該当する設定値があるか否かを判断する。変換保存領域２２に該当する設定値がある場合はステップＳ４１に進み、変換保存領域２２に該当する設定値がない場合はステップＳ４０に進む。
ステップＳ４０  変換保存領域２２に文字形状情報の設定値と拡大倍率を保存する。
ステップＳ４１  文字の生成結果がＯＫであるか、又は、指定サイズ異常であるかを判断する。文字の生成結果がＯＫである場合はステップＳ４２に進み、文字の生成結果が指定サイズ異常の場合は処理を終了する。
ステップＳ４２  ビットマップ１８の配置と拡大倍率を中間言語に変換し、処理を終了する。
【００５４】
このように、本実施の形態においては、以前に倍率変換した設定を変換保存領域２２に保存しておき、同一の設定値が指定された場合は最初から倍率変換した設定でビットマップ１８を生成するようになっている。すなわち、ビットマップ１８を生成することができない設定条件を保存し、 同一の設定条件で再度文字生成を行う場合、保存された設定条件に対応する分だけ拡大して印字する。そのため、印刷速度の低下を防ぐことができる。
【００５５】
前記第１の実施の形態では、可能な限りよい品位を得るために段階的に文字生成の倍率変換を行っているので、各文字にて作り直しを行うことになり、印刷速度が低下する。しかし、一般的なテキスト印刷では、フォントや文字修飾を固定して文章を書くので、文字形状情報格納部１５の設定値が同一ならば、異なる文字であっても、同様に生成することができない可能性が高い。そこで、本実施の形態では、前述のように、以前に倍率変換した設定を変換保存領域２２に保存しておき、同一の設定値が指定された場合には最初から倍率変換した設定でビットマップ１８を生成することによって、印刷速度の低下を防ぐようになっている。
【００５６】
なお、前記第１及び第２の実施の形態は、上位装置からページ記述言語によって文字描画コマンドを受信し、内部で印刷イメージを生成するプリンタ装置に適用することができる。
【００５７】
また、本発明は前記実施の形態に限定されるものではなく、本発明の趣旨に基づいて種々変形させることが可能であり、それらを本発明の範囲から排除するものではない。
【図面の簡単な説明】
【００５８】
【図１】本発明の第１の実施の形態におけるプリンタ装置の構成を示すブロック図である。
【図２】本発明の第１の実施の形態におけるプリンタ装置の文字の縮小生成と拡大展開の例を示す第１の図である。
【図３】本発明の第１の実施の形態におけるプリンタ装置の文字の縮小生成と拡大展開の例を示す第２の図である。
【図４】本発明の第１の実施の形態におけるプリンタ装置の動作を示すフローチャートである。
【図５】本発明の第２の実施の形態におけるプリンタ装置の構成を示すブロック図である。
【図６】本発明の第２の実施の形態におけるプリンタ装置の動作を示す第１のフローチャートである。
【図７】本発明の第２の実施の形態におけるプリンタ装置の動作を示す第２のフローチャートである。
【符号の説明】
【００５９】
１１    プリンタ装置
１８    ビットマップ
【図１】
0004785601.tif 000002
【図２】
0004785601.tif 000003
【図３】
0004785601.tif 000004
【図４】
0004785601.tif 000005
【図５】
0004785601.tif 000006
【図６】
0004785601.tif 000007
【図７】
0004785601.tif 000008