(57)【要約】  【課題】  印刷データを解析してイメージデータに展開する構成の印刷装置において、メモリを効率的に利用できるようにすることを目的とする。  【解決手段】  ホスト側よりＰＤＬデータ等の印刷データが受信されると、印刷データ解析に必要な容量（１Ｍバイト）の空きがあるか否かが判断され（Ｓ１３０）、空きがあればその容量分が印刷データ解析用メモリ領域として確保される（Ｓ１４０）。続いて、イメージデータ展開に必要な容量（１Ｍバイト以上）の空きがあるか否かが判断され（Ｓ１５０）、空きがあれば、１Ｍバイト以上であって確保可能な最大限の容量がイメージデータ展開用メモリ領域として確保される（Ｓ１６０）。このように各メモリ領域が確保された上で、印刷データの解析処理が行われる（Ｓ１７０）。仮にイメージデータ展開用メモリ領域が確保されなくても（Ｓ１５０：ＮＯ）印刷データの解析処理は実行される。【選択図】  図３
2006116846.tif 000002
【特許請求の範囲】
【請求項１】
入力された印刷データを解析する解析手段と、
前記解析手段による解析結果に応じてイメージデータを展開するイメージデータ展開手段と、
前記イメージデータ展開手段により展開されたイメージデータに基づいて被記録媒体へ画像を記録する記録手段と、
前記解析手段による前記印刷データの解析及び前記イメージデータ展開手段による前記イメージデータの展開の際に用いられるメモリと、
前記印刷データが入力されたときに、その印刷データを解析するのに必要な第１の容量が前記メモリ内に空いているか否かを判断する第１容量空き判断手段と、
前記第１容量空き判断手段により空いていると判断された場合に、前記メモリ内に前記第１の容量分の解析用メモリ領域を確保する解析用メモリ領域確保手段と、
を備え、
前記解析手段は、前記解析用メモリ領域確保手段により前記解析用メモリ領域が確保されたときに、その解析用メモリ領域を用いて前記印刷データの解析を行う
ことを特徴とする印刷装置。
【請求項２】
前記解析用メモリ領域確保手段により前記解析用メモリ領域が確保された場合に、前記イメージデータを展開するための第２の容量が前記メモリ内に空いているか否かを判断する第２容量空き判断手段と、
前記第２容量空き判断手段により空いていると判断された場合に、前記メモリ内に前記第２の容量分の展開用メモリ領域を確保する展開用メモリ領域確保手段と、
を備え、
前記イメージデータ展開手段は、前記展開用メモリ領域確保手段により確保された前記展開用メモリ領域へイメージデータの展開を行う
ことを特徴とする請求項１記載の印刷装置。
【請求項３】
前記解析手段は、前記解析用メモリ領域確保手段による前記解析用メモリ領域の確保後、前記第２容量空き判断手段により前記第２の容量が前記メモリ内に空いていないと判断された場合であっても、前記印刷データの解析を行う
ことを特徴とする請求項２記載の印刷装置。
【請求項４】
前記展開用メモリ領域確保手段は、前記第２容量空き判断手段により前記第２の容量が空いていると判断された場合、前記メモリ内において前記イメージデータを展開するために確保可能な最大の容量を前記展開用メモリ領域として確保する
ことを特徴とする請求項２又は３記載の印刷装置。
【請求項５】
前記イメージデータ展開手段が前記展開用メモリ領域へのイメージデータの展開を行った後、展開すべきイメージデータが全て展開されたか否かを判断する展開状態判断手段と、
前記展開状態判断手段によって全て展開されていないと判断された場合に、展開されていないイメージデータである残データを展開するための第３の容量が前記メモリ内に空いたか否かの判断を、該第３の容量が空くまで継続的に行う第３容量発生判断手段と、
前記第３容量発生判断手段により空いたと判断された場合に、前記第３の容量分の残データ展開用メモリ領域を、前記メモリ内に確保する残データ展開用メモリ領域確保手段と、
を備え、
前記イメージデータ展開手段は、前記残データ展開用メモリ領域確保手段により残データ展開用メモリ領域が確保されたときに、その残データ展開用メモリ領域へ前記残データを展開する
ことを特徴とする請求項２〜４いずれかに記載の印刷装置。
【請求項６】
前記メモリとは別に設けられ、データを書き換え可能な記憶媒体と、
前記第２容量空き判断手段により、前記第２の容量が前記メモリ内に空いていないと判断された場合に、前記イメージデータを保存するための空き容量が前記記憶媒体内にあるか否かを判断する記憶媒体判断手段と、
前記記憶媒体判断手段により空き容量があると判断された場合に、その空き容量を一時保存領域として確保する一時保存領域確保手段と、
を備え、
前記イメージデータ展開手段は、前記一時保存領域確保手段により前記一時保存領域が確保されたときに、その一時保存領域へイメージデータの展開を行う
ことを特徴とする請求項２〜５いずれかに記載の印刷装置。
【請求項７】
前記イメージデータ展開手段により前記一時保存領域へイメージデータが展開された後に、そのイメージデータを格納するための第４の容量が前記メモリ内に空いたか否かの判断を、該第４の容量が空くまで継続的に行う第４容量発生判断手段と、
前記第４容量発生判断手段により空いたと判断された場合に、前記第４の容量分の再展開用メモリ領域を、前記メモリ内に確保する再展開用メモリ領域確保手段と、
前記再展開用メモリ領域確保手段により再展開用メモリ領域が確保されたときに、前記記憶媒体に展開されているイメージデータを前記再展開用メモリ領域へ再展開する再展開手段と、
を備え、
前記記録手段は、前記イメージデータ展開手段により前記記憶媒体における前記一時保存領域へ展開されたイメージデータにつき、そのイメージデータが前記再展開手段によって前記再展開用メモリ領域へ再展開されたときに、その再展開されたイメージデータに基づいて前記被記録媒体への画像の記録を行う
ことを特徴とする請求項６記載の印刷装置。
【請求項８】
前記イメージデータ展開手段は、前記記憶媒体における前記一時保存領域へのイメージデータの展開を、そのイメージデータを圧縮させて保存することにより行い、
前記再展開手段は、前記圧縮された状態で前記一時保存領域に保存されているイメージデータを元のイメージデータに戻して前記再展開用メモリ領域へ展開する
ことを特徴とする請求項７記載の印刷装置。
【請求項９】
前記メモリに展開されたイメージデータが前記記録手段により記録された後に、そのイメージデータが展開されている領域を開放する展開領域開放手段を備えている
ことを特徴とする請求項２〜８いずれかに記載の印刷装置。
【請求項１０】
前記展開領域開放手段は、前記記録手段により１ページ分の画像の記録が行われる毎に、前記メモリにおける、その１ページ分の画像に対応したイメージデータが展開されている領域を開放する
ことを特徴とする請求項９記載の印刷装置。
【請求項１１】
前記解析手段による前記印刷データの解析が終了した後に、その解析のために確保されている前記解析用メモリ領域を開放する解析領域開放手段を備えている
ことを特徴とする請求項１〜１０いずれかに記載の印刷装置。
【請求項１２】
前記解析領域開放手段は、前記解析の終了後、予め設定した条件が成立した場合に、前記解析用メモリ領域を開放する
ことを特徴とする請求項１１記載の印刷装置。
【請求項１３】
前記条件の少なくとも一つは、前記メモリ内の空き容量が予め設定した開放のための容量以下となっていることである
ことを特徴とする請求項１２記載の印刷装置。
【請求項１４】
前記印刷データは、ページ記述言語により記述されたデータであり、
前記解析手段は、前記印刷データを解析して中間データを生成し、
前記イメージデータ展開手段は、前記中間データに従って前記イメージデータの展開を行う
ことを特徴とする請求項１〜１３いずれかに記載の印刷装置。
【請求項１５】
当該印刷装置は、通信回線を介して受信した画像データを一旦前記メモリに記憶した後に被記録媒体へ記録するファクシミリ機能、及び、画像読取手段により画像を読み取ってその読み取った画像データを一旦前記メモリに記憶する画像読取機能のうち、少なくとも一方を備えている
ことを特徴とする請求項１〜１４いずれかに記載の印刷装置。
【請求項１６】
メモリを用いて印刷データの解析及びイメージデータへの展開を行う機能をコンピュータに実現させるためのプログラムであって、
コンピュータを、
前記印刷データが入力されたときに、その印刷データを解析するのに必要な第１の容量が前記メモリ内に空いているか否かを判断する第１容量空き判断手段、
前記第１容量空き判断手段により空いていると判断された場合に、前記メモリ内にその第１の容量分の解析用メモリ領域を確保する解析用メモリ領域確保手段、
前記解析用メモリ領域確保手段により前記解析用メモリ領域が確保されたときに、その解析用メモリ領域を用いて前記印刷データの解析を行う解析手段、
前記解析手段による解析結果に応じて前記メモリへイメージデータを展開するイメージデータ展開手段、
として機能させるためのプログラム。
【請求項１７】
前記解析用メモリ領域確保手段により前記解析用メモリが確保された場合に、前記イメージデータを展開するための第２の容量が前記メモリ内に空いているか否かを判断する第２容量空き判断手段、
前記第２容量空き判断手段により空いていると判断された場合に、前記メモリ内にその第２の容量分の展開用メモリ領域を確保する展開用メモリ領域確保手段、
としてコンピュータを機能させるよう構成され、
前記イメージデータ展開手段は、前記展開用メモリ領域確保手段により前記展開用メモリ領域が確保されたときに、その展開用メモリ領域へイメージデータの展開を行う
ことを特徴とする請求項１６記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された印刷データを解析してイメージデータに展開する印刷装置、及び、その印刷装置を制御するためのプログラムに関する。
【背景技術】
【０００２】
従来より、ページ記述言語（ＰＤＬ；Page Description Language ）で記述された印刷データ（以下「ＰＤＬデータ」ともいう）を入力して解析し、その解析結果に基づいてイメージデータに展開することにより１ページ分のページデータを作成して印刷を行うページプリンタが知られている。
【０００３】
このようなページプリンタでは、入力されたＰＤＬデータの解析用、更にはイメージデータ展開用に、それぞれメモリ領域を必要とする。そして、このようにメモリ領域を利用して各種印刷処理を行うプリンタとして、ホスト側から入力された文書データを記憶するページメモリ領域やビットマップ領域などの各種メモリ領域を予め固定で有するようにした技術が知られている（例えば、特許文献１参照。）。
【特許文献１】特開平１１−１３６４５９号公報（図８）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、メモリ全体における所定の領域がＰＤＬデータ解析用或いはイメージデータ展開用のメモリ領域として固定されると、他の処理の際には当然ながらそのメモリ領域は使用できないため、ＰＤＬデータに関わる処理以外の他の処理の際に十分なメモリ容量が確保できなくなるおそれがある。
【０００５】
特に近年、プリンタ機能に加え、イメージスキャナ機能、コピー機能、ファクシミリ機能などが搭載された複合機（多機能装置などともいう）が普及してきているが、この複合機においては、通常、同じメモリ（ＲＡＭ）が各種機能に共用されたり、或いは各機能毎にメモリ領域が割り当てられたりして、複数機能の同時動作が可能となるように構成されている。
【０００６】
そのため、例えば６ＭバイトのＲＡＭにおいて、プリンタ機能用に予め２Ｍバイトが確保されていると、ユーザからみれば全容量は６Ｍバイトであるのにプリンタ機能以外の他の機能では最大４Ｍバイトしか使えないということになり、ユーザに不満を与えることになる。プリンタ機能に限らず、複合機が備える各機能がそれぞれメモリ領域を固定して確保すると、その分、自由に使えるメモリ領域が減ることとなり、場合によっては各機能の動作に悪影響を及ぼすおそれもある。
【０００７】
本発明は上記課題に鑑みなされたものであり、印刷データを解析してイメージデータに展開する構成の印刷装置において、メモリを効率的に利用できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するためになされた請求項１記載の印刷装置は、入力された印刷データを解析する解析手段と、その解析手段による解析結果に応じてイメージデータを展開するイメージデータ展開手段と、そのイメージデータ展開手段により展開されたイメージデータに基づいて被記録媒体へ画像を記録する記録手段と、解析手段による印刷データの解析及びイメージデータ展開手段によるイメージデータの展開の際に用いられるメモリと、印刷データが入力されたときに、その印刷データを解析するのに必要な第１の容量がメモリ内に空いているか否かを判断する第１空き容量判断手段と、その第１空き容量判断手段により空いていると判断された場合に、メモリ内に第１の容量分の解析用メモリ領域を確保する解析用メモリ領域確保手段とを備えたものである。そして、解析手段は、解析用メモリ領域確保手段により解析用メモリ領域が確保されたときに、その解析用メモリ領域を用いて印刷データの解析を行う。
【０００９】
つまり、メモリ内のある領域を予め解析用メモリ領域として確保（固定）しておくのではなく、必要なとき、即ち印刷データが入力されてそれを解析する必要が生じたときに、解析用に必要な第１の容量の空きがあるかをみて、空きがあればその第１の容量分のメモリ領域を解析用メモリ領域として確保するのである。
【００１０】
そのため、上記構成の印刷装置によれば、従来のように印刷データを解析する必要の有無に関わらず常に解析用メモリ領域が確保されている場合に比べ、メモリ内において予め確保されるメモリ領域は少なくなり、メモリを効率的に利用することが可能となる。
【００１１】
そして、上記構成の印刷装置においては、更に、請求項２に記載のように、解析用メモリ領域確保手段により解析用メモリ領域が確保された場合に、イメージデータを展開するための第２の容量がメモリ内に空いているか否かを判断する第２空き容量判断手段と、第２空き容量判断手段により空いていると判断された場合に、メモリ内に第２の容量分の展開用メモリ領域を確保する展開用メモリ領域確保手段とを備えるようにし、イメージデータ展開手段は、展開用メモリ領域確保手段により確保された展開用メモリ領域へイメージデータの展開を行うようにするとよい。
【００１２】
上記構成の印刷装置では、解析用メモリ領域を初めから確保しないのに加え、さらに展開用メモリ領域についても初めから確保せず、必要なとき、即ち印刷データが入力されたことにより解析用メモリ領域が確保されたときに、イメージデータ展開のための第２の容量の空きがあるかをみている。そして、空きがあればその第２の容量分のメモリ領域を展開用メモリ領域として確保するのである。
【００１３】
そのため、上記構成の印刷装置によれば、展開用メモリ領域についても初めから固定して確保せず、必要に応じて空きがあれば確保するようにしているため、メモリをより効率的に利用することが可能となる。
【００１４】
そして、上記構成の印刷装置は、例えば請求項３に記載のように、解析用メモリ領域確保手段による解析用メモリ領域の確保後、第２空き容量判断手段により第２の容量が前記メモリ内に空いていないと判断された場合であっても、解析手段は印刷データの解析を行うように構成されているとよい。つまり、展開用メモリ領域が確保できなくても、既に確保できている解析用メモリ領域を利用して印刷データの解析は実行するのである。
【００１５】
このように構成された印刷装置によれば、展開用メモリ領域が確保できなくても印刷データの解析は行われるため、その分、入力された印刷データに対する処理を進めておくことができ、結果として印刷処理全体の速度を高めることが可能となる。
【００１６】
また、第２空き容量判断手段により第２の容量が空いていると判断された場合、実際にはその第２の容量以上の空き容量があることも想定される。そこで、例えば請求項４に記載のように、展開用メモリ領域確保手段は、第２空き容量判断手段により第２の容量が空いていると判断された場合、メモリ内においてイメージデータを展開するために確保可能な最大の容量を展開用メモリ領域として確保するようにするとよい。
【００１７】
つまり、第２の容量の空きがあるときに、その第２の容量分だけを展開用メモリ領域として確保するのではなく、第２の容量以上であって、イメージデータ展開用に確保可能な最大の容量を確保するのである。そのため、空き容量が多ければ多いほど、第２の容量よりもより多くの容量を展開用メモリ領域として確保できることとなる。逆に、ちょうど第２の容量分の空きしかない場合は、当然ながらその第２の容量分だけの展開用メモリ領域が確保されることとなる。
【００１８】
従って、上記構成の印刷装置によれば、イメージデータ展開用のメモリ領域を最大限確保することができるため、イメージデータ展開にかかる時間の短縮化が可能となる。
また、展開用メモリ領域確保手段によって展開用メモリ領域が確保されても、その確保された展開用メモリ領域の容量によっては、展開すべきイメージデータを全て展開できないことも予想される。そのような場合は、例えば請求項５に記載のように、展開用メモリ領域への展開後に再び残りのイメージデータを展開するための領域が空くのを待ち、空き次第、そこに展開するようにするとよい。
【００１９】
即ち、イメージデータ展開手段が展開用メモリ領域へのイメージデータの展開を行った後、展開すべきイメージデータが全て展開されたか否かを判断する展開状態判断手段と、展開状態判断手段によって全て展開されていないと判断された場合に、展開されていないイメージデータである残データを展開するための第３の容量がメモリ内に空いたか否かの判断を該第３の容量が空くまで継続的に行う第３容量発生判断手段と、第３容量発生判断手段により空いたと判断された場合に、第３の容量分の残データ展開用メモリ領域を、メモリ内に確保する残データ展開用メモリ領域確保手段とを備え、イメージデータ展開手段は、残データ展開用メモリ領域確保手段により残データ展開用メモリ領域が確保されたときに、その残データ展開用メモリ領域へ残データを展開するよう構成するとよい。
【００２０】
このように構成された印刷装置によれば、最初に十分な展開用メモリ領域を確保できなくても、とりあえず確保できた分だけ展開を進めることができ、不足分については、その後にまた空き容量が生じたときに残データ展開用メモリ領域として確保し、そこへ展開させることになる。そのため、イメージデータの展開を効率的に進めることができ、印刷処理全体の速度を向上させることが可能となる。
【００２１】
尚、残データ展開用メモリ領域への展開後もまだ展開すべきイメージデータが残っている場合は、例えば、再びまた第３の容量分のメモリ領域が空くまで待ち、空いたらそこを新たな残データ展開用メモリ領域として確保して残りのイメージデータを展開するようにしてもよい。つまり、展開すべきイメージデータが全てメモリに展開されるまで、残データ展開用メモリ領域確保手段が残データ展開用メモリ領域（第３の容量分）の確保を繰り返し行うわけである。
【００２２】
また、解析用メモリ領域の確保後、メモリの空き状態によっては、第２の容量すら空いておらず、展開用メモリ領域を確保できないことも予想される。そこで、例えば請求項６記載のように、データを書き換え可能な記憶媒体をメモリとは別に設け、第２空き容量判断手段によって第２の容量がメモリ内に空いていないと判断された場合に、記憶媒体判断手段が、イメージデータを保存するための空き容量が記憶媒体内にあるか否かを判断し、記憶媒体判断手段により空き容量があると判断された場合に、一時保存領域確保手段が、その空き容量を一時保存領域として確保するようにし、イメージデータ展開手段は、一時保存領域確保手段により一時保存領域が確保されたときに、その一時保存領域へイメージデータの展開を行うようにするとよい。
【００２３】
つまり、展開のための第２の容量分のメモリ領域も確保できなかった場合に、そのまま展開せずにメモリが空くまで待つのではなく、メモリとは別に設けられた記憶媒体へイメージデータを保存するのである。このようにすることで、メモリ自体に展開用メモリ領域が確保できなくても展開処理を進めることができ、解析手段は新たに入力される印刷データの解析を行うことができるため、印刷処理速度をより向上させることが可能となる。
【００２４】
そして、このように記憶媒体へイメージデータを保存できるよう構成した場合は、更に、例えば請求項７に記載のように、第４容量発生判断手段が、イメージデータ展開手段により一時保存領域へイメージデータが展開された後に、そのイメージデータを格納するための第４の容量がメモリ内に空いたか否かの判断を該第４の容量が空くまで継続的に行い、第４の容量が空いたと判断された場合に、再展開用メモリ領域確保手段が、第４の容量分の再展開用メモリ領域をメモリ内に確保するようにし、その再展開用メモリ領域が確保されたときに、再展開手段が、記憶媒体に展開されているイメージデータを再展開用メモリ領域へ再展開するように構成するとよい。そして、記録手段は、イメージデータ展開手段により記憶媒体における一時保存領域へ展開されたイメージデータにつき、そのイメージデータが再展開手段によって再展開用メモリ領域へ再展開されたときに、その再展開されたイメージデータに基づいて被記録媒体への画像の記録を行うものであるとよい。
【００２５】
なお、記憶媒体から再展開用メモリ領域へのイメージデータ再展開は、一度に全てのイメージデータについて行うようにしてもよいし、ある一定容量の再展開用メモリ領域が確保される毎に数回に分けて行うようにしてもよく、記憶媒体のイメージデータが最終的に全てメモリに再展開される限り、種々の方法を採りうる。
【００２６】
そしてこの場合、例えば請求項８に記載のように、イメージデータ展開手段は、記憶媒体における一時保存領域へのイメージデータの展開を、そのイメージデータを圧縮させて保存することにより行い、再展開手段は、圧縮された状態で一時保存領域に保存されているイメージデータを元のイメージデータに戻して再展開用メモリ領域へ展開するようにしてもよい。
【００２７】
このようにイメージデータを圧縮して記憶媒体に保存することで、記憶媒体に十分な空き容量がなくても、保存すべきイメージデータを確実に保存させることができるようになる。言い換えれば、圧縮した状態で保存させることで、記憶媒体の空き容量が圧迫されるのを抑止できる。
【００２８】
ここで、イメージデータ展開用に展開用メモリ領域を確保した場合に、その領域に展開されたイメージデータが記録手段によって記録された後は、その展開用メモリ領域が展開領域開放手段によって開放されるように構成するとよい。このように、イメージデータが展開されたメモリ領域をそのイメージデータの記録後に開放することで、その開放された領域を再び他の機能等によって有効利用することができるようになる。
【００２９】
そしてこの場合、展開領域開放手段は、例えば請求項１０記載のように、記録手段により１ページ分の画像の記録が行われる毎に、メモリにおける、その１ページ分の画像に対応したイメージデータが展開されている領域を開放するようにするとよい。このようにすることで、一つの印刷ジョブ全体の印刷（画像の記録）の終了を待つことなく、ページ単位で開放されていくため、メモリ領域の開放が迅速に行われることとなり、メモリをさらに効果的に利用することが可能となる。
【００３０】
また、例えば請求項１１記載のように、解析領域開放手段を備え、解析手段による印刷データの解析が終了した後に、その解析のために確保されている解析用メモリ領域をその解析領域開放手段が開放するようにすることによっても、メモリをさらに効果的に利用することが可能となる。
【００３１】
この場合、解析領域開放手段は、解析手段によるデータ解析終了後すぐに開放するようにしてもよいが、例えば請求項１２に記載のように、解析の終了後、予め設定した条件が成立した場合に、解析用メモリ領域を開放するようにしてもよい。
【００３２】
そして、その条件としては、種々考えられるが、例えば請求項１３に記載のように、メモリ内の空き容量が予め設定した開放のための容量以下となっていることを、条件の少なくとも一つとするようにすることができる。
【００３３】
上記のように解析用メモリ領域の開放タイミングを設定することで、解析が終了しても一定条件下でその解析用メモリ領域が確保され続けるため、その間に再び印刷データが入力された場合、再度解析用メモリ領域確保手段が解析用メモリ領域の確保を行うことなく、確保中の解析用メモリ領域を用いて迅速に印刷データの解析を開始することができる。特に、開放のための条件を上記請求項１３のように設定することで、メモリ不足となったときには開放されるようにすることができるため、メモリ不足により生じる弊害を防止することができる。
【００３４】
ところで、印刷データとしてはいくつかの種類があり、例えば上述したＰＤＬにより記述されたＰＤＬデータや、イメージにより近いデータであるいわゆるダムデータが挙げられるが、ＰＤＬデータの場合、解析処理を行う過程で、ＰＤＬ解析処理の経過が中間データとしてメモリに記憶される。そのため、解析そのものに必要なメモリ領域のほかに、中間データを記憶するためのメモリ領域も必要となり、ダムデータの場合と比較してより多くのメモリ領域を必要とする。
【００３５】
そこで、上記各請求項１〜１３いずれかに記載の印刷装置が、例えば請求項１４に記載のように、印刷データが、ページ記述言語により記述されたデータであり、解析手段は、その印刷データを解析して中間データを生成し、イメージデータ展開手段が、その中間データに従ってイメージデータの展開を行うよう構成されたものであれば、より多くのメモリ領域を必要とする印刷装置でありながらメモリを効率的に利用することが可能となり、他の処理等への悪影響を防ぐことができるようになるため、より効果的である。
【００３６】
また、既述の通り、プリンタ機能に加えて他の機能も搭載された複合機においては、同じメモリが各種機能で共用されたり、或いは各機能毎にメモリ領域が割り当てられたりすることで、プリンタ機能のみを有する印刷装置に比べてメモリ不足になりがちである。
【００３７】
そこで、例えば請求項１５に記載のように、通信回線を介して受信した画像データを一旦メモリに記憶した後に被記録媒体へ記録するファクシミリ機能、及び、画像読取手段により画像を読み取ってその読み取った画像データを一旦メモリに記憶する画像読取機能のうち少なくとも一方を備えた印刷装置が、上記各請求項１〜１４いずれかに記載の印刷装置の構成を備えるようにすれば、ファクシミリ機能或いは画像読取機能を備えた多機能の印刷装置であってもメモリを効率的に利用することができるようになるため、より効果的である。
【００３８】
次に、請求項１６に記載のプログラムは、メモリを用いて印刷データの解析及びイメージデータへの展開を行う機能をコンピュータに実現させるためのプログラムであって、コンピュータを、印刷データが入力されたときに、その印刷データを解析するのに必要な第１の容量がメモリ内に空いているか否かを判断する第１空き容量判断手段、この第１空き容量判断手段により空いていると判断された場合に、メモリ内にその第１の容量分の解析用メモリ領域を確保する解析用メモリ領域確保手段、この解析用メモリ領域確保手段により解析用メモリ領域が確保されたときに、その解析用メモリ領域を用いて印刷データの解析を行う解析手段、この解析手段による解析結果に応じてメモリへイメージデータを展開するイメージデータ展開手段、として機能させることを特徴としている。
【００３９】
このため、本プログラムによれば、コンピュータを上記請求項１の印刷装置（但し記録手段を除く）として動作させることができる。
また、上記請求項１６のプログラムが、更に、例えば請求項１７のように、解析用メモリ領域確保手段により解析用メモリが確保された場合に、イメージデータを展開するための第２の容量がメモリ内に空いているか否かを判断する第２空き容量判断手段、この第２空き容量判断手段により空いていると判断された場合に、メモリ内にその第２の容量分の展開用メモリ領域を確保する展開用メモリ領域確保手段、としてコンピュータを機能させるよう構成され、上記イメージデータ展開手段は、展開用メモリ領域確保手段により展開用メモリ領域が確保されたときに、その展開用メモリ領域へイメージデータの展開を行うものであることを特徴としている。
【００４０】
このため、本プログラムによれば、コンピュータを上記請求項２の印刷装置（但し記録手段を除く）として動作させることができる。
なお、上記各プログラムは、例えば、ＲＯＭやバックアップＲＡＭに記憶させておいてこのＲＯＭあるいはバックアップＲＡＭをコンピュータに組み込んで用いることができる。この他、例えば、フロッピー（登録商標）ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ハードディスク等のコンピュータ読み取り可能な記録媒体に記録し、必要に応じてコンピュータにロードして起動することにより用いるようにすることもできる。
【発明を実施するための最良の形態】
【００４１】
以下に、本発明の好適な実施形態を図面に基づいて説明する。
［第１実施形態］
図１は、本実施形態の印刷システム１の概略構成を示すブロック図である。図１に示す如く、本実施形態の印刷システム１は、本発明の印刷装置が適用された複合機１０とホストコンピュータ（以下単に「ホスト」という）５０とが通信ケーブル（本発明の通信回線）２を介して相互にデータ送受信可能に接続されている。
【００４２】
複合機１０は、電話回線網６０を介して音声通話を実現する電話機能、用紙の画像を画像データとして読み取るスキャナ機能（画像読取機能）、画像データで示される画像を用紙に印刷するプリンタ機能、電話回線網６０を介して画像の送受信を行うと共に、受信した画像データを一旦メモリ（ＲＡＭ２０等）に格納した後に用紙に印刷（被記録媒体へ記録）するファクシミリ機能、などを有している。
【００４３】
そして、この複合機１０では、ＣＰＵ１２、マスクＲＯＭ１４、フラッシュＲＯＭ１６、ＥＥＰＲＯＭ１８、ＲＡＭ２０、プリンタ部２２、スキャナ部２４、ユーザインターフェイス２６、メディアドライブ２８、ホストインターフェイス３０、モデム３２、回線制御部３４などが、バス３８を介して接続されており、更に、上記回線制御部３４には、ハンドセット３６が接続されている。
【００４４】
ＣＰＵ１２は、マスクＲＯＭ１４やフラッシュＲＯＭ１６に記憶されている各種プログラム・データ等に従い、処理結果をＲＡＭ２０に記憶させながら、複合機１０の各構成要素にバス３８経由で指令を送ることによって、複合機１０全体の動作を制御する。
【００４５】
マスクＲＯＭ１４は、記憶内容の書き換えが不可能な周知のＲＯＭであり、当該複合機１０を起動させるブートプログラムや、プリンタ機能において用いられるフォントデータなど、書き換えの可能性がほとんどないプログラム・データ等が記憶されている。
【００４６】
フラッシュＲＯＭ１６は、記憶内容の書き換えが可能な周知のＲＯＭであり、ホスト５０からの印刷データを解析するためのプログラムや、上述した各種機能を実現するための各種プログラムやデータ等が記憶されている。
【００４７】
ＥＥＰＲＯＭ１８も、記憶内容の書き換えが可能な周知の不揮発性メモリであり、ＣＰＵ１２が各種処理を実行する際に必要な制御パラメータが記憶されているほか、ユーザ入力にて登録される電話番号・ファクシミリ番号などの各種情報も記憶される。
【００４８】
ＲＡＭ２０は、本発明のメモリに相当するものであり、電源が供給されている間にのみ記憶内容を保持可能な周知の揮発性メモリであり、ＣＰＵ１２が各種処理を実行する際のワークエリアとして利用される。
【００４９】
プリンタ部２２は、本発明の記録手段に相当するものであり、ＣＰＵ１２からの指令を受けて、図示しない給紙部にセットされた用紙への画像の印刷（被記録媒体への画像記録）を行う。
【００５０】
スキャナ部２４は、本発明の画像読取手段に相当するものであり、ＣＰＵ１２からの指令を受けて、図示しない読取部にセットされた用紙からその用紙上の画像を読み取ると共に、その読み取った画像のイメージデータを生成する。
【００５１】
なお、本複合機１０は、スキャナ部２４で読み取った画像をプリンタ部２２にて印刷する、いわゆるコピー機能も備えている。
ユーザインターフェイス２６は、文字や数字、記号などを入力可能な複数の操作ボタンなどからなる操作パネル４２と、ＣＰＵ１２からの指令を受けて各種情報を表示する表示パネル（ＬＣＤパネル）４４と、スピーカ及びこのスピーカを駆動する駆動回路からなるスピーカ部４６とを備えている。
【００５２】
ホストインターフェイス３０は、当該複合機１０を通信ケーブル経由で別のコンピュータシステムと接続するためのインターフェイスであり、本実施形態では、既述の通り、複合機１０とホスト５０とが通信ケーブル２を介して相互に接続されている。
【００５３】
モデム３２は、ＣＰＵ１２からの指令を受けて、スキャナ部２４で生成されたイメージデータを変調して電話回線網６０を伝送可能な画像信号を生成すると共に、電話回線網６０から回線制御部３４を介して入力された画像信号を復調してイメージデータを生成する。なお、ハンドセット３６は、複合機１０本体から取り外して使用する送受話器である。
【００５４】
回線制御部３４は、電話回線網６０からの各種信号の入力および電話回線網６０への信号の出力を行うと共に、ＣＰＵ１２の指令を受けて、電話回線網６０との間で入出力する信号の伝送先および伝送元となる伝送経路を設定する。
【００５５】
メディアドライブ２８は、各種メモリカード２９を着脱可能であり、装着されたメモリカード２９へのデータの記録および読み出しを行う装置である。なお、ここでいう「メモリカード」とは、例えば、コンパクトフラッシュ（登録商標。以下同様。以下「ＣＦ」と略す）、スマートメディア(登録商標）、メモリスティック（登録商標）、マルチメディアカード、ＳＤメモリカードなどのことである。そして、本実施形態では、メディアドライブ２８にＣＦ２９（本発明の記憶媒体に相当）が挿入されているものとして説明する。
【００５６】
ホスト５０は、図示は省略したものの、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、キーボード、マウス、ディスプレイなどにより構成された周知のコンピュータシステムである。そして、このホスト５０が備えるハードディスクには、各種アプリケーションソフトの他、複合機１０におけるスキャナ機能を利用するためのスキャナ用プログラム、プリンタ機能を利用するためのプリンタドライバなどが組み込まれている。
【００５７】
本実施形態の印刷システム１では、ホスト５０からの印刷データとして、ページ記述言語（ＰＤＬ）により記述されたＰＤＬデータが複合機１０へ送信されてくるよう構成されている。即ち、ホスト５０では、ユーザが各種アプリケーションソフト等を利用することによりそのアプリケーションソフトによって作成された画像データが、プリンタドライバによりＰＤＬデータに変換されて複合機１０側へ送出される。
【００５８】
そして、複合機１０では、ホスト５０からのＰＤＬデータを受信すると、フラッシュＲＯＭ１６に格納されたＰＤＬ受信処理プログラムに基づくＣＰＵ１２の処理により、後述するようにＰＤＬデータの解析に必要なメモリ領域の確保、イメージデータ展開に必要なメモリ領域の確保、ＰＤＬデータの解析、解析結果に基づく中間データの生成、中間データに基づくイメージデータへの展開などが行われる。
【００５９】
尚、複合機１０自体は、印刷データとしてＰＤＬデータに限らず、イメージ形式のＧＤＩデータ（ダムデータともいわれる）も受信・処理可能である。そのため、ホスト５０がＧＤＩデータを生成・送信可能に構成されていれば、複合機１０ではそのＧＤＩデータに基づいて印刷処理を行うことができる。
【００６０】
ここで、本実施形態の複合機１０におけるメモリ管理領域について、図２に基づいて説明する。複合機１０は、ＲＡＭ２０として例えば容量８Ｍバイトを備えている。そして、図２（ａ）に示すように、メモリ管理領域全体（８Ｍバイト）のうち一部の領域（例えば約０．５Ｍバイト）が、予め用途の決められた専用のメモリ領域である固定エリアとして確保されている。それ以外の領域は、用途が固定されておらず、複合機１０が備える各種機能において自由に利用可能なフリーエリアとして設定されている。
【００６１】
尚、固定エリアは、ホスト５０側からデータを受信した際の受信バッファ７１として予め確保されているほか、例えばコピー機能の一部に利用される領域など、最低限確保しておくべきメモリ領域が確保されたものである。
【００６２】
そして、当該複合機１０の電源を投入して動作が開始された後のあるタイミング、例えばコピー機能を使用中にホスト５０からＰＤＬデータが送信されてきたときは、図２（ｂ）に例示するように、フリーエリアにおいて、各機能が必要とするメモリ領域がそれぞれ確保された状態となる。図２（ｂ）は、プリンタ機能用として、印刷データ解析用メモリ領域７３とイメージデータ展開用メモリ領域７５が確保され、コピー機能用として、コピー処理用メモリ領域７７とコピーデータ展開用メモリエリア７９が確保されている例を示している。
【００６３】
このうち、印刷データ解析用メモリ領域７３は、ＰＤＬデータ等の印刷データを解析して中間データを生成するために用いられるメモリ領域であり、印刷データの受信処理・解析を行うための印刷データ処理用メモリ領域７３ａと、中間データが生成・保持される中間データ保持用メモリ領域７３ｂとを有する。
【００６４】
中間データは、ＰＤＬデータ解析の途中経過がページ単位で表されたデータであって、ページにおいて最終的にどこにどのような描画をすべきかを明らかにさせるためのデータである。そして、この中間データを元に、イメージデータ展開用メモリ領域７５へイメージデータの展開がなされることになる。
【００６５】
尚、ＧＤＩデータの場合、ＧＤＩデータを解析してイメージデータ展開用メモリ領域７５へ展開する過程で中間データは生成されない。そのため、ＧＤＩデータが受信された場合は、図２（ｂ）における中間データ保持用メモリ領域７３ｂは確保されないことになる。
【００６６】
そして、図２（ｂ）の状態から、例えばＰＤＬデータの受信終了、印刷出力の終了によってプリンタ機能の動作が終了すると、それまで確保されていた印刷データ解析用メモリ領域７３とイメージデータ展開用メモリ領域７５は開放され、他の機能が利用することが可能となる。なお、開放されるタイミングの詳細については後述する。
【００６７】
次に、ホスト５０から印刷データ（本例ではＰＤＬデータ）が受信されたときに、複合機１０において実行される受信データ処理について、図３に基づいて説明する。図３は、ＣＰＵ１２にて実行される受信データ処理を示すフローチャートである。複合機１０では、ＣＰＵ１２がフラッシュＲＯＭ１６からＰＤＬ受信処理プログラムを読み出し、このプログラムに従って受信データ処理が実行される。この受信データ処理は、当該複合機１０が一定間隔でポーリングを行う中でデータが受信されたときに実行されるものである。尚、以下の説明では、図２（ｂ）を参照しつつ説明する。
【００６８】
ホスト５０からデータが受信されると、まず、そのデータが印刷データ（ＰＤＬデータ或いはＧＤＩデータ）であるか否かが判断され（Ｓ１１０）、印刷データでなければＳ２１０に移行するが、印刷データであれば（Ｓ１１０：ＹＥＳ）、印刷データ解析のための印刷データ解析用メモリ領域７３を確保済みか否かが判断される（Ｓ１２０）。そして、確保済みならばＳ１５０以降の処理に進むが、まだ確保されていない場合は、ＲＡＭ２０において（詳しくはＲＡＭ２０におけるフリーエリアにおいて）印刷データ解析に必要なメモリ領域として予め設定した容量（本実施形態では１Ｍバイト）が空いているか否かが判断される（Ｓ１３０）。尚、このＳ１３０の処理における閾値としての「１Ｍバイト」は、本発明における第１の容量に相当するものである。
【００６９】
そして、１Ｍバイトの空き容量がなければ、印刷データ解析用メモリ領域７３を確保できないとしてそのままこの受信データ処理を終了する。一方、１Ｍバイトの空きがあれば（Ｓ１３０：ＹＥＳ）、その１Ｍバイト分の空き容量が、印刷データ解析用メモリ領域７３として確保される（Ｓ１４０）。
【００７０】
印刷データ解析用メモリ領域７３が確保された後は、引き続き、イメージデータの展開用に必要なメモリ領域として予め設定した容量（本実施形態では１Ｍバイト以上）が空いているか否かが判断される（Ｓ１５０）。尚、このＳ１５０の処理における閾値としての「１Ｍバイト」は、本発明における第２の容量に相当するものである。
【００７１】
そして、１Ｍバイト以上の空き容量があれば（Ｓ１５０：ＹＥＳ）、１Ｍバイト以上であって且つイメージデータ展開用に確保可能な最大限の容量が、イメージデータ展開用メモリ領域７５として確保される（Ｓ１６０）。そして、既に確保されている印刷データ解析用メモリ領域７３を利用して印刷データの解析処理がなされる（Ｓ１７０）。
【００７２】
一方、１Ｍバイト以上の空き容量がない場合であっても（Ｓ１５０：ＮＯ）、イメージデータ展開用メモリ領域７５の確保はできないものの、既に確保されている印刷データ解析用メモリ領域７３を利用して印刷データの解析処理はなされる（Ｓ１７０）。
【００７３】
そして、データ解析処理の終了後は、受信された印刷データがＧＤＩデータであるか否かが判断され（Ｓ１８０）、ＰＤＬデータであれば、中間データの作成が行われて（Ｓ１９０）、続くイメージデータ展開処理（Ｓ２００）へ進むこととなり、ＧＤＩデータであれば、そのままイメージデータ展開処理へ進むこととなる。
【００７４】
つまり、本実施形態の複合機１０では、イメージデータに展開するためのメモリ領域が確保できなくても、印刷データの解析処理及び中間データ保持用メモリ領域７３ｂへの中間データ生成・保持までは進めておくのである。
【００７５】
図４に、Ｓ２００のイメージデータ展開処理の詳細を示す。本処理においては、まず、イメージデータ展開用のメモリ領域が確保されているか否かが判断される（Ｓ３１０）。そして、上述したＳ１６０の処理においてイメージデータ展開用メモリ領域７５が確保されているか、或いは後述するＳ３５０の処理でイメージデータ展開用のメモリ領域が確保されている場合は（Ｓ３１０：ＹＥＳ）、その確保されているメモリ領域へイメージデータの書き込み（展開）が行われる（Ｓ３２０）。このイメージデータの書き込み（展開）は、印刷データがＰＤＬデータである場合には、Ｓ１９０で生成された中間データに従って行われる。
【００７６】
そして、Ｓ３２０における展開処理後、展開すべき１ページ分のイメージデータが全て展開されたか否かが判断され（Ｓ３３０）、全て展開されていれば、とりあえず当該ページに対する受信データ処理は終了することとなり、印刷データの受信が終了するまでは引き続き図３の受信データ処理が行われることとなる。一方、例えばイメージデータ展開用のメモリが少ない等によって、全て展開されていない場合は（Ｓ３３０：ＮＯ）、再びＳ３１０以降の処理に戻る。尚、この場合において展開されずに残っているイメージデータが、本発明の残データに相当するものである。
【００７７】
Ｓ３３０で否定判定されてＳ３１０に戻ったときは、イメージデータ展開用のメモリ領域が確保されていない状態にある。そのため、この場合はＳ３４０に進み、ＲＡＭ２０に所定の容量（例えば１２８Ｋバイト）の空きが生じるまで待つ。そして、他の機能の動作が終了すること等によってメモリが解放され、１２８Ｋバイトの空き容量が生じた場合は（Ｓ３４０：ＹＥＳ）、その１２８Ｋバイト分の空き容量をイメージデータ展開用のメモリ領域として確保する（Ｓ３５０）。このＳ３５０の処理で確保されるメモリ領域が、本発明の残データ展開用メモリ領域に相当するものであり、その容量である「１２８Ｋバイト」が、本発明の第３の容量に相当するものである。
【００７８】
このようにＳ３５０でメモリ領域が確保されると、Ｓ３１０の処理で肯定判定され、その確保されたメモリ領域へイメージデータの展開が行われることになる（Ｓ３２０）。その結果、展開すべき全てのイメージデータが展開されれば、とりあえず当該ページについての受信データ処理が終了することとなるが、まだ展開されずに残っているイメージデータがあれば、上記同様、Ｓ３１０→Ｓ３４０→Ｓ３５０の流れで１２８Ｋバイトずつの展開用メモリ領域の確保が繰り返されることとなる。
【００７９】
図３の受信処理に戻って説明する。印刷データの受信が終了すること等によって、ホスト５０から印刷データ以外のデータが受信されると、Ｓ１１０の判断処理で否定判定されてＳ２１０以降の処理に進み、まず、印刷データ解析用メモリ領域７３が確保済みであるか否かが判断される。ここで、既に開放されて確保されていなければＳ１１０に戻るが、例えば印刷処理が終了したばかりであって、まだ印刷データ解析用メモリ領域７３が確保されたままならば（Ｓ２１０：ＹＥＳ）、ＲＡＭ２０全体の空き容量が１Ｍバイト以内になっているか否かが判断される（Ｓ２２０）。
【００８０】
このとき、１Ｍバイト以内でなければＳ１１０に戻るが、１Ｍバイト以内になっている場合は（Ｓ２２０：ＹＥＳ）、更に、印刷データの解析中であるか否かが判断される。そして、解析中であればＳ１１０に戻るが、解析中でなければ（Ｓ２３０：ＮＯ）、確保されている印刷データ解析用メモリ領域７３を開放する（Ｓ２４０）。
【００８１】
つまり、印刷データ解析用メモリ領域７３は、印刷データが受信されておらず、印刷データの解析中でもなく、しかもＲＡＭ２０の空き容量が１Ｍバイト以内になったとき、という条件が成立したときに開放されるのである。このように解析用のメモリ領域をすぐに開放しないのは、印刷データの処理速度の低下を防ぐためである。即ち、印刷データの解析がページ毎に終了するたびに印刷データ解析用メモリ領域７３を開放すると、Ｓ１７０の処理を始めるまでに時間がかかってしまうからである。尚、Ｓ２２０の判断処理における判断基準としての「１Ｍバイト」は、本発明（請求項１３）の“開放のための容量”に相当するものである。
【００８２】
一方、イメージデータ展開用メモリ領域７５に１ページ分のイメージデータ（以下「ページデータ」ともいう）が展開されると、１ページ毎に、図５に示すような印刷処理が行われる。図５の印刷処理は、ＣＰＵ１２がフラッシュＲＯＭ１６内に格納された印刷処理プログラムを実行することにより、図３（及び図４）の受信データ処理と共にマルチタスクで実行される処理であり、イメージデータ展開用メモリ領域７５にページデータが展開されると、その展開されたページデータがプリンタ部２２によって印刷される（Ｓ４１０）。そして、イメージデータ展開用メモリ領域７５のうち、その印刷済みのページデータが展開されているメモリ領域が開放される（Ｓ４２０）。
【００８３】
以上説明した本実施形態の複合機１０によれば、印刷データ解析用のメモリ領域とイメージデータ展開用のメモリ領域をいずれも固定して確保せず、必要に応じて、空きがあれば確保するようにしている。そのため、初めから固定確保されない分、印刷データの解析処理以外の他の処理、或いはプリンタ機能以外の他の機能のためにメモリ領域を効率的に利用することができる。そして、効率的に利用できるようになった分、ＲＡＭ２０全体の容量を低減することも可能となり、そうすればＲＡＭ２０のコスト低減、延いては複合機１０全体のコスト低減も可能となる。
【００８４】
また、展開用のメモリ領域が確保できなくても、印刷データの解析処理は行われるため、その分、入力された印刷データに対する処理を進めておくことができ、結果として印刷処理全体の速度を高めることが可能となる。また、メモリフルとして印刷データの解析処理すらなされないといったケースが低減され、ユーザの使い勝手も向上する。
【００８５】
更に、イメージデータ展開用のメモリ領域は、１Ｍバイト以上の最大限確保することが可能な容量を確保するようにしているため、イメージデータ展開にかかる時間の短縮化も可能となる。
【００８６】
更にまた、イメージデータ展開用のメモリ領域は、一つの印刷ジョブ全体の印刷（画像の記録）の終了を待つことなく、１ページの印刷処理が終了する毎にページ単位で開放されていくため、メモリ領域の開放が迅速に行われることとなり、メモリ（ＲＡＭ２０）をより効果的に利用することが可能となる。
【００８７】
その一方で、印刷データ解析用のメモリ領域については、イメージデータ展開用のメモリ領域よりも少量であることから、すぐに開放するのではなく、上述した開放のための条件が成立してから開放するようにしている。そのため、確保継続中に再び印刷データが入力された場合、再び印刷データ解析用のメモリ領域の確保処理を行うことなく、確保継続中の印刷データ解析用メモリ領域を用いて迅速に印刷データの解析を開始することができる。
【００８８】
尚、図３の受信データ処理において、Ｓ１３０の処理は本発明の第１空き容量判断手段が実行する処理に相当し、Ｓ１４０の処理は本発明の解析用メモリ領域確保手段が実行する処理に相当し、Ｓ１５０の処理は本発明の第２空き容量判断手段が実行する処理に相当し、Ｓ１６０の処理は本発明の展開用メモリ領域確保手段が実行する処理に相当し、Ｓ１７０の処理は本発明の解析手段が実行する処理に相当し、Ｓ２００の処理は本発明のイメージデータ展開手段が実行する処理に相当し、Ｓ２４０の処理は本発明の解析領域開放手段が実行する処理に相当する。
【００８９】
また、図４のイメージデータ展開処理において、Ｓ３３０の処理は本発明の展開状態判断手段が実行する処理に相当し、Ｓ３４０の処理は本発明の第３容量発生判断手段が実行する処理に相当し、Ｓ３５０の処理は本発明の残データ展開用メモリ領域確保手段が実行する処理に相当する。また、図５の印刷処理におけるＳ４２０の処理は、本発明の展開領域開放手段が実行する処理に相当する。
【００９０】
［第２実施形態］
上記第１実施形態では、受信データ処理（図３参照）におけるＳ１５０〜Ｓ１６０の処理でイメージデータ展開用メモリ領域７５を確保できなかった場合、とりあえず印刷データ解析用メモリ領域７３にて印刷データの解析を進めておき、その後に、ＲＡＭ２０に所定の空き容量（上記例では１２８Ｋバイト）が生じる毎に、その空き容量をイメージデータ展開用のメモリ領域として確保し、イメージデータの展開を行うようにした。
【００９１】
これに対し、本実施形態では、イメージデータ展開用メモリ領域７５を確保できない場合はＲＡＭ２０の代わりにＣＦ２９へイメージデータを保存（展開）するようにしている。そして、印刷処理の際、ＲＡＭ２０に空き容量が生じるまで待機し、空き容量が生じ次第、その空き容量をイメージデータの再展開用メモリ領域として確保して、ＣＦ２９に展開されたイメージデータ（ページデータ）を格納（再展開）し、印刷を実行するようにしている。
【００９２】
つまり、本実施形態の複合機が上記第１実施形態の複合機１０と主に異なる点は、図３の受信データ処理におけるＳ２００のイメージデータ展開処理の際にイメージデータ展開用メモリ領域７５が確保されていなかった場合にＣＦ２９へ展開するようにしたことと、印刷処理において、ＣＦ２９にイメージデータが展開されていればまずそれを優先的にＲＡＭ２０へ格納（再展開）して印刷するようにしたことである。
【００９３】
そのため、本実施形態の複合機は、ハード構成自体は第１実施形態の複合機１０と同じであり、受信データ処理も、イメージデータに展開する処理（図３のＳ２００）を除き、第１実施形態の受信データ処理（図３）と同じである。そこで、以下、上記第１実施形態と異なる点に着目して説明する。
【００９４】
まず、図６に、本実施形態のイメージデータ展開処理を示す。このイメージデータ展開処理は、本実施形態においても、受信データ処理（図３）におけるＳ２００のイメージデータ展開処理として実行されるものであり、まず、イメージデータ展開用のメモリ領域が確保されているか否か、つまり受信データ処理におけるＳ１６０でイメージデータ展開用メモリ領域７５が確保されたか否かが判断される（Ｓ４５０）。そして、上述のＳ１６０の処理においてイメージデータ展開用メモリ領域７５が確保されている場合は（Ｓ４５０：ＹＥＳ）、その確保されているメモリ領域へイメージデータの書き込み（展開）が行われる（Ｓ４６０）。このイメージデータの書き込み（展開）も、印刷データがＰＤＬデータである場合には、Ｓ１９０（図３参照）で生成された中間データに従って行われる。
【００９５】
そして、Ｓ４６０における展開処理後、展開すべき１ページ分のイメージデータが全て展開されたか否かが判断され（Ｓ４７０）、全て展開されていれば、とりあえず当該ページに対する受信データ処理は終了することとなり、印刷データの受信が終了するまでは引き続き図３の受信データ処理が行われることとなる。一方、例えばイメージデータ展開用のメモリが少ない等によって、全て展開されていない場合は（Ｓ４７０：ＮＯ）、ＲＡＭ２０に所定の容量（例えば１２８Ｋバイト）の空きが生じるまで待つ（Ｓ４８０）。そして、他の機能の動作が終了すること等によってメモリが解放され、１２８Ｋバイトの空き容量が生じた場合は（Ｓ４８０：ＹＥＳ）、その１２８Ｋバイト分の空き容量をイメージデータ展開用のメモリ領域として確保する（Ｓ４９０）。
【００９６】
このようにＳ４９０でメモリ領域が確保された後は、そのメモリ領域へイメージデータが展開され（Ｓ４６０）、その後再び、展開すべき１ページ分のイメージデータが全て展開されたか否かが判断される（Ｓ４７０）。そして、１ページ分のイメージデータが全て展開されるまで、Ｓ４８０→Ｓ４９０→Ｓ４６０→Ｓ４７０→Ｓ４８０、のように処理が繰り返されることになる。
【００９７】
一方、受信データ処理（図３）におけるＳ１６０でイメージデータ展開用メモリ領域７５が確保されなかった場合は、このイメージデータ展開処理のＳ４５０の判断処理において否定判定され、ＣＦ２９が使用可能か否かが判断される（Ｓ５００）。
【００９８】
このとき、例えばメディアドライブ２８に何も挿入されていなかったり、ＣＦ２９以外のメディアカードが挿入されていたり、或いはＣＦ２９の空き容量が不足していことなどにより、ＣＦ２９が使用可能な状態でない場合は（Ｓ５００：ＮＯ）、上述したＳ４８０以降の処理に移り、ＲＡＭ２０において空き容量が生じるのを待つことになる。
【００９９】
一方、ＣＦ２９が挿入され使用可能な状態であれば（Ｓ５００：ＹＥＳ）、ＣＦ２９内にイメージデータを展開するためのメモリ領域が確保される（Ｓ５１０）。そして、ＣＦ２９へのイメージデータの展開形式が圧縮モードに設定されていれば（Ｓ５２０：ＹＥＳ）、イメージデータが圧縮されてＣＦ２９に書き込まれる（Ｓ５３０，Ｓ５４０）。ＣＦ２９へのイメージデータの展開形式が非圧縮モードに設定されていれば（Ｓ５２０：ＮＯ）、イメージデータがそのままＣＦ２９に書き込まれる（Ｓ５４０）。
【０１００】
なお、Ｓ５１０の処理で確保されるメモリ領域は本発明の一時保存領域に相当するものである。また、ＣＦ２９へのイメージデータの展開形式は、例えばユーザが操作パネル４２を操作することで圧縮モード或いは非圧縮モードのいずれかを選択できるようにしてもよいし、また例えば、ＣＦ２９の空き容量に応じて適切な展開形式が自動的に選択・設定されるようにしてもよい。
【０１０１】
そして、ＣＦ２９へイメージデータを書き込んだ後は、１ページ分のイメージデータが全てＣＦに書き込まれたか否かが判断され（Ｓ５５０）、１ページ分全て書き込まれるまではＳ５１０以下の処理が繰り返されることとなる。つまり、ＣＦ２９には、１ページ単位のページデータとしてイメージデータが展開されるのである。
【０１０２】
このようにしてイメージデータがＣＦ２９に展開された場合、その展開されたイメージデータは、印刷処理の際に再びＲＡＭ２０に戻され、印刷される。図７に、本実施形態の印刷処理を示す。この印刷処理が開始されると、まず、ＣＦ２９にページデータが展開されているか否かが判断され（Ｓ６１０）、展開されている場合は（Ｓ６１０：ＹＥＳ）、そのイメージデータを再展開するための再展開用空き容量がＲＡＭ２０内に生じるのを待つ（Ｓ６２０）。なお、この再展開用空き容量が本発明の第４の容量に相当するものである。
【０１０３】
そして、再展開用空き容量が生じたら（Ｓ６２０：ＹＥＳ）、その容量分のメモリ領域を再展開用メモリ領域として確保し（Ｓ６３０）、その確保した再展開用メモリ領域へＣＦ２９のページデータを再展開する（Ｓ６４０）。このようにしてＣＦ２９内のページデータがＲＡＭ２０に再展開されたら、そのページデータが印刷出力される（Ｓ６５０）。そして印刷出力後は、その印刷済みのページデータが展開されているメモリ領域、即ち再展開用メモリ領域を開放する（Ｓ６６０）。なお、印刷処理開始時に、ＣＦ２９にページデータが保存されていない場合は、Ｓ６１０からＳ６５０へ進むこととなる。
【０１０４】
ＣＦ２９からＲＡＭ２０へのページデータの再展開は、ＲＡＭ２０に１ページ分のメモリ領域を確保して一度で再展開を済ませるようにしてもよいし、ある一定の容量（例えばバンド単位）ごとに順次ＲＡＭ２０へ再展開するようにしてもよい。
【０１０５】
従って、本実施形態によれば、受信データ処理（図３）のＳ１５０〜Ｓ１６０の処理でイメージデータ展開用メモリ領域７５を確保できなかった場合に、そのままＲＡＭ２０に空きが生じるのを待つのではなく、ＲＡＭ２０とは別に設けられたＣＦ２９へイメージデータを保存（展開）するようにしたため、ＲＡＭ２０自体にイメージデータ展開用メモリ領域７５が確保できなくてもイメージデータの展開処理を進めることができる。そのため、印刷処理速度をより向上させることが可能となる。
【０１０６】
また、イメージデータを圧縮してＣＦ２９に保存することもできるため、ＣＦ２９に十分な空き容量がなくても、保存すべきイメージデータを確実に保存させることができるようになる。言い換えれば、圧縮した状態で保存させることで、ＣＦ２９の空き容量が圧迫されるのを抑止できる。
【０１０７】
尚、図６のイメージデータ展開処理において、Ｓ５００の処理は本発明の記憶媒体判断手段が実行する処理に相当し、Ｓ５１０の処理は本発明の一時保存領域確保手段が実行する処理に相当する。また、図７の印刷処理において、Ｓ６２０の処理は本発明の第４容量発生判断手段が実行する処理に相当し、Ｓ６３０の処理は本発明の再展開用メモリ領域確保手段が実行する処理に相当し、Ｓ６４０の処理は本発明の再展開手段が実行する処理に相当する。
【０１０８】
［変形例］
尚、本発明の実施の形態は、上記実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
【０１０９】
例えば、上記第２実施形態では、ＣＦ２９にはイメージデータを保存するようにしたが、これに限らず、例えば中間データの状態でＣＦ２９に保存するようにしてもよい。このようにすれば、ＣＦ２９の容量が少なくても済む。但し、ＣＦ２９に保存された中間データについては、イメージデータへの展開処理を行った上でＲＡＭ２０に展開する必要があり、その分、印刷処理速度の低下を招くおそれがある。そのため、印刷処理速度の観点からいえば、上記第２実施形態のように、イメージデータに展開した状態でＣＦ２９に保存するのが好ましい。
【０１１０】
また、上記各実施形態では、プリンタ機能（印刷機能）を含む複数の機能を備えた複合機に本発明が適用された例を挙げたが、本発明の適用が複合機に限定されないのはいうまでもなく、プリンタ機能のみを備えた印刷装置単体に対してももちろん適用することが可能である。
【０１１１】
更に、上記第２実施形態では、ＲＡＭ２０以外のイメージデータ展開用記憶媒体としてＣＦ２９を用いた例を示したが、ＣＦ２９に限らないことはいうまでもなく、例えばメディアドライブ２８に挿入可能な他のメディアカードに格納するようにしてもよいし、或いは、当該複合機１０に内蔵された図示しないバッテリからの電源供給を受けて動作するバックアップＲＡＭ（図示略）などに格納するようにしてもよい。
【図面の簡単な説明】
【０１１２】
【図１】実施形態の印刷システムの概略構成を示すブロック図である。
【図２】メモリ管理領域の具体例を示す説明図である。
【図３】第１実施形態の受信データ処理を示すフローチャートである。
【図４】図３の受信データ処理におけるＳ２００のイメージデータ展開処理の詳細を示すフローチャートである。
【図５】第１実施形態の印刷処理を示すフローチャートである。
【図６】第２実施形態のイメージデータ展開処理を示すフローチャートである。
【図７】第２実施形態の印刷処理を示すフローチャートである。
【符号の説明】
【０１１３】
１・・・印刷システム、２・・・通信ケーブル、１０・・・複合機、１２・・・ＣＰＵ、１４・・・マスクＲＯＭ、１６・・・フラッシュＲＯＭ、１８・・・ＥＥＰＲＯＭ、２０・・・ＲＡＭ、２２・・・プリンタ部、２４・・・スキャナ部、２６・・・ユーザインターフェイス、２８・・・メディアドライブ、２９・・・メモリカード、３０・・・ホストインターフェイス、３２・・・モデム、３４・・・回線制御部、３６・・・ハンドセット、３８・・・バス、４２・・・操作パネル、４４・・・ＬＣＤパネル、４６・・・スピーカ部、５０・・・ホスト、６０・・・電話回線網、７１・・・受信バッファ、７３・・・印刷データ解析用メモリ領域、７３ａ・・・印刷データ処理用メモリ領域、７３ｂ・・・解析処理及び中間データ保持用メモリ領域、７３ｂ・・・中間データ保持用メモリ領域、７５・・・イメージデータ展開用メモリ領域、７７・・・コピー処理用メモリ領域、７９・・・コピーデータ展開用メモリエリア
【図１】
2006116846.tif 000003
【図２】
2006116846.tif 000004
【図３】
2006116846.tif 000005
【図４】
2006116846.tif 000006
【図５】
2006116846.tif 000007
【図６】
2006116846.tif 000008
【図７】
2006116846.tif 000009