(57)【要約】【課題】画像処理を高速かつ省メモリで行うためのイメージデータを作成する画像形成装置及び画像形成方法を提供すること。【解決手段】スキャナ部によりスキャンしたデータからベクタデータを生成する。このとき、操作部からの入力内容や出力先のデバイスの情報からプリント方向を決定する。プリント方向とスキャン方向と異なる場合は、データの並び順の制御を行い回転後のドキュメントを生成する。【選択図】図５
2010015382.tif 000002
【特許請求の範囲】
【請求項１】
ある方向から原稿をスキャンして取得された画像データを入力する手段と、
前記入力した画像データを複数のオブジェクトに分割する手段と、
前記入力した画像データをプリントする際のプリント方向を判断する手段と、
前記原稿をスキャンした方向と前記判断されたプリント方向とが異なる場合に、前記分割したオブジェクトごとのプリントの順番を前記プリント方向に適した順序で決定する手段と、
前記オブジェクトを、入力時の解像度に依存しない解像度非依存データに変換する手段と、
前記決定したプリントの順番の情報と前記変換された前記オブジェクトを関連付けて記憶する記憶手段と
を備えたことを特徴とする画像形成装置。
【請求項２】
前記判断されたプリント方向に応じて、前記分割されたオブジェクトをプリントに適する向きに回転する手段をさらに備えることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記プリント方向を判断する手段は、前記入力した画像データをプリントするデバイスのデバイス能力に応じてプリント方向を判断することを特徴とする請求項１又は請求項２に記載の画像形成装置。
【請求項４】
ユーザによる操作入力が可能な操作手段を備え、
前記プリント方向を判断する手段は、前記操作手段にされた入力に応じてプリント方向を判断することを特徴とする請求項１又は請求項２に記載の画像形成装置。
【請求項５】
ある方向から原稿をスキャンして取得された画像データを入力する手段と、
前記入力した画像データを複数のオブジェクトに分割する手段と、
前記入力した画像データを前記原稿がスキャンされた方向と同じ方向でプリントする場合の前記オブジェクトごとのプリントの順番である第１のプリントの順番を決定する手段と、
前記入力した画像データを前記原稿がスキャンされた方向と異なる方向でプリントする場合の前記オブジェクトごとのプリントの順番である第２のプリントの順番を決定する手段と、
前記オブジェクトを、入力時の解像度に依存しない解像度非依存データに変換する手段と、
前記決定された第１のプリントの順番及び第１のプリントの順番の情報を、前記オブジェクトと関連付けて記憶する記憶手段と
を備えたことを特徴とする画像形成装置。
【請求項６】
前記オブジェクトを、前記第２のプリントの順番に対応するプリント方向に適する向きに回転する手段をさらに備えることを特徴とする請求項５に記載の画像形成装置。
【請求項７】
画像形成装置における画像形成方法であって、
ある方向から原稿をスキャンして取得された画像データを入力する工程と、
前記入力した画像データを複数のオブジェクトに分割する工程と、
前記入力した画像データをプリントする際のプリント方向を判断する工程と、
前記原稿をスキャンした方向と前記判断されたプリント方向とが異なる場合に、前記分割したオブジェクトごとのプリントの順番を前記プリント方向に適した順序で決定する工程と、
前記オブジェクトを、入力時の解像度に依存しない解像度非依存データに変換する工程と、
前記決定したプリントの順番の情報と前記変換された前記オブジェクトを関連付けて記憶する記憶工程と
を備えたことを特徴とする画像形成方法。
【請求項８】
前記判断されたプリント方向に応じて、前記分割されたオブジェクトをプリントに適する向きに回転する工程をさらに備えることを特徴とする請求項７に記載の画像形成方法。
【請求項９】
前記プリント方向を判断する工程は、前記入力した画像データをプリントするデバイスのデバイス能力に応じてプリント方向を判断することを特徴とする請求項７又は請求項８に記載の画像形成方法。
【請求項１０】
ユーザによる操作入力が可能な操作工程を備え、
前記プリント方向を判断する工程は、前記操作工程でされた入力に応じてプリント方向を判断することを特徴とする請求項７又は請求項８に記載の画像形成方法。
【請求項１１】
ある方向から原稿をスキャンして取得された画像データを入力する工程と、
前記入力した画像データを複数のオブジェクトに分割する工程と、
前記入力した画像データを前記原稿がスキャンされた方向と同じ方向でプリントする場合の前記オブジェクトごとのプリントの順番である第１のプリントの順番を決定する工程と、
前記入力した画像データを前記原稿がスキャンされた方向と異なる方向でプリントする場合の前記オブジェクトごとのプリントの順番である第２のプリントの順番を決定する工程と、
前記オブジェクトを、入力時の解像度に依存しない解像度非依存データに変換する工程と、
前記決定された第１のプリントの順番及び第１のプリントの順番の情報を、前記オブジェクトと関連付けて記憶する記憶工程と
を備えたことを特徴とする画像形成方法。
【請求項１２】
前記オブジェクトを、前記第２のプリントの順番に対応するプリント方向に適する向きに回転する工程をさらに備えることを特徴とする請求項１１に記載の画像形成方法。
【請求項１３】
コンピュータを請求項１乃至６のいずれかに記載の画像形成装置として機能させるためのコンピュータプログラム。
【請求項１４】
コンピュータにより読み出し可能なプログラムを記憶した記憶媒体であって、請求項１３に記載のコンピュータプログラムを記憶したことを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャンした画像データからベクタデータを生成するときに、スキャン後の処理に応じて生成するドキュメント内のデータ構造を変更する処理を実行する画像形成装置及び画像形成方法に関するものである。
【背景技術】
【０００２】
ネットワークに接続された画像入力機器で入力した画像を、ネットワークに接続された別の画像出力機器で出力することにより画像の複写を行う技術が特許文献１に開示されている。このような、画像入力と画像出力をネットワーク上の異なる機器で行うことで複写する機能をリモートコピーと呼ぶ。
【０００３】
さらに、画像データを複数の画像処理装置へ同期出力することにより画像データ出力処理の生産性を上げる技術が特許文献２に開示されている。
【０００４】
さらに、画像入力機器で入力したビットマップ画像を画像入力機器の解像度に依存しない描画データに変換する技術が特許文献３に開示されている。このようにビットマップ画像を解像度に依存しないデータに変換する処理をベクトル化またはベクタライズと呼び、ベクトル化の結果得られるデータをベクタデータと呼ぶ。
【０００５】
これらの技術を利用すれば、入力画像を解像度に依存しないベクタデータに変換してネットワーク越しに他の画像出力機器に転送することができる。
【０００６】
そして、ベクタデータを受け取った画像出力機器側で再度ビットマップイメージに変換（ラスタライズ）することで、ビットマップイメージを解像度変換する処理がなくなるので、解像度変換処理による画像劣化を防止することが出来る。
【０００７】
すなわち、これらの技術を組み合わせることによりネットワーク上の任意の画像出力装置に対して高品位なリモートコピーを実現することができる。
【０００８】
【特許文献１】特開平１１−３３１４５５号公報
【特許文献２】特開平８−６３３４５号公報
【特許文献３】特開２００６―２３９４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
スキャンした画像をベクトル化してベクタデータを生成する場合、スキャンされる方向に応じてベクタデータが生成される。このとき、機器でこのベクタデータから画像をプリントする場合に、プリント方向がスキャンされた方向と異なる場合は、ベクタデータから生成したビットマップデータを回転した後にプリントしなければならない。そのため、デバイスのＣＰＵ性能やメモリアクセス速度が低い場合には、回転処理に時間がかかってしまうという課題がある。また、ベクタデータをビットマップデータにラスタライズしてプリントする場合、全てのデータをメモリに展開してから回転処理を行うため多くのメモリが必要になるという課題がある。
【００１０】
本発明は、上記課題を解決するためのものであり、その目的は、画像処理を高速かつ省メモリで行うための画像データを作成する画像形成装置及び画像形成方法を提供することである。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明の画像形成装置は、ある方向から原稿をスキャンして取得された画像データを入力する手段と、前記入力した画像データを複数のオブジェクトに分割する手段と、前記入力した画像データをプリントする際のプリント方向を判断する手段と、前記原稿をスキャンした方向と前記判断されたプリント方向とが異なる場合に、前記分割したオブジェクトごとのプリントの順番を前記プリント方向に適した順序で決定する手段と、前記オブジェクトを、入力時の解像度に依存しない解像度非依存データに変換する手段と、前記決定したプリントの順番の情報と前記変換された前記オブジェクトを関連付けて記憶する記憶手段とを備えたことを特徴とする。
【００１２】
また、本発明の前記画像形成装置は、前記判断されたプリント方向に応じて、前記分割されたオブジェクトをプリントに適する向きに回転する手段をさらに備えることを特徴とする。
【００１３】
また、本発明の前記画像形成装置の前記プリント方向を判断する手段は、前記入力した画像データをプリントするデバイスのデバイス能力に応じてプリント方向を判断することを特徴とする。
【００１４】
また、本発明の前記画像形成装置は、ユーザによる操作入力が可能な操作手段を備え、前記プリント方向を判断する手段は、前記操作手段にされた入力に応じてプリント方向を判断することを特徴とする。
【００１５】
また、本発明の画像形成装置は、ある方向から原稿をスキャンして取得された画像データを入力する手段と、前記入力した画像データを複数のオブジェクトに分割する手段と、前記入力した画像データを前記原稿がスキャンされた方向と同じ方向でプリントする場合の前記オブジェクトごとのプリントの順番である第１のプリントの順番を決定する手段と、前記入力した画像データを前記原稿がスキャンされた方向と異なる方向でプリントする場合の前記オブジェクトごとのプリントの順番である第２のプリントの順番を決定する手段と、前記オブジェクトを、入力時の解像度に依存しない解像度非依存データに変換する手段と、前記決定された第１のプリントの順番及び第１のプリントの順番の情報を、前記オブジェクトと関連付けて記憶する記憶手段とを備えたことを特徴とする。
【００１６】
また、本発明の前記画像形成装置は、前記オブジェクトを、前記第２のプリントの順番に対応するプリント方向に適する向きに回転する手段をさらに備えることを特徴とする。
【００１７】
本発明の画像形成方法は、画像形成装置における画像形成方法であって、ある方向から原稿をスキャンして取得された画像データを入力する工程と、前記入力した画像データを複数のオブジェクトに分割する工程と、前記入力した画像データをプリントする際のプリント方向を判断する工程と、前記原稿をスキャンした方向と前記判断されたプリント方向とが異なる場合に、前記分割したオブジェクトごとのプリントの順番を前記プリント方向に適した順序で決定する工程と、前記オブジェクトを、入力時の解像度に依存しない解像度非依存データに変換する工程と、前記決定したプリントの順番の情報と前記変換された前記オブジェクトを関連付けて記憶する記憶工程とを備えたことを特徴とする。
【００１８】
また、本発明の前記画像形成方法は、前記判断されたプリント方向に応じて、前記分割されたオブジェクトをプリントに適する向きに回転する工程をさらに備えることを特徴とする。
【００１９】
また、本発明の前記画像形成方法の前記プリント方向を判断する工程は、前記入力した画像データをプリントするデバイスのデバイス能力に応じてプリント方向を判断することを特徴とする。
【００２０】
また、本発明の前記画像形成方法は、ユーザによる操作入力が可能な操作工程を備え、前記プリント方向を判断する工程は、前記操作工程でされた入力に応じてプリント方向を判断することを特徴とする。
【００２１】
また、本発明の画像形成方法は、ある方向から原稿をスキャンして取得された画像データを入力する工程と、前記入力した画像データを複数のオブジェクトに分割する工程と、前記入力した画像データを前記原稿がスキャンされた方向と同じ方向でプリントする場合の前記オブジェクトごとのプリントの順番である第１のプリントの順番を決定する工程と、前記入力した画像データを前記原稿がスキャンされた方向と異なる方向でプリントする場合の前記オブジェクトごとのプリントの順番である第２のプリントの順番を決定する工程と、前記オブジェクトを、入力時の解像度に依存しない解像度非依存データに変換する工程と、前記決定された第１のプリントの順番及び第１のプリントの順番の情報を、前記オブジェクトと関連付けて記憶する記憶工程とを備えたことを特徴とする。
【００２２】
また、本発明の前記画像形成方法は、前記オブジェクトを、前記第２のプリントの順番に対応するプリント方向に適する向きに回転する工程をさらに備えることを特徴とする。
【００２３】
また、本発明のコンピュータプログラムは、コンピュータを前記画像形成装置のいずれかとして機能させるためのコンピュータプログラムであることを特徴とする。
【００２４】
また、本発明の記憶媒体は、コンピュータにより読み出し可能なプログラムを記憶した記憶媒体であって、前記コンピュータプログラムのいずれかを記憶したことを特徴とする。
【発明の効果】
【００２５】
本発明によれば、画像処理を高速かつ省メモリで行うための画像データを作成する画像形成装置及び画像形成方法を提供することができる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明を実施するための最良の形態について、図面を参照して説明する。  
【００２７】
（実施形態１）
まず、第１の実施形態について説明する。  
【００２８】
＜画像形成装置の構成例＞
図１および図２を参照して、本実施形態に係る画像形成装置の構成例について説明する。  
図１は、本実施形態における画像形成装置としての複合機の主要部構成を示すブロック図である。コントローラユニット２０００は、画像入力デバイスであるスキャナ２０７０や画像出力デバイスであるプリンタ２０９５を接続し、スキャナ２０７０で読み取られた画像データをプリンタ２０９５によりプリント出力するコピー機能を実現するための制御を行う。さらに、ＬＡＮ１００６や公衆回線１００７（ＷＡＮ）などのネットワークに接続することによって、画像情報やデバイス情報の入出力を行うための制御を行う。
【００２９】
コントローラユニット２０００は、具体的には、ＣＰＵ２００１を有する。ＣＰＵ２００１は、ＲＯＭ２００３に格納されているブートプログラムによりオペレーションシステム（ＯＳ）を立ち上げる。さらに、ＣＰＵ２００１は、ＯＳ上でＨＤＤ（ハードディスクドライブ）２００４に格納されているアプリケーションプログラムを実行することによって各種処理を実行する。このＣＰＵ２００１の作業領域としてはＲＡＭ２００２が用いられる。ＲＡＭ２００２は、作業領域とともに、画像データを一時記憶するための画像メモリ領域を提供する。ＨＤＤ２００４は、上記アプリケーションプログラムとともに、画像データを格納する。
【００３０】
ＣＰＵ２００１には、システムバス２００７を介して、ＲＯＭ２００３およびＲＡＭ２００２とともに、操作部Ｉ／Ｆ（インターフェース）２００６、ネットワークＩ／Ｆ２０１０、モデム２０５０およびイメージバスＩ／Ｆ２００５が接続されている。
【００３１】
操作部Ｉ／Ｆ２００６は、タッチパネルや操作キー等を有する操作部２０１２とのインターフェースであり、操作部２０１２に表示する画像データを操作部２０１２に対して出力する。また、操作部Ｉ／Ｆ２００６は、操作部２０１２においてユーザにより入力された情報をＣＰＵ２００１に送出する。
【００３２】
次に、ネットワークＩ／Ｆ２０１０は、ＬＡＮ１００６に接続され、ＬＡＮ１００６を介してＬＡＮ１００６上の各装置との間で情報の入出力を行う。モデム２０５０は、公衆回線１００７に接続され、公衆回線１００７を介して情報の入出力を行う。
【００３３】
イメージバスＩ／Ｆ２００５は、システムバス２００７と画像データを高速で転送する画像バス２００８とを接続し、データ構造を変換するためのバスブリッジである。画像バス２００８は、ＰＣＩバスまたはＩＥＥＥ１３９４等から構成される。
【００３４】
画像バス２００８上には、ラスタイメージプロセッサ（ＲＩＰ）２０６０、デバイスＩ／Ｆ２０２０、スキャナ画像処理部２０８０、プリンタ画像処理部２０９０、画像回転部２０３０、サムネイル作成部２０３５および画像圧縮部２０４０が設けられている。ＲＩＰ２０６０は、ＰＤＬコードをビットマップイメージに展開するプロセッサである。デバイスＩ／Ｆ２０２０には、スキャナ２０７０およびプリンタ２０９５が接続され、デバイスＩ／Ｆ２０２０は、画像データの同期系／非同期系の変換を行う。スキャナ画像処理部２０８０は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部２０９０は、プリント出力画像データに対してプリンタの補正、解像度変換などを行う。画像回転部２０３０は、画像データの回転を行う。画像圧縮部２０４０は、多値画像データをＪＰＥＧデータに、２値画像データをＪＢＩＧ、ＭＭＲ、ＭＨなどのデータに圧縮するとともに、その伸張処理を行う。
【００３５】
図２は、図１に示した複合機のスキャナ部２０７０およびプリンタ部２０９５のハードウェア構成を模式的に示す図である。
【００３６】
図２に示すように、スキャナ部２０７０とプリンタ部２０９５とは、一体的に構成されている。スキャナ部２０７０は、原稿給紙ユニット９２５０を搭載し、原稿給紙ユニット９２５０は、原稿を先頭から順に１枚ずつプラテンガラス９２１１上へ給送する。各原稿の読取動作が終了する毎にその原稿をプラテンガラス９２１１から排出トレイ（図示せず）に排出する。スキャナ部２０７０は、原稿がプラテンガラス９２１１上に給送されると、ランプ９２１２を点灯し、移動ユニット９２１３の移動を開始する。
【００３７】
この移動ユニット９２１３の移動によりプラテンガラス９２１１上の原稿に対する読取走査が行われる。この読取走査中、原稿からの反射光は、各ミラー９２１４、９２１５、９２１６およびレンズ９２１７を経てＣＣＤイメージセンサ（以下、ＣＣＤという）９２１８に導かれ、原稿上の画像がＣＣＤ９２１８の撮像面上に結像される。ＣＣＤ９２１８は、撮像面に結像された画像を電気信号に変換し、この電気信号は所定の処理施された後にコントローラユニット２０００（図１参照）に入力される。
【００３８】
プリンタ部２０９５は、レーザドライバ９３２１を有し、レーザドライバ９３２１は、コントローラユニット２０００から入力された画像データに基づきレーザ発光部９３２２を駆動する。これにより、レーザ発光部９３２２からは画像データに応じたレーザ光が発光され、このレーザ光は走査されながら感光ドラム９３２３上に照射される。感光ドラム９３２３上には、照射されたレーザ光により静電潜像が形成され、この静電潜像は現像器９３２４から供給されたトナーによりトナー像として可視像化される。レーザ光の照射タイミングに同期して、各カセット９３１１、９３１２から記録紙が搬送路を介して感光ドラム９３２３と転写部９３２５との間に給紙され、感光ドラム９３２３上のトナー像は転写部９３２５により給紙された記録紙上に転写される。
【００３９】
トナー像が転写された記録紙は搬送ベルトを介して定着ローラ対（加熱ローラと加圧ローラ）９３２６に送られ、定着ローラ対９３２６は、記録紙を熱圧し、記録紙上のトナー像を記録紙上に定着させる。この定着ローラ対９３２６を通過した記録紙は、排紙ローラ対９３２７により排紙ユニット９３３０に排紙される。排紙ユニット９３３０は、ソート、ステイプルなどの後処理を施すことが可能なシート処理装置からなる。また、両面記録モードが設定されている場合には、記録紙を排紙ローラ対９３２７まで搬送した後に、排紙ローラ対９３２７の回転方向を逆転させ、フラッパ９３２８によって再給紙搬送路９３３９へ導く。再給紙搬送路９３３９に導かれた記録紙は、上述したタイミングで感光ドラム９３２３と転写部９３２５との間に再給紙され、この記録紙の裏面にトナー像が転写される。
【００４０】
＜コントローラユニットのデータ処理＞
次に、複合機（画像形成装置）がコピー等の画像形成処理をする際に、ドキュメントを構成するベクタデータ、メタデータがコントローラユニット２０００においてどのように生成されるのかを説明する。  
図３は、コピー動作時のデータフローの例を示す図である。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶されたプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【００４１】
まず、スキャン処理ｄ１において、コントローラユニット２０００から送信されたコマンドに応じて、原稿露光部（プラテンガラス９２１１上）にセットされた紙原稿が、スキャナ部２０７０によってビットマップデータに変換される。
【００４２】
次に、ベクタライズ処理ｄ２とメタデータ生成処理ｄ４によって、スキャナ部２０７０からビットマップデータがコントローラユニット２０００に送信される。そして、コントローラユニット２０００にて、ビットマップデータからそれぞれ解像度に依存しないベクタデータとそれに付随するメタデータが生成される。ベクタデータ、メタデータの具体な生成方法については後述する。
【００４３】
次に、ドキュメント生成処理ｄ３によって、ベクタデータとメタデータが関連付けられたドキュメントが生成される。  
次に、ＤＬ生成処理ｄ５によって、ドキュメントの中のベクタデータからＤＬ（ディスプレイリスト）が生成される。その後、生成されたＤＬはドキュメントの中に格納される（ｄ６）。  
ドキュメントはその後、レンダリング処理ｄ７によってビットマップに展開される。  
展開されたビットマップは、プリント処理ｄ８によって紙媒体に記録されて印刷物となる。なお、出力された印刷物をまた原稿露光部にセットすればスキャンｄ１処理からの処理を行うことができる。
【００４４】
＜ドキュメントデータ構造＞
次に、図３に示した処理で生成されたドキュメントの構造を説明する。  
図４は、ドキュメントのデータ構造の例を示している。ドキュメントは複数ページからなるデータであり、その主なデータ構成として、ドキュメントヘッダ（ｘ１）、ベクタデータ（ａ）、メタデータ（ｂ）、およびＤＬ（ｃ）を有する。ドキュメントのデータ構造は、ドキュメントヘッダ（ｘ１）を先頭とする階層構造である。
【００４５】
ベクタデータ（ａ）はさらに、ページヘッダ（ｘ２）、サマリ情報（ｘ３）、およびオブジェクト（ｘ４）を有する。メタデータ（ｂ）はさらに、ページ情報（ｘ５）および詳細情報（ｘ６）を有する。ＤＬ（ｃ）はさらに、ページヘッダ（ｘ７）および描画展開用のインストラクション（ｘ８）を有する。ドキュメントヘッダ（ｘ１）にはベクタデータの格納場所とＤＬの格納場所が記述されており、これによってベクタデータとＤＬは関連付けられている。
【００４６】
ベクタデータ（ａ）は解像度非依存な描画データであり、ページヘッダ（ｘ２）にはページの大きさや向きなどのレイアウト情報が記述される。オブジェクト（ｘ４）には、ライン、多角形、ベジェ曲線などの描画データが一つずつリンクされており、複数のオブジェクトがまとめてサマリ情報（ｘ３）に関連付けられている。サマリ情報（ｘ３）は複数のオブジェクトの特徴をまとめて表現するものであり、分割領域の属性情報などが記述される。
【００４７】
メタデータ（ｂ）は、描画処理には関係しない検索用の付加情報である。ページ情報（ｘ５）領域には、例えばメタデータがビットマップデータから生成されたものなのか、ＰＤＬデータから生成されたものなのか、などのページ情報が記述される。詳細情報（ｘ６）には、例えばＯＣＲ情報や画像情報として生成された文字列（文字コード列）が記述される。また、ベクタデータ（ａ）のサマリ情報（ｘ３）からはメタデータが参照されており、サマリ情報（ｘ３）から詳細情報（ｘ６）を見つけることができる。
【００４８】
ＤＬ（ｃ）はレンダラがベクタデータ（ａ）をビットマップ展開するための中間コードである。ページヘッダ（ｘ７）にはページ内の描画情報（インストラクション）の管理テーブルなどが記述され、インストラクション（ｘ８）は解像度依存な描画情報で構成されている。
【００４９】
図５は、本実施形態に係る画像形成装置において行われる全体の処理手順を示すフローチャートである。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶されたプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【００５０】
ステップＳ１０１では、まず、ユーザから操作部２０１２を介して入力された指示内容の情報がコントローラユニット２０００へ送られる。すなわち、コントローラユニット２０００は、ユーザからの指示情報を受信する。
【００５１】
ステップＳ１０２では、コントローラユニット２０００は、受信した指示情報に基づいて、その後行うドキュメント生成方法の処理を切り替える。例えば、コピー、リモートコピー、機器内保存、プレビューなどに処理が切り替わる。それぞれの処理は、ステップＳ１０３、Ｓ１０４、Ｓ１０５、Ｓ１０６、Ｓ１０７で行われる。ステップＳ１０３からＳ１０７の処理の詳細については図６から図１２を用いて説明する。
【００５２】
図６は、本実施形態におけるコピー処理（Ｓ１０３）の処理手順を示すフローチャートである。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶された図６に示す処理のプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【００５３】
ステップＳ１００１では、スキャナ部２０７にコマンドを送信してスキャナ部２０７０に所定の方向から原稿のスキャンを行わせる。このスキャン方向を示すスキャン方向情報をＲＡＭ２００２等の記憶手段に記憶させる。次いで、スキャンによって得られたデータからビットマップデータを生成する。すなわち、原稿からスキャンされた画像データが画像形成装置に入力される。
【００５４】
なお、上記スキャナ部２０７０でのスキャン方向は、予め画像形成装置に設定することもできるし、操作部２０１２を介してユーザが所望の方向に設定することもできる。また、該スキャン方向は、スキャンする原稿（紙）に対して、縦方向および横方向のいずれか一方となる。
【００５５】
ステップＳ１００２では、ステップＳ１００１で生成されたビットマップデータから文字、画像（イラストなどのイメージ）、線（ライン）、図形（グラフィック）、表（テーブル）などのオブジェクトを検出する。次いで、ビットマップが表す画像領域をそれぞれのオブジェクトごとに分割する。さらに、分割された各オブジェクトの座標を取得し、各オブジェクトの位置情報を生成する。ここで、ビットマップデータからのオブジェクトの検出およびオブジェクト毎の分割は、どのような方法で行われてもよく、本実施形態では周知の方法によって行われる。
【００５６】
ステップＳ１００３では、プリント出力ができる方向（プリント方向）は縦か横か、給紙段にどの種類の紙があるかなどのプリント時のデバイス能力に関する情報をプリンタ部２０９５又はＨＤＤ２００４等から取得する。そして、デバイス能力によりプリント時にどの方向に出力されなければならないかを判断する。例えば、コンパクト機などで紙の搬送方向が横方向に限定されている場合は、プリント方向は横方向となる。また、両方向に搬送ができる場合でも給紙段にＡ４とＡ４Ｒがあり、Ａ４Ｒの紙が切れている場合はプリントの方向は縦方向となる。プリント方向の判断結果は、プリント方向情報としてＲＡＭ２００２やＨＤＤ２００４等の記憶手段に記憶される。なお、本実施形態では、プリント方向がデバイス能力に基づいて判断されることとしたがこの方法に限定されない。例えば、ユーザによって画像形成装置に備える操作手段（操作部２０１２）を介して行われた操作入力に応じてプリント方向が判断されることとしてもよい。
【００５７】
ステップＳ１００４では、ＲＡＭ２００２等の記憶手段に記憶されたスキャン方向情報及びプリント方向情報に基づいて、スキャン時の紙（原稿）の方向（スキャン方向）とプリント時の紙の方向（プリント方向）が同じであるか否かを判断する。すなわち、原稿をスキャンした後に、スキャン方向に関する情報が取得されており、当該スキャン方向とステップＳ１００３で判断されたプリント方向とが同じであるか否を判断する。スキャンとプリントの方向が同じである場合は、ステップＳ１０１３に進みオブジェクトごとにベクタデータを生成する。
【００５８】
スキャンとプリントの方向が異なる場合は、ステップＳ１００５に進み、オブジェクト生成の順番（すなわち、オブジェクトがレンダリング又はプリント出力される順番）を、プリント方向に適した順序で決定する。後に図７で、例を用いてオブジェクト生成の順番について説明する。決定されたオブジェクト生成の順番情報は、オブジェクトと関連付けてドキュメントに含められ、ＲＡＭ２００２等の記憶手段に記憶される。
【００５９】
ステップＳ１００６からステップＳ１０１０までは、ステップＳ１００２で検出され分割されたオブジェクトごとのベクタデータ生成処理である。ベクタデータは、スキャンによって入力した画像を入力時の解像度に依存しない画質で出力可能な解像度非依存データである。
【００６０】
ステップＳ１００７では、オブジェクトの種類がイメージ（イラスト等）であるか他の種類（文字、表等）であるかの判断が行われる。当該判断はどのような方法で行われてもよく、本実施形態では周知の方法によって行われる。イメージ以外の場合はステップＳ１００９に進み、そのオブジェクトのベクタデータが生成される。
【００６１】
イメージの場合はＳ１００８へと進み、そのイメージ（オブジェクト）がＲＡＭ２００２に展開され、イメージの回転処理が行われる。
【００６２】
図８に、イメージの回転処理の概念を示す。スキャンされたオブジェクト単位のイメージの向きが、プリントする際のプリント方向に適するように、そのオブジェクトの中心を軸にして（例えば、９０度）回転される。このとき、ステップＳ１００２で生成されたレイアウト情報に基づいて、プリント時の原稿のレイアウト情報が作成される。更に、ＲＡＭ２００２に展開された回転する前のイメージはプリント処理では使われないため、ＲＡＭ２００２から削除される。
【００６３】
このように、回転処理前のイメージは、回転処理が終了したものから順次オブジェクト単位でＲＡＭ２００２から削除される。そのため、イメージの回転処理を実行するために必要なメモリの容量を低減することができ、更にその結果、処理速度を向上させることができる。
【００６４】
図６のステップＳ１００８又はＳ１００９の後、ステップＳ１０１０でオブジェクトごとの処理を終え、ステップＳ１０１１へ進む。ステップＳ１０１１では、前述の処理が施されたオブジェクト等が含まれているドキュメントに対して、レンダリング処理を行う。レンダリング処理では解像度変換や色処理などが行われビットマップデータが生成される。オブジェクトに対するレンダリング処理は、ステップＳ１００５で決定されたオブジェクト生成の順番に基づいて行われる。ステップＳ１０１２では、作成したビットマップデータのプリントを行い、処理を終了する。
【００６５】
図７は、オブジェクト生成の順番を変更する処理の例を表す概念図である。この例では、スキャン方向が横方向でプリント方向が縦方向の場合である。このとき、スキャン方向が横方向であるためスキャン時に検出されるオブジェクトの順番は、文字１、図形、文字２、画像、文字３の順番となる。しかし、プリント方向が縦方向であるため、プリント時にスキャン時と同じ方向でレンダリングを行うと全てのレンダリング処理が完了するまでプリント処理を行うことができないのでプリント速度が遅くなる。また、全てのレンダリングしたデータを保持しなければならないためメモリの使用量を減らすことが難しくなる。
【００６６】
しかし、図６に示した処理においては、ステップＳ１０１１のレンダリング処理の前に、プリント時に最適なオブジェクト生成の順番をオブジェクト生成の順番情報としてステップＳ１００５において決定し、当該順番情報を用いてレンダリング処理を行う。そのため、スキャン方向とプリント方向が異なる場合であっても、レンダリング処理を終えたオブジェクトに対して順次プリント処理（ステップＳ１０１２）を行うことができる。従って、全てのレンダリング処理が完了するのを待ってプリント処理を開始する必要がなく、プリント速度を向上させることができる。更に、レンダリングしたデータのうち、プリント処理が終了したデータをメモリから順次削除することとすれば、レンダリングしたデータの全体を同時にメモリに保持する必要がなく、処理に必要なメモリの使用量を減らすことができる。更に、オブジェクトによって分割された画像がベクトル化されているため、画像の劣化を防ぎつつ、処理速度を向上させ、メモリ使用量を減らすことができる。
【００６７】
以上のように、本実施形態によれば、画像処理を高速かつ省メモリで行うためのイメージデータを作成することができる。
【００６８】
図９は、本実施例におけるリモートコピー処理（図５のステップＳ１０４）の手順を示すフローチャートである。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶されたプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【００６９】
ステップＳ２００１では、スキャナ部２０７０にコマンドを送信して、スキャナ部２０７０に、所定のスキャン方向で原稿のスキャンを行わせる。このスキャン方向を示すスキャン方向情報をＲＡＭ２００２等の記憶手段に記憶する。スキャンによって得られた画像がビットマップデータとしてコントローラユニット２０００に生成される。すなわち、原稿からスキャンされた画像データが画像形成装置に入力される。
【００７０】
ステップＳ２００２では、まず、コントローラユニット２０００にて生成されたビットマップから文字、画像（イメージ）、線（ライン）、図形（グラフィック）、表（テーブル）などのオブジェクトが検出される。検出されたそれぞれのオブジェクトごとに、ビットマップが表す画像領域がそれぞれのオブジェクトごとに分割される。さらに、原稿のレイアウト情報（原稿内におけるオブジェクトの位置情報を含む情報）が生成される。ここで、ビットマップからのオブジェクトの検出およびビットマップの分割は、どのような方法で行われてもよく、本実施形態では周知の方法によって行われる。
【００７１】
ステップＳ２００３では、プリント出力ができる方向は縦か横か、給紙段にどの種類の紙があるかなどのプリント時のデバイス能力に関する情報が取得される。そして、デバイス能力によりプリント時にどの方向に出力されなければならないかが判断される。例えば、コンパクト機などで紙の搬送方向が横方向に限定されている場合は、プリント方向は横方向となる。また、両方向に搬送ができる場合でも給紙段にＡ４とＡ４Ｒがあり、Ａ４Ｒの紙が切れている場合はプリントの方向は縦方向となる。プリント方向の判断結果は、プリント方向情報としてＲＡＭ２００２やＨＤＤ２００４等の記憶手段に記憶される。
【００７２】
ステップＳ２００４では、スキャン時の紙（原稿）の方向とプリント時の紙の方向が同じであるか否かが判断される。すなわち、原稿をスキャンした後に、スキャン方向に関する情報が取得されており、当該スキャン方向とステップＳ２００３で判断されたプリント方向とが同じであるか否かが判断される。スキャンとプリントの方向が同じである場合は、ステップＳ２０１４に進みオブジェクトごとにベクタデータを生成する。
【００７３】
スキャンとプリントの方向が違う場合は、ステップＳ２００５に進み、オブジェクト生成の順番（すなわち、オブジェクトがレンダリング又はプリント出力される順番）が、プリント方向に適した順序で決定される。決定されたオブジェクト生成の順番情報は、オブジェクトと関連付けてドキュメントに含められ、ＲＡＭ２００２等の記憶手段に記憶される。
【００７４】
ステップＳ２００６からステップＳ２０１０までは、ステップＳ２００２で検出され分割されたオブジェクトごとのベクタデータ生成処理である。ベクタデータは、スキャンによって入力した画像を入力時の解像度に依存しない画質で出力可能な解像度非依存データである。
【００７５】
ステップＳ２００７では、オブジェクトの種類がイメージであるか他の種類であるかの判断が行われる。当該判断はどのような方法で行われてもよく、本実施形態では周知の方法によって行われる。イメージ以外の場合はステップＳ２００９に進み、そのオブジェクトのベクタデータが生成される。
【００７６】
イメージの場合はＳ２００８へと進み、そのイメージ（オブジェクト）がＲＡＭ２００２に展開され、図８で示すようなイメージの回転処理が行われる。
【００７７】
このとき、ステップＳ２００２で生成されたレイアウト情報に基づいて、プリント時の原稿のレイアウト情報が作成される。更に、ＲＡＭ２００２に展開された回転する前のイメージはプリント処理では使われないため、ＲＡＭ２００２から削除される。
【００７８】
このように、回転処理前のイメージは、回転処理が終了したものから順次オブジェクト単位でＲＡＭ２００２から削除される。そのため、イメージの回転処理を実行するために必要なメモリの容量を低減することができ、更にその結果、処理速度を向上させることができる。
【００７９】
図９のステップＳ２００８又はＳ２００９の後、ステップＳ２０１０でオブジェクトごとの処理を終え、ステップＳ２０１１へ進む。  
ステップ２０１１では、前述の処理が施されたオブジェクト、オブジェクト生成の順番情報、レイアウト情報等を有するデータをドキュメントとしてリモートデバイスへ送信し、処理を終了する。その後、リモートデバイスでは受信したドキュメントのレンダリング処理及びプリント処理が行われる。
【００８０】
図１０は、本実施形態におけるドキュメントの機器内への保存処理（図５のステップＳ１０５）の手順を示すフローチャートである。ドキュメントを機器内に保存する場合は、保存後の処理として、プリント、プレビュー、他の機器への送信などの処理が選択できる。そこで、この処理では、保存後の処理に対応するために、回転しない場合と回転する場合の両方に対応したドキュメントを作成し保存する。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶されたプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【００８１】
ステップＳ３００１では、コントローラユニット２０００による制御に応じて、スキャナ部２０７０によってある方向から原稿のスキャンを行い、スキャンによって得られた画像がビットマップデータとしてコントローラユニット２０００に生成される。すなわち、原稿からスキャンされた画像データが画像形成装置に入力される。
【００８２】
ステップＳ３００２では、まず、コントローラユニット２０００にて生成されたビットマップから文字、画像（イメージ）、線（ライン）、図形（グラフィック）、表（テーブル）などのオブジェクトが検出される。検出されたそれぞれのオブジェクトごとに、ビットマップが表す画像領域がそれぞれのオブジェクトごとに分割される。さらに、原稿のレイアウト情報（原稿内におけるオブジェクトの位置情報を含む情報）が生成される。ここで、ビットマップからのオブジェクトの検出およびビットマップの分割は、どのような方法で行われてもよく、本実施形態では周知の方法によって行われる。
【００８３】
ステップＳ３００３からステップＳ３００８までは、オブジェクトごとのベクタデータ生成処理である。
【００８４】
ステップＳ３００４では、イメージに対して回転処理を行った後にプリント処理を行う場合のオブジェクトのレンダリングの順番が決定される。オブジェクトのレンダリングの順番情報は、プリント方向に適した順序（すなわち、プリントする順序）で決定され、オブジェクトと関連付けてドキュメントに含められ、ＲＡＭ２００２等の記憶手段に記憶される。なお、図示しないが、回転処理前のオブジェクトのレンダリングの順番情報も同様の方法で決定され、記憶される。
【００８５】
ステップＳ３００５では、オブジェクトの種類がイメージであるか他の種類であるかで処理を切り替える。イメージ以外の場合はステップＳ３００６に進み、ベクタデータを生成する。イメージの場合はＳ３００７へと進み、図８で示すようなイメージの回転処理を行う。このとき、回転する前のイメージと回転した後のイメージの両方が後の処理（レンダリング処理等）で使われる可能性があるため、両方のイメージをＲＡＭ２００２等の記憶手段に記憶しておく。
【００８６】
ステップＳ３００８では、オブジェクトごとの処理を終え、ステップＳ３００９へ進む。ステップＳ３００９では、回転する前のイメージに対応するドキュメントと回転した後のイメージに対応するドキュメントをＨＤＤ２００４等の記憶手段に記憶し、処理を終了する。このように、回転する前のイメージと回転した後のイメージのそれぞれに対応するドキュメントを記憶しておくため、当該記憶されたドキュメントのうちプリント方向に対応するものをプリント処理のために使用することができる。そのため、プリント方向の如何によってプリント時に回転処理を行う必要がないので、イメージをスキャンした方向とプリントする方向が異なる場合のプリント処理の速度を向上させることができる。
【００８７】
なお、図１０に示した処理では、回転する前のイメージと回転した後のイメージの両方に対応するドキュメントを記憶しておくこととしたが、この方法に限定されない。例えば、回転後のイメージに対応するドキュメント（第１のプリントの順番情報、及びイメージデータが含まれるデータ）を記憶手段に記憶する。そして、回転前のイメージについては、オブジェクトのレンダリングの順番情報（第２のプリントの順番情報）のみを記憶しておくこととしてもよい。または、回転前のイメージに対応するドキュメントを記憶手段に記憶しておき、回転後のイメージについては、オブジェクトのレンダリングの順番情報のみを記憶しておくこととしてもよい。すなわち、オブジェクトのレンダリングの順番についての２種類の順番情報、及び１種類のイメージデータが記憶手段に記憶される。このようにすることで、原稿のスキャン方向とプリント方向とが異なる場合であっても、プリント処理をする際にオブジェクトのレンダリングの順番を決定する必要がないため、プリント処理の速度を向上させることができる。
【００８８】
図１１は、図５のステップＳ１０５において機器内（画像形成装置内）に保存したドキュメントの再印刷処理（図５のステップＳ１０６）の手順を示すフローチャートである。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶されたプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【００８９】
ステップＳ３００１では、プリント出力ができる方向は縦か横か、給紙段にどの種類の紙があるかなどのプリント時のデバイス能力に関する情報が取得される。そして、デバイス能力によりプリント時にどの方向に出力されなければならないかが判断される。例えば、コンパクト機などで紙の搬送方向が横方向に限定されている場合は、プリント方向は横方向となる。また、両方向に搬送ができる場合でも給紙段にＡ４とＡ４Ｒがあり、Ａ４Ｒの紙が切れている場合はプリントの方向は縦方向となる。
【００９０】
ステップＳ３１０２では、ドキュメント内のオブジェクトの方向とプリント時の紙の方向が同じとなるかで処理を切り替える。同じ方向の場合はステップＳ３１１０へ進む。
【００９１】
ステップＳ３１１０からステップＳ３１１４では、図１０のステップ３００９でＨＤＤ２００４等に記憶されたドキュメントのうち、回転する前のイメージに対応するドキュメントに対してオブジェクトごとのレンダリング処理を行う。
【００９２】
ステップＳ３１１１では、オブジェクトの種類がイメージであるか他の種類であるかで処理を切り替える。イメージ以外の場合はステップＳ３１１３に進み、レンダリング処理を行う。イメージの場合はＳ３１１２で回転前のイメージを選択し、ステップＳ３１１３でレンダリング処理を行う。ステップＳ３１１４では、オブジェクトごとのレンダリング処理を終了し、ステップＳ３１０９へ進む。
【００９３】
また、Ｓ３１０２でドキュメント内のオブジェクトの方向とプリント時の紙の方向が違う場合はステップＳ３１０３へ進む。
【００９４】
ステップＳ３１０３からＳ３１０８では、ＨＤＤ２００４等に記憶されたドキュメントのうち、回転した後のイメージに対応するドキュメントに対してレンダリング処理を行う。まず、ステップＳ３１０３では、ドキュメントに含まれているオブジェクトのレンダリングの順番情報が取得され、当該情報が以降の処理でレンダリングを行う順番として変更される。
【００９５】
ステップＳ３１０４からステップＳ３１０８までは、オブジェクトごとのレンダリング処理である。ステップＳ３１０５では、オブジェクトの種類がイメージであるか他の種類であるかで処理を切り替える。イメージ以外の場合はステップＳ３１０７に進み、レンダリング処理を行う。イメージの場合はＳ３１０６で回転後のイメージを選択し、ステップＳ３１０７でレンダリング処理を行う。ステップＳ３１０８では、オブジェクトごとのレンダリング処理を終了し、ステップＳ３１０９へ進む。ステップＳ３１０９では、作成したビットマップデータのプリントを行い、処理を終了する。
【００９６】
以上のように、図１１に示した処理によれば、記憶されたドキュメントのうちプリント方向に対応するものをプリント処理のために使用する。そのため、プリント方向の如何によってプリント時に回転処理を行う必要がないので、原稿をスキャンした方向とイメージをプリントする方向が異なる場合のプリント処理の速度を向上させることができる。
【００９７】
図１２は、本実施形態におけるプレビューとコピーの処理（図５のステップＳ１０７）の手順を示すフローチャートである。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶されたプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【００９８】
ステップＳ４００１では、コントローラユニット２０００による制御に応じて、スキャナ部２０７０によってある方向から原稿のスキャンを行い、スキャンによって得られた画像がビットマップデータとしてコントローラユニット２０００に生成される。すなわち、原稿からスキャンされた画像データが画像形成装置に入力される。
【００９９】
ステップＳ４００２では、まず、コントローラユニット２０００にて生成されたビットマップから文字、画像（イメージ）、線（ライン）、図形（グラフィック）、表（テーブル）などのオブジェクトが検出される。検出されたそれぞれのオブジェクトごとに、ビットマップが表す画像領域がそれぞれのオブジェクトごとに分割される。さらに、原稿のレイアウト情報（原稿内におけるオブジェクトの位置情報を含む情報）が生成される。
【０１００】
ステップＳ４００３では、オブジェクトの検出結果からプレビュー時にイメージを表示する方向を決定する。なお、プレビュー時に表示する方向は、他のどのような方法で決定されても良い。決定されたプレビューの表示方向の情報は、ＲＡＭ２００２やＨＤＤ２００４等の記憶手段に記憶される。
【０１０１】
ステップＳ４００４では、プリント出力ができる方向は縦か横か、給紙段にどの種類の紙があるかなどのプリント時のデバイス能力に関する情報が取得される。そして、デバイス能力によりプリント時にどの方向に出力されなければならないかが判断される。例えば、コンパクト機などで紙の搬送方向が横方向に限定されている場合は、プリント方向は横方向となる。また、両方向に搬送ができる場合でも給紙段にＡ４とＡ４Ｒがあり、Ａ４Ｒの紙が切れている場合はプリントの方向は縦方向となる。プリント方向の判断結果は、プリント方向情報としてＲＡＭ２００２やＨＤＤ２００４等の記憶手段に記憶される。
【０１０２】
ステップＳ４００５では、スキャン時の紙の方向、プリント時の紙の方向、プレビューの方向が同じとなるかで処理を切り替える。スキャン、プリント、プレビューの全てが同じ方向である場合はステップＳ４０２１に進み、オブジェクトごとにベクタデータを生成する。
【０１０３】
プリントとプレビューの方向が違う場合は、ステップＳ４０１５からステップＳ４０２０のオブジェクトごとのベクタデータ生成処理に進む。ステップＳ４０１６では、回転処理を行う場合のオブジェクトのレンダリングの順番をＲＡＭ２００２等に記憶する。ステップＳ４０１７では、オブジェクトの種類がイメージであるか他の種類であるかで処理を切り替える。イメージ以外の場合はステップＳ４０１９に進み、そのオブジェクトのベクタデータを生成する。イメージの場合はＳ４０１８へと進み、図８で示すようなイメージの回転処理を行う。このとき、回転する前のイメージと回転した後のイメージの両方が後の処理で使われるため、両方のイメージを保存しておく。ステップＳ４０２０でオブジェクトごとの処理を終え、ステップＳ４０１２へ進む。
【０１０４】
次に、ステップＳ４００５でスキャンのみ方向が違う場合の処理を説明する。このとき、ステップＳ４００６でオブジェクト生成の順番を図７の例を用いて説明したように変更する。ステップＳ４００７からステップＳ４０１１までは、オブジェクトごとのベクタデータ生成処理である。ステップＳ４００８では、オブジェクトの種類がイメージであるか他の種類であるかで処理を切り替える。イメージ以外の場合はステップＳ４０１０に進み、ベクタデータを生成する。イメージの場合はＳ４００９へと進み、図８で示すようなイメージの回転処理を行う。このとき、回転する前のイメージはプリントやプレビューの処理では使われないため削除する。ステップＳ４０１１ではオブジェクトごとの処理を終え、ステップＳ４０１２へ進む。
【０１０５】
ステップＳ４０１２では、プレビュー処理を行う。このとき、プリントとプレビューの方向が違う場合はプレビューで使用したデータを削除する。ステップＳ４０１３では、生成したドキュメントのレンダリング処理を行う。レンダリング処理では解像度変換や色処理などが行われビットマップデータが生成される。ステップＳ４０１４では作成したビットマップデータのプリントを行い、処理を終了する。
【０１０６】
（実施形態２）
実施形態１では、作成したドキュメントを画像形成装置内に記憶する場合、スキャンされた順番でオブジェクトごとのベクタデータを記憶し、さらに回転したときの順番を記憶している。そして、再印刷時に回転したときの順番に従って並び替えを行い、レンダリング及びプリントの処理を行う。このとき、再印刷時の並び替え処理にかかる時間を短縮することにより、再印刷処理のさらなる高速化を図ることができる。
【０１０７】
本実施形態では、ドキュメントを作成する際に、回転前と回転後のオブジェクトのデータを両方保持するようにドキュメントを作成しておき、再印刷時にプリント方向に合致するデータを選択する。再印刷時に並び替えの処理を行わずにすむので再印刷処理が高速になる。本実施形態の詳細な処理手順を図１３、図１４を用いて説明する。
【０１０８】
図１３は、本実施形態におけるドキュメントの機器内への保存の処理手順を示すフローチャートである。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶されたプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【０１０９】
ステップＳ３００１からステップＳ３００３までは実施形態１で述べた図１１の処理手順と同様な処理を行うため、説明は省略する。ステップＳ３００４の処理は本実施形態では行わない。ステップＳ３００５からステップＳ３００８も実施形態１で述べた手順と同様であるため、説明は省略する。
【０１１０】
ステップＳ５００１では、生成したオブジェクトごとのベクタデータを並べ替えたデータを作成する。ステップＳ５００２では、オブジェクトの順番を並び替える前のベクタデータと並び替えたあとのベクタデータの両方をＨＤＤ２００４に記憶する。
【０１１１】
図１４は、本実施例における機器内に保存したドキュメントの再印刷の処理手順を示すフローチャートである。処理の制御は、コントローラユニット２０００に備えるＣＰＵ２００１が、ＨＤＤ２００４等に記憶されたプログラムをＲＡＭ２００２に展開し、実行することによって行われる。
【０１１２】
ステップＳ５１０１では、出力ができる方向は縦か横か、給紙段にどの種類の紙があるかなどのプリント時のデバイス能力を取得する。そして、デバイス能力によりプリント時にどの方向に出さなければならないか判断する。例えば、リモートデバイスがコンパクト機などで紙の搬送方向が横方向に限定されている場合は、プリント方向は横方向となる。また、両方向に搬送ができる場合でも給紙段にＡ４とＡ４Ｒがあり、Ａ４Ｒの紙が切れている場合はプリントの方向は縦方向となる。
【０１１３】
ステップＳ５１０２では、プリント方向に応じてオブジェクト内からレンダリングを行うデータを選択する。ステップＳ５１０３では、選択したベクタデータのレンダリング処理を行う。レンダリング処理では解像度変換や色処理などが行われビットマップデータが生成される。ステップＳ５１０４では作成したビットマップデータのプリントを行い、処理を終了する。
【０１１４】
本実施例では画像形成装置内への保存の場合のみ述べているが、プレビューとコピーなどの手順でも同様に、回転前と回転後のデータを同時に保持しても良いことは言うまでもない。
【０１１５】
以上のように、本実施形態によれば、原稿のスキャン方向とプリント方向とが異なる場合であっても、プリント処理をする際にオブジェクトのレンダリングの順番を決定する必要がないため、プリント処理の速度を向上させることができる。
【０１１６】
（実施形態３）
実施形態１、２では、画像形成装置内にドキュメントを保存した場合、ドキュメント内のデータは常に回転前と回転後のデータを同時に持っている。しかし、保存後の用途が限定される場合、両方のデータを持つことは冗長であり片方のデータを削除することが可能である。例えば、給紙段にＡ４とＡ４Ｒが存在した場合に両方のデータを保持しておき、給紙段の紙がＡ４ＲからＡ３に入れ替えられた場合に横方向にプリントするためのデータを削除する。本実施例では、上記のように用途が限定された場合にデータを削除することにより、保持するデータ量を削減することが可能となる。
【０１１７】
（実施形態４）
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、スキャナ、プリンタ、ＰＣ、複写機、複合機及びファクシミリ装置の如くである。
【０１１８】
本発明は、前述した実施形態の各機能を実現するソフトウェアプログラムを、システム若しくは装置に対して直接または遠隔から供給し、そのシステム等に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
【０１１９】
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
【０１２０】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１２１】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ）などもある。
【０１２２】
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネット／イントラネットのウェブサイトからダウンロードしてもよい。すなわち、該ウェブサイトから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよいのである。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるウェブサイトからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明の構成要件となる場合がある。
【０１２３】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネット／イントラネットを介してウェブサイトから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
【０１２４】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
【０１２５】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。
【図面の簡単な説明】
【０１２６】
【図１】本発明の実施形態における複合機の主要部構成を示すブロック図である。
【図２】図１の複合機のハードウェア構成を模式的に示す図である。
【図３】本発明の実施形態におけるスキャン・コピーにおけるデータフローを示す図である。
【図４】本発明の実施形態におけるドキュメントのデータ構造を示す図である。
【図５】本発明の実施形態における全体の処理手順を示すフローチャートである。
【図６】本発明の実施形態１におけるコピーの処理手順を示すフローチャートである。
【図７】本発明の実施形態１におけるオブジェクト生成の順番を変更する例を表す図である。
【図８】本発明の実施形態１におけるイメージの回転処理を示す図である。
【図９】本発明の実施形態１におけるリモートコピーの処理手順を示すフローチャートである。
【図１０】本発明の実施形態１におけるドキュメントの機器内への保存の処理手順を示すフローチャートである。
【図１１】本発明の実施形態１における機器内に保存したドキュメントの再印刷の処理手順を示すフローチャートである。
【図１２】本発明の実施形態１におけるプレビューとコピーの処理手順を示すフローチャートである。
【図１３】本発明の実施形態２におけるドキュメントの機器内への保存の処理手順を示すフローチャートである。
【図１４】本発明の実施形態２における機器内に保存したドキュメントの再印刷の処理手順を示すフローチャートである。
【符号の説明】
【０１２７】
２０００  コントローラユニット
２０１２  操作部
２０７０  スキャナ
２０９５  プリンタ
【図１】
2010015382.tif 000003
【図２】
2010015382.tif 000004
【図３】
2010015382.tif 000005
【図４】
2010015382.tif 000006
【図５】
2010015382.tif 000007
【図６】
2010015382.tif 000008
【図７】
2010015382.tif 000009
【図８】
2010015382.tif 000010
【図９】
2010015382.tif 000011
【図１０】
2010015382.tif 000012
【図１１】
2010015382.tif 000013
【図１２】
2010015382.tif 000014
【図１３】
2010015382.tif 000015
【図１４】
2010015382.tif 000016