(57)【特許請求の範囲】
【請求項１】
ＸＰＳファイルに基づいて画像形成を行う画像形成装置であって、
記憶部と、
ＸＰＳファイルに格納されている個別ファイル毎に、当該個別ファイルの利用頻度に関する情報を参照して当該個別ファイルに対するデータ伸張の要否を判定し、当該判定結果に従って前記個別ファイルのデータ伸張を行い又は行わずに当該個別ファイルを前記記憶部に記憶させる制御部と、
を備え、
前記制御部は、前記ＸＰＳファイルに格納されているｒｅｌｓファイルに基づいて、各個別ファイルの利用頻度を示す利用頻度リストを生成し、当該利用頻度リストを参照して当該個別ファイルに対するデータ伸張の要否を判定する画像形成装置。
【請求項２】
前記制御部は、更に前記記憶部の空き記憶容量を参照して個別ファイルに対するデータ伸張の要否を判定する、
請求項１に記載の画像形成装置。
【請求項３】
前記制御部は、更にデータ伸張後の個別ファイルのデータサイズを参照して当該個別ファイルに対するデータ伸張の要否を判定する、
請求項１又は２に記載の画像形成装置。
【請求項４】
前記制御部は、更にデータ伸張前の個別ファイルのデータサイズを参照して当該個別ファイルに対するデータ伸張の要否を判定する、
請求項１〜３の何れか一項に記載の画像形成装置。
【請求項５】
前記制御部は、更に個別ファイルの属性を参照して当該個別ファイルに対するデータ伸張の要否を判定する、
請求項１〜４の何れか一項に記載の画像形成装置。
【請求項６】
ＸＰＳファイルに基づいて画像形成を行うコンピュータを、
記憶部、
ＸＰＳファイルに格納されているｒｅｌｓファイルに基づいて、各個別ファイルの利用頻度を示す利用頻度リストを生成し、前記ＸＰＳファイルに格納されている個別ファイル毎に、当該利用頻度リストを参照して当該個別ファイルに対するデータ伸張の要否を判定し、当該判定結果に従って前記個別ファイルのデータ伸張を行い又は行わずに当該個別ファイルを前記記憶部に記憶させる制御部、
として機能させるためのプログラム。
【請求項７】
ＸＰＳファイルに格納されているｒｅｌｓファイルに基づいて、各個別ファイルの利用頻度を示す利用頻度リストを生成し、前記ＸＰＳファイルに格納されている個別ファイル毎に、当該利用頻度リストを参照して当該個別ファイルに対するデータ伸張の要否を判定し、当該判定結果に従って前記個別ファイルのデータ伸張を行い又は行わずに当該個別ファイルを記憶部に記憶させるデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、プログラム及びデータ処理方法に関する。
【背景技術】
【０００２】
近年、プリンタドライバがインストールされているＰＣ（Personal Computer）等のデータ処理装置がＬＡＮ（Local Area Network）等の通信ネットワークを介して、画像形成装置を制御する画像形成システムが普及している。
【０００３】
また、２００６年末、マイクロソフト社によりＸＰＳ（XML Paper Specification）規格という電子文書規格が発表された。このＸＰＳ規格に則った電子文書のファイル（以下、ＸＰＳファイルと称す）は、フォントデータ、画像データ、文章データ等を含み、これらのデータファイル（ＸＭＬファイル、画像ファイル等）をＺＩＰ圧縮することにより生成される。つまり、ＸＰＳファイルはＺＩＰ圧縮ファイルである。
【０００４】
データ処理装置は、ＸＭＬファイルや画像ファイルをＺＩＰ圧縮し、ＸＰＳファイルを生成して画像形成装置に送信する。画像形成装置は、このＸＰＳファイルを受信し、一旦、記憶媒体（メモリ、ハードディスク等）にスプールする。そして、画像形成装置は、記憶媒体からＸＰＳファイルを読み出し、当該ＸＰＳファイルに対してＺＩＰ伸張を行う。そして、画像形成装置は、ＺＩＰ伸張したファイルデータを再び記憶媒体にスプールする。次に、画像形成装置は、ＺＩＰ伸張したファイルデータを記憶媒体から読み出して画像形成を行う。ここで画像形成とは、用紙への画像の形成（印刷（プリント））、画面への画像の表示（画像表示）等をいう。
【０００５】
ところで、記憶媒体の記憶容量は限られており、限られた記憶容量を効率良く使う為の様々な工夫が為されている。例えば、圧縮した状態の予め定められた文字データを利用頻度の高い文字からなる第１文字データ群とそれ以外の第２文字データ群とに分けてＲＯＭに記憶させておき、画像形成装置の電源をオンにした際に、第１文字データ群のみに伸張処理を行ってＲＡＭに格納し、その後、印字命令により指定される文字が第１文字データ群に属する場合は、ＲＡＭから伸張データを取り出してイメージデータに展開して画像形成を行い、印字命令により指定される文字が第２文字データ群に属する場合は、ＲＯＭから圧縮データを取り出し、伸張処理を行った後にイメージデータに展開して画像形成を行う技術が開示されている（特許文献１参照）。
【特許文献１】特開平６−４２３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１の技術では、利用頻度の高い文字を人が予め設定しているため、様々な画像形成を行う状況に応じて、新たに利用頻度の高い文字を再設定する必要があり、手間がかかってしまう。また、人によって利用頻度の設定が行われるため、当該設定が誤って行われてしまう可能性がある。
【０００７】
本発明は、上述したような課題に鑑みて為されたものであり、その目的とするところは、ＸＰＳファイルに基づいて画像形成を行う画像形成装置において、効率的に記憶媒体を使用し、且つユーザによる操作の手間を軽減させることである。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、請求項１に記載の発明は、
ＸＰＳファイルに基づいて画像形成を行う画像形成装置であって、
記憶部と、
ＸＰＳファイルに格納されている個別ファイル毎に、当該個別ファイルの利用頻度に関する情報を参照して当該個別ファイルに対するデータ伸張の要否を判定し、当該判定結果に従って前記個別ファイルのデータ伸張を行い又は行わずに当該個別ファイルを前記記憶部に記憶させる制御部と、
を備え、
前記制御部は、前記ＸＰＳファイルに格納されているｒｅｌｓファイルに基づいて、各個別ファイルの利用頻度を示す利用頻度リストを生成し、当該利用頻度リストを参照して当該個別ファイルに対するデータ伸張の要否を判定する。
【００１０】
請求項２に記載の発明は、請求項１に記載の発明において、
前記制御部は、更に前記記憶部の空き記憶容量を参照して個別ファイルに対するデータ伸張の要否を判定する。
【００１１】
請求項３に記載の発明は、請求項１又は２に記載の発明において、
前記制御部は、更にデータ伸張後の個別ファイルのデータサイズを参照して当該個別ファイルに対するデータ伸張の要否を判定する。
【００１２】
請求項４に記載の発明は、請求項１〜３の何れか一項に記載の発明において、
前記制御部は、更にデータ伸張前の個別ファイルのデータサイズを参照して当該個別ファイルに対するデータ伸張の要否を判定する。
【００１３】
請求項５に記載の発明は、請求項１〜４の何れか一項に記載の発明において、
前記制御部は、更に個別ファイルの属性を参照して当該個別ファイルに対するデータ伸張の要否を判定する。
【００１４】
請求項６に記載のプログラムは、
ＸＰＳファイルに基づいて画像形成を行うコンピュータを、
記憶部、
ＸＰＳファイルに格納されているｒｅｌｓファイルに基づいて、各個別ファイルの利用頻度を示す利用頻度リストを生成し、前記ＸＰＳファイルに格納されている個別ファイル毎に、当該利用頻度リストを参照して当該個別ファイルに対するデータ伸張の要否を判定し、当該判定結果に従って前記個別ファイルのデータ伸張を行い又は行わずに当該個別ファイルを前記記憶部に記憶させる制御部、
として機能させる。
【００１５】
請求項７に記載のデータ処理方法は、
ＸＰＳファイルに格納されているｒｅｌｓファイルに基づいて、各個別ファイルの利用頻度を示す利用頻度リストを生成し、前記ＸＰＳファイルに格納されている個別ファイル毎に、当該利用頻度リストを参照して当該個別ファイルに対するデータ伸張の要否を判定し、当該判定結果に従って前記個別ファイルのデータ伸張を行い又は行わずに当該個別ファイルを記憶部に記憶させる。
【発明の効果】
【００１６】
請求項１、６及び７に記載の発明によれば、個別ファイルの利用頻度に関する情報を参照して当該個別ファイルに対するデータ伸張の要否を判定し、当該判定結果に従って前記個別ファイルのデータ伸張を行い又は行わずに当該個別ファイルを記憶部に記憶させるため、ＸＰＳファイルに基づいて画像形成を行う画像形成装置において、効率的に記憶媒体を使用し、且つユーザによる操作の手間を軽減させることができる。
また、ｒｅｌｓファイルに基づいて、利用頻度リストを生成し、当該利用頻度リストを参照して当該個別ファイルに対するデータ伸張の要否を判定するため、ＸＰＳファイルのデータ構造を用い、個別ファイルの利用頻度に関する情報を参照してデータ伸張の要否を判定することができる。
【００１８】
請求項２に記載の発明によれば、請求項１に記載の発明と同様の効果が得られるのは無論のこと、更に記憶部の空き記憶容量を参照して個別ファイルに対するデータ伸張の要否を判定するため、より柔軟なデータ伸張の要否の判定が可能となる。
【００１９】
請求項３に記載の発明によれば、請求項１、２に記載の発明と同様の効果が得られるのは無論のこと、更にデータ伸張後の個別ファイルのデータサイズを参照して当該個別ファイルに対するデータ伸張の要否を判定するため、より柔軟なデータ伸張の要否の判定が可能となる。
【００２０】
請求項４に記載の発明によれば、請求項１〜３に記載の発明と同様の効果が得られるのは無論のこと、更にデータ伸張前の個別ファイルのデータサイズを参照して当該個別ファイルに対するデータ伸張の要否を判定するため、より柔軟なデータ伸張の要否の判定が可能となる。
【００２１】
請求項５に記載の発明によれば、請求項１〜４に記載の発明と同様の効果が得られるのは無論のこと、更に個別ファイルの属性を参照して当該個別ファイルに対するデータ伸張の要否を判定するため、より柔軟なデータ伸張の要否の判定が可能となる。
【発明を実施するための最良の形態】
【００２２】
[第１の実施の形態]
以下、本発明に係る画像形成装置の第１の実施の形態について説明する。
【００２３】
[画像形成システムのシステム構成]
図１に、画像形成システム１００のシステム構成を示す。図１に示すように、画像形成システム１００は、画像形成装置１０とクライアント端末２０とから構成されており、各装置は通信ネットワークＮを介して、データ通信可能に接続されている。
【００２４】
画像形成装置１０は、コピー機能、画像読取機能、プリンタ機能を備えた、所謂ＭＦＰ（Multi-Function Peripheral）であり、クライアント端末２０から送信されるプリントジョブ（プリント指令）や、画像形成装置１０に備えられているスキャナ等の画像読取部から読み込んだ画像データ等に基づき、用紙に画像を形成する。
【００２５】
クライアント端末２０は、所謂パーソナルコンピュータであり、画像形成装置１０にプリントジョブを送信する機能を有する。クライアント端末２０には、プリンタドライバプログラム（以下、単にプリンタドライバと称することがある。）がインストールされており、このプリンタドライバの機能を用いて画像形成時に適用されるプリント条件のデータ、画像データ等を含んだプリントジョブを生成し画像形成装置１０に送信する。
【００２６】
[クライアント端末の機能的構成]
図２に、クライアント端末２０の構成を示す。図２に示すように、クライアント端末２０は、ＣＰＵ２１、操作部２２、表示部２３、通信部２４、ＲＡＭ（Random Access Memory）２５、ＨＤＤ（Hard Disk Drive）２６を備えて構成されている。
【００２７】
ＣＰＵ２１は、操作部２２から入力される操作信号又は通信部２４により受信される指示信号に応じて、ＨＤＤ２６に記憶されている各種処理プログラムを読み出し、ＲＡＭ２５内に形成されたワークエリアに展開し、当該プログラムとの協働により各種処理を行う。
【００２８】
操作部２２は、カーソルキー、数字入力キー、及び各種機能キー等を備えたキーボードと、マウスなどのポインティングデバイスを備えて構成され、キーボードに対するキー操作やマウス操作により入力された指示信号をＣＰＵ２１に出力する。
【００２９】
表示部２３は、ＬＣＤ（Liquid Crystal Display）により構成され、ＣＰＵ２１から入力される表示信号の指示に従って、操作部２２からの入力指示やデータ等を表示する。
【００３０】
通信部２４は、ＬＡＮアダプタ、ルータ、ＴＡ等を備え、通信ネットワークＮを介して接続された画像形成装置１０等の外部機器との間でデータの送受信を行う。
【００３１】
ＲＡＭ２５は、ＣＰＵ２１により実行される各種処理プログラム及びこれらプログラムに係るデータを一時的に記憶するワークエリアを形成する。
【００３２】
ＨＤＤ２６は、記憶装置であり、各種プログラム、設定データ、画像データ等を記憶する。また、ＨＤＤ２６は、プリンタドライバプログラム２６１を記憶している。
【００３３】
ＣＰＵ２１は、当該プリンタドライバプログラム２６１をＨＤＤ２６から読み出してＲＡＭ２５に展開し、当該プログラムとの協働により画像形成装置１０に送信するプリントジョブデータを生成する。
【００３４】
具体的には、ＣＰＵ２１は、操作部２２を介して行われるユーザ操作に基づいて、プリント対象となる画像データ（画像ファイル）等を指定し、印刷部数や印刷範囲等の情報を設定する。そして、ＣＰＵ２１は、当該指定した画像ファイル等をＺＩＰ圧縮し、ＸＰＳファイルを生成する。
【００３５】
また、ＣＰＵ２１は、前記設定された印刷部数や印刷範囲等の情報に基づいて、プリント条件データを生成する。
【００３６】
そして、ＣＰＵ２１は、前記ＸＰＳファイルとプリント条件データに基づいてプリントジョブデータを生成してＨＤＤ２６に一旦記憶させる。
【００３７】
次に、ＣＰＵ２１は、ＨＤＤ２６からプリントジョブデータを読み出し、通信部２４を制御してこのプリントジョブデータを画像形成装置１０に送信する。
【００３８】
[ＸＰＳファイルのファイル構成]
図３に、ＸＰＳファイルのファイル構成を示す。ここで、ＸＰＳファイルに格納されている各ファイルを「個別ファイル」と総称する。図３に示すように、ＸＰＳファイルは、「Content_Types」ファイル、「FixedDocumentSequence」ファイル、「Metadata」フォルダ、「_rels」フォルダ、「Documents」フォルダのようなファイル群から構成されている。「Documents」フォルダには、フォントデータ、画像データ、文章データ等の個別ファイルが格納されている。当該「Documents」フォルダは、ＸＰＳファイルの中核となるフォルダである。
【００３９】
また、「_rels」フォルダ、「Documents」フォルダには、個別ファイルのデータ間の関係を記述した１又は複数のｒｅｌｓファイルが格納されている。また、「Documents」フォルダには、ページの構成情報を示す個別ファイル（図３における「1.fpage」ファイル）も格納されている。
【００４０】
[ｒｅｌｓファイルのデータ内容]
図４に、ｒｅｌｓファイルのデータ内容を示す。図４に示すように、ｒｅｌｓファイルは、画像形成に利用（参照）される個別ファイルの「ファイル名」や「ファイルＩＤ」等が記述されている。ＸＰＳファイルに格納されている全てのｒｅｌｓファイル内に記述されている「ファイル名」又は「ファイルＩＤ」の記述回数（参照回数）が多い程、画像形成における当該「ファイル名」又は「ファイルＩＤ」に対応する個別ファイルの利用頻度（参照頻度）が高いことになる。尚、「ファイル名」と「ファイルＩＤ」は１対１に対応している。
【００４１】
[画像形成装置の機能的構成]
図５に、画像形成装置１０の構成を示す。図５に示すように、画像形成装置１０は、ＣＰＵ１１、操作部１２、表示部１３、画像読取部１４、画像形成部１５、通信部１６、ＲＡＭ１７、ＲＯＭ（Read Only Memory）１８、ＨＤＤ１９を備えて構成されている。
【００４２】
ＣＰＵ１１は、操作部１２から入力される操作信号又は通信部１６により受信される指示信号に応じて、ＲＯＭ１８に記憶されている各種処理プログラムを読み出し、ＲＡＭ１７内に形成されたワークエリアに展開し、当該プログラムとの協働により各種処理を行う。例えば、ＣＰＵ１１は画像形成に関する一連の処理を行う。
【００４３】
操作部１２は、数字キーやスタートキー、リセットキー等の各種キーを有し、押下されたキーの押下信号をＣＰＵ１１に出力する。また、操作部１２は、表示部１３と一体的に形成されたタッチパネルを備えており、ユーザの指先やタッチペン等により当接されたタッチパネル上の位置を検出して、位置信号をＣＰＵ１１に出力する。
【００４４】
画像読取部１４は、原稿画像を読み取って画像データを生成する所謂スキャナであり、原稿を載置するプラテンガラス、プラテンガラス上の原稿画像を走査し、これをＣＣＤイメージセンサ上に結像する走査光学系を備えている。画像読取部１４は、ＣＣＤイメージセンサで読み取った原稿画像に基づいて生成された画像信号をＡ／Ｄ変換して画像信号を生成する。
【００４５】
画像形成部１５は、電子写真方式、静電記録方式、熱転写方式等の作像プロセスを利用して画像を形成するために必要な構成要素を含む機能部である。例えば、画像形成部１５は、感光体、転写ベルト、定着器、各種搬送ベルト、電子回路、給紙部、排紙部等を備える。画像形成部１５は、ＣＰＵ１１の指示に従い、画像読取部１４により生成された画像データ又は通信部１６により受信されたＸＰＳファイルに含まれる画像データ等に基づいて、給紙部から供給された用紙に画像を形成し、排紙部に搬送する。また、給紙部は給紙トレイを、排紙部は排紙トレイを備える。
【００４６】
通信部１６は、ＬＡＮ（Local Area Network）アダプタ、ルータ、ＴＡ（Terminal Adapter）等を備え、通信ネットワークＮを介して接続されたクライアント端末２０等の外部機器との間でデータの送受信を行う。例えば、通信部１６は、クライアント端末２０からプリントジョブデータを受信する。
【００４７】
ＲＡＭ１７は、ＣＰＵ１１により実行される各種処理プログラム及びこれらプログラムに係るデータを一時的に記憶するワークエリアを形成する。また、ＲＡＭ１７は、通信部１６によりクライアント端末２０から受信されたプリンジョブデータに含まれるＸＰＳファイルを記憶する。
【００４８】
ＲＯＭ１８は、ＣＰＵ１１で実行される各種処理プログラム、各種データ等を記憶する。これらの各種プログラムは、読み取り可能なプログラムコードの形態で格納され、ＣＰＵ１１は、当該プログラムコードに従った動作を逐次実行する。
【００４９】
ＨＤＤ１９は、記憶装置であり、画像読取部１４により読み取られた画像データ、通信部１６によりクライアント端末２０から受信されたプリントジョブデータに含まれるＸＰＳファイル、ＣＰＵ１１により生成される利用頻度リスト１９１等を記憶する。また、ＨＤＤ１９の記憶容量はＲＡＭ１７に比べて大きい。また、ＨＤＤ１９のＣＰＵ１１からのアクセス速度はＲＡＭ１７に比べて遅い。
【００５０】
[画像形成に関する一連の処理]
次に、ＣＰＵ１１が行う画像形成に関する一連の処理の具体的な処理内容について図６を用いて説明する。図６は、画像形成に関する一連の処理を示すフローチャートである。本フローチャートでは、画像形成装置１０がクライアント端末２０から受信するデータとして、ＸＰＳファイルにのみ着目している。
【００５１】
まず、ＣＰＵ１１は、通信部１６によりクライアント端末２０からＸＰＳファイルの受信が始まると、当該ＸＰＳファイルをＲＡＭ１７やＨＤＤ１９に記憶させる（スプールする）（ステップＳ１）。
【００５２】
次に、ＣＰＵ１１は、利用頻度リスト生成処理を行う（ステップＳ２）。利用頻度リスト生成処理とは、ステップＳ１において受信したＸＰＳファイルに格納されている全てのｒｅｌｓファイルに基づいて、当該ＸＰＳファイルに格納されている各個別ファイルの利用頻度を示す利用頻度リスト１９１を生成する処理である。
【００５３】
そして、ＣＰＵ１１は、ＸＰＳファイル伸張処理を行う（ステップＳ３）。ＸＰＳファイル伸張処理とは、ステップＳ２において生成した利用頻度リスト１９１に基づいて、各個別ファイルに対するデータの伸張の要否を判定し、当該判定結果に従って前記個別ファイルのＺＩＰ伸張を行い又は行わずに当該個別ファイルをＲＡＭ１７又はＨＤＤ１９に記憶させる（格納する）処理である。
【００５４】
次に、ＣＰＵ１１は、ＲＡＭ１７又はＨＤＤ１９から各個別ファイルを読み出し、これらの個別ファイルに基づいて、ＸＰＳファイルの解析を行い（ステップＳ４）、ラスタライズ処理を行う（ステップＳ５）。当該ＸＰＳファイルの解析（ステップＳ４）と当該ラスタライズ処理（ステップＳ５）において、ＣＰＵ１１は、ＺＩＰ伸張が行われた個別ファイルについてはそのまま利用する。また、ＣＰＵ１１は、ＺＩＰ伸張が行われていない個別ファイルについては、当該個別ファイルを利用する都度ＺＩＰ伸張を行い、利用後、当該伸張データを破棄する。
【００５５】
次に、ＣＰＵ１１は、画像データ等を画像形成部１５に出力して用紙に画像を形成させる（ステップＳ６）。以上で、画像形成処理に関する一連の処理が終了する。
【００５６】
[利用頻度リスト生成処理]
次に、利用頻度リスト生成処理（図６のステップＳ２）の具体的な処理内容について図７を用いて説明する。図７は、利用頻度リスト生成処理を示すフローチャートである。
【００５７】
図７に示すように、ＣＰＵ１１は、ＲＡＭ１７又はＨＤＤ１９に記憶されている、クライアント端末２０から受信したＸＰＳファイルに格納されているｒｅｌｓファイルを抽出する。そして、ＣＰＵ１１は、当該ｒｅｌｓファイルに対してＺＩＰ伸張を行い、ＲＡＭ１７（メモリ）に記憶させる（ステップＳ１０１）。そして、ＣＰＵ１１は、当該ｒｅｌｓファイルに記述されている「ファイル名」又は「ファイルＩＤ」の参照回数、即ち個別ファイルの参照回数をカウントする（ステップＳ１０２）。
【００５８】
次に、ＣＰＵ１１は、ＸＰＳファイル内に格納されている全てのｒｅｌｓファイルについて、ステップＳ１０１、Ｓ１０２の処理を行ったか否かを判定する（ステップＳ１０３）。ＸＰＳファイル内に格納されている全てのｒｅｌｓファイルについて、ステップＳ１０１、Ｓ１０２の処理を行っていないと判定した場合（ステップＳ１０３；Ｎｏ）、ＣＰＵ１１は、別のｒｅｌｓファイルを抽出し、当該ｒｅｌｓファイルに対してＺＩＰ伸張を行い、ＲＡＭ１７に記憶させる（ステップＳ１０１）。
【００５９】
また、ＸＰＳファイル内に格納されている全てのｒｅｌｓファイルについて、ステップＳ１０１、Ｓ１０２の処理を行ったと判定した場合（ステップＳ１０３；Ｙｅｓ）、ＣＰＵ１１は、カウントした個別ファイルの参照回数に基づいて、利用頻度リスト１９１を生成する（ステップＳ１０４）。以上で、利用頻度リスト生成処理が終了する。
【００６０】
[利用頻度リストのデータ構成]
図８に利用頻度リスト１９１のデータ構成を示す。図８に示すように、利用頻度リスト１９１は、「Target」、「Id」、「頻度」のフィールドから成る一又は複数のレコードから構成されている。
【００６１】
ここで、「Target」とは、個別ファイルのファイル名を示すフィールドである。また、「Id」とは、個別ファイルのファイルＩＤを示すフィールドである。また、「頻度」とは、ＣＰＵ１１がカウントした個別ファイルの参照回数であり、当該個別ファイルの利用頻度を示すフィールドである。「頻度」の値は、各ｒｅｌｓファイルでの個別ファイルの記述回数の合計値となる。つまり、ＸＰＳファイルに５つのｒｅｌｓファイルが格納されており、そのうち、３つのｒｅｌｓファイルに特定の個別ファイルＡの「ファイル名」又は「ファイルＩＤ」が記述されている場合、個別ファイルＡに対応するフィールドの「頻度」の値は「３」となる。
【００６２】
例えば、図８によると、ファイル名が「/Documents/1/Resources/Images/8.jpg」、ファイルＩＤが「R8」の個別ファイルは、ＸＰＳファイル内に格納されている全てのｒｅｌｓファイル内に合計２回記述（参照）されていることになる。
【００６３】
尚、前述の通り、個別ファイルの「ファイル名」と「ファイルＩＤ」は１対１に対応しているため、利用頻度リスト１９１は、「Target」と「頻度」のみのフィールド、又は「Id」と「頻度」のみのフィールドでもよい。
【００６４】
[ＸＰＳファイル伸張処理]
次に、ＸＰＳファイル伸張処理（図６のステップＳ３）の具体的な処理内容について図９を用いて説明する。図９は、ＸＰＳファイル伸張処理を示すフローチャートである。
【００６５】
図９に示すように、ＣＰＵ１１は、ＸＰＳファイルに格納されている個別ファイルを抽出する（ステップＳ２０１）。そして、ＣＰＵ１１は、利用頻度リスト１９１を参照して、抽出した個別ファイルの「ファイル名」又は「ファイルＩＤ」に該当するレコードの「頻度」の値を取得する（個別ファイルの利用頻度をチェックする）（ステップＳ２０２）。
【００６６】
そして、ＣＰＵ１１は、個別ファイル伸張判定処理を行う（ステップＳ２０３）。個別ファイル伸張判定処理とは、個別ファイルの利用頻度等に基づき、個別ファイルに対してＺＩＰ伸張を行うか否かを判定する処理である。
【００６７】
個別ファイル伸張判定処理（ステップＳ２０３）の結果、「個別ファイルにＺＩＰ伸張を行う」と判定した場合（ステップＳ２０４；Ｙｅｓ）、ＣＰＵ１１は、ステップＳ２０１において抽出した個別ファイルに対してＺＩＰ伸張を行う（ステップＳ２０５）。そして、ＣＰＵ１１は、ＲＡＭ１７にＺＩＰ伸張後の個別ファイルを記憶できる空き記憶容量（空き容量）が有るか否かを判定する（ステップＳ２０６）。
【００６８】
一方、個別ファイル伸張判定処理（ステップＳ２０３）の結果、「個別ファイルにＺＩＰ伸張を行わない」と判定した場合（ステップＳ２０４；Ｎｏ）、ＣＰＵ１１は、ステップＳ２０１において抽出した個別ファイルに対してＺＩＰ伸張を行わない。そして、ＣＰＵ１１は、ＲＡＭ１７に個別ファイルを記憶できる空き記憶容量が有るか否かを判定する（ステップＳ２０６）。
【００６９】
ＣＰＵ１１は、ステップＳ２０６において、ＲＡＭ１７に空き記憶容量が有ると判定した場合（ステップＳ２０６；Ｙｅｓ）、ＺＩＰ伸張後の個別ファイルを、又はＺＩＰ圧縮されたままの個別ファイルをＲＡＭ１７に記憶させる（ステップＳ２０７）。そして、ＣＰＵ１１は、ＸＰＳファイルに格納されている全ての個別ファイルに対して、抽出や伸張判定等の一連の処置（ステップＳ２０１〜Ｓ２０７、Ｓ２０９、Ｓ２１０）を行ったか否かを判定する（ステップＳ２０８）。
【００７０】
ＣＰＵ１１は、ステップＳ２０６において、ＲＡＭ１７に空き記憶容量が無いと判定した場合（ステップＳ２０６；Ｎｏ）、ＨＤＤ１９にＺＩＰ伸張後の個別ファイル、又はＺＩＰ圧縮されたままの個別ファイルを記憶できる空き記憶容量が有るか否かを判定する（ステップＳ２０９）。
【００７１】
ＣＰＵ１１は、ステップＳ２０９において、ＨＤＤ１９に空き記憶容量が有ると判定した場合（ステップＳ２０９；Ｙｅｓ）、ＺＩＰ伸張後の個別ファイルを、又はＺＩＰ圧縮されたままの個別ファイルをＨＤＤ１９に記憶させる（ステップＳ２１０）。そして、ＣＰＵ１１は、ＸＰＳファイルに格納されている全ての個別ファイルに対して、抽出や伸張判定等の一連の処置（ステップＳ２０１〜Ｓ２０７、Ｓ２０９、Ｓ２１０）を行ったか否かを判定する（ステップＳ２０８）。
【００７２】
ＣＰＵ１１は、ステップＳ２０９において、ＨＤＤ１９に空き記憶容量が無いと判定した場合（ステップＳ２０９；Ｎｏ）、記憶できる領域が存在しない旨のエラー表示を表示部１３に表示させ（ステップＳ２１１）、ＸＰＳファイル伸張処理が終了する。尚、この場合、ＣＰＵ１１は、ＸＰＳファイルの解析、ラスタライズ処理、画像形成処理命令（図６のステップＳ４〜ステップＳ６）を行わない。
【００７３】
また、ＣＰＵ１１は、ステップＳ２０８において、ＸＰＳファイルに格納されている全ての個別ファイルに対して、抽出や伸張判定等の一連の処理を行っていないと判定すると（ステップＳ２０８；Ｎｏ）、ＸＰＳファイルに格納されている別の個別ファイルを抽出し（ステップＳ２０１）、伸張判定等の一連の処理（ステップＳ２０２〜Ｓ２０７、Ｓ２０９、Ｓ２１０）を行う。
【００７４】
また、ＣＰＵ１１は、ステップＳ２０８において、ＸＰＳファイルに格納されている全ての個別ファイルに対して、抽出や伸張判定等の一連の処理を行ったと判定すると（ステップＳ２０８；Ｙｅｓ）、ＸＰＳファイル伸張処理が終了する。
【００７５】
[個別ファイル伸張判定処理]
次に、個別ファイル伸張判定処理（図９のステップＳ２０３）の具体的な処理内容について図１０を用いて説明する。図１０は、個別ファイル伸張判定処理を示すフローチャートである。
【００７６】
図１０に示すように、ＣＰＵ１１は、利用頻度リスト１９１を参照して取得した個別ファイルの「頻度」の値が「３」以上か判定する（ステップＳ３０１）。即ち、当該個別ファイルの利用回数が３回以上か（各ｒｅｌｓファイルでの個別ファイルの記述回数の合計が３回以上か）判定する。判定の結果、利用回数が３回以上の場合（ステップＳ３０１；Ｙｅｓ）、ＣＰＵ１１は、「個別ファイルにＺＩＰ伸張を行う」と判定する（ステップＳ３０２）。
【００７７】
ステップＳ３０１における判定の結果、利用回数が３回未満の場合（ステップＳ３０１；Ｎｏ）、ＣＰＵ１１は、当該個別ファイルのヘッダ情報を参照し、当該個別ファイルのＺＩＰ伸張後のデータサイズが１ＭＢ以下であるか否かを判定する（ステップＳ３０３）。判定の結果、１ＭＢ以下の場合（ステップＳ３０３；Ｙｅｓ）、ＣＰＵ１１は、「個別ファイルにＺＩＰ伸張を行う」と判定する（ステップＳ３０２）。
【００７８】
ステップＳ３０３における判定の結果、当該個別ファイルのＺＩＰ伸張後のデータサイズが１ＭＢより大きい場合（ステップＳ３０３；Ｎｏ）、ＣＰＵ１１は、当該個別ファイルのヘッダ情報を参照し、当該個別ファイルのＺＩＰ圧縮データサイズに対して、ＺＩＰ伸張後のデータサイズが２倍以下か否かを判定する（ステップＳ３０４）。判定の結果、２倍以下の場合（ステップＳ３０４；Ｙｅｓ）、ＣＰＵ１１は、「個別ファイルにＺＩＰ伸張を行う」と判定する（ステップＳ３０２）。
【００７９】
ステップＳ３０４における判定の結果、当該個別ファイルのＺＩＰ圧縮データサイズに対して、ＺＩＰ伸張後のデータサイズが２倍より大きい場合（ステップＳ３０４；Ｎｏ）、ＣＰＵ１１は、「個別ファイルにＺＩＰ伸張を行わない」と判定する（ステップＳ３０５）。
【００８０】
ＣＰＵ１１が、ステップＳ３０２、又はステップＳ３０５の処理を行うと、個別ファイル伸張判定処理が終了する。
【００８１】
尚、個別ファイル伸張判定処理において、ＣＰＵ１１は、個別ファイルの利用回数（利用頻度）、個別ファイルのＺＩＰ伸張後（データ伸張後）のデータサイズ、個別ファイルのＺＩＰ圧縮（データ伸張前の）データサイズの他に、更にＲＡＭ１７やＨＤＤ１９の空き記憶容量に基づいて、当該個別ファイルに対してＺＩＰ伸張を行うか否かを判定してもよい。
【００８２】
また、個別ファイルの利用回数、データ伸張後のデータサイズ、データ伸張前のデータサイズ、記憶媒体の空き記憶容量等をパラメータとして、画像形成装置１０の使用形態に応じてチューニング可能としてもよい。
【００８３】
以上、第１の実施の形態によれば、ＣＰＵ１１は、通信部１６によりクライアント端末２０から受信したＸＰＳファイルに格納されている全てのｒｅｌｓファイルに基づいて、当該ＸＰＳファイルに格納されている各個別ファイルの利用頻度を示す利用頻度リスト１９１を生成する。そして、ＣＰＵ１１は、当該利用頻度リスト１９１に基づいて、各個別ファイルに対するデータの伸張の要否を判定する。そして、ＣＰＵ１１は、当該判定結果に従って前記個別ファイルのＺＩＰ伸張を行い又は行わずに当該個別ファイルをＲＡＭ１７又はＨＤＤ１９に記憶させる。
【００８４】
そのため、ＸＰＳファイルに基づいて画像形成を行う画像形成装置１０において、ＲＡＭ１７又はＨＤＤ１９等の記憶媒体を効率的に使用することができる。また、ＲＡＭ１７の記憶容量が少ない場合でも、ＨＤＤ１９等にデータを退避させずに処理することが可能となり、ＲＡＭ１７の記憶容量を有効に使うことができ、画像形成に関する高速な処理を実現することができる。
【００８５】
また、ＣＰＵ１１は、各個別ファイルに対するデータの伸張の要否の判定を、個別ファイルの利用回数（利用頻度）の他に、更に、個別ファイルのＺＩＰ伸張後（データ伸張後）のデータサイズ、個別ファイルのＺＩＰ圧縮（データ伸張前の）データサイズ等に基づいて行うため、より柔軟なデータ伸張の要否の判定を行うことができる。
【００８６】
更に、ＸＰＳファイルに格納されている情報等に基づいて、ＣＰＵ１１が個別ファイルの利用頻度の算出を行うため、ユーザが当該利用頻度の設定を行う必要が無い。
【００８７】
尚、本実施の形態において、画像形成装置１０は、個別ファイルをＲＡＭ１７又はＨＤＤ１９の何れかに記憶させるとしたが、これに限定されるものではない。例えば、画像形成装置１０はＲＡＭ１７、ＨＤＤ１９の他に、更に別の記憶媒体（フラッシュメモリ等）を備え、個別ファイルを３つ以上の記憶媒体の何れかに記憶させるとしてもよい。
【００８８】
尚、本実施の形態のＸＰＳファイルの解析（図６のステップＳ４）とラスタライズ処理（図６のステップＳ５）において、ＣＰＵ１１は、ＺＩＰ伸張が行われていない個別ファイルについては、当該個別ファイルを利用する都度ＺＩＰ伸張を行い、利用後、当該伸張データを破棄するとしたが、更に、利用頻度リスト１９１を参照し、フィールド「頻度」の値が「１」となっている個別ファイルを、利用後、伸張データと共に破棄するとしてもよい。
【００８９】
[第２の実施の形態]
以下、本発明に係る画像形成装置の第２の実施の形態について説明する。尚、第２の実施の形態と第１の実施の形態との異なる点は、ＸＰＳファイル伸張処理の処理内容である。第２の実施の形態のＸＰＳファイル伸張処理において、ＣＰＵ１１は、個別ファイルの属性（ページ構成情報を示す個別ファイルやフォントデータの個別ファイル等の個別ファイルの種類）や利用頻度に基づき、データ伸張の要否を判定する。
【００９０】
[ＸＰＳファイル伸張処理]
以下、ＸＰＳファイルの伸張処理（図６のステップＳ３）の具体的な処理内容について図１１を用いて説明する。図１１は、ＸＰＳファイルの伸張処理を示すフローチャートである。
【００９１】
図１１に示すように、ＣＰＵ１１は、ＸＰＳファイルに格納されている個別ファイルを抽出する（ステップＳ４０１）。そして、ＣＰＵ１１は、抽出した個別ファイルがページ構成情報を示す個別ファイルであるか否かを判定する（ステップＳ４０２）。判定の結果、ページ構成情報を示す個別ファイルである場合（ステップＳ４０２；Ｙｅｓ）、当該個別ファイルに対してＺＩＰ伸張を行う（ステップＳ４０３）。そして、ＣＰＵ１１は、ＲＡＭ１７にＺＩＰ伸張後の個別ファイルを記憶できる空き記憶容量が有るか否かを判定する（ステップＳ４０８）。
【００９２】
ステップＳ４０２における判定の結果、抽出した個別ファイルがページ構成情報を示す個別ファイルでない場合（ステップＳ４０２；Ｎｏ）、ＣＰＵ１１は、抽出した個別ファイルがフォントデータの個別ファイルであるか否かを判定する（ステップＳ４０４）。判定の結果、フォントデータの個別ファイルである場合（ステップＳ４０４；Ｙｅｓ）、当該個別ファイルに対してＺＩＰ伸張を行う（ステップＳ４０３）。そして、ＣＰＵ１１は、ＲＡＭ１７にＺＩＰ伸張後の個別ファイルを記憶できる空き記憶容量が有るか否かを判定する（ステップＳ４０８）。
【００９３】
ステップＳ４０４における判定の結果、抽出した個別ファイルがフォントデータの個別ファイルでない場合（ステップＳ４０４；Ｎｏ）、ＣＰＵ１１は、利用頻度リスト１９１を参照して、抽出した個別ファイルの「ファイル名」又は「ファイルＩＤ」に該当するレコードの「頻度」の値を取得する（個別ファイルの利用頻度をチェックする）（ステップＳ４０５）。
【００９４】
そして、ＣＰＵ１１は、個別ファイル伸張判定処理を行う（ステップＳ４０６）。個別ファイル伸張判定処理（ステップＳ４０６）の結果、「個別ファイルにＺＩＰ伸張を行う」と判定した場合（ステップＳ４０７；Ｙｅｓ）、当該個別ファイルに対してＺＩＰ伸張を行う（ステップＳ４０３）。そして、ＣＰＵ１１は、ＲＡＭ１７にＺＩＰ伸張後の個別ファイルを記憶できる空き記憶容量が有るか否かを判定する（ステップＳ４０８）。
【００９５】
一方、個別ファイル伸張判定処理（ステップＳ４０６）の結果、「個別ファイルにＺＩＰ伸張を行わない」と判定した場合（ステップＳ４０７；Ｎｏ）、ＣＰＵ１１は、当該個別ファイルに対してＺＩＰ伸張を行わない。そして、ＣＰＵ１１は、ＲＡＭ１７に個別ファイルを記憶できる空き記憶容量が有るか否かを判定する（ステップＳ４０８）。
【００９６】
ＣＰＵ１１は、ステップＳ４０８において、ＲＡＭ１７に空き記憶容量が有ると判定した場合（ステップＳ４０８；Ｙｅｓ）、ＺＩＰ伸張後の個別ファイルを、又はＺＩＰ圧縮されたままの個別ファイルをＲＡＭ１７に記憶させる（ステップＳ４０９）。そして、ＣＰＵ１１は、ＸＰＳファイルに格納されている全ての個別ファイルに対して、抽出や伸張判定等の一連の処置（ステップＳ４０１〜Ｓ４０９、Ｓ４１１、Ｓ４１２）を行ったか否かを判定する（ステップＳ４１０）。
【００９７】
ＣＰＵ１１は、ステップＳ４０８において、ＲＡＭ１７に空き記憶容量が無いと判定した場合（ステップＳ４０８；Ｎｏ）、ＨＤＤ１９にＺＩＰ伸張後の個別ファイル、又はＺＩＰ圧縮されたままの個別ファイルを記憶できる空き記憶容量が有るか否かを判定する（ステップＳ４１１）。
【００９８】
ＣＰＵ１１は、ステップＳ４１１において、ＨＤＤ１９に空き記憶容量が有ると判定した場合（ステップＳ４１１；Ｙｅｓ）、ＺＩＰ伸張後の個別ファイルを、又はＺＩＰ圧縮されたままの個別ファイルをＨＤＤ１９に記憶させる（ステップＳ４１２）。そして、ＣＰＵ１１は、ＸＰＳファイルに格納されている全ての個別ファイルに対して、抽出や伸張判定等の一連の処置（ステップＳ４０１〜Ｓ４０９、Ｓ４１１、Ｓ４１２）を行ったか否かを判定する（ステップＳ４１０）。
【００９９】
ＣＰＵ１１は、ステップＳ４１１において、空き記憶容量が無いと判定した場合（ステップＳ４１１；Ｎｏ）、記憶できる領域が存在しない旨のエラー表示を表示部１３に表示させ（ステップＳ４１３）、ＸＰＳファイル伸張処理が終了する。尚、この場合、ＣＰＵ１１は、ＸＰＳファイルの解析、ラスタライズ処理、画像形成処理命令（図６のステップＳ４〜ステップＳ６）を行わない。
【０１００】
また、ＣＰＵ１１は、ステップＳ４１０において、ＸＰＳファイルに格納されている全ての個別ファイルに対して、抽出や伸張判定等の一連の処置を行っていないと判定すると（ステップＳ４１０；Ｎｏ）、ＸＰＳファイルに格納されている別の個別ファイルを抽出し（ステップＳ４０１）、伸張判定等の一連の処理（ステップＳ４０２〜Ｓ４０９、Ｓ４１１、Ｓ４１２）を行う。
【０１０１】
また、ＣＰＵ１１は、ステップＳ４１０において、ＸＰＳファイルに格納されている全ての個別ファイルに対して、抽出や伸張判定等の一連の処置を行ったと判定すると（ステップＳ４１０；Ｙｅｓ）、ＸＰＳファイル伸張処理が終了する。
【０１０２】
以上、第２の実施の形態によれば、ＸＰＳファイル伸張処理において、ＣＰＵ１１は、特定の属性の個別ファイル（ページ構成情報を示す個別ファイルやフォントデータの個別ファイル等）に対しては、個別ファイル伸張判定処理を行うことなく、ＺＩＰ伸張を行う。そのため、個別ファイルに対する、より柔軟なデータ伸張の要否の判定を行うことができる。
【０１０３】
また、上述実施の形態では、プログラムを格納したコンピュータ読み取り可能な媒体としてＲＯＭやＨＤＤを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、フラッシュメモリ等の不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬型記録媒体を適用することが可能である。また、プログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ（搬送波）も適用可能である。
【図面の簡単な説明】
【０１０４】
【図１】画像形成システムのシステム構成図である。
【図２】クライアント端末のブロック図である。
【図３】ＸＰＳファイルのファイル構成図である。
【図４】ｒｅｌｓファイルのデータ内容である。
【図５】画像形成装置のブロック図である。
【図６】画像形成装置で実行される画像形成に関する一連の処理を示すフローチャートである。
【図７】利用頻度リスト生成処理を示すフローチャートである。
【図８】利用頻度リストのデータ構成図である。
【図９】第１の実施の形態におけるＸＰＳファイル伸張処理を示すフローチャートである。
【図１０】個別ファイル伸張判定処理を示すフローチャートである。
【図１１】第２の実施の形態におけるＸＰＳファイル伸張処理を示すフローチャートである。
【符号の説明】
【０１０５】
１０      画像形成装置
１１      ＣＰＵ
１２      操作部
１３      表示部
１４      画像読取部
１５      画像形成部
１６      通信部
１７      ＲＡＭ
１８      ＲＯＭ
１９      ＨＤＤ
２０      クライアント端末
２１      ＣＰＵ
２２      操作部
２３      表示部
２４      通信部
２５      ＲＡＭ
２６      ＨＤＤ
１００    画像形成システム
１９１    利用頻度リスト
２６１    プリンタドライバプログラム
Ｎ        通信ネットワーク
【図１】
0004609488.tif 000002
【図２】
0004609488.tif 000003
【図３】
0004609488.tif 000004
【図４】
0004609488.tif 000005
【図５】
0004609488.tif 000006
【図６】
0004609488.tif 000007
【図７】
0004609488.tif 000008
【図８】
0004609488.tif 000009
【図９】
0004609488.tif 000010
【図１０】
0004609488.tif 000011
【図１１】
0004609488.tif 000012