(57)【要約】      （修正有）【課題】送信対象のファイルを送信データに変換して送信する場合に、変換処理に要する時間に応じた制御を行うことにより、効率良く且つ確実に送信を行うことができる仕組みを提供する。【解決手段】ファクシミリ装置は、ユーザからの送信指示を受ける前に、ハードディスクに格納されている文書ファイルをレンダリングデータに変換する処理を実行するとともに、変換処理に要した時間を計測する（Ｓ５０３）。そして、計測の結果に基づいて、変換処理に要する時間が所定値を超える文書ファイルを送信する場合は、変換処理を実行した後で送信先との通信を開始して送信データを送信するよう制御し（Ｓ５０５）、変換処理に要する時間が所定値を超えない文書ファイルを送信する場合は、送信先との通信を開始した後に変換処理を実行し送信データを送信するよう制御する（Ｓ５０６）。【選択図】図５
2010187281.tif 000002
【特許請求の範囲】
【請求項１】
入力されたファイルを送信データに変換する変換手段と、
前記変換手段による変換処理で得られた送信データを送信する送信手段と、
前記変換手段による変換処理に要した時間を計測する計測手段と、
前記計測手段による計測の結果に基づいて、前記変換手段による変換処理に要する時間が所定値を超えるファイルを送信する場合は、前記変換手段が変換処理を実行した後に前記送信手段が送信先との通信を開始して送信データを送信するよう制御し、前記変換手段による変換処理に要する時間が所定値を超えないファイルを送信する場合は、前記送信手段が送信先との通信を開始した後に前記変換手段による変換処理を実行し、当該変換処理で得られた送信データを送信するよう制御する制御手段と、
を備えることを特徴とする通信装置。
【請求項２】
前記入力されたファイルを記憶する記憶手段を更に備え、
前記計測手段は、ユーザからの送信指示を受ける前に、前記記憶手段に記憶されているファイルを前記送信データに変換する処理を前記変換手段に実行させ、当該処理に要した時間を計測することを特徴とする請求項１記載の通信装置。
【請求項３】
前記計測手段による計測の結果、前記変換手段による変換処理に要した時間が所定値を超えた場合、当該変換処理で得られた送信データを保持する保持手段を更に備え、
前記計測手段による計測の結果、前記変換手段による変換処理に要した時間が所定値を超えなかった場合は、当該変換処理で得られた送信データを破棄することを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記保持手段は、前記送信手段が第１の送信処理を実行した後、当該第１の送信処理のための前記変換手段による変換処理に要した時間が所定値を超えた場合に、当該第１の送信処理のための変換処理で得られた送信データを、該第１の送信処理の後に実行される第２の送信処理で使用するために保持することを特徴とする請求項３に記載の通信装置。
【請求項５】
ユーザからファイルの送信が指示されたときに、当該送信対象のファイルを変換することにより得られた送信データが前記保持手段に保持されているか否かを判定する判定手段を更に備え、
前記判定手段による判定の結果に基づいて、前記送信手段は、前記送信対象のファイルを変換することにより得られた送信データが前記保持手段に保持されている場合は、当該保持されている送信データを送信し、前記送信対象のファイルを変換することにより得られた送信データが前記保持手段に保持されていない場合は、前記送信対象のファイルを送信データに変換する処理を前記変換手段に実行させ、当該処理により得られた送信データを送信することを特徴とする請求項３または４に記載の通信装置。
【請求項６】
前記保持手段は、前記変換手段による変換処理に要した時間が所定値を超えるページが少なくとも１つ存在した場合に、当該ページを含むファイルを変換することにより得られた送信データを保持することを特徴とする請求項３から５のいずれか１項に記載の通信装置。
【請求項７】
前記制御手段は、前記計測手段による計測の結果に基づいて、前記変換手段による変換処理に要する時間が所定値を超えるか否かを示す情報を、ファイル毎に区別して管理する管理手段を含み、当該管理手段により管理されている情報に基づいて前記制御を行うことを特徴とする請求項１または２に記載の通信装置。
【請求項８】
前記制御手段は、前記管理手段により管理されている情報に基づいて、前記変換手段による変換処理に要する時間が所定値を超えるファイルの送信指示をユーザから受けた場合は、当該ファイルの送信指示に応じて前記変換手段による変換処理を実行し、当該変換処理が完了した後で前記送信手段が送信先との通信を開始し、当該変換処理で得られた送信データを送信するよう制御し、前記変換手段による変換処理に要する時間が所定値を超えないファイルの送信指示をユーザから受けた場合は、当該ファイルの送信指示に応じて前記送信手段が送信先との通信を開始し、当該通信を開始した後に前記変換手段による変換処理を実行し、当該変換処理で得られた送信データを送信するよう制御することを特徴とする請求項７に記載の通信装置。
【請求項９】
入力されたファイルを送信データに変換する変換工程と、
前記変換工程における変換処理で得られた送信データを送信する送信工程と、
前記変換工程における変換処理に要した時間を計測する計測工程と、
前記計測工程における計測の結果に基づいて、前記変換工程における変換処理に要する時間が所定値を超えるファイルを送信する場合は、前記変換工程で変換処理を実行した後で前記送信工程で送信先との通信を開始して送信データを送信するよう制御し、前記変換工程における変換処理に要する時間が所定値を超えないファイルを送信する場合は、前記送信工程で送信先との通信を開始した後に前記変換工程で変換処理を実行し、当該変換処理で得られた送信データを送信するよう制御する制御工程と、
を備えることを特徴とする通信装置の制御方法。
【請求項１０】
請求項９に記載の通信装置の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力されたファイルを送信データに変換して送信する通信装置及びその制御方法、プログラムに関するものである。
【背景技術】
【０００２】
従来、ファイルとして入力された文書情報や画像情報等を、送信データに変換してから送信する機能を備えた通信装置が知られている。
具体的には、例えば特許文献１に示されるように、受信した電子メールの添付ファイルをファクシミリ送信する場合、当該ファイルに対してレンダリング処理を実行することによりファクシミリ形式の画像データに変換する（以下、レンダリング処理で得られる送信データをレンダリングデータと呼ぶ。）。
【０００３】
また、通信装置に備えられたハードディスク等の記憶装置に記憶されているファイル（例えば、ＰＤＦ（Portable Document Format）形式のファイルやテキストデータなど）をファクシミリ送信する際にも、上述したレンダリング処理を行う必要がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２６４６６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した方法で、ファイルに対してレンダリング処理を実行することにより作成した送信データを送信する場合に、以下の問題が考えられる。
即ち、たとえば、ファイルを変換することにより得られたレンダリングデータをファクシミリ送信する場合に、送信処理と変換処理とを並行して実行すると、ページの内容によっては変換処理に時間がかかってしまい正常に送信できない場合がある。
【０００６】
つまり、ファクシミリ送信の場合は、データを６±１秒以上の間隔をあけることなく送信することが規格（ＩＴＵ−Ｔ．３０）で定められており、変換処理に時間がかかってしまうとこの要件を満たすことができず、送信エラーが発生してしまう場合がある。
【０００７】
また、変換処理が全て完了した後で送信処理を開始するようにすることも考えられるが、この場合、変換処理にかかる時間と送信処理にかかる時間とがそれぞれ必要となるため、全体の処理を終えるまでに長時間かかってしまうという問題がある。加えて、送信先との接続を試みた結果、送信先の装置が受信不可能な状態（例えば、故障中）であることが判明したときには、実行した変換処理が無駄となってしまうという問題もある。
【０００８】
さらに、送信指示を受ける前に全てのファイルに対してレンダリング処理を実行し、レンダリングデータを記憶しておくようにした場合、大きなサイズのデータを記憶するために多くのメモリ資源を使用しなければならないという問題がある。
【０００９】
本発明は、上記の問題点に鑑みなされたものであり、送信対象のファイルを送信データに変換して送信する場合に、変換処理に要する時間に応じた制御を行うことにより、効率良く且つ確実に送信を行うことができる仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために本発明の通信装置は、入力されたファイルを送信データに変換する変換手段と、前記変換手段による変換処理で得られた送信データを送信する送信手段と、前記変換手段による変換処理に要した時間を計測する計測手段と、前記計測手段による計測の結果に基づいて、前記変換手段による変換処理に要する時間が所定値を超えるファイルを送信する場合は、前記変換手段が変換処理を実行した後に前記送信手段が送信先との通信を開始して送信データを送信するよう制御し、前記変換手段による変換処理に要する時間が所定値を超えないファイルを送信する場合は、前記送信手段が送信先との通信を開始した後に前記変換手段による変換処理を実行し、当該変換処理で得られた送信データを送信するよう制御する制御手段と、を備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、送信対象のファイルを送信データに変換して送信する場合に、変換処理に要する時間に応じた制御を行うことにより、効率良く且つ確実に送信を行うことができるようになる。
【図面の簡単な説明】
【００１２】
【図１】ファクシミリ装置の構成を説明するブロック図である。
【図２】ハードディスク１０３に格納されるデータを説明する図である。
【図３】操作部１０５に表示される画面の一例を示す図である。
【図４】ハードディスク１０３に格納される管理テーブルを説明する図である。
【図５】ファクシミリ装置のデータ処理手順の一例を示すフローチャートである。
【図６】ファクシミリ装置のデータ処理手順の一例を示すフローチャートである。
【図７】ハードディスク１０３に格納されるデータを説明する図である。
【図８】操作部１０５に表示される画面の一例を示す図である。
【図９】ハードディスク１０３に格納される管理テーブルを説明する図である。
【図１０】ファクシミリ装置のデータ処理手順の一例を示すフローチャートである。
【図１１】ファクシミリ装置のデータ処理手順の一例を示すフローチャートである。
【図１２】ハードディスク１０３に格納されるデータを説明する図である。
【図１３】ハードディスク１０３に格納される管理テーブルを説明する図である。
【図１４】ファクシミリ装置のデータ処理手順の一例を示すフローチャートである。
【図１５】ファクシミリ装置のデータ処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１３】
次に本発明を実施するための最良の形態について図面を参照して説明する。
〔第１の実施形態〕
図１は、通信装置の一例として以下に説明するファクシミリ装置１００の構成を説明するブロック図である。１０１はＣＰＵで、ＲＯＭ１０２またはハードディスク（ＨＤ）１０３に記憶されている制御プログラムをＲＡＭ１０４にロードして実行することで後述する各種の処理の実行を制御する。
【００１４】
１０５は操作部で、ユーザによる設定や指示を受け付けるためのテンキーやスタートキー等の各種キーを備える。また、操作部１０５には、装置の状態あるいはユーザが指示を入力するためのユーザインタフェースを表示する表示部が含まれる。
１０６は読取部で、原稿上の画像を読み取って画像データを生成する読取処理を実行する。１０７は印刷部で、画像データに基づいて記録媒体上に画像を印刷する印刷処理を実行する。１０９はネットワークインターフェースで、ファクシミリ装置１００をＬＡＮ（Local Area Network）に接続する。ファクシミリ装置１００は、ネットワークインターフェース（ネットワークＩ／Ｆ）１０９を介して、ＬＡＮ上のネットワーク装置との間でデータの送受信を行う。１１０はモデムで、ファクシミリ装置１００を公衆回線に接続する。ファクシミリ装置１００は、モデム１１０を介して、公衆回線上のファクシミリ装置との間でファクシミリ通信を実行しファクシミリデータの送受信を行う。
１０８は画像処理部で、読取部が生成した画像データ、印刷部１０７による印刷処理に使用される画像データ、ネットワークインターフェース１０９またはモデム１１０を介して送受信される画像データ等に対して、各種の画像処理を実行する。
【００１５】
図２は、ハードディスク１０３に格納されるデータを概念的に説明する図である。なお、本実施形態では、ハードディスク１０３に記憶されている文書ファイルのデータ形式と、その文書ファイルをファクシミリ送信する場合のデータ形式とは異なるものとする。つまり、ハードディスク１０３に記憶されている文書ファイルを送信する際には、該文書ファイルに対して画像処理部１０８がレンダリング等の処理を実行し、送信データに変換する必要がある。なお、ここではＰＤＦ形式の文書ファイルを、ＲａｓｔｅｒＪＰＥＧ形式の送信データに変換する例について説明するが、文書ファイル及び送信データのデータ形式の組み合わせは、これらに限定されるものではない。
図２において、ハードディスク１０３には、読取部１０６によって生成された画像データのファイルや、ホストコンピュータからネットワークインターフェース１０９を介して印刷データとして受信した文書ファイルなどのデータを格納することができる。
【００１６】
２０１はレンダリング時間の制限値で、図３に示す表示部３０１に表示されるユーザインタフェースを介してユーザにより設定される。ここで、レンダリング時間とは、ハードディスク１０３に格納されている文書ファイルを送信する際に、該文書ファイルに含まれる各ページに対して画像処理部１０８がレンダリング処理を実行するのに要する時間を示す。また、レンダリング時間の制限値とは、送信対象の文書ファイルに含まれる１つのページを送信データに変換する処理にかかる時間として許容される最大値を示す。この制限値２０１は、ハードディスク１０３上で保持管理される。
【００１７】
２０２〜２０５は文書ファイルで、ハードディスク１０３に格納されている。２０６〜２０９はレンダリングデータで、画像処理部１０８が文書ファイル２０２〜２０５に対してレンダリング処理を実行することにより得られる送信データである。ここで、レンダリングデータ２０６〜２０９は、ハードディスク１０３に格納された状態を示す。なお、文書ファイル２０２〜２０５とレンダリングデータ２０６〜２０９の対応関係は、図４で示す文書ファイル管理テーブル４０１で管理されている。
【００１８】
図３は、操作部１０５に備えられた表示部に表示される操作画面であって、制限値２０１を設定するための画面例を示す図である。
図３において、３０１は操作画面を表示する表示部を示す。３０２はレンダリング時間の制限値として設定された値を表示するボックスで、図３に示す例では制限値２０１として「５秒」が設定された状態を示している
３０３及び３０４はレンダリング時間の制限値を変更するための変更ボタンで、変更ボタンが表示されている領域をユーザがタッチすることによって、ボックス３０２に表示されている数値を上方あるいは下方に変更することができる。なお、操作部１０５が備えるテンキーによる数値入力を受け付けて、制限値２０１を設定することも可能である。
【００１９】
３０５は設定値を決定する決定ボタン（ＯＫボタン）で、ユーザがタッチすることによってボックス３０２に表示された値が制限値２０１として反映され、表示部３０１の画面が閉じられる。３０６は設定値をキャンセルするキャンセルボタンで、ユーザがタッチすることによって、制限値２０１の変更がなされない状態で、表示部３０１の画面が閉じられる。
【００２０】
図４は、図２に示したハードディスク１０３に保管されている文書ファイル管理テーブルの一例を示す図である。本例は、１つの文書ファイルと、その文書ファイルに対してレンダリング処理を実行することにより得られるレンダリングデータとが対応付けられて管理される例である。従って、ここで、レンダリングデータとは、文書ファイルが複数のページから構成される場合は、それらの各ページから生成される各ページのレンダリングデータを１つのレンダリングデータとして管理されているものとする。
【００２１】
図４において、４０１は文書ファイル管理テーブルで、ハードディスク１０３で保管される。文書ファイル管理テーブル４０１は、ハードディスク１０３で保管されている文書ファイルとレンダリングデータの対応関係を記憶している。
４０２は、文書ファイルのカラムであり、ハードディスク１０３で保管されている文書ファイルのファイル名を示している。４０３はレンダリングデータのカラムであり、ハードディスク１０３で保管されているレンダリングデータを示している。
カラム４０２のある行で示された文書ファイルに基づいて作成されたレンダリングデータは、カラム４０３の同じ行で示される。
【００２２】
図５は、ファクシミリ装置１００のデータ処理手順の一例を示すフローチャートである。Ｓ５０１〜Ｓ５０６の各ステップは、ＣＰＵ１０１がＲＯＭ１０２またはハードディスク１０３に記憶されているプログラムをＲＡＭ１０４にロードして実行することで実現される。
Ｓ５０１では、ハードディスク１０３に未処理の文書ファイルがあるかどうかを判断する。未処理の文書ファイルがあると判断した場合は、Ｓ５０２へ進む。一方、Ｓ５０１で、未処理の文書ファイルがないと判断した場合は、処理を終了する。
【００２３】
次に、Ｓ５０２で、未処理の文書ファイルの中から、処理対象の文書ファイルを１つ選択する。そして、Ｓ５０３で、選択された文書ファイルに含まれる各ページに対して画像処理部１０８によるレンダリング処理を実行させる。レンダリング処理で得られたレンダリングデータはハードディスク１０３に格納する。また、このときＣＰＵ１０１は、画像処理部１０８がレンダリング処理に要した時間をページ毎に計測する。
【００２４】
そして、Ｓ５０４で、変換処理に要した時間が、予め設定されているレンダリング時間の制限値２０１（所定値）を超えたページが存在するかどうかを判断する。ここで、制限値２０１を超えたページが存在すると判断した場合は、Ｓ５０５において、レンダリング処理で得られた全ページ分のレンダリングデータをハードディスク１０３に保持させたままＳ５０１に戻る。一方、制限値２０１を超えたページが存在しないと判断した場合は、Ｓ５０６へ進む。Ｓ５０６では、Ｓ５０３で作成したレンダリングデータを破棄し、Ｓ５０１に戻る。なお、ここでは作成したレンダリングデータをＲＡＭ１０４等のメモリ上から消去するものとするが、実際にはメモリ上から消去していなくとも使用不可能な状態に変更することにより、レンダリングデータを破棄する構成であっても構わない。
【００２５】
このようにして、第１の実施形態では、レンダリング処理に要する時間が制限値２０１を超えるページを含まない文書ファイルに対応するレンダリングデータは破棄される。そして、レンダリング処理に要する時間が制限値２０１を超えるページを含む文書ファイルに対応するレンダリングデータは保持される。
【００２６】
図６は、ファクシミリ装置１００のデータ処理手順の一例を示すフローチャートである。Ｓ６０１〜Ｓ６０４の各ステップは、ＣＰＵ１０１がＲＯＭ１０２またはハードディスク１０３に記憶されているプログラムをＲＡＭ１０４にロードして実行することで実現される。なお、図６に示すフローチャートは、図５に示すフローチャートの各ステップに対応する処理が実行された状態で、ユーザからの送信指示を受けた場合の動作を示す。
【００２７】
Ｓ６０１では、ユーザからファイルの送信指示を受けたかどうかを判断する。ユーザからファイルの送信指示を受けたと判断した場合はＳ６０２に進み、そうでなければ、ユーザからファイルの送信指示を受けるまで待機する。
【００２８】
Ｓ６０２では、送信対象として指定された文書ファイルに対応するレンダリングデータがハードディスク１０３に保持されているか否かを、図４に示す文書ファイル管理テーブル４０１を参照して判断する。対応するレンダリングデータが保持されている場合はＳ６０３に進み、保持されていない場合はＳ６０４に進む。なお、ここで、レンダリングデータとは、ユーザからファイルの送信が指示されたときに、当該送信対象のファイルを変換することにより得られた送信データに対応する。
Ｓ６０３では、モデム１１０を制御して送信先のファクシミリ装置との通信を開始し、ハードディスク１０３から読み出したレンダリングデータをファクシミリ送信する。
【００２９】
一方、Ｓ６０４では、モデム１１０を制御して送信先のファクシミリ装置との通信を開始するとともに、画像処理部１０８による文書ファイルに対するレンダリング処理を実行し、得られたレンダリングデータをファクシミリ送信する。なお、ここでは送信先のファクシミリ装置との通信を開始した後で、画像処理部１０８によるレンダリング処理を開始するものとするが、他の態様であっても構わない。即ち、送信対象の文書ファイルの一部に対するレンダリング処理が完了してから通信を開始し、通信開始後に残りのレンダリング処理と通信処理とを並行して実行するようにしても良い。
【００３０】
以上説明した通り、第１の実施形態では、ユーザからの送信指示を受ける前に、ハードディスク１０３に記憶されているファイルを送信データに変換する処理（レンダリング処理）を実行するとともに、処理に要した時間をページ毎に計測する。そして、レンダリング処理に要する時間が所定の制限値２０１を超えるページがない場合は作成したレンダリングデータを破棄し、レンダリング処理に要する時間が所定の制限値２０１を超えるページがある場合は作成したレンダリングデータを保持する。
【００３１】
これにより、送信先との通信を開始した後で実行する変換処理が間に合わず送信エラーが発生してしまうという問題を防止することができる。また、ユーザからの送信指示を受ける前にレンダリングデータを作成しておくことにより、ユーザからの送信指示を受けたときに迅速に送信を行うことができる。更には、ハードディスク１０３に記憶されている全ての文書ファイルのレンダリングデータを保持しておくのではなく、変換処理に時間がかかる文書ファイルのレンダリングデータを選択して保持しておくことにより、メモリ資源の浪費を防止することができる。
【００３２】
なお、ここでは、ハードディスク１０３に記憶されている全ての文書ファイルに対して事前のレンダリング処理を実行する例について説明したが、ハードディスク１０３に記憶されている文書ファイルのうちの一部についてのみ上述した処理を実行するようにしても良い。たとえば、ハードディスク１０３に記憶する際に、ユーザから送信対象の文書ファイルであることを指定された文書ファイルについてのみ上述した処理を実行するようにしても構わない。
【００３３】
〔第２の実施形態〕
第１の実施形態では、ユーザからの送信指示を受ける前にレンダリング処理を実行し、その処理に要した時間を計測することにより、レンダリング処理に時間がかかる文書ファイルを選択し、レンダリングデータを保持しておく例について説明した。
これに対して第２の実施形態では、ファクシミリ装置１００のＣＰＵ１０１の圧迫率を考慮することにより、前もってレンダリングデータを作成しておくべき文書ファイルをより一層正確に選択するようにした例を説明する。
【００３４】
また、第１の実施形態では、レンダリング処理に要する時間が所定の制限値２０１を超えるページが含まれる文書ファイルについては、その文書ファイル全体のレンダリングデータを保持しておく例について説明した。これに対して、第２の実施形態では、レンダリング処理に要する時間が所定の制限値２０１（所定値）を超えるページのレンダリングデータのみを保持し、その他のページのレンダリングデータを破棄する例について説明する。
【００３５】
図７は、ハードディスク１０３に格納されるデータを概念的に説明する図である。なお、図２に示したものと同一のものには同じ符号を付している。７０１は動作保証するＣＰＵ圧迫率で、図８に示す画面を介してユーザが任意の値を設定することができる。ここで、ＣＰＵ圧迫率とは、レンダリング処理に時間がかかる文書ファイルを選択する際に使用される情報である。
【００３６】
第１の実施形態のように、前もってレンダリング処理を実行することにより処理に要した時間を計測した結果、レンダリング処理が短時間で済む文書ファイルであると判定されたとしても、実際に送信するときに送信エラーが発生してしまう場合がある。これは、前もってレンダリング処理を実行したときと、実際に送信するときにレンダリング処理を実行したときとで、他のジョブ（受信ジョブや印刷ジョブなど）の存在によりＣＰＵ１０１にかかる負荷が異なることに起因するものである。
【００３７】
例えば、前もってレンダリング処理を実行したときには他のジョブは存在しないものとし（ＣＰＵ圧迫率０％とする）、実際に送信するときにレンダリング処理を実行したときに他のジョブを実行中でＣＰＵ圧迫率が５０％となっているものとする。この場合、レンダリング処理におよそ２倍の時間がかかってしまうため、前もってレンダリング処理を実行したときには長い時間がかからなかったにも関わらず、実際に送信するときには変換処理が送信処理に間に合わず送信エラーが発生してしまうことがある。
【００３８】
そこで、第２の実施形態では、ユーザがＣＰＵ圧迫率の値を設定し、この値を用いてレンダリング処理に時間がかかる文書ファイルを選択することにより、前もってレンダリングデータを作成しておく必要がある文書ファイルをより正確に選択することができる。
【００３９】
図７の説明に戻り、７１０は文書ファイルで、ハードディスク１０３に格納されている。７２０はレンダリングデータで、画像処理部１０８が文書ファイル７１０に対してレンダリング処理を実行することにより作成され、ハードディスク１０３に保持されたものである。
【００４０】
７１１〜７１５は文書ファイルに含まれる各ページで、１つの文書ファイル７１０を構成する。７２１〜７２５はレンダリングページで、１つの文書ファイル７１０に対応するレンダリングデータ７２０に含まれ、文書ページ７１１〜７１５から画像処理部１０８が作成したレンダリングページに対応する。
【００４１】
なお、文書ファイル７１０とレンダリングデータ７２０、および文書ページ７１１〜７１５とレンダリングページ７２１〜７２５の対応関係は、図９で示す文書ファイル管理テーブル９０１に保管される。
【００４２】
図８は、操作部１０５に備えられた表示部に表示される操作画面であって、保証ＣＰＵ圧迫率７０１を設定するための画面例を示す図である。
図８において、８０１は操作画面を表示する表示部を示す。８０２は保証ＣＰＵ圧迫率として設定された値を表示するボックスで、図８に示す例では保証ＣＰＵ圧迫率７０１として「２０％」が設定された状態を示している
８０３及び８０４は保証ＣＰＵ圧迫率を変更するための変更ボタンで、変更ボタンが表示されている領域をユーザがタッチすることによって、ボックス８０２に表示されている数値を上方あるいは下方に変更することができる。なお、操作部１０５が備えるテンキーによる数値入力を受け付けて、保証ＣＰＵ圧迫率を設定することも可能である。
【００４３】
８０５は設定値を決定する決定ボタン（ＯＫボタン）で、ユーザがタッチすることによってボックス８０２に表示された値が保証ＣＰＵ圧迫率７０１として反映され、画面８０１が閉じられる。８０６は設定値をキャンセルするキャンセルボタンで、ユーザがタッチすることによって、保証ＣＰＵ圧迫率７０１の変更がなされない状態で、画面８０１が閉じられる。
【００４４】
図９は、図２に示したハードディスク１０３に保管されている文書ファイル管理テーブルの一例を示す図である。本例は、１つの文書ファイルに含まれる各ページと、その各ページに基づいて作成されたレンダリングデータとが対応付けられて管理される例である。
図９において、９０１は文書ファイル管理テーブルで、ハードディスク１０３に保管される。文書ファイル管理テーブル９０１は、ハードディスク１０３に保管されている文書ファイルとレンダリングデータの対応関係を記憶している。
【００４５】
９０２は文書ファイルのカラムで、ハードディスク１０３に保管されている文書ファイルのファイル名を示している。９０３はレンダリングデータのカラムであり、ハードディスク１０３に保管されているレンダリングデータを示している。９０４は文書ページのカラムで、カラム９０２で示される文書ファイルに含まれるページの番号を示している。９０５はレンダリングページのカラムで、カラム９０３で示されるレンダリングデータに含まれるページの番号を記憶する。
【００４６】
カラム９０２のある行で示された文書ファイルのページから作成されたレンダリングデータは、カラム９０３の同じ行で示される。また、カラム９０２とカラム９０４のある行で示される文書ページから作成されたレンダリングページは、カラム９０３とカラム９０５の同じ行で示される。
【００４７】
図１０は、ファクシミリ装置１００データ処理手順の一例を示すフローチャートである。Ｓ１００１〜Ｓ１０１０の各ステップは、ＣＰＵ１０１がＲＯＭ１０２またはハードディスク１０３に記憶されているプログラムをＲＡＭ１０４にロードして実行することで実現される。
Ｓ１００１では、ハードディスク１０３に未処理の文書ページがあるかどうかを判断する。未処理の文書ページがあると判断した場合は、Ｓ１００２へ進む。一方、Ｓ１００１で、未処理の文書ページがないと判断した場合は、本処理を終了する。
【００４８】
次に、Ｓ１００２で、未処理の文書ページの中から、処理対象の文書ページを１つ選択する。そして、Ｓ１００３で、ＣＰＵ１０１の圧迫率をコントロールすることが可能であるか否かを判断する。この判断は、たとえば他のジョブが存在するか否かに応じて行うものとする。つまり、他のジョブを実行中である場合は、ＣＰＵ１０１を圧迫することにより他のジョブの処理に影響を及ぼしてしまうため、ＣＰＵ１０１の圧迫率をコントロールすることが可能でないと判定する。なお、ファクシミリ装置１００にＣＰＵ１０１の圧迫率をコントロールするための構成が備えられているかどうかに応じて判定するようにしても構わない。ＣＰＵ１０１の圧迫率をコントロールすることが可能であると判断した場合はＳ１００４に進み、そうでなければＳ１００６に進む。
【００４９】
Ｓ１００４では、保証ＣＰＵ圧迫率７０１として設定された値に応じて、ＣＰＵ１０１を圧迫する。具体的には、ＣＰＵ１０１に対して指定された圧迫率に相当するアクセス、例えば所定ビット数のデータをメモリに書き込む等の命令を発生させることで、ＣＰＵ１０１を圧迫するものとする。これ以外の圧迫方法としては、ＣＰＵ１０１の処理能力に応じた数値計算等を実行させることで、ＣＰＵ１０１を圧迫してもよい。これらの処理により、実際には他のジョブが存在していないにも関わらずＣＰＵ１０１が使用されている状態、つまりＣＰＵ１０１に負荷がかかっている状態を作り出すことができる。
【００５０】
Ｓ１００５では、選択された文書ページに対して画像処理部１０８によるレンダリング処理を実行させる。レンダリング処理で得られたレンダリングデータはハードディスク１０３に格納する。また、このときＣＰＵ１０１は、画像処理部１０８がレンダリング処理に要した時間を計測する。
【００５１】
一方、Ｓ１００６では、ＣＰＵ１０１を圧迫する処理を行っていない状態で、選択された文書ページに対して画像処理部１０８によるレンダリング処理を実行させる。レンダリング処理で得られたレンダリングデータはハードディスク１０３に格納する。また、このときＣＰＵ１０１は、画像処理部１０８がレンダリング処理に要した時間を計測する。
【００５２】
Ｓ１００７では、Ｓ１００６で計測した時間の補正を行う。より具体的には、保証ＣＰＵ圧迫率として「２０％」という値が設定されている場合は、圧迫していない状態のＣＰＵ１０１と圧迫した状態のＣＰＵ１０１との能力比が１００：８０になるので、この場合は計測した時間を１．２５倍する補正を行う。更に、Ｓ１００６でレンダリング処理を実行したときに並行して他のジョブを処理していることによりＣＰＵが圧迫されている場合は、その圧迫率を考慮した補正を行うようにしても良い。これらの補正により、Ｓ１００４及びＳ１００５のようにＣＰＵ１０１を圧迫する処理を行わなくても、ＣＰＵ１０１を圧迫した状態でレンダリング処理を実行して計測した時間と同等の時間を得ることができる。
【００５３】
Ｓ１００８では、変換処理に要した時間が、予め設定されているレンダリング時間の制限値２０１（所定値）を超えたかどうかを判断する。ここで、制限値２０１を超えたと判断した場合は、Ｓ１００９において、レンダリング処理で得られたレンダリングデータをハードディスク１０３に保持させたままＳ１００１に戻る。一方、制限値２０１を超えなかったと判断した場合は、Ｓ１０１０へ進む。Ｓ１０１０では、Ｓ１００５またはＳ１００６で作成したレンダリングデータを破棄し、Ｓ１００１に戻る。
【００５４】
このようにして、第２の実施形態では、レンダリング処理に要する時間が制限値２０１を超えなかった文書ページに対応するレンダリングデータは破棄される。そして、レンダリング処理に要する時間が制限値２０１を超えた文書ページに対応するレンダリングデータは保持される。
【００５５】
なお、図１０に示すフローチャートの各ステップに対応する処理が実行された状態で、ユーザからの送信指示を受けた場合は、図６で説明したフローチャートに従って各処理が実行されるものとする。
【００５６】
以上説明した通り、第２の実施形態では、ファイルに含まれるページを送信データに変換する処理（レンダリング処理）を前もって実行し処理に要した時間を計測するときに、ＣＰＵを圧迫する処理または計測した時間を補正する処理を行う。
これにより、前もってレンダリング処理を実行する場合のＣＰＵの負荷と、実際に送信するときにレンダリング処理を実行する場合のＣＰＵの負荷とが異なったとしても、変換処理が間に合わずに送信エラーが発生してしまうことを防止することができる。
【００５７】
また、変換処理に時間がかかるページのレンダリングデータを保持し、同一ファイルに含まれる他のページのレンダリングデータは破棄するため、第１の実施形態と比較して、使用するメモリ資源が少なくて済む。
【００５８】
〔第３の実施形態〕
第１の実施形態では、ユーザからの送信指示を受ける前にレンダリング処理を実行し、その処理に要した時間を計測することにより、レンダリング処理に時間がかかる文書ファイルを選択し、レンダリングデータを保持しておく例について説明した。
しかしながら、この場合、そもそも送信対象として選択されることがない文書ファイルについてまで事前のレンダリング処理を実行することになり、処理が無駄になってしまうことがある。
【００５９】
そこで、第３の実施形態では、ユーザからの送信指示を受けてレンダリング処理を実行し、得られたレンダリングデータを指示された宛先にファクシミリ送信する（第１の送信処理）とともに、送信したレンダリングデータを送信後も保持しておく。これにより、次回同じ文書ファイルの送信が指示された場合に、保持しておいたレンダリングデータを送信する（第２の送信処理）ことができるようにする。
【００６０】
図１１は、ファクシミリ装置１００のデータ処理手順の一例を示すフローチャートである。Ｓ１１０１〜Ｓ１１０７の各ステップは、ＣＰＵ１０１がＲＯＭ１０２またはハードディスク１０３に記憶されているプログラムをＲＡＭ１０４にロードして実行することで実現される。
Ｓ１１０１では、ユーザからファイルの送信指示を受けたかどうかを判断する。ユーザからファイルの送信指示を受けたと判断した場合はＳ１１０２に進み、そうでなければ、ユーザからファイルの送信指示を受けるまで待機する。
【００６１】
Ｓ１１０２では、送信対象として指定された文書ファイルに対応するレンダリングデータがハードディスク１０３に保持されているか否かを判断する。対応するレンダリングデータが保持されている場合はＳ１１０３に進み、保持されていない場合はＳ１１０４に進む。Ｓ１１０３では、モデム１１０を制御して送信先のファクシミリ装置との通信を開始し、ハードディスク１０３から読み出したレンダリングデータをファクシミリ送信する。なお、ここで、レンダリングデータとは、ユーザからファイルの送信が指示されたときに、当該送信対象のファイルを変換することにより得られた送信データに対応する。
【００６２】
一方、Ｓ１１０４では、モデム１１０を制御して送信先のファクシミリ装置との通信を開始するとともに、画像処理部１０８による文書ファイルに対するレンダリング処理を実行し、得られたレンダリングデータをファクシミリ送信する。なお、ここでは送信先のファクシミリ装置との通信を開始した後で、画像処理部１０８によるレンダリング処理を開始するものとするが、他の態様であっても構わない。即ち、送信対象の文書ファイルの一部に対するレンダリング処理が完了してから通信を開始し、通信開始後に残りのレンダリング処理と通信処理とを並行して実行するようにしても良い。Ｓ１１０４で文書ファイルに対するレンダリング処理を実行する際には、レンダリング処理に要した時間をページ毎に計測する。
【００６３】
続くＳ１１０５では、変換処理に要した時間が、予め設定されているレンダリング時間の制限値２０１（所定値）を超えたページが存在するかどうかを判断する。ここで、制限値２０１を超えたページが存在すると判断した場合は、Ｓ１１０６において、レンダリング処理で得られたレンダリングデータをハードディスク１０３に保持させたまま処理を終了する。一方、制限値２０１を超えたページが存在しないと判断した場合は、Ｓ１１０７へ進む。Ｓ１１０７では、Ｓ１１０４で作成したレンダリングデータを破棄し、処理を終了する。
【００６４】
なお、上述した例では、実際にレンダリング処理に要した時間を計測し、この計測結果に基づいてレンダリング処理に時間がかかる文書ファイルを選択しているが、他の態様であっても構わない。例えば、Ｓ１１０４で送信を行う際に、変換処理が間に合わず送信エラーで終了してしまった場合に、送信しようとした文書ファイルがレンダリング処理に時間がかかる文書ファイルであると判定するようにしても良い。
【００６５】
このようにして、第１の送信処理を実行するときにレンダリング処理を実行し、このレンダリング処理で得られたレンダリングデータを保持するので、不必要なレンダリング処理を実行することなく第２の送信処理に必要なレンダリングデータを得ることができる。
【００６６】
〔第４の実施形態〕
第１の実施形態では、ユーザからの送信指示を受ける前にレンダリング処理を実行し、その処理に要した時間を計測することにより、レンダリング処理に時間がかかる文書ファイルを選択し、レンダリングデータを保持しておく例について説明した。
【００６７】
しかしながら、レンダリング処理に時間がかかる文書ファイルを選択しているとはいえ、やはりレンダリングデータを保持しておくことにより相応のメモリ資源を使用する必要がある。そこで、第３の実施形態では、事前にレンダリング処理を実行して処理に要した時間を計測するとともに、レンダリング処理に時間がかかったページを含む文書ファイルについては、その旨を識別可能とするための情報（フラグ）を付加する例について説明する。
【００６８】
図１２は、ハードディスク１０３に格納されるデータを概念的に説明する図である。なお、図２に示したものと同一のものには同じ符号を付している。１２０１〜１２０４は文書ファイルで、ハードディスク１０３に格納されている。１２０５〜１２０８は、それぞれ文書ファイル１２０１〜１２０４に対応する前処理フラグであり、文書ファイル１２０１〜１２０４を送信する際に、通信開始前にレンダリングを行っておく必要があるかどうかを識別するための情報である。
【００６９】
図１３は、図１２に示した文書ファイル１２０１〜１２０４と前処理フラグ１２０５〜１２０８の対応関係を管理する文書ファイル管理テーブル１３０１の一例を示す図である。なお、本例では、文書ファイル管理テーブル１３０１がハードディスク１０３に保管されている例である。
図１３において、１３０１は文書ファイル管理テーブルであり、ハードディスク１０３に保管されている文書ファイルと前処理フラグの対応関係を記憶している。なお、本例は、前処理フラグがファイル毎に区別して管理している例である。
【００７０】
１３０２は文書ファイルのカラムであり、ハードディスク１０３に保管されている文書ファイルのファイル名を示す。１３０３は前処理フラグのカラムであり、ハードディスク１０３に保管されている前処理フラグを示す。ここで、カラム１３０２のある行で示された文書ファイルが、通信開始前にレンダリング処理を完了しておく必要があるかどうかを示す前処理フラグは、カラム１３０３の同じ行で示される。
【００７１】
図１４は、ファクシミリ装置１００のデータ処理手順の一例を示すフローチャートである。Ｓ１４０１〜Ｓ１４０２の各ステップは、ＣＰＵ１０１がＲＯＭ１０２またはハードディスク１０３に記憶されているプログラムをＲＡＭ１０４にロードして実行することで実現される。なお、図１４に示すフローチャートは、図５に示すフローチャートのＳ５０４〜Ｓ５０６に代えて実行されるものである。
Ｓ１４０１で、変換処理に要した時間が、予め設定されているレンダリング時間の制限値２０１（所定値）を超えたページが存在するかどうかを判断する。ここで、制限値２０１を超えたページが存在すると判断した場合は、Ｓ１４０２において、レンダリング処理対象の文書ファイルに対して上述した前処理フラグを付加するように文書ファイル管理テーブル１３０１を更新する。一方、制限値２０１を超えたページが存在しないと判断した場合は、Ｓ１４０２の処理を行わずにＳ５０１へ戻る。
【００７２】
図１５は、ファクシミリ装置１００のデータ処理手順の一例を示すフローチャートである。Ｓ１５０１〜Ｓ１５０５の各ステップは、ＣＰＵ１０１がＲＯＭ１０２またはハードディスク１０３に記憶されているプログラムをＲＡＭ１０４にロードして実行することで実現される。なお、図１５に示すフローチャートは、図１４に示すフローチャートの各ステップに対応する処理が実行された状態で、ユーザからの送信指示を受けた場合の動作を示すもので、図６に示すフローチャートに代えて実行されるものである。
【００７３】
Ｓ１５０１では、ユーザからファイルの送信指示を受けたかどうかを判断する。ユーザからファイルの送信指示を受けたと判断した場合はＳ１５０２に進み、そうでなければ、ユーザからファイルの送信指示を受けるまで待機する。
Ｓ１５０２では、送信対象として指定された文書ファイルに対応する前処理フラグがハードディスク１０３に保持されているか否かを、図１３に示す文書ファイル管理テーブル１３０１を参照して判断する。前処理フラグが保持されている場合はＳ１５０３に進み、保持されていない場合はＳ１５０５に進む。
【００７４】
Ｓ１５０３では、送信対象の文書ファイルに対して、画像処理部１０８によるレンダリング処理を実行し、レンダリングデータを作成する。そして、レンダリング処理が完了した後、続くＳ１５０４において、モデム１１０を制御して送信先のファクシミリ装置との通信を開始し、作成したレンダリングデータを送信する。
【００７５】
一方、Ｓ１５０５では、モデム１１０を制御して送信先のファクシミリ装置との通信を開始するとともに、画像処理部１０８による文書ファイルに対するレンダリング処理を実行し、得られたレンダリングデータをファクシミリ送信する。なお、ここでは送信先のファクシミリ装置との通信を開始した後で、画像処理部１０８によるレンダリング処理を開始するものとするが、他の態様であっても構わない。即ち、送信対象の文書ファイルの一部に対するレンダリング処理が完了してから通信を開始し、通信開始後に残りのレンダリング処理と通信処理とを並行して実行するようにしても良い。
【００７６】
以上説明した通り、第４の実施形態では、ユーザからの送信指示を受ける前に、ハードディスク１０３に記憶されているファイルを送信データに変換する処理（レンダリング処理）を実行するとともに、処理に要した時間をページ毎に計測する。そして、レンダリング処理に要する時間が所定の制限値２０１を超えるページがある場合は前処理フラグを保持しておく。
【００７７】
ユーザからの送信指示を受けたときは、この前処理フラグが保持されているかどうかを判定し、前処理フラグが保持されている場合は先に文書ファイルのレンダリング処理を完了させてから通信を開始する。一方、前処理フラグが保持されていない場合は、文書ファイルのレンダリング処理とレンダリングデータの送信処理とを並行して実行する。
【００７８】
これにより、レンダリング処理に長い時間を要さない文書ファイルを送信する場合は変換処理と送信処理を並行して行うので全体の処理を短時間が済ますことができる。また、レンダリング処理に長い時間を要さない文書ファイルを送信する場合は、先にレンダリングデータを作成してから送信処理を行うので、送信処理の途中で変換処理が間に合わなくなり送信エラーが発生してしまうという問題を回避することができる。
また、事前のレンダリング処理で得られたレンダリングデータそのものを保持しておくのではなく、前処理フラグを保持しておくようにしているため、メモリ資源の使用量をより少なくすることができる。
【００７９】
なお、上述した第１乃至第４の実施形態は、それぞれ個別に実現可能であるし、また適宜組み合わせて実現することも可能である。更には、第１乃至第４の実施形態で説明した各処理を行うモードを複数備え、管理者によって各モードを切り替えて設定するようにしても良い。
【００８０】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【００８１】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００８２】
１００  ファクシミリ装置
１０１  ＣＰＵ
【図１】
2010187281.tif 000003
【図２】
2010187281.tif 000004
【図３】
2010187281.tif 000005
【図４】
2010187281.tif 000006
【図５】
2010187281.tif 000007
【図６】
2010187281.tif 000008
【図７】
2010187281.tif 000009
【図８】
2010187281.tif 000010
【図９】
2010187281.tif 000011
【図１０】
2010187281.tif 000012
【図１１】
2010187281.tif 000013
【図１２】
2010187281.tif 000014
【図１３】
2010187281.tif 000015
【図１４】
2010187281.tif 000016
【図１５】
2010187281.tif 000017