(57)【要約】【課題】用いる言語の種類によらず、ラスタライズ処理を高速化する。【解決手段】画像処理装置は、受付部、第１記憶部、第２記憶部、制御部を含む。受付部は、使用する言語の選択を受け付ける。第１記憶部は、言語ごとに、頻度順データを記憶する。制御部は、フォントキャッシュ領域に記憶された文字画像データを用いて、ＰＤＬデータのラスタライズ処理を行う。制御部は、第１キャッシュ領域と第２キャッシュ領域を設定する。制御部は、選択された言語に対応する頻度順データに基づき、使用頻度の高い文字から順番に、文字画像データを生成する。制御部は、頻度順データに基づき生成した文字画像データを第１キャッシュ領域に記憶させる。【選択図】図４
2020026114.tif 000002
【特許請求の範囲】
【請求項１】
使用する言語の選択を受け付ける受付部と、
フォントデータと、言語ごとに、使用頻度の高い順に文字を定義した頻度順データを記憶する第１記憶部と、
フォントキャッシュ領域を含み、前記フォントキャッシュ領域に文字画像データを記憶する第２記憶部と、
制御部と、を含み、
前記制御部は、
前記フォントキャッシュ領域に記憶された前記文字画像データを用いて、ページ記述言語で記述されたＰＤＬデータに基づき、１文字ずつ文字を画像化してラスターデータを生成するラスタライズ処理を行い、
前記第２記憶部に前記フォントキャッシュ領域として、第１キャッシュ領域と第２キャッシュ領域を設定し、
選択された前記言語に対応する前記頻度順データに基づき、使用頻度の高い文字から順番に、前記文字画像データを生成し、
前記頻度順データに基づき生成した前記文字画像データを前記第１キャッシュ領域に記憶させ、
前記フォントキャッシュ領域に画像化する文字の前記文字画像データがキャッシュされていないキャッシュミスが生じたとき、前記フォントデータに基づき、キャッシュされていない文字の前記文字画像データを新たに生成し、
新たに生成した前記文字画像データを前記第２キャッシュ領域に記憶させることを特徴とする画像処理装置。
【請求項２】
前記制御部は、
前記第１キャッシュ領域に記憶させる前記文字画像データの１文字あたりのデータ量を認識し、
前記第１キャッシュ領域のサイズを認識した前記データ量で除して得られる数以下の整数のうち、最も大きい整数と同じ個数の前記文字画像データを前記第１キャッシュ領域に記憶させることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記キャッシュミスが生じたとき、
前記制御部は、前記第１キャッシュ領域の前記文字画像データを削除しないことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記キャッシュミスが生じたとき、
前記制御部は、
新たに生成した前記文字画像データを記憶できるだけの空きスペースが前記第２キャッシュ領域にあるか否かを確認し、
前記空きスペースがあるとき、新たに生成した前記文字画像データを前記空きスペースに記憶させ、
前記空きスペースがないとき、前記第２キャッシュ領域に記憶される前記文字画像データのうち、使用されていない時間が最も長い前記文字画像データを消去し、消去によりできた前記空きスペースに、新たに生成した前記文字画像データを記憶させることを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記受付部が前記使用する言語の変更を受け付けたとき、
前記制御部は、
設定されている前記フォントキャッシュ領域を全て消去し、
前記ラスタライズ処理する前記ＰＤＬデータに応じて、新たに前記フォントキャッシュ領域を設定することを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記制御部は、
画像化する文字の前記文字サイズごとに、前記フォントキャッシュ領域を設定し、
選択された前記言語に対応する前記頻度順データに基づき、使用頻度の高い文字から順番に、前記文字サイズの前記文字画像データを生成し、
生成した前記文字画像データを、対応する前記第１キャッシュ領域に記憶させることを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記制御部は、
画像化する文字の装飾の種類ごとに、前記第１キャッシュ領域と前記第２キャッシュ領域を設定し、
選択された前記言語に対応する前記頻度順データに基づき、使用頻度の高い文字から順番に、前記装飾に応じた前記文字画像データを生成し、
生成した前記文字画像データを、対応する前記第１キャッシュ領域に記憶させることを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項８】
前記制御部は、
画像化しようとする文字のフォントと、直前に画像化した文字のフォントが異なるとき、前記第１キャッシュ領域と前記第２キャッシュ領域の前記文字画像データを消去し、
選択された前記言語に対応する前記頻度順データと前記フォントデータに基づき、使用頻度の高い文字から順番に、画像化しようとする文字のフォントを用いて前記文字画像データを生成し、
前記頻度順データに基づき生成した前記文字画像データを、消去を行った前記第１キャッシュ領域に記憶させることを特徴とする請求項１乃至７の何れか１項に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ページ記述言語（ＰＤＬ）で記述されたデータに基づきラスタライズ処理を行う画像処理装置に関する。
【背景技術】
【０００２】
コンピューターから受信したデータに基づき印刷する印刷装置がある。コンピューターは、印刷内容をページ記述言語で記述したデータを送信する。データを受信した印刷装置は、記述された定義（コマンド）に従い、印刷用画像データを生成する。印刷用画像データは、例えば、ビットマップデータである。印刷用画像データを生成するとき、印刷装置は、文字を画像化することがある。この場合、印刷装置は、各文字の画像データを生成する。印刷装置は、生成した文字の画像データをページに貼りつけて印刷用画像データを生成する。ここで、生成した各文字の画像データをキャッシュメモリーに記憶することがある。キャッシュメモリーに記憶したデータを再利用することにより、文字の画像データの生成回数を減らすことができる。
【０００３】
このような文字の画像データをキャッシュメモリーに記憶する技術の一例が特許文献１に記載されている。具体的に、特許文献１には、ＬＲＵ（Ｌｅａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ）方式のフォントキャッシュを有し、文字画像の使用頻度が閾値以上であるか否かにより、文字画像をフォントキャッシュの先頭の位置にキャッシュするか否か判定する画像形成装置が記載されている。この構成により、フォントキャッシュにおける文字画像の使用効率を向上させる（特許文献１：請求項１、請求項２、段落［０００８］）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−０１６６１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ページ記述言語で記述されたデータに基づいてラスタライズ処理（描画処理）をするとき、テキスト（文字、単語）を画像化することがある。データには、画像化を指示するコマンドと、画像化するテキストが埋め込まれる。コマンドとテキストに基づき、ページの先頭から１文字ずつ文字の画像化が行われる。
【０００６】
文字を画像化するとき、フォントデータに基づき、文字の画像データが生成される。生成した文字の画像データがページ内の適切な位置に貼りつけられる。これにより、文字が画像化される。例えば、Ａと言う文字の画像データを生成し、生成したＡの文字の画像データが貼りつけられる。生成した文字の画像データをキャッシュ領域に記憶させることがある。例えば、ＲＡＭの一部がキャッシュ領域に割り当てられる。
【０００７】
画像化する文字の画像データがキャッシュ領域にあれば（ヒットすれば）、文字の画像データを再利用できる。文字の画像データを生成しなくてすむ。一方、画像化する文字の画像データがキャッシュ領域にないとき（キャッシュミスのとき）、キャッシュされていない文字の画像データが生成される。
【０００８】
ヒット率が高いほど、文字の画像データの生成回数が減る。ヒット率が低ければ、ラスタライズ処理中の文字の画像データの生成回数が多くなる。従って、ヒット率が高いほど、ラスタライズ処理を高速化することができる。ヒット率が低いほど、ラスタライズ処理の所要時間は長くなる。処理速度は遅くなる。一方、キャッシュ領域の容量には限りがある。キャッシュ領域が満杯のとき、キャッシュ領域の文字の画像データを１つ破棄し、代わりに、新たに生成した文字の画像データを記憶させることがある。破棄する文字の画像データを選択するアルゴリズムとして、ＬＲＵ方式が用いられている。ＬＲＵ方式は、使用されていない時間が長い（最も使用されていない）画像データを破棄するアルゴリズムである。
【０００９】
画像処理装置で、様々な言語のラスタライズ処理を行えるようにすることがある。ラスタライズ処理を行う言語の種類によっては、ＬＲＵ方式では、ヒット率が低くなる場合がある。そのため、文書のデータをラスタライズ処理するとき、ラスタライズ処理の処理に時間を要する場合があるという問題がある。
【００１０】
特許文献１の技術は、ＬＲＵ方式で文字の画像データをキャッシュする。そのため、特許文献１に記載の装置では、ラスタライズ処理の所要時間が長くなることがある。特許文献１に記載の技術では、上記の問題を解決することはできないことがある。
【００１１】
本発明は、上記課題を解決するため、用いる言語の種類によらず、ラスタライズ処理の高速化を図り、処理の所要時間を平均的に短くする。
【課題を解決するための手段】
【００１２】
本発明に係る画像処理装置は、受付部、第１記憶部、第２記憶部、制御部を含む。前記受付部は、使用する言語の選択を受け付ける。前記第１記憶部はフォントデータを記憶する。前記第１記憶部は、言語ごとに、使用頻度の高い順に文字を定義した頻度順データを記憶する。前記第２記憶部は、フォントキャッシュ領域を含む。前記第２記憶部は、前記フォントキャッシュ領域に文字画像データを記憶する。前記制御部は、前記フォントキャッシュ領域に記憶された前記文字画像データを用いて、ページ記述言語で記述されたＰＤＬデータに基づき、１文字ずつ文字を画像化してラスターデータを生成するラスタライズ処理を行う。前記制御部は、前記第２記憶部に前記フォントキャッシュ領域として、第１キャッシュ領域と第２キャッシュ領域を設定する。前記制御部は、選択された前記言語に対応する前記頻度順データに基づき、使用頻度の高い文字から順番に、前記文字画像データを生成する。前記制御部は、前記頻度順データに基づき生成した前記文字画像データを前記第１キャッシュ領域に記憶させる。前記フォントキャッシュ領域に画像化する文字の前記文字画像データがキャッシュされていないキャッシュミスが生じたとき、前記制御部は、前記フォントデータに基づき、キャッシュされていない文字の前記文字画像データを新たに生成する。新たに生成した前記文字画像データを前記第２キャッシュ領域に記憶させる。
【発明の効果】
【００１３】
用いる言語の種類によらず、ラスタライズ処理を高速化することができる。様々な言語でラスタライズ処理の所要時間を平均的に短くすることができる。
【図面の簡単な説明】
【００１４】
【図１】実施形態に係る複合機の一例を示す図である。
【図２】実施形態に係るコンピューターの一例を示す図である。
【図３】実施形態に係る印刷用データの処理の基本的な流れの一例を示す図である。
【図４】実施形態に係るフォントキャッシュ領域の一例を示す図である。
【図５】実施形態に係る言語選択画面の一例を示す図である。
【図６】実施形態に係る頻度順データの一例を示す図である。
【図７】実施形態に係る頻度順データに基づく処理の一例を示す図である。
【図８】実施形態に係る頻度順データに基づく処理の一例を示す図である。
【図９】実施形態に係る複合機でのラスタライズ処理の具体的な一例を示す図である。
【図１０】実施形態に係る複合機での言語の変更時の処理の一例を示す。
【発明を実施するための形態】
【００１５】
以下、図１〜図９を用い、本発明の実施形態を説明する。以下では、画像処理装置として複合機１００を例に挙げ説明する。画像処理装置は複合機１００に限られない。画像処理装置は、プリンターのような他種の画像形成装置でもよい。なお、本実施の形態に記載されている構成、配置等の各要素は、発明の範囲を限定せず、単なる説明例にすぎない。
【００１６】
（複合機１００）
図１を用いて実施形態に係る複合機１００の一例を説明する。図１は、実施形態に係る複合機１００の一例を示す図である。
【００１７】
複合機１００は制御部１、記憶部２、画像読取部３、操作パネル４（受付部に相当）、印刷部５、通信部１２を含む。
【００１８】
制御部１は複合機１００の動作を制御する。制御部１は、制御回路１０、画像処理回路１１を含む。制御回路１０は、例えば、ＣＰＵである。制御回路１０は、記憶部２に記憶されたプログラム、データに基づき各部（画像読取部３、操作パネル４、印刷部５、通信部１２）を制御する。画像処理回路１１は各種画像処理を行う。例えば、画像処理回路１１は、画像処理専用の回路（ＡＳＩＣ）である。例えば、画像処理回路１１は、ページ記述言語で記述されたデータを解析し、ラスターデータ（ビットマップデータ、画像データ）を生成する。なお、制御部１と別に、画像処理回路１１が設けられてもよい。
【００１９】
記憶部２は、ＲＯＭ２１（第１記憶部に相当）、ストレージ２２（第１記憶部に相当）、ＲＡＭ２３（第２記憶部に相当）を含む。ＲＯＭ２１は、例えば、フラッシュＲＯＭ２１である。ストレージ２２は、ＨＤＤやＳＳＤのような大容量の不揮発性記憶装置２０２である。記憶部２は、各種データ、制御用プログラムを記憶する。例えば、記憶部２は制御用データ、設定データ、画像データを記憶する。
【００２０】
原稿読み取りのとき、制御部１は、画像読取部３に原稿の読み取りを行わせる。画像読取部３は原稿画像データを生成する。原稿読み取りのため、画像読取部３は、光源（ランプ）、レンズ、イメージセンサー（ラインセンサー）を含む。
【００２１】
操作パネル４は、表示パネル４１、タッチパネル４２、ハードキー４３を含む。表示パネル４１は、画面、画像を表示する。制御部１は表示パネル４１の表示を制御する。制御部１は、ジョブの設定に用いる操作画像を表示パネル４１に表示させる。操作画像は、例えば、ボタンやキーである。タッチパネル４２は、使用者の操作を受け付ける。タッチパネル４２は、表示パネル４１の上面に設けられる。タッチパネル４２はタッチ位置を認識する。タッチパネル４２の出力に基づき、制御部１は、操作された操作画像を認識する。操作された操作画像に基づき、制御部１は、使用者の操作内容を認識する。ハードキー４３も使用者の操作を受け付ける。
【００２２】
印刷部５は、給紙部５１、用紙搬送部５２、画像形成部５３、定着部５４を含む。給紙部５１に用紙がセットされる。印刷ジョブのとき、制御部１は給紙部５１に用紙を供給させる。制御部１は用紙を用紙搬送部５２に搬送させる。制御部１はラスターデータに基づくトナー像を画像形成部５３に形成させる。制御部１は、搬送用紙へのトナー像の転写を画像形成部５３に行わせる。制御部１は、用紙に転写されたトナー像の定着を定着部５４に行わせる。制御部１は、機外に向けて定着後の用紙を用紙搬送部５２に排出させる。
【００２３】
通信部１２はコンピューター２００と通信する。通信部１２はコネクタ、通信用回路、通信用メモリー、通信ソフトウェアを含む。通信部１２はコンピューター２００から印刷用データＤ１を受信する。制御部１は受信した印刷用データＤ１に基づき印刷部５に印刷させる（プリントジョブ）。
【００２４】
（コンピューター２００と印刷用データＤ１）
次に、図２を用いて、実施形態に係るコンピューター２００の一例を説明する。図２は、実施形態に係るコンピューター２００の一例を示す図である。
【００２５】
コンピューター２００は通信部１２と通信可能に接続される。コンピューター２００は複数台でもよい。図２では、便宜上、１台のみコンピューター２００を図示している。コンピューター２００はＰＣやサーバーである。なお、コンピューター２００は、印刷用データＤ１を作成し、複合機１００に印刷用データＤ１を送信できるものであればよい。例えば、コンピューター２００は、スマートフォンやタブレット型端末でもよい。コンピューター２００は、処理部２０１、記憶装置２０２、ディスプレイ２０３、入力デバイス２０４、ネットワーク通信部２０５を含む。
【００２６】
処理部２０１は、コンピューター２００の動作を制御する。例えば、処理部２０１は、ＣＰＵ２０１ａを含む基板である。処理部２０１は、ＯＳ、ソフトウェア２０６、データに基づき、コンピューター２００の動作を制御する。記憶装置２０２はＲＯＭ２１、ＲＡＭ２３、ＨＤＤを含む。記憶装置２０２は、コンピューター２００のＯＳ、プログラム、ソフトウェア２０６、データを不揮発的に記憶する。処理部２０１は、記憶装置２０２の記憶内容に従って、コンピューター２００の各部を制御する。
【００２７】
処理部２０１は、各種情報をディスプレイ２０３に表示させる。ディスプレイ２０３は、例えば、液晶表示パネル４１又は有機ＥＬ表示パネル４１を含む。入力デバイス２０４は、使用者の操作を受け付けるデバイスである。入力デバイス２０４は処理部２０１と接続される。入力デバイス２０４は、例えば、キーボードやマウスである。ネットワーク通信部２０５は通信回路、通信用ソフトウェアを含む。ネットワーク通信部２０５は、処理部２０１の指示に応じて複合機１００の通信部１２と通信する。印刷のため、ネットワーク通信部２０５は、複合機１００の通信部１２に向けて、印刷用データＤ１を送信する。
【００２８】
コンピューター２００の記憶装置２０２には、ソフトウェア２０６がインストールされる。例えば、ワープロソフト、表計算ソフト、画像データ編集ソフト、ブラウザソフトがインストールされる。また、コンピューター２００の記憶部２には、プリンタードライバー２０７がインストールされる。プリンタードライバー２０７は、複合機１００で印刷を行うためのソフトウェアである。
【００２９】
ソフトウェア２０６で作成した文書や閲覧した文書を印刷したいとき、使用者は、ソフトウェア２０６で印刷コマンドを実行する。入力デバイス２０４は印刷コマンドの入力を受け付ける。印刷コマンドが入力されたとき、処理部２０１は、プリンタードライバー２０７に基づき、印刷用データＤ１を生成する。処理部２０１は、複合機１００の通信部１２に向けて、生成した印刷用データＤ１をネットワーク通信部２０５に送信させる。通信部１２が受信した印刷用データＤ１は記憶部２に記憶される。
【００３０】
図２に印刷用データＤ１の一例を示す。例えば、印刷用データＤ１は、ＰＤＬデータ６、設定データ６ａを含む。プリンタードライバー２０７に基づき、処理部２０１は、文書の各ページの内容（印刷内容）をページ記述言語で記述したＰＤＬデータ６を生成する。プリンタードライバー２０７は、ページ内容（印刷内容）をページ記述言語で記述したデータに変換するためのソフトウェアを含む。また、処理部２０１は、使用者により設定された設定値を含む設定データ６ａを印刷用データＤ１に含める。
【００３１】
ＰＤＬデータ６は、印刷する文字（テキスト、単語、文章）を含む。ＰＤＬデータ６では、それぞれの文字について、ページ内の位置、サイズ、フォント、装飾の種類が定義される。なお、装飾の種類とは、例えば、装飾なし、装飾あり（斜体）、装飾あり（下線）のように、文字飾りに関する。
【００３２】
（印刷用データＤ１の処理の流れ）
次に、図３を用いて、実施形態に係る印刷用データＤ１の処理の基本的な流れの一例を説明する。図３は、実施形態に係る印刷用データＤ１の処理の基本的な流れの一例を示す図である。
【００３３】
図３のスタートは、通信部１２が受信した印刷用データＤ１が記憶部２に記憶された時点である。図３の処理は、ページごとに行われる。複数ページの印刷ジョブのとき、図３の処理は、複数回繰り返される。
【００３４】
まず、制御部１は、ＰＤＬデータ６に基づき、ラスターデータを生成する（ラスタライズ処理。ステップ♯１１）。例えば、制御部１の画像処理回路１１がラスターデータを生成する。画像処理回路１１は、例えば、ラスターデータ生成回路を含む。ラスターデータは、ビットマップデータ（画像データ）である。制御部１は、ページ単位でラスターデータを生成する。印刷用データＤ１が複数ページ分のＰＤＬデータ６を含むとき、制御部１は、複数ページのラスターデータを生成する。ラスターデータの解像度は予め定められる。複合機１００では、例えば、６００ｄｐｉである。
【００３５】
ＰＤＬデータ６は、印刷の出力イメージをページ記述言語で記述したデータである。ラスターデータを生成するとき、まず、制御部１はＰＤＬデータ６を解析する。制御部１は、ＰＤＬデータ６の記述内容を解析する。ＰＤＬデータ６では、印刷する文字、記号、図形の内容、印刷する文字、記号、図形の位置、印刷する文字、記号、図形の書式が記述される。例えば、ＰＤＬデータ６は、画像データに変換する文字に対し、画像化のコマンドが付される。制御部１は、解析結果に基づき（ＰＤＬデータ６の記述に基づき）、ラスタライズ処理を行う。
【００３６】
次に、制御部１は、ラスターデータへの画像処理を行う（ステップ♯１２）。例えば、画像処理回路１１が画像処理を行う。制御部１は設定データ６ａを参照する。設定データ６ａに基づき、制御部１は実行すべき画像処理を認識する。例えば、プリンタードライバー２０７で縮小率が設定されたとき、設定データ６ａには縮小率が含まれる。画像処理回路１１は、設定データ６ａに基づき、縮小処理を行う。さらに、画像処理回路１１は、ラスターデータの形式を、画像形成部５３でのトナー像形成するためのデータ形式に変換した出力用画像データを生成する。
【００３７】
制御部１は、出力用画像データに基づき、印刷部５に印刷させる（ステップ♯１３）。画像処理回路１１は１ラインずつ出力用画像データを印刷部５に送信する。印刷部５は、受信した出力用画像データに基づき、１ラインずつトナー像を生成する。トナー像の転写に間に合うように、制御部１は用紙の供給と搬送を行わせる。制御部１は、トナー像の定着を定着部５４に行わせる。そして、制御部１は、印刷済用紙を排出トレイに排出させる（ステップ♯１４）。これにより、１ページの印刷が完了する（エンド）。
【００３８】
（フォントキャッシュ領域７）
図４を用い、実施形態に係るフォントキャッシュ領域７の一例を説明する。図４は実施形態に係るフォントキャッシュ領域７の一例を示す図である。
【００３９】
コンピューター２００には、ファイルを扱うためのソフトウェア２０６がインストールされる。ソフトウェア２０６には、文字（テキスト）を扱うものがある。文書を作成するソフトウェア２０６では、入力デバイス２０４を用いて、文字を入力することができる。
【００４０】
文字は、言語を書き記すための記号である。１文字のみ、又は、文字を複数組み合わせて単語が形成される。英語の場合、文字は、アルファベットである。また、日本語の場合、文字は、例えば、ひらがな、カタカナ、漢字である。言語（各国語）により、使用される文字は異なる。なお、文字には、数字が含まれてもよい。また、文字には、記述用記号（狭義の記号）が含まれてもよい。記述用記号は文書の記述に用いられる記号である。記述用記号は、例えば、かっこ、句読点、ピリオド、カンマ、コロン、セミコロン、アットマークなどである。記述用記号は言語によって差がある。
【００４１】
使用者は、文字を並べて（組み合わせて）単語、文章を入力する。文字を含むファイルを印刷したいとき、使用者は、入力デバイス２０４を用いて、ファイルの印刷コマンドを入力する。印刷コマンドが入力されたとき、コンピューター２００（処理部２０１）は、ファイルに含まれる文字（種類、記号コード）、各文字の位置、各文字のサイズ（ポイント）、各文字のフォントが記述されたＰＤＬデータ６を生成する。
【００４２】
ラスターデータを生成するとき、制御部１（画像処理回路１１）は、ＰＤＬデータ６にて画像化すると定められた各文字の画像データ（文字画像データ８）を用意する。制御部１は、用意した文字画像データ８を、対応する位置にラスターデータに貼りつけていく。複数の文字の画像化が必要な場合、制御部１は文字画像データ８の貼りつけを繰り返す。
【００４３】
複合機１００は、文字画像データ８のキャッシュ機能を有する。用意すべき文字画像データ８がキャッシュされていないとき、制御部１（画像処理回路１１）は、文字画像データ８を新たに生成する。用意すべき記号の文字画像データ８が再現可能にキャッシュされているとき、キャッシュされたデータを用いて、制御部１は文字画像データ８をラスターデータに貼りつける。
【００４４】
複合機１００は文字画像データ８を生成するためのデータ（フォントデータＤ２）を記憶する。ＲＯＭ２１とストレージ２２の一方、又は、両方は、フォントデータＤ２を不揮発的に記憶する。ＲＯＭ２１、ストレージ２２の何れか一方又は両方は、フォントデータＤ２を記憶する第１記憶部として機能する。複数種のフォントデータＤ２が記憶される。
【００４５】
複合機１００は、複数の言語に対応している。例えば、複合機１００は１００種類以上の言語に対応する。１言語につき、少なくとも１種類のフォントデータＤ２を記憶する。例えば、日本語の場合、ゴシック体や明朝体のように、複数種類のフォント名がある。また、ラテン系の言語でも、複数種類のフォント名がある。実際には、記憶部２は、１言語に対し、使用できるフォントデータＤ２を複数記憶する。フォントデータＤ２の数により、使用できるフォントの数が決まる。
【００４６】
記憶部２は、ビットマップフォントのフォントデータＤ２を記憶してもよい。また、記憶部２は、アウトラインフォントのフォントデータＤ２を記憶してもよい。画像処理回路１１は、フォントデータＤ２を用いて、文字画像データ８を生成する。ビットマップフォントのフォントデータＤ２を用いる場合、画像処理回路１１は、画像化する文字のビットマップの拡大、又は、縮小を行って文字画像データ８を生成する。アウトラインフォントのフォントデータＤ２を用いる場合、画像処理回路１１は、画像化する文字のベクトルデータをラスターイメージに変換して文字画像データ８を生成する。
【００４７】
制御部１は、生成した文字画像データ８を再現（再利用）可能にフォントキャッシュ領域７に記憶させる。複合機１００では、ＲＡＭ２３にフォントキャッシュ領域７が設けられる。第２記憶部は、文字画像データ８を再現するためのフォントキャッシュ領域７を含む。ＲＡＭ２３の記憶領域の一部がフォントキャッシュ領域７に割り当てられる。つまり、ＲＡＭ２３は第２記憶部として機能する。制御部１はフォントキャッシュ領域７の記憶を制御する。
【００４８】
１つのフォントキャッシュ領域７のサイズは予め定められている。１つのフォントキャッシュ領域７は、例えば、１６ＫＢ程度である。制御部１は、１つのフォントキャッシュ領域７内に、第１キャッシュ領域７１と第２キャッシュ領域７２を設定する。例えば、制御部１は、フォントキャッシュ領域７の半分を第１キャッシュ領域７１とする。また、制御部１は、フォントキャッシュ領域７の残り半分を第２キャッシュ領域７２とする。各キャッシュ領域には、文字画像データ８がキャッシュされる。なお、制御部１は、ＲＡＭ２３に複数のフォントキャッシュ領域７を設けることがある。
【００４９】
（言語の選択）
次に、図５を用いて、実施形態に係る複合機１００での言語の選択の一例を説明する。図５は実施形態に係る言語選択画面４４の一例を示す図である。
【００５０】
複合機１００では、使用する言語を選択することができる。使用する言語とは、印刷に用いる言語である。言い換えると、使用する言語とは、ＰＤＬデータ６に基づく印刷物で用いられる言語である。操作パネル４に所定の操作がなされたとき、制御部１は、言語選択画面４４を表示パネル４１に表示させる。図５は言語選択画面４４の一例を示す。複合機１００で選択できる言語の数は、例えば、百数十に及ぶ。操作パネル４は言語の選択を受け付ける。複合機１００は、言語の選択を受け付ける操作パネル４を含む。
【００５１】
言語選択画面４４には、複数の言語選択ボタンＢ１が配される。各言語選択ボタンＢ１には、対応する言語名が記入される。使用する言語の言語選択ボタンＢ１が言語選択画面４４内にないとき、使用者は言語選択画面４４のページを次、又は、前のページに切り替える。言語選択ボタンＢ１を操作（タッチ）することにより、使用する言語を選択することができる。例えば、日本語を選択する場合、「Ｊａｐａｎｅｓｅ」の文字を含む言語選択ボタンＢ１が操作される。制御部１は、操作パネル４の出力に基づき、選択された言語選択ボタンＢ１を認識する。これにより、制御部１は、選択された言語を認識する。
【００５２】
（頻度順データ９に基づくラスタライズ処理）
図６〜図８を用いて実施形態に係る頻度順データ９に基づくラスタライズ処理の流れの一例を説明する。図６は実施形態に係る頻度順データ９の一例を示す図である。図７、図８は、実施形態に係る頻度順データ９に基づくラスタライズ処理の一例を示す図である。
【００５３】
まず、ストレージ２２、ＲＯＭ２１の何れか一方又は両方は、頻度順データ９を不揮発的に記憶する（図１参照）。頻度順データ９は、選択可能な言語ごとに、使用頻度の高い順に文字を定義したデータである。言語学の分野では、各言語の文字使用頻度（Ｌｅｔｔｅｒ  ｆｒｅｑｕｅｎｃｙ）の統計が取られている。頻度順データ９では、言語学上の統計に基づき、使用頻度の高い順に文字が並べられる。
【００５４】
図６に示すように、頻度順データ９は、言語ごとに用意される。なお、図１では、便宜上、頻度順データ９を１つのみ図示している。１つの頻度順データ９は、何れかの言語と対応している。頻度順データ９は、文字の使用頻度の統計に基づき作成される。
【００５５】
図６は、頻度順データ９の一例を示す。例えば、英語の場合、最もよく用いられる文字は、統計的に「ｅ」である。ある統計では、文章に含まれる文字のうち、１２〜１３％が「ｅ」という結果が得られている。そのため、英語の頻度順データ９では、ｅが第１位と定義される。図６の英語の頻度順データ９では、よく用いられる文字の上位５位は、左から順に、ｅ、ｔ、ａ、ｏ、ｉである。参考にする統計によっては文字の順位が前後する。
【００５６】
また、日本語の場合、最もよく用いられる漢字は、統計的に「日」である。そのため、日本語（漢字）の頻度順データ９では、「日」が第１位と定義される。図６の日本語（漢字）の頻度順データ９では、よく用いられる文字の上位５位は、順に、日、一、十、二、人である。参考にする統計によっては、漢字の順位が前後する。
【００５７】
この頻度順データ９に基づき、制御部１は、第１キャッシュ領域７１に文字画像データ８をキャッシュする。以下、図７、図８を用いて、頻度順データ９を用いた文字画像データ８のキャッシュとラスタライズ処理の流れの一例を説明する。図７、図８のフローチャートは、ＰＤＬデータ６の１ページごとに実行してもよい。
【００５８】
ＰＤＬデータ６が画像化する文字を含むとき、制御部１は、ＰＤＬデータ６に含まれる文字を１文字ずつ順番に画像化する。制御部１は、画像化する文字を含む行のうち、ページで最も上の行から文字を画像化する。制御部１は、最も上の行の画像化する文字のうち、左側の文字から画像化する。行内の文字の画像化が全て完了すると、制御部１は、画像化する文字を含む次の行の文字の画像化を開始する。ページ内の画像化する文字の全てについて、画像化が完了したとき、１ページのラスターデータの生成が完了する。
【００５９】
１ページのラスターデータの生成の完了後、ラスタライズ処理を行うべきページが残っているとき、制御部１は、次のページのラスタライズ処理を続けて行う。制御部１は、画像化する文字を含む行のうち、次のページで最も上の行から文字を画像化する（ラスタライズ処理を行う）。
【００６０】
図７のスタートは、画像化する文字を含むＰＤＬデータ６に基づき、ラスタライズ処理を開始する時点である。まず、制御部１は、選択されている言語を確認する（ステップ♯２１）。次に、制御部１は、次に画像化する文字のフォント、文字サイズ、装飾タイプを確認する（ステップ♯２２）。例えば、ラスタライズ処理の開始直後のとき、制御部１は、１ページ目の１文字目のフォント、文字サイズ、装飾タイプを確認する。
【００６１】
ＰＤＬデータ６では、画像化する文字のフォントが指定されている。例えば、日本語用のフォントには、○○明朝体、□□ゴシック体のようなものがある。また、欧文字用には、Ｃｅｎｔｕｒｙ、Ａｒｉａｌ、Ｔｉｍｅｓ  Ｎｅｗ  ＲＯＭ２１ａｎのようなフォントがある。制御部１は、１文字目のフォント（フォント名）を確認する。
【００６２】
また、ＰＤＬデータ６では、画像化する文字の文字サイズが指定されている。例えば、１０ポイント、１２ポイントのように、文字サイズが指定されている。例えば、１ポイントは、１／７２インチである（およそ０．３５ｍｍ）。また、ＰＤＬデータ６では、画像化する文字の装飾タイプが指定されている。装飾タイプの指定としては、例えば、装飾なし、下線、斜体などがある。
【００６３】
制御部１は画像化しようとする文字の文字サイズと装飾タイプに対応するフォントキャッシュ領域７が設定済か否かを確認する（ステップ♯２３）。例えば、次に画像化する文字の文字サイズが１２ポイント、装飾タイプが装飾なしの場合、制御部１は、１２ポイント、装飾なしの文字用のフォントキャッシュ領域７が設定されているか否かを確認する。
【００６４】
設定済でないとき（ステップ♯２３のＮｏ）、制御部１は、フォントキャッシュ領域７をＲＡＭ２３に新たに設定する（ステップ♯２４）。新たに設定されたフォントキャッシュ領域７は、画像化しようとする文字の文字サイズ及び装飾タイプと合致する文字用のフォントキャッシュ領域７である（対応するフォントキャッシュ領域７）。制御部１は、装飾の種類と文字サイズの組み合わせ（パターン）ごとに、異なるフォントキャッシュ領域７を設定する。新たにフォントキャッシュ領域７を設けるとき、制御部１は、フォントキャッシュ領域７に第１キャッシュ領域７１と第２キャッシュ領域７２を含める。
【００６５】
なお、大文字、小文字のある言語が選択されているとき、制御部１は、大文字用のフォントキャッシュ領域７と小文字用のフォントキャッシュ領域７をＲＡＭ２３（第２記憶部）に同時に設定してもよい。このような言語には、例えば、英語がある。つまり、制御部１は、同時に２つのフォントキャッシュ領域７を追加してもよい。この場合、１つの装飾の種類と文字サイズの組み合わせにつき２つのフォントキャッシュ領域７が設定される。
【００６６】
また、日本語が選択されているとき、制御部１は、漢字用のフォントキャッシュ領域７と、平仮名用のフォントキャッシュ領域７と、カタカナ用のフォントキャッシュ領域７を同時にＲＡＭ２３（第２記憶部）に設定してもよい。つまり、制御部１は、同時に３つのフォントキャッシュ領域７を新たに追加してもよい。この場合、１つの装飾の種類と文字サイズの組み合わせにつき、３つのフォントキャッシュ領域７が設定される。
【００６７】
一方、設定済のとき（ステップ♯２３のＹｅｓ）、制御部１は、これから画像化する文字サイズと装飾タイプに対応するフォントキャッシュ領域７のフォントと、これから画像化する文字のフォントが一致しているか否かを確認する（ステップ♯２５）。文章の途中でフォントが変更される場合がある。例えば、見出しには、ゴシック体のフォントを用い、見出し以外の文章には、他の書体を用いることがある。また、見栄えのよい文書とするため、文書内で複数種類のフォントが用いられることもある。制御部１は、フォントの変化を確認する。フォントが変わっているとき（ステップ♯２５のＮｏ）、制御部１は、対応するフォントキャッシュ領域７の文字画像データ８を全て消去する（ステップ♯２６）。制御部１は、第１キャッシュ領域７１と第２キャッシュ領域７２の両方の文字画像データ８を削除する。
【００６８】
フォントキャッシュ領域７を新たに設定したとき（ステップ♯２４）、又は、文字画像データ８を全て消去したとき（ステップ♯２６）、制御部１（画像処理回路１１）は、選択されている言語に対応する頻度順データ９に基づき、文字画像データ８を新たに生成する（ステップ♯２７）。制御部１は、選択された言語に対応する頻度順データ９に基づき、使用頻度の高い文字から順番に、文字画像データ８を１又は複数個、生成する。
【００６９】
制御部１（画像処理回路１１）は、画像化する文字のフォントに対応するフォントデータＤ２に基づき、文字画像データ８を生成する。制御部１は、指定された文字サイズの文字画像データ８を生成する。制御部１は、指定された装飾タイプの文字画像データ８を生成する。例えば、Ａｒｉａｌのフォントが指定されているとき、制御部１（画像処理回路１１）は、ＡｒｉａｌのフォントデータＤ２に基づき、文字画像データ８を生成する。文字サイズが１２ポイントのとき、制御部１は、１２ポイントの文字画像データ８を生成する。装飾タイプが斜体のとき、制御部１は、斜体の文字画像データ８を生成する。
【００７０】
制御部１は、新たに生成した文字画像データ８を対応するフォントキャッシュ領域７の第１キャッシュ領域７１に記憶させる（ステップ♯２８）。新たにフォントキャッシュ領域７を設定したとき、制御部１は、新たに設定した第１キャッシュ領域７１に生成した文字画像データ８を記憶させる。設定済のフォントキャッシュ領域７から文字画像データ８を消去したとき、制御部１は、消去を行ったフォントキャッシュ領域７の第１キャッシュ領域７１に生成した文字画像データ８を記憶させる。
【００７１】
ここで、制御部１は、文字画像データ８を記憶させる第１キャッシュ領域７１について、生成する文字画像データ８の個数を定める。制御部１は、定めた個数だけ、文字画像データ８を生成する。具体的に、制御部１は、文字画像データ８を記憶させる（新たに設定した）フォントキャッシュ領域７の第１キャッシュ領域７１のサイズを確認する。また、制御部１は、ＰＤＬデータ６で定義された文字サイズに対応する文字画像データ８のデータ量を認識する。例えば、生成するラスターデータが６００ｄｐｉ、１２ポイントの文字の場合、縦方向と横方向のドット数は、１２／７２×６００＝１００ドットとなる。そのため、１文字の文字画像データ８のサイズは、１００ドット×１００ドット＝１００００ドット≒約１．２５ＫＢとなる。制御部１は、第１キャッシュ領域７１のサイズを、認識した文字画像データ８の１文字分のデータ量で除して得られる数以下の整数のうち、最も大きい整数と同じ個数の文字画像データ８を画像処理回路１１に生成させる。例えば、第１キャッシュ領域７１のサイズが８ＫＢ、１文字分の文字画像データ８のサイズが１．２５ＫＢのとき、８÷１．２５＝６．４となる。この場合、制御部１は、６文字分の文字画像データ８を生成する。つまり、制御部１は、第１キャッシュ領域７１にキャッシュできる個数のうち、最大数の文字画像データ８を生成する。
【００７２】
例えば、選択された言語が英語、生成する個数が６の場合、小文字用のフォントキャッシュ領域７のため、制御部１はｅ、ｔ、ａ、ｏ、ｉ、ｎの文字画像データ８を生成する。また、大文字用のフォントキャッシュ領域７のため、制御部１は、Ｅ、Ｔ、Ａ、Ｏ、Ｉ、Ｎの文字画像データ８も生成する。
【００７３】
また、選択された言語が日本語、生成する個数が６の場合、制御部１は、漢字用のフォントキャッシュ領域７のため、６文字の漢字の文字画像データ８を画像処理回路１１に生成させる。また、制御部１は、ひらがな用のフォントキャッシュ領域７のため、６文字のひらがなの文字画像データ８も画像処理回路１１に生成させる。また、制御部１は、カタカナ用のフォントキャッシュ領域７のため、６文字のカタカナの文字画像データ８も画像処理回路１１に生成させる。
【００７４】
フォントが一致するとき（ステップ♯２５のＹｅｓ）、又は、ステップ♯２８の後、制御部１は、画像化する文字に対応する文字画像データ８がフォントキャッシュ領域７にキャッシュ（記憶）されているか否かを確認する（ステップ♯２９）。制御部１は、文字サイズ、装飾タイプに対応するフォントキャッシュ領域７の第１キャッシュ領域７１と第２キャッシュ領域７２を確認する。
【００７５】
キャッシュされていないとき（キャッシュミスが生じたとき、ステップ♯２９のＮｏ）、制御部１（画像処理回路１１）は、フォントデータＤ２に基づき、キャッシュされていない文字（画像化しようとする文字）の文字画像データ８を新たに生成する（ステップ♯２１０）。制御部１は、画像化しようとする文字について指定された文字サイズ、装飾タイプの文字画像データ８を生成する。
【００７６】
そして、制御部１は、新たに生成した文字画像データ８を記憶できるだけの空きスペースが第２キャッシュ領域７２にあるか否かを確認する（ステップ♯２１１）。制御部１は、生成した文字画像データ８の文字サイズ、装飾タイプに対応するフォントキャッシュ領域７の第２キャッシュ領域７２を確認する。空きスペースがあるとき（ステップ♯２１１のＹｅｓ）、制御部１は、新たに生成した文字画像データ８を空きスペースに記憶させる（ステップ♯２１２）。制御部１は、対応するフォントキャッシュ領域７の第２キャッシュ領域７２に記憶させる。
【００７７】
空きスペースがないとき（ステップ♯２１１のＮｏ）、制御部１は、対応するフォントキャッシュ領域７の第２キャッシュ領域７２に記憶される文字画像データ８のうち１つを消去する（ステップ♯２１３）。制御部１は、ＬＲＵ方式で文字画像データ８を消去する。ＬＲＵ方式は、使用されていない時間が最も長い文字画像データ８を消去する方式である。そして、制御部１は、消去によりできた空きスペースに、新たに生成した文字画像データ８を記憶させる（ステップ♯２１４）。
【００７８】
キャッシュされているとき（ヒットしたとき、ステップ♯２９のＹｅｓ）、ステップ♯２１２、又は、ステップ♯２１４の後、制御部１（画像処理回路１１）は、フォントキャッシュ領域７に記憶された文字画像データ８をラスターデータに貼りつける（埋め込む）（ステップ♯２１５）。キャッシュミスが生じたとき、制御部１は、第２キャッシュ領域７２からのみ文字画像データ８を削除する。キャッシュミスが生じても、制御部１は、第１キャッシュ領域７１の文字画像データ８を一切削除しない。
【００７９】
次に、制御部１は、画像化すべき文字の全ての処理（ラスタライズ処理）が完了したか否かを確認する（ステップ♯２１６）。完了したとき、本フローは終了する（エンド）。未完了のとき、フローはステップ♯２２に戻る。
【００８０】
（具体例）
次に、図９を用いて、実施形態に係る複合機１００でのラスタライズ処理の具体的な一例を説明する。図９は、実施形態に係る複合機１００でのラスタライズ処理の具体的な一例を示す図である。
【００８１】
図９では、「ＰＡＲＡＧＲＡＰＨ」の文字を画像化する例を説明する。ＰＤＬデータ６で記述されるコマンドは、例えば、「！Ｒ！ＴＥＸＴ“ＰＡＲＡＧＲＡＰＨ”；ＥＸＩＴ；」となる。あくまで一例であり、ＰＤＬデータ６において、文字の画像化の記述は、ページ記述言語の種類により変わる。また、図９では、選択されている言語が英語である例を説明する。また、図９では、第１キャッシュ領域７１と第２キャッシュ領域７２にキャッシュできる文字画像データ８の個数（文字数）がそれぞれ３つである例を説明する。
【００８２】
図９に示すように、制御部１は、Ｅ、Ｔ、Ａの文字画像データ８を第１キャッシュ領域７１に記憶させる。Ｅは、英語で使用される頻度が第１位の文字である。Ｔ、Ａは、それぞれ２位、３位である。第１キャッシュ領域７１の文字画像データ８は固定される。
【００８３】
画像化する１番目の文字は、Ｐである。Ｐの文字画像データ８は、フォントキャッシュ領域７にはない。そこで、制御部１は、Ｐの文字画像データ８を生成する。そして、制御部１は、生成されたＰの文字画像データ８を第２キャッシュ領域７２に記憶させる。画像化する２番目の文字は、Ａである。Ａの文字画像データ８は、第１キャッシュ領域７１にキャッシュされている（ヒット）。Ａの文字画像データ８の生成は不要である。
【００８４】
画像化する３番目の文字は、Ｒである。Ｒの文字画像データ８は、フォントキャッシュ領域７にはない。そこで、制御部１は、Ｒの文字画像データ８を生成する。そして、制御部１は、生成されたＲの文字画像データ８を第２キャッシュ領域７２に記憶させる。画像化する４番目の文字は、Ａである。Ａの文字画像データ８は、第１キャッシュ領域７１にキャッシュされている（ヒット）。Ａの文字画像データ８の生成は不要である。画像化する５番目の文字は、Ｇである。Ｇの文字画像データ８は、フォントキャッシュ領域７にはない。そこで、制御部１は、Ｇの文字画像データ８を生成する。そして、制御部１は、生成されたＧの文字画像データ８を第２キャッシュ領域７２に記憶させる。
【００８５】
画像化する６番目の文字は、Ｒである。Ｒの文字画像データ８は、第２キャッシュ領域７２にキャッシュされている（ヒット）。Ｒの文字画像データ８の生成は不要である。画像化する７番目の文字は、Ａである。Ａの文字画像データ８は、第１キャッシュ領域７１にキャッシュされている（ヒット）。Ａの文字画像データ８の生成は不要である。画像化する８番目の文字は、Ｐである。Ｐの文字画像データ８は、第２キャッシュ領域７２にキャッシュされている（ヒット）。Ｐの文字画像データ８の生成は不要である。
【００８６】
画像化する９番目の文字は、Ｈである。Ｈの文字画像データ８は、フォントキャッシュ領域７にはない。ここで、第２キャッシュ領域７２は満杯である。そこで、制御部１は、第２キャッシュ領域７２の文字画像データ８のうち、使用されていない時間が最も長いＧの文字画像データ８を消去する。制御部１は、Ｈの文字画像データ８を生成する。制御部１は、生成されたＨの文字画像データ８を第２キャッシュ領域７２に記憶させる。
【００８７】
（言語の変更）
次に、図１０を用いて、実施形態に係る複合機１００での言語の変更の一例を説明する。図１０は、実施形態に係る複合機１００での言語の変更時の処理の一例を示す。
【００８８】
複合機１００では、電源が切られるまで（シャットダウンするまで）、制御部１は、設定したフォントキャッシュ領域７をＲＡＭ２３に保持させる。なお、ＲＡＭ２３の記憶内容は、電源ＯＦＦで消える。例えば、ラスタライズ処理の開始時、制御部１は、前回のラスタライズ処理でフォントキャッシュ領域７に記憶された文字画像データ８を画像処理回路１１に使用させる。
【００８９】
第１キャッシュ領域７１には、選択されている言語でよく使用される文字の文字画像データ８がキャッシュされる。第１キャッシュ領域７１の文字画像データ８を保持されるので、どの言語が使用されても、ヒット率は基本的に高い水準で維持される。ここで、操作パネル４は、使用する言語の選択を受け付ける。操作パネル４は、使用言語の変更を受け付けることがある。言語ごとに使用頻度が高い文字は異なる。例えば、英語、ドイツ語、ロシア語では、使用頻度が高い文字（アルファベット）は異なる。言語が変更された場合、第１キャッシュ領域７１の内容を破棄することが好ましい。
【００９０】
図１０のスタートは、複合機１００の電源が投入され、制御部１、記憶部２、操作パネル４が起動した時点である。制御部１は、使用する言語の変更がなされたか否かの確認を続ける（ステップ♯３１、ステップ♯３１のＮｏ→ステップ♯３１）。制御部１は、操作パネル４の出力に基づき、使用する言語が変更されたか否かを認識する。使用する言語が変更されたとき、制御部１は、設定されているフォントキャッシュ領域７を消去する（ステップ♯３２）。制御部１は、フォントキャッシュ領域７をゼロにする。これにより、言語の変更にあわせ、キャッシュを自動的にクリアすることができる。そして、フローは、ステップ♯３１に戻る。
【００９１】
このようにして、実施形態に係る画像処理装置（複合機１００）は、受付部（操作パネル４）、第１記憶部（ＲＯＭ２１、ストレージ２２）、第２記憶部（ＲＡＭ２３）、制御部１を含む。受付部は、使用する言語の選択を受け付ける。第１記憶部はフォントデータＤ２を記憶する。第１記憶部は、言語ごとに、使用頻度の高い順に文字を定義した頻度順データ９を記憶する。第２記憶部は、フォントキャッシュ領域７を含む。第２記憶部は、フォントキャッシュ領域７に文字画像データ８を記憶する。制御部１は、フォントキャッシュ領域７に記憶された文字画像データ８を用いて、ページ記述言語で記述されたＰＤＬデータ６に基づき、１文字ずつ文字を画像化してラスターデータを生成するラスタライズ処理を行う。制御部１は、第２記憶部にフォントキャッシュ領域７として、第１キャッシュ領域７１と第２キャッシュ領域７２を設定する。制御部１は、選択された言語に対応する頻度順データ９に基づき、使用頻度の高い文字から順番に、文字画像データ８を生成する。制御部１は、頻度順データ９に基づき生成した文字画像データ８を第１キャッシュ領域７１に記憶させる。フォントキャッシュ領域７に画像化する文字の文字画像データ８がキャッシュされていないキャッシュミスが生じたとき、制御部１は、フォントデータＤ２に基づき、キャッシュされていない文字の文字画像データ８を新たに生成する。新たに生成した文字画像データ８を第２キャッシュ領域７２に記憶させる。
【００９２】
この構成によれば、選択された言語で使用される頻度が高い文字の文字画像データ８を第１キャッシュ領域７１にキャッシュすることができる。言語学的、統計的に使用される可能性が高い文字の文字画像データ８を第１キャッシュ領域７１にキャッシュしておくことができる。どの言語が選択されていても、キャッシュのヒット率を平均的に高めることができる。用いる言語の種類によらず、ラスタライズ処理を従来よりも高速化することができる。ラスタライズ処理の所要時間を従来よりも短くすることができる。
【００９３】
制御部１は、第１キャッシュ領域７１に記憶させる文字画像データ８の１文字あたりのデータ量を認識する。制御部１は、第１キャッシュ領域７１のサイズを認識したデータ量で除して得られる数以下の整数のうち、最も大きい整数と同じ個数の文字画像データ８を第１キャッシュ領域７１に記憶させる。できるだけ多くの文字画像データ８を第１キャッシュ領域７１に記憶させることができる。キャッシュのヒット率を高めることができる。用いる言語の種類によらず、ラスタライズ処理を従来よりも高速化することができる。画像処理装置の処理性能を従来よりも高めることができる。
【００９４】
キャッシュミスが生じたとき、制御部１は、第１キャッシュ領域７１の文字画像データ８を削除しない。第１キャッシュ領域７１に記憶された文字画像データ８を削除しないようにすることができる。ＬＲＵ方式では、使用される可能性が高い文字の画像データが破棄されてしまうことがあった。しかし、統計的に使用される可能性が高い文字の文字画像データ８をキャッシュ領域に保持し続けることができる。
【００９５】
キャッシュミスが生じたとき、制御部１は、新たに生成した文字画像データ８を記憶できるだけの空きスペースが第２キャッシュ領域７２にあるか否かを確認する。空きスペースがあるとき、制御部１は、新たに生成した文字画像データ８を空きスペースに記憶させる。空きスペースがないとき、制御部１は、第２キャッシュ領域７２に記憶される文字画像データ８のうち、使用されていない時間が最も長い文字画像データ８を消去する。制御部１は、消去によりできた空きスペースに、新たに生成した文字画像データ８を記憶させる。第２キャッシュ領域７２では、ＬＲＵ方式で文字画像データ８がキャッシュされる。ＭＦＵ方式とＬＲＵ方式を組み合わせて文字画像データ８をキャッシュすることができる。ヒット率が高くなるように、文字画像データ８をキャッシュすることができる。
【００９６】
受付部が使用する言語の変更を受け付けたとき、制御部１は、設定されているフォントキャッシュ領域７を全て消去する。制御部１は、ラスタライズ処理するＰＤＬデータ６に応じて、新たにフォントキャッシュ領域７を設定する。言語の変更にあわせ、フォントキャッシュをクリアすることができる。これから行うラスタライズ処理にあわせて、フォントキャッシュ領域７を新たに設定することができる。新たに設定されるフォントキャッシュ領域７の第１キャッシュ領域７１には、頻度順データ９に基づく文字画像データ８が格納される。従って、使用する言語の変更があっても、ヒット率を高い水準で保つことができる。
【００９７】
制御部１は、画像化する文字の文字サイズごとに、フォントキャッシュ領域７を設定する。制御部１は、選択された言語に対応する頻度順データ９に基づき、使用頻度の高い文字から順番に、文字サイズの文字画像データ８を生成する。制御部１は、生成した文字画像データ８を、対応する第１キャッシュ領域７１に記憶させる。画像化する文字のサイズごとに、第１キャッシュ領域７１と第２キャッシュ領域７２を設定することができる。文字のサイズごとにキャッシュ領域が用意されるので、ヒット率を高めることができる。高速にラスタライズ処理を行うことができる。
【００９８】
制御部１は、画像化する文字の装飾の種類ごとに、第１キャッシュ領域７１と第２キャッシュ領域７２を設定する。制御部１は、選択された言語に対応する頻度順データ９に基づき、使用頻度の高い文字から順番に、装飾に応じた文字画像データ８を生成する。制御部１は、生成した文字画像データ８を、対応する第１キャッシュ領域７１に記憶させる。この構成によれば、画像化する文字の装飾の種類に応じて、第１キャッシュ領域７１と第２キャッシュ領域７２を設定することができる。装飾の種類に応じて、複数のフォントキャッシュ領域７が設定されるので、ヒット率を高めることができる。高速にラスタライズ処理を行うことができる。
【００９９】
制御部１は、画像化しようとする文字のフォントと、直前に画像化した文字のフォントが異なるとき、第１キャッシュ領域７１と第２キャッシュ領域７２の文字画像データ８を消去する。制御部１は、選択された言語に対応する頻度順データ９とフォントデータＤ２に基づき、使用頻度の高い文字から順番に、画像化しようとする文字のフォントを用いて文字画像データ８を生成する。制御部１は、頻度順データ９に基づき生成した文字画像データ８を、消去を行った第１キャッシュ領域７１に記憶させる。使用するフォントの切り替わりにあわせて、第１キャッシュ領域７１と第２キャッシュ領域７２をリセットすることができる。切り替え後のフォントの文字画像データ８を第１キャッシュ領域７１と第２キャッシュ領域７２に記憶させることができる。
【０１００】
本発明の実施形態を説明したが、本発明の範囲はこれに限定されるものではなく、発明の主旨を逸脱しない範囲で種々の変更を加えて実施することができる。
【産業上の利用可能性】
【０１０１】
本発明は、画像処理装置に利用可能である。
【符号の説明】
【０１０２】
１００  複合機（画像処理装置）          １      制御部
２１    ＲＯＭ（第１記憶部）            ２２    ストレージ（第１記憶部）
２３    ＲＡＭ（第２記憶部）            ４      操作パネル（受付部）
６      ＰＤＬデータ                    ７      フォントキャッシュ領域
７１    第１キャッシュ領域              ７２    第２キャッシュ領域
８      文字画像データ                  ９      頻度順データ
Ｄ２    フォントデータ
【図１】
2020026114.tif 000003
【図２】
2020026114.tif 000004
【図３】
2020026114.tif 000005
【図４】
2020026114.tif 000006
【図５】
2020026114.tif 000007
【図６】
2020026114.tif 000008
【図７】
2020026114.tif 000009
【図８】
2020026114.tif 000010
【図９】
2020026114.tif 000011
【図１０】
2020026114.tif 000012