(57)【特許請求の範囲】
【請求項１】
所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置であって、
印刷設定を設定可能なユーザインタフェースを介して、Ｎｕｐ印刷モード及び自動Ｎｕｐ印刷モードを指定する印刷モード指定手段と、アプリケーションから印刷命令の入力データを入力する入力手段と、
前記印刷モード指定手段によりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定手段により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御手段と、
前記レイアウト制御手段により配置された印刷データを生成する印刷データ生成手段と、を備えることを特徴とするデータ処理装置。
【請求項２】
前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプール手段を更に有し、
前記レイアウト制御手段は、前記スプール手段によりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする請求項１記載のデータ処理装置。
【請求項３】
前記スプール手段は、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、
前記レイアウト制御手段は、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項２記載のデータ処理装置。
【請求項４】
前記印刷モード指定手段は、Ｎｕｐ印刷モードを指定する場合に、更に出力される１ページに配置されるページ数を指定可能であることを特徴とする請求項１乃至３のいずれかに記載のデータ処理装置。
【請求項５】
前記印刷装置は両面印刷機能を有し、
前記レイアウト制御手段は、前記印刷モード指定手段により両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項１乃至４のいずれかに記載のデータ処理装置。
【請求項６】
所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置の印刷データ処理方法であって、
印刷設定を設定可能なユーザインタフェースを介して、Ｎｕｐ印刷モード及び自動Ｎｕｐ印刷モードを指定する印刷モード指定工程と、
アプリケーションから印刷命令の入力データを入力する入力工程と、
前記印刷モード指定工程によりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定工程により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御工程と、
前記レイアウト制御工程により配置された印刷データを生成する印刷データ生成工程と、
を備えることを特徴とするデータ処理装置の印刷データ処理方法。
【請求項７】
前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプール工程を更に有し、
前記レイアウト制御工程は、前記スプール手段によりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする請求項６記載のデータ処理装置の印刷データ処理方法。
【請求項８】
前記スプール工程は、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、
前記レイアウト制御工程は、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項７記載のデータ処理装置の印刷データ処理方法。
【請求項９】
前記印刷モード指定工程は、Ｎｕｐ印刷モードを指定する場合に、更に出力される１ページに配置されるページ数を指定可能であることを特徴とする請求項６乃至８のいずれかに記載のデータ処理装置の印刷データ処理方法。
【請求項１０】
前記印刷装置は両面印刷機能を有し、
前記レイアウト制御工程は、前記印刷モード指定工程により両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項６乃至９のいずれかに記載のデータ処理装置の印刷データ処理方法。
【請求項１１】
所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置を制御するコンピュータが読み出し可能なプログラムを格納した記憶媒体であって、
印刷設定を設定可能なユーザインタフェースを介して、Ｎｕｐ印刷モード及び自動Ｎｕｐ印刷モードを指定する印刷モード指定工程と、
アプリケーションから印刷命令の入力データを入力する入力工程と、
前記印刷モード指定工程によりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定工程により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御工程と、
前記レイアウト制御工程により配置された印刷データを生成する印刷データ生成工程とを有することを特徴とするコンピュータが読み出し可能なプログラムを格納した記憶媒体。
【請求項１２】
前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプール工程を更に有し、
前記レイアウト制御工程は、前記スプール手段によりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする請求項１１に記載のコンピュータが読み出し可能なプログラムを格納した記憶媒体。
【請求項１３】
前記スプール工程は、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、
前記レイアウト制御工程は、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項１２に記載のコンピュータが読み出し可能なプログラムを格納した記憶媒体。
【請求項１４】
前記印刷モード指定工程は、Ｎｕｐ印刷モードを指定する場合に、更に出力される１ページに配置されるページ数を指定可能であることを特徴とする請求項１１乃至１３のいずれかに記載のコンピュータが読み出し可能なプログラムを格納した記憶媒体。
【請求項１５】
前記印刷装置は両面印刷機能を有し、
前記印刷モード指定工程により両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項１１乃至１４のいずれかに記載のコンピュータが読み出し可能なプログラムを格納した記憶媒体。
【請求項１６】
所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置であって、
印刷設定を設定可能なユーザインタフェースを介して、自動Ｎｕｐ印刷モードを指定する印刷モード指定手段と、
アプリケーションから印刷命令の入力データを入力する入力手段と、
印刷用紙の印刷面に配置される最大ページ数を入力する最大ページ数入力手段と、
前記印刷モード指定手段により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数と前記最大ページ数とに基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御手段と、
前記レイアウト制御手段による制御に応じて、前記印刷装置で印刷すべき印刷データを生成する印刷データ生成手段とを備え、
前記レイアウト制御手段は、前記最大ページ数入力手段により入力される最大ページ数を越えないように、前記出力される1ページに配置される入力データのレイアウトページ数を決定することを特徴とするデータ処理装置。
【請求項１７】
前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプール手段を更に有し、
前記レイアウト制御手段は、前記スプール手段によりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする請求項１６記載のデータ処理装置。
【請求項１８】
前記スプール手段は、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、
前記レイアウト制御手段は、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項１７記載のデータ処理装置。
【請求項１９】
前記印刷装置は両面印刷機能を有し、
前記レイアウト制御手段は、前記印刷モード指定手段により両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項１６乃至１８のいずれかに記載のデータ処理装置。
【請求項２０】
前記印刷モード指定手段は、Ｎｕｐ印刷モードと自動Ｎｕｐ印刷モードのいずれかを指定するものであり、
前記レイアウト制御手段は、前記印刷モード指定手段によりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数分の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定手段により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御することを特徴とする請求項１６乃至１９のいずれかに記載のデータ処理装置。
【請求項２１】
所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置の印刷処理方法であって、
印刷設定を設定可能なユーザインタフェースを介して、自動Ｎｕｐ印刷モードを指定する印刷モード指定ステップと、
アプリケーションから印刷命令の入力データを入力する入力ステップと、
印刷用紙の印刷面に配置される最大ページ数を入力する最大ページ数入力ステップと、
前記印刷モード指定ステップにより自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数と前記最大ページ数とに基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御ステップと、
前記レイアウト制御ステップによる制御に応じて、前記印刷装置で印刷すべき印刷データを生成する印刷データ生成ステップとを備え、
前記レイアウト制御ステップは、前記最大ページ数入力ステップにより入力される最大ページ数を越えないように、前記出力される1ページに配置される入力データのレイアウトページ数を決定することを特徴とするデータ処理装置の印刷処理方法。
【請求項２２】
前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプールステップを更に有し、
前記レイアウト制御ステップは、前記スプールステップによりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする請求項２１記載のデータ処理装置の印刷処理方法。
【請求項２３】
前記スプールステップは、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、
前記レイアウト制御ステップは、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項２２記載のデータ処理装置の印刷処理方法。
【請求項２４】
前記印刷装置は両面印刷機能を有し、
前記レイアウト制御ステップは、前記印刷モード指定ステップにより両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする請求項２１乃至２３のいずれかに記載のデータ処理装置の印刷処理方法。
【請求項２５】
前記印刷モード指定ステップは、Ｎｕｐ印刷モードと自動Ｎｕｐ印刷モードのいずれかを指定するものであり、
前記レイアウト制御ステップは、前記印刷モード指定ステップによりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数分の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定ステップにより自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御することを特徴とする請求項２１乃至２４のいずれかに記載のデータ処理装置の印刷処理方法。
【請求項２６】
請求項２１〜２５のいずれかに記載のデータ処理装置の印刷処理方法を実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成する前に、前記印刷データと異なるデータ形式の中間データを生成し、前記中間データを一時保存し、該中間データからページ単位に印刷データを生成することが可能なデータ処理装置およびデータ処理装置の印刷データ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体に関するものである。
【０００２】
【従来の技術】
従来、ページ単位で印刷する機能を有する印刷装置（プリンタ）と、該プリンタと接続されたパーソナルコンピュータ等のデータ処理装置からなる印刷システムにおける印刷処理において、ページ制御を行う印刷方法としては、複数ページ（Ｎページ）を１ページ（印刷用紙１枚）内に縮小しレイアウトするページレイアウト印刷（Ｎ−ＵＰ印刷）が知られている。
【０００３】
このレイアウト印刷は、出力用紙を節約したい時やドラフト印刷等に向いた印刷方法でもあり、例えば、論理ページ（アプリケーションからの出力ページ）２ページを物理ページ（出力用紙）１ページにレイアウト印刷（２ＵＰ印刷）することで出力用紙を約半分に節約する事が可能である。
【０００４】
このページレイアウト印刷にはこの他に、論理ページ４ページを物理ページ１ページにレイアウト印刷する４ＵＰ印刷、同様に８ＵＰ印刷、９ＵＰ印刷、１６ＵＰ印刷等がある事が知られている。
【０００５】
また、物理ページ１ページ中のレイアウト方向も右から左、上から下等が可能である事が知られている。さらに、このレイアウト印刷を実現するには、オペレータが文書データ等の印刷モードを情報処理装置側で指示する際に、ページレイアウト印刷モードを指定し、物理ページ１ページ中に論理ページを何ページレイアウトするかを指定し、さらにレイアウト方向を指定する方法が知られている。
【０００６】
また、１度ページレイアウトモードを指定すると、再び指定し直すまでモード設定が有効になる事も知られている。
【０００７】
さらに、両面印刷機能を備えたプリンタにおいては、両面印刷の実行モードを情報処理装置側で指定しプリンタに送信すると、情報処理装置側で他の特別な処理をすることなく、プリンタ側で両面印刷機能を実行する事が知られている。
【０００８】
【発明が解決しようとする課題】
しかしながら上述した方法によれば、１度Ｎ−ＵＰ印刷の指示を行い、その後レイアウト印刷の効果が薄い論理ページが１ページの文書データを印刷する際には、前回のＮ−ＵＰの設定が有効なため、設定を変更しないと、物理ページ１ページ中に縮小してレイアウトされていた。例えば２ＵＰ印刷が指定されていた場合、レイアウト方向の指示によって、物理ページの左右或いは上下いずれかの２分割された方面にレイアウト印刷され、他方の面は余白部分となっていた。
【０００９】
同様に、４ＵＰ印刷が指定されていた場合、物理ページ１ページ中の４分割された領域の何れかにレイアウト印刷され、他の領域は余白部分となっていた。このため余白部分が無駄となり、印刷体裁を損ねる可能性があった。
【００１０】
また、上記余白印刷処理を回避するためには、オペレータは次の印刷を指示する際、再びレイアウトに関する印刷モードを指定し直す必要があり、オペレーションの回数が増大していた。
【００１１】
また、レイアウト印刷の効果が高い論理ページが複数ページにわたる文書データをＮ−ＵＰで印刷する際には、オペーレータは、例えば論理ページが２ページの文書データをレイアウト印刷する際には、物理データ１ページに節約でき、かつ余白もなく有効に印刷が可能である２−ＵＰの指定を、或いは物理ページが３ページまたは４ページならば、物理データ１ページに節約でき、かつ余白もなく有効に印刷が可能である４−ＵＰの指定を行うなど、その文書データ等のページ数等から適切なＮ−ＵＰの指定をその都度行う必要があり、オペレーションの回数が増大していた。
【００１２】
さらに、アプリケーションが印刷ページの体裁を整える機能を有していない、例えばテキストエディタなどの場合、ページ単位の分割がアプリ内部で単純な行数カウント等で行われ、オペレータにページ体裁、総ページ数等が予めわからないため、出力ページを節約するような最適なＮ−ＵＰをオペレータが指示する事は困難であった。
【００１３】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、Ｎｕｐ印刷モード及び自動Ｎｕｐ印刷モードのいずれの印刷モードが指定された場合でも、１ページ内に出力すべきページ数を適切に確定し、見栄えよく体裁されたＮｕｐ印刷結果を得ることができるデータ処理装置およびデータ処理装置の印刷処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体を提供することである。
【００１４】
【課題を解決するための手段】
本発明に係る第１の発明は、所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置であって、印刷設定を設定可能なユーザインタフェースを介して、Ｎｕｐ印刷モード及び自動Ｎｕｐ印刷モードを指定する印刷モード指定手段と、アプリケーションから印刷命令の入力データを入力する入力手段と、前記印刷モード指定手段によりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定手段により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御手段と、
前記レイアウト制御手段により配置された印刷データを生成する印刷データ生成手段とを備えることを特徴とする。
【００１５】
本発明に係る第２の発明は、前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプール手段を更に有し、前記レイアウト制御手段は、前記スプール手段によりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする。
【００１６】
本発明に係る第３の発明は、前記スプール手段は、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、前記レイアウト制御手段は、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする。
【００１７】
本発明に係る第４の発明は、前記印刷モード指定手段は、Ｎｕｐ印刷モードを指定する場合に、更に出力される１ページに配置されるページ数を指定可能であることを特徴とする。
【００１８】
本発明に係る第５の発明は、前記印刷装置は両面印刷機能を有し、前記レイアウト制御手段は、前記印刷モード指定手段により両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする。
【００１９】
本発明に係る第６の発明は、所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置の印刷データ処理方法であって、印刷設定を設定可能なユーザインタフェースを介して、Ｎｕｐ印刷モード及び自動Ｎｕｐ印刷モードを指定する印刷モード指定工程と、アプリケーションから印刷命令の入力データを入力する入力工程と、前記印刷モード指定工程によりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定工程により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御工程と、前記レイアウト制御工程により配置された印刷データを生成する印刷データ生成工程とを備えることを特徴とする。
【００２０】
本発明に係る第７の発明は、前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプール工程を更に有し、前記レイアウト制御工程は、前記スプール手段によりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする。
【００２１】
本発明に係る第８の発明は、前記スプール工程は、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、前記レイアウト制御工程は、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする。
【００２２】
本発明に係る第９の発明は、前記印刷モード指定工程は、Ｎｕｐ印刷モードを指定する場合に、更に出力される１ページに配置されるページ数を指定可能であることを特徴とする。
【００２３】
本発明に係る第１０の発明は、前記印刷装置は両面印刷機能を有し、前記レイアウト制御工程は、前記印刷モード指定工程により両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする。
【００２４】
本発明に係る第１１の発明は、所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置を制御するコンピュータが読み出し可能なプログラムを格納した記憶媒体であって、印刷設定を設定可能なユーザインタフェースを介して、Ｎｕｐ印刷モード及び自動Ｎｕｐ印刷モードを指定する印刷モード指定工程と、アプリケーションから印刷命令の入力データを入力する入力工程と、前記印刷モード指定工程によりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定工程により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御工程と、前記レイアウト制御工程により配置された印刷データを生成する印刷データ生成工程とを有するコンピュータが読み出し可能なプログラムを記憶媒体に格納したものである。
【００２５】
本発明に係る第１２の発明は、前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプール工程を更に有し、前記レイアウト制御工程は、前記スプール手段によりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とするコンピュータが読み出し可能なプログラムを記憶媒体に格納したものである。
【００２６】
本発明に係る第１３の発明は、前記スプール工程は、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、前記レイアウト制御工程は、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とするコンピュータが読み出し可能なプログラムを記憶媒体に格納したものである。
【００２７】
本発明に係る第１４の発明は、前記印刷モード指定工程は、Ｎｕｐ印刷モードを指定する場合に、更に出力される１ページに配置されるページ数を指定可能であることを特徴とするコンピュータが読み出し可能なプログラムを記憶媒体に格納したものである。
【００２８】
本発明に係る第１５の発明は、前記印刷装置は両面印刷機能を有し、前記印刷モード指定工程により両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とするコンピュータが読み出し可能なプログラムを記憶媒体に格納したものである。
【００２９】
本発明に係る第１６の発明は、所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置であって、印刷設定を設定可能なユーザインタフェースを介して、自動Ｎｕｐ印刷モードを指定する印刷モード指定手段と、アプリケーションから印刷命令の入力データを入力する入力手段と、印刷用紙の印刷面に配置される最大ページ数を入力する最大ページ数入力手段と、前記印刷モード指定手段により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数と前記最大ページ数とに基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御手段と、前記レイアウト制御手段による制御に応じて、前記印刷装置で印刷すべき印刷データを生成する印刷データ生成手段とを備え、前記レイアウト制御手段は、前記最大ページ数入力手段により入力される最大ページ数を越えないように、前記出力される1ページに配置される入力データのレイアウトページ数を決定することを特徴とする。
【００３０】
本発明に係る第１７の発明は、前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプール手段を更に有し、前記レイアウト制御手段は、前記スプール手段によりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする。
【００３１】
本発明に係る第１８の発明は、前記スプール手段は、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、前記レイアウト制御手段は、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする。
【００３２】
本発明に係る第１９の発明は、前記印刷装置は両面印刷機能を有し、前記レイアウト制御手段は、前記印刷モード指定手段により両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする。
【００３３】
本発明に係る第２０の発明は、前記印刷モード指定手段は、Ｎｕｐ印刷モードと自動Ｎｕｐ印刷モードのいずれかを指定するものであり、前記レイアウト制御手段は、前記印刷モード指定手段によりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数分の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定手段により自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御することを特徴とする。
【００３４】
本発明に係る第２１の発明は、所定の通信媒体を介して印刷装置に対して送信すべき印刷データを生成するデータ処理装置の印刷処理方法であって、印刷設定を設定可能なユーザインタフェースを介して、自動Ｎｕｐ印刷モードを指定する印刷モード指定ステップと、アプリケーションから印刷命令の入力データを入力する入力ステップと、印刷用紙の印刷面に配置される最大ページ数を入力する最大ページ数入力ステップと、前記印刷モード指定ステップにより自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数と前記最大ページ数とに基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御するレイアウト制御ステップと、前記レイアウト制御ステップによる制御に応じて、前記印刷装置で印刷すべき印刷データを生成する印刷データ生成ステップとを備え、前記レイアウト制御ステップは、前記最大ページ数入力ステップにより入力される最大ページ数を越えないように、前記出力される1ページに配置される入力データのレイアウトページ数を決定することを特徴とする。
【００３５】
本発明に係る第２２の発明は、前記アプリケーションから入力した入力データから、前記印刷データとは異なるコマンドからなる中間データを生成し、記憶手段に一時的にスプールするスプールステップを更に有し、前記レイアウト制御ステップは、前記スプールステップによりスプールされている中間データを編集することにより、出力される１ページのレイアウトを制御することを特徴とする
【００３６】
本発明に係る第２３の発明は、前記スプールステップは、前記中間データを生成してスプールする際に、前記中間データの論理ページ情報を取得し、前記レイアウト制御ステップは、自動Ｎｕｐ印刷モードが指定されている場合に、前記論理ページ情報に基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする。
【００３７】
本発明に係る第２４の発明は、前記印刷装置は両面印刷機能を有し、前記レイアウト制御ステップは、前記印刷モード指定ステップにより両面印刷モードが指定された場合に、自動Ｎｕｐ印刷モードにおいて、両面印刷モード用のレイアウトページ数決定テーブルに基づいて、出力される１ページに配置されるべきレイアウトページ数を決定することを特徴とする。
【００３８】
本発明に係る第２５の発明は、前記印刷モード指定ステップは、Ｎｕｐ印刷モードと自動Ｎｕｐ印刷モードのいずれかを指定するものであり、前記レイアウト制御ステップは、前記印刷モード指定ステップによりＮｕｐ印刷モードが指定されている場合に、前記Ｎｕｐ印刷モードで指定されるレイアウトページ数分の入力データが、出力される１ページに配置されるよう制御し、一方、前記印刷モード指定ステップにより自動Ｎｕｐ印刷モードが指定されている場合に、前記入力データのページ数に基づいてレイアウトページ数を決定し、決定されたレイアウトページ数分の前記入力データが、出力される１ページに配置されるよう制御することを特徴とする。
【００３９】
本発明に係る第２６の発明は、第２１〜第２５の発明のいずれかのデータ処理方法を実行させるためのプログラムをコンピュータが読み取り可能な記憶媒体に格納したことを特徴とする。
【００５９】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る好適な実施形態を詳細に説明する。
【００６０】
〔第１実施形態〕
図１は、本発明の第１実施形態を示すデータ処理装置を適用可能な印刷システムの構成を説明するブロック図であり、データ源となるパーソナルコンピュータ等の情報処理装置とプリンタとが所定の通信媒体を介して通信可能な場合に対応する。
【００６１】
図において、１はパーソナルコンピュータ等の情報処理装置で、詳細は後述するビデオメモリ（ＶＲＡＭ）３，表示部（ＣＲＴ）４，キーボード（ＫＢＤ）５，ポインティングデバイス（ＰＤ）６，ディスクコントローラ部７，ハードディスク装置（ＨＤ）９，接続部１０，ＣＰＵｌｌ，ＲＡＭ１２及びＲＯＭ１３を主要な構成要素とし、これらの構成要素がシステムバス２を介して互いに接続されている。
【００６２】
ＣＰＵｌｌは後述する図４等のフローチャートで表わされるプログラムに従って情報処理装置１全体を制御するものである。また、ＲＡＭ１２は、ＣＰＵｌｌの主メモリとしてプログラムを格納すると共に、ＣＰＵｌｌによる制御実行時、ワークデータエリアとして使用される各種データの一時記憶領域を備えている。
【００６３】
ディスクコントローラ部７は、外部メモリであるハードディスク装置（ＨＤ）９或いはフロッピーディスク（ＦＤ）８等の外部記憶装置とのアクセス制御を行うものである。
【００６４】
ハードディスク装置（ＨＤ）９及びフロッピーディスク（ＦＤ）８はディスク上の磁気記憶媒体にデータを記録して読み書きする装置で、各種図形データや文書データ、更にはＲＡＭ１２にダウンロードされて実行される情報処理装置１のブートプログラム，ＣＰＵｌｌの制御プログラムであるオペレーティングシステム（ＯＳ），各種アプリケーションプログラム，プリンタ制御コマンド（印刷データ）生成プログラム（プリンタドライバ）及び印刷データの合成機能等を有する本印刷システムプログラムなどを記憶する。
【００６５】
また、この記憶媒体はハードディスク装置９やフロッピーディスク８だけでなく、磁気テープ，ＣＤ一ＲＯＭ，ＩＣメモリカード，ＤＶＤ等であってもよい。
【００６６】
ＲＯＭ１３は内部メモリであり、前述のハードディスク装置（ＨＤ）９やフロッピーディスク（ＦＤ）８等と同様に各種データやプログラムを記憶している。
【００６７】
また、表示部４は、情報処理装置１において、ビットマップデータ等各種図形やコマンドメニューのコマンドイメージ等のユーザインタフェース（ＵＩ）、オペレータのメッセージ等を画面に表示するもので、ＣＲＴ（陰極線管）液品、或はＦＬＣ等から構成されている。
【００６８】
ビデオメモリ３は、表示部４に表示すべきデータを記憶している。
キーボード５及びポインティングデバイス６は、何れもオペレータにより操作され、各種のデータやコマンド、或は印刷モード等を入力するものである。また、キーボード５及びポインティングデバイス６により、表示部４の画面に表示されたコマンドメニューのコマンドイメージ等を選択することにより、そのコマンドの実行や印刷モードを指示することができる。
【００６９】
１０は接続部であり、セントロニクスインターフェイスや、ネットワークインターフェイス等の所定の双方向インターフェース１４を介してプリンタ装置（プリンタ）１５の接続部１６に接続し、プリンタ制御コマンド（印刷データ）を送信するなど、後述するプリンタ装置１５との通信制御処理を実行する。
１５はプリンタ装置であり、詳細は後述する接続部１７，印刷部（プリンタエンジン）１８，操作部１９，外部メモリ２０，ＣＰＵ２１，ＲＡＭ２２、及びＲＯＭ２３を主要な構成要素とし、これらの構成要素がシステムバス１６を介して互いに接続されている。
【００７０】
ＣＰＵ２１はプリンタＣＰＵで、プリンタ装置１５全体を制御するものである。ＣＰＵ２１は、後述するＲＯＭ１３或いは外部メモリ２０に記憶された制御プログラムに基づいて、接続部１７で受信したプリンタ制御コマンド（印刷データ）より、画像信号を印刷部１８に送信する。
【００７１】
ＲＡＭ２２は、ＣＰＵ２１の主メモリとして、ＣＰＵ２１による制御実行時、ワークデータエリアとして使用される各種データの一時記憶領域を備えている。外部メモリ２０は、オブションとしても接続され、フォントデータ，エミュレーションプログラム，フォームデータ等を記憶する。
【００７２】
ＲＯＭ２３はプリンタ内部メモリであり、外部メモリと同様に、各種データや本プリンタ装置を制御するプリンタ制御プログラム等を記憶している。
【００７３】
また、印刷部１８はプリンタエンジンであり、ＣＰＵ２１により制御され、ＲＯＭ２３、或いは外部メモリ２０に記憶された制御プログラムよリシステムパスを介して出力された画像信号を受け、実際の印刷を行う。
【００７４】
操作部１９は操作パネルや操作スイッチ等の入力部、及びＬＥＤ、液品パネル等の表示部等から構成され、オペレータの操作を受けたり結果を表示するものである。オペレータは操作部１９を介して本プリンタ装置１５の設定を指示したり確認することが可能である。
【００７５】
１７は接続部であり、前述の双方向インターフェース１４を介して情報処理装置１の接続部１６に接続し、プリンタ制御コマンド（印刷データ）を受信したり、プリンタ内部の状態等を通知する事も可能である。
【００７６】
次に、図２及び図３を参照して、本実施形態の情報処理装置１における印刷データの合成機能等を有する本印刷処理装置が動作するまでの前処理について説明する。
【００７７】
本印刷処理装置は、基本Ｉ／Ｏプログラム、オペレーティングシステム（ＯＳ）、及び本印刷処理プログラムをＣＰＵが実行することにより動作する。基本Ｉ／ＯプログラムはＲＯＭ１３に書き込まれており、オペレーティングシステム（ＯＳ）は、ハードディスク（ＨＤ）９或いはフロッピーディスク（ＦＤ）８等の外部記憶メモリに書き込まれている。
【００７８】
まず、情報処理装置１の電源がＯＮされると、基本Ｉ／Ｏプログラム中のイニシャルプログラムローディング（ＩＰＬ）機能により、ハードディスク（ＨＤ）９或いはフロッピーディスク（ＦＤ）８等の外部記憶メモリに記憶されたオペレーティングシステム（ＯＳ）がＲＡＭ１２に読み込まれ、ＯＳが動作される。
【００７９】
次に、オペレータが、キーボード５及びポインティングデバイス６により、表示部３の画面に表示されたコマンドメニューのコマンドイメージ等を選択し、アプリケーションの実行を指示すると、ハードディスク（ＨＤ）９或いはフロッピーディスク（ＦＤ）８等の外部記憶メモリに記憶されたアプリケーションがＲＡＭ１２に読み込まれ、前記アプリケーションが動作する。
【００８０】
次に、前記アプリケーション起動時と同様な手順で、オペレータにより印刷が指示されると、ハードディスク（ＨＤ）９或いはフロッピーディスク（ＦＤ）８等の外部記憶メモリに記憶された印刷データの合成機能等を有する本印刷処理プログラムおよびプリンタ制御コマンド生成プログラム（プリンタドライバ）がＲＡＭ１２に読み込まれ、前記本印刷処理システムが動作する。
【００８１】
本実施形態の場合は、本印刷処理プログラム及び関連データはフロッピーディスク（ＦＤ）８に記憶されており、その記録されている内容の構成を図２に示す。
【００８２】
図２は、図１に示したフロッピーディスク（ＦＤ）８のメモリマップの一例を示す図である。なお、フロッピーディスク（ＦＤ）８に記憶された印刷処理プログラム及び関連データは、ディスクコントローラ部７を通じて本情報処理装置１にロードすることもできる。
【００８３】
このフロッピーディスク８をディスクコントローラ部７にセットすると、ＯＳ及び基本Ｉ／Ｏプログラムの制御の下に本印刷処理プログラム及び関連データがフロッピーディスク（ＦＤ）８から読み出され、ＲＡＭ１２にロードされて動作可能となる。
【００８４】
図３は、図１に示したＲＡＭ１２にのメモリマップの一例を示す図であり、図２に示した本印刷処理プログラムがＲＡＭ１２にロードされ実行可能となった状態に対応する。
【００８５】
次に、図４〜図１３中に含まれるフローチャート、ユーザインタフェース（ＵＩ）画面図，データ形式図，表及び出力例を参照して、本実施の形態の情報処理装置１における印刷データの自動ページレイアウト機能等を有する本印刷処理システムの動作方法について説明する。
【００８６】
なお、この処理は前記動作ステップにより、印刷可能なアプリケーション等のプログラムが動作している状態で開始される。
【００８７】
本実施形態は、アプリケーションにより文書データの印刷処理を指定し、印刷の体裁としてＮ−ＵＰ印刷及び出力用紙１ページ中にレイアウトするページ数Ｎを指定し、更に、自動Ｎ−ＵＰ印刷モードを指定すると、中間データ書き込みブログラムが、アプリケーションから受け取った文書データを中間データに変換し、その中間データを中間データファイルとして一時保存し、論理ページの総ページ数Ｉを計算し、さらに総ページ数を含んだページ情報を記録したページ情報ファイルを生成する。その後、中間データ編集プログラムにおいて、前記ページ情報ファイルを読み取り、改めて最適なＮ−ＵＰページ数Ｎを計算する。
【００８８】
ここで、最適なＮ−ＵＰページ数Ｎは、Ｎ−ＵＰ印刷モードであって、且つ、自動Ｎ−ＵＰモードが指定されていた場合において、２−ＵＰ（Ｎ＝２）が指定されていた場合、総ページ数Ｉが１ページならＮ＝１、総ページ数Ｉが２ページ以上ならＮ＝２とする。
【００８９】
また、４−ＵＰが指定されていた場合、総ページ数Ｉが１ページならＮ＝１、総ページ数Ｉが２ページならＮ＝２、総ページ数Ｉが３ページ以上ならＮ＝４とする。
【００９０】
更に、８−ＵＰが指定されていた場合、総ページ数Ｉが１ページならＮ＝１、総ページ数Ｉが２ページならＮ＝２、総ページ数Ｉが３ページ或いは４ページならＮ＝４、総ページ数Ｉが５ページ以上ならＮ＝８とする。
【００９１】
同様に、指定されたＮを最大値として最適なＮは、総ページ数Ｉを有効に物理ページにレイアウトするための値とする。その後、中間データ編集プログラムは前記各々の中間データ一時保存ファイルを読み取り、Ｎ−ＵＰページ数Ｎにしたがってページレイアウトの処理を施し、ページレイアウト印刷処理を行う。
【００９２】
その後、中間データ出力プログラムが、該中間デ−タを、プリンタ制御コマンド生成プログラム（プリンタドライバ）或はその前段ステップに介在するプログラムに出力し、最終的に前記プリンタ制御コマンド生成プログラム（プリンタドライバ）がプリンタ制御コマンド（印刷データ）を生成し、印刷を行うものである。
【００９３】
図４は、本発明に係るデータ処理装置における第１のデータ処理手順の一例を示すフローチャートであり、図１に示した情報処理装置１側のデータ処理に対応する。なお、（１）〜（７）は各ステップを示す。
【００９４】
まず、ステップ（１）で、本印刷処理システムを機能させるための印刷モードとして、印刷の体裁，ページ数，レイアウト順、及び自動Ｎ−ＵＰ印刷のモードを指定する。
【００９５】
次に、ステップ（２）で、印刷を指定する。印刷モードおよび印刷の指定は、前述の図１に示したキーボード５及びポインティングデバイス６により操作し、表示部３に表示される印刷モード画面（図５参照）に表示されたコマンドメニューのコマンドイメージ等を選択することにより、指示することも可能である。
【００９６】
次に、ステップ（３）で、ステップ（１）で指定したＮ−ＵＰ印刷スイッチ（図５に示すスイッチａのボタンＢＴ２）がＯＮ（図中はＯＮ状態を示す）であるか否かを判断し、Ｎ−ＵＰ印刷スイッチがＯＦＦである判定した場合には、通常の印刷処理として、本印刷処理システムにおけるページレイアウト処理の各ステップをスキップし、ステップ（７）へ進み、プリンタ制御コマンド（印刷データ）を生成し、プリンタ１５に出力して、処理を終了する。
【００９７】
この処理はプリンタ制御コマンド生成プログラム（プリンタドライバ）が請け負う通常の印刷ステップである。
【００９８】
一方、ステップ（３）で、Ｎ−ＵＰ印刷スイッチがＯＮであるとあると判定した場合には、ステップ（４）へ進み、中間データを生成し、該中間データを作成したら、次にステップ（５）に進み、前記中間データを編集する。
【００９９】
次に、ステップ（６）へ進み、該中間データを前記プリンタドライバに出力して、ステップ（７）に進み、プリンタ制御コマンド（印刷データ）を生成し、プリンタに出力して、本実施形態の印刷処理を終了する。
【０１００】
次に、図４に示したステップ（１）における印刷モードの指定方法について図５を用いて詳しく述べる。
【０１０１】
図５は、図１に示した表示部４に表示される印刷モード指定画面の一例を示す図であり、本実施形態の図４に示したステップ（１）において、印刷モードを指定する際の印刷モード指定用ユーザインタフェース（ＵＩ）に対応する。
【０１０２】
図において、ａは印刷の体裁として前述の図４に示したステップ（３）で判断されるＮ−ＵＰ印刷を指定するスイッチであり、通常印刷の指定を行う通常印刷ボタンＢＴ１とＮ−ＵＰ印刷の指定を行うＮ−ＵＰ印刷ボタンＢＴ２を備えている。これらのボタンＢＴ１，ＢＴ２は背反であり、どちらかのモードのみ選択可能となっている。なお、図５では、現在Ｎ−ＵＰ印刷が選択された状態を示しており、Ｎ−ＵＰ印刷ボタンＢＴ２が「黒」に反転している。
【０１０３】
ｂはＮ−ＵＰ印刷時のページ数を指定するコンボボックスある。ボックス中の右側の下矢印ボタンをポインティングデバイス６を操作してクリックすると、順にＮ−ＵＰ時に指定可能なページ数、“２”、“４”、“８”、“９”、“１６”等を選択できる様に構成されている。なお、図５の例では、現在ページ数として“４”ページが選択された状態を示している。
【０１０４】
ｃはＮ−ＵＰ印刷時のレイアウト順を指定するコンボボックスある。ボックス中の右側の下矢印ボタンをポインティングデバイス６を操作してクリックすると、順にＮ−ＵＰ時に前述のページ数に応じた指定可能なレイアウト順として“左上スタート右向き”，“右上スタート左向き”，“左上スタート下向き”，“右上スタート下向き”等を選択できる様に構成されている。特に、図５に示す例では、現在レイアウト順として“左上スタート右向き”が選択された状態を示している。
【０１０５】
また、ｄはＮ−ＵＰ印刷時に本実施形態である自動Ｎ−ＵＰ印刷を行うか否かを指定するチェックボックスである。図５に示す例では、前述のボタンａにおいてＮ−ＵＰ印刷が指定された場合に、本実施形態である自動Ｎ−ＵＰ印刷を行うモードが選択されており、かつ、自動Ｎ−ＵＰ印刷チェックボックスｄがチェックＯＮになっている様子を示している．
ｅはＯＫボタンスイッチであり、指定したモードを決定するときにポインティングデバイス６を操作して選択する。ｆはキャンセルボタンであり、指定したモード及び印刷モードの指定をキャンセルするときにポインティングデバイス６を操作して選択するものである。
【０１０６】
なお、ＯＫボタンｅを選択し、モードを決定すると、印刷モード等の情報は一時的に、ＲＡＭ１２のワーク領域（図３に示したワークエリア）に格納され、後のステップで参照可能となる。
【０１０７】
また、図５に示す設定画面でプリンタ本体が両面印刷機能をサポートしているならば、両面印刷を指示する事も可能である。
【０１０８】
次に、図４に示したステップ（４）の中間データを生成する方法について図６，図７を参照して説明する。
【０１０９】
図６は、図１に示したＲＡＭ１２上のアプリケーションプログラムから印刷処理プログラムに引き渡される描画命令源の一例を示す図であり、本実施形態の図４に示したステップ（２）において、アプリケーション等から印刷実行を指定した時に、本印刷処理システムに渡される文書データの描画命令群に対応する。
【０１１０】
本実施形態における描画命令は、図６に示すように、「ジョブ開始命令」から始まり「ジョブ終了命令」で終わる。
【０１１１】
また、プリンタ初期化命令は、「ジョブ開始命令」の次に現れ、「用紙サイズ指定命令」「印刷方向指定命令」等からなっている。描画命令には「文字印字命令」，「色指定命令」，「図形描画命令」，「イメージ描画命令」，「改ページ命令」等がある。
【０１１２】
「色指定命令」は「文字印字命令」，「図形描画命令」の際の色を予め指定しておく命令であり、これから印字する文字や図形の色をＲＧＢ形式で指定する。
【０１１３】
また、「イメージ描画命令」には一般的なイメージデータ形式として、データ部にＲＧＢ形式のカラーデータテーブルが含まれており、イメージ描画の際の各ピクセルの色は、各ピクセル値がこのカラーテーブルのインデックスを示すことで指定される。
【０１１４】
この他にも、「イメージ描画命令」には、ビットマップデータおよび幅、高さ、描画位置座標情報等が含まれている。さらに、「文字印字命令」には文字種，文字コード，文字印字位置座標，文字幅，文字高さ，文字送り幅，行送り高さ等の情報が、また、「図形描画命令」には、描画図形の種類，各描画図形の属種，描画位置座標情報等も含まれている。
【０１１５】
図７は、本発明に係るデータ処理装置における第２のデータ処理手順の一例を示すフローチャートであり、本実施形態の図４に示したステップ（４）における中間データ生成ステップ、即ち図６に示した描画命令から中間データを生成するステップの詳細手順に対応する。なお、（１）〜（１９）は各ステップを示す。
【０１１６】
まず、ステップ（１）において、ページカウントｉを「０」に初期化する。次に、ステップ（２）に進み、図６で示した描画命令を最初から順に１命令受け取りＭとする。
【０１１７】
次に、ステップ（３）に進み、ステップ（２）で受け取った描画命令Ｍが「ジョプ開始命令」か否かを判断し、受け取った描画命令Ｍが「ジョブ開始命令」であると判定した場合は、ステップ（４）に進み、ページ情報を記録するためのページ情報ファイルをオープンする。
【０１１８】
次に、ステップ（５）へ進み、１ページ目の中間データを一時保存するための中間データファイルをオープンする。次に、ステップ（６）に進み、ページカウントｉをｉ＋１とする。
【０１１９】
次に，ステップ（７）へ進み、ページ情報として、ページ番号（ページカウントｉ）とステップ（４）でオープンした中間データ一時保存ファイルのファイル名Ｐｉを記録する。
【０１２０】
次に、ステップ（８）へ進み、受け取った描画命令Ｍを中間データに変換し前記オープンした中間データ一時保存ファイルに記録し、ステップ（２）へ戻り、次の描画命令を受け取りあらためて描画命令Ｍとする。
【０１２１】
一方、ステップ（３）で、受け取った描画命令Ｍが「ジョブ開始命令」でないときは、ステップ（９）に進み、描画命令Ｍが「改ページ命令」であるか否かを判断し、描画命令Ｍが「改ページ命令」であると判定した場合には、ステップ（１０）へ進み、ステップ（８）と同様に、描画命令Ｍを中間データに変換し記録する。
【０１２２】
次に、ステップ（１１）へ進み、現在記録している１ページ目の中間データ一時保存ファイルをクローズする。次に、ステップ（１２）へ進み、ページカウントｉをｉ＋１とする。次に、ステップ（１３）へ進み、１ページ目の中間データを一時保存するための中間データファイルを新規にオープンする。
【０１２３】
次に、ステップ（１４）に進み、ページ情報として、ページ番号（ページカウントｉ）と前記ステップ（１３）でオープンした中間データ一時保存ファイルのファイル名Ｐｉを記録して、ステップ（２）へ戻り、次の描画命令を受け取りあらためて描画命令Ｍとする。
【０１２４】
一方、ステップ（９）で、描画命令Ｍが「改ページ命令」でないと判定したときは、ステップ（１５）に進み、描画命令Ｍが「ジョブ終了命令」であるか否かを判断し、描画命令Ｍが「ジョブ終了命令」でないと判定したときは、ステップ（１６）に進み、その描画命令を中間データに変換し記録して、ステップ（２）に戻り、次の描画命令を受け取りあらためて描画命令Ｍとする。
【０１２５】
一方、ステップ（１５）で、描画命令Ｍが「ジョブ終了命令」であると判定した場合は、ステップ（１７）に進み、描画命令Ｍを中間データに変換し記録する。
【０１２６】
次に、ステップ（１８）に進み、現在参照している中間データを一時保存する中間データ一時保存ファイルをクローズする。次に、ステップ（１９）に進み、ページ情報を記録したページ情報一時保存ファイルをクローズし、処理を終了する。
【０１２７】
次に、図８を参照して図７に示したステップ（７），ステップ（１４）における、ベ−ジ情報の記録方法及び、ステップ（８）、ステップ（１０）、ステップ（１６）、ステップ（１７）における中間データヘの変換／記録方法について説明する。
【０１２８】
図８は、図１に示したハードディスク装置９上に確保される中間データ一時保存ファイルと中間データファイルとの関係を説明する図である。
【０１２９】
図において、一時保存ファイルは、ページ情報を記録するページ情報一時保存ファイルと、各ページ毎に中間データを記録するため中間データ一時保存ファイルからなっている。
【０１３０】
ページ情報一時保存ファイルは、図７に示したステップ（７），（１４）におけるページ情報記録ステップ、すなわち、先頭ページ及び改ページが行われた時に記録されるファイルであり、現在のページ番号（ページカウントｉ）とそのページに対応した中間データ一時保存ファイルのファイル名Ｐｉを記録する。
【０１３１】
例えば、図８において、ファイル名Ｐ１は、１ページ目の中間データを記録するファイルである。また、ページ数カウンタｉは、ページ情報記録ステップ毎に更新され、最終的にｉは総ページ数としてＩが記録される。
【０１３２】
一方、中間データ一時保存ファイルは、前記描画命令を別の命令形式で置き換えた中間データを記録する領域であり、前述した図６に示した描画命令における「改ページ命令」等で区切られたページ毎に生成される。
【０１３３】
また、中間データは、ある複数の前記描画命令を１つにまとめた形式にするなども可能である。
【０１３４】
次に、図４に示したステップ（５）における中間データ編集ステップについて図９〜図１２を参照して説明する。
【０１３５】
図９は、図４に示した中間データ編集処理時におけるページレイアウト印刷機能の一例を説明する図である。
【０１３６】
図において、Ｌｌ〜Ｌ１７は、論理ページＬｉを示したものであり、この例ではｉ＝１〜１７として、１７ページの出力ページの例を示している。
【０１３７】
Ｆｌ，Ｆ２は実際にプリンタに出力される際のページ、すなわち物理ページＦｉを示したものであり、論理ページＬｉの各ページのデータが縮小され、物理ページ１ページ中に割り付けられレイアウトされている。
【０１３８】
また、ＮはＮ−ＵＰページ数、すなわち物理ページ１ページ中にレイアウトされる論理ページのページ数を表しており、この例ではＮ＝９（９−ＵＰ）として、論理ページ９ページ分を物理ページ１ページ中に縮小しレイアウトしている。
【０１３９】
なお、レイアウト順は、図９に示す例においては、“左上スタート右向き”であり、左上を論理ページの１ページ目、Ｌ１とし、以降右へＬ２，Ｌ３、その後下段へＬ４，Ｌ５としているが、前述のようにＮ−ＵＰ印刷機能におけるレイアウト順はこの限りでなく、右上から下方に、その後左列にといった順序や、左上から下方に、その後右列にといったレイアウトも可能である。
【０１４０】
また、物理ページ１ページ中にレイアウトする論理ページ数Ｎも９ページ（９−ＵＰ）だけでなく前述のとおり、２ページ（９−ＵＰ）、４ページ（４−ＵＰ）、８ページ（８−ＵＰ）、１６ページ（１６−ＵＰ）等が可能である。
【０１４１】
この時物理ページＦｉのページ数Ｉ’は、（Ｉ／Ｎ）の商で表される。さらに、論理ページ数を１ページ（１−ＵＰ）とすれば、ページレイアウトを行わない場合と同様で、通常の出力ページ１枚に対して１ページ分の等倍出力となる。
【０１４２】
次に、図８を参照して、前述の中間データのページ番号と論理ページＬｉ、物理ページＦｉについてもう少し説明する。
【０１４３】
図８における中間データファイルは、図６に示したアプリケーションからの描画命令順序にしたがって、順に生成されたものであり、中間データファイルのページ番号はアプリケーションが出力したページ番号と一致する。論理ページＬｉは、この中間データのページ番号をＮ−ＵＰ印刷機能のために並べ替えたものであり、中間データファイルのページ番号と一意に対応する。
【０１４４】
例えば中間データファイルのページ番号１〜Ｉに対し、論理ページＬｉをＬＩ〜Ｌｌに逆に割り振り、物理ベ−ジＦｌのレイアウトをＮ＝１（１−ｕｐ）とすると、単純な逆順で印刷されることになる。この論理ページ及び物理ページの割り振りはいろいろな組み合わせが可能であり、出力ページのレイアウト体裁を色々変えることも可能である。
【０１４５】
次に、図１０を参照して図４に示したステップ（５）における中間データ編集処理のページ編集処理および色変換処理の各処理手順について説明する。
【０１４６】
図１０は、本発明に係るデータ処理装置における第３のデータ処理手順の一例を示すフローチャートであり、本実施形態の中間データ編集手順に対応する。なお、（１）〜（１８）は各ステップを示す。
【０１４７】
まず、ステップ（１）で、一時保存されたページ情報ファイルをオープンする。次に、ステップ（２）に進み、前記ページ情報ファイルからページ情報を読み込む。
【０１４８】
なお、図８の説明で示したとおり、ページ情報には、総ページ数Ｉ，各ページの中間データ記録ファイルのファイル名Ｐｉ等を含む。
【０１４９】
次に、ステップ（３）に進み、前述の図４に示したステップ（１）における印刷モ−ドに基づいて、改めて最適なページレイアウト印刷Ｎ−ＵＰ印刷のためのページ数Ｎを計算する。
【０１５０】
次に、ステップ（４）に進み、レイアウト設定として、前述した中間データのページ番号に論理ページＬｉの割り振り、および、物理ページにレイアウトする際の、論理ページＬｉの各ページの縮尺倍率Ｓの計算を行う。この割り振りは、図４に示したステップ（１）における印刷モード指定時にオペレータによって設定されそれに基づいて計算される。
【０１５１】
具体的には前述の図８の説明した例のように、逆順が指定されたら論理ページＬｉを中間データファイルのページ番号と逆に割り振る等を行う。また、縮尺倍率Ｓは、前述のステップ（３）で計算されたＮ−ＵＰページ数Ｎにしたがって、例えば前述の図８で説明した例のように、Ｎ＝９であれば単純に、Ｓ＝１／３或いは１／３より若干小さ目の倍率とすることができる。
【０１５２】
次に、ステップ（５）に進み、論理ページＬｉをカウントするためのページカウンタｉを「１」として初期化する。次に、ステップ（６）に進み、ページカウンタｉが論理ページの総数Ｉ（論理ページの総数Ｉは中間データファイルのページ数と一致する）に対してｉ＝Ｉ＋１であるか否かを判断し、ｉ＝Ｉ＋１であると判断した場合は、すべての中間データファィルを編集し終えたものとして、ステップ（１９）に進み、ジョブの終了として終了コードを論理ページＬＩに対応つけられた中間データファイルの最後に出力する。
【０１５３】
次に、ステップ（２０）に進み、ページ情報ファイルをクローズして、処理を終了する。
【０１５４】
一方、ステップ（６）で、ｉ＝Ｉ＋１でないと判定した場合は、ステップ（７）に進み、論理ページＬｉを物理ページにレイアウトするためのポジション（基準位置）を計算する。
【０１５５】
この基準位置は、例えば論理ページ左上の座標が物理ページ中のどこに配置されるか等を示した座標であり、前述のステップ（３）で計算された物理ページ１ページ内にレイアウトすべき論理ページＬｉのページ数Ｎ、レイアウト順、注目している論理ページＬｉにより決定される。
【０１５６】
図９に示した物理ページの説明の例においては、現在着日している論理ページがＬ２であった場合、Ｎ＝９（９−ＵＰ）、左上から右方向のレイアウトであるので、物理ページの左上を座標原点と見立てた場合、単純に、横方向座標ｘ＝物理ページ幅÷３、縦方向座標ｙ＝上部余白の高さ、とすることも可能である。
【０１５７】
次に、ステップ（８）へ進み、論理ページＬｉに対応づけられた中間データファイルをオープンする。次にステップ（９）へ進み、中間データのレコードを順に読み込みＲとする。
【０１５８】
次に、ステップ（１０）へ進み、前記ステップ（９）で読み込んだ中間データＲが「改ページ」或いは「ジョブ終了」であるか否かを判断し、中間データＲが「改ページ」或いは「ジョブ終了」でないと判定した場合は、ステップ（１１）に進み、読み込んだ中間データＲの置き換え処理を行う。なお、特に、置き換えがなければ置き換えをせず、そのまま次ステップに進む事も可能である。
【０１５９】
次に、ステップ（１２）に進み、ステップ（１１）で置き換えた中間データＲをＲ’とし、ステップ（５）で計算した倍率Ｓおよびポジションにしたがって、中間データファイルとして出力編集し、ステップ（９）に戻り、次の中間データのレコードを取得し改めて中間データＲとする。
【０１６０】
一方、ステップ（１０）で、中間データＲが「改ページ」或いは「ジョブ終了」であると判定した場合は、ステップ（１３）に進み、物理ページの改ページを行うかを判断するがごとく、Ｍｏｄ（１、Ｎ）＝０であるか否かを判断する。
【０１６１】
ここで、Ｍｏｄ（１、Ｎ）は現在の論理ページカウンタｉを物理ページ１ページ内にレイアウトすべき論理ページ数Ｎで割った余りを計算する関数である。
【０１６２】
上記ステップ（１３）で、Ｍｏｄ（１、Ｎ）＝０でないと判定した場合は、ステップ（１４）に進み、現在オープンしている論理ページＬｉに対応づけられた中間データファイルをクローズする。
【０１６３】
次に，ステップ（１５）に進み、論理ページカウンタｉをｉ＝ｉ＋１とし、１ページ分進め、ステップ（６）へ戻る。
【０１６４】
一方、ステップ（１３）で、Ｍｏｄ（１、Ｎ）＝０であると判定した場合は、ステップ（１６）に進み、物理ページを改ページする。
【０１６５】
すなわち、現在オープンしている論理ページＬｉに対応づけられている中間データファイルの最後に改ページレコードを中間データとして記録する。
【０１６６】
次に、ステップ（１７）に進み、現在オープンしている論理ページＬｉに対応づけられた中間データファイルをクローズする。次に，ステップ（１８）に進み、論理ページカウンタｉをｉ＝ｉ＋１とし、１ページ分進め，ステップ（６）へ戻り、終了のための判断を行う。
【０１６７】
次に，図１０に示したステップ（３）におけるＮ−ＵＰページ数Ｎの計算方法について図１１及び図１２を用いて説明する。
【０１６８】
図１１は、本発明に係るデータ処理装置における第４のデータ処理手順の一例を示すフローチャートであり、本実施形態における最適なＮ−ＵＰページ数Ｎを計算するた詳細手順に対応する。なお、（１），（２）は各ステップを示す。また、各ステップを実行する前にＮの初期値として、前述の図４に示したステップ（１）で指定されたＮ−ＵＰ印刷のためのページ数Ｎは予め設定されているものとする。
【０１６９】
まず、ステップ（１）で、図４に示したステップ（１）で指定された自動Ｎ−ＵＰフラグがＯＮ（自動Ｎ−ＵＰ印刷）であるか否かを判断し、自動Ｎ−ＵＰフラグがＯＮでないと判定した場合は、Ｎ−ＵＰページ数は前記図４に示したステップ（１）で指定されたページ数のまま変更せずに、処理を終了する。
【０１７０】
一方、ステップ（１）で、自動Ｎ−ＵＰフラグがＯＮであると判定した場合、ステップ（２）へ進み、図１２に示すテーブルを参照して最適なＮ−ＵＰページ数Ｎを算出して、処理を終了する。
【０１７１】
図１２は、図１に示した情報処理装置に記憶される第１のページ数決定テーブルの一例を示す図であり、最適なＮ−ＵＰページ数を算出するためのテーブルＴＢ−Ａに対応する。
【０１７２】
例えば前述の図４に示したステップ（１）で、予め指定されたＮ−ＵＰページ数Ｎ及び、前述の図７に示したフローチャートで計算された文書データの総ページ数Ｉによって最適なＮを決定している。
【０１７３】
具体的には、予め指定されているＮ−ＵＰページ数Ｎが「２（２−ＵＰ）」の場合、総ページ数Ｉが「１」ページなら最適なＮの値を「１」としている。また、総ページ数が２ページ以上なら最適なＮの値を「２」としている。
【０１７４】
さらに、予め指定されているＮ−ＵＰページ数Ｎが「４（４−ＵＰ）」の場合、総ページ数Ｉが「１」ページなら最適なＮ−ＵＰページ数Ｎの値を「１」とし、総ページ数が「２」ページなら最適なＮ−ＵＰページ数Ｎの値を「２」とし、総ページ数が「３」ページ以上なら最適なＮ−ＵＰページ数Ｎの値を「４」としている。
【０１７５】
このように、この図１２に示すテーブルにより予め指定されたＮ−ＵＰページ数Ｎの値が「２、４、８、９、１６」についてのすべての場合の最適なＮ−ＵＰページ数Ｎの値を、総ページ数Ｉによって改めて決定している。
【０１７６】
〔第２実施形態〕
次に、本発明に係る第２実施形態を図１３，図１４に基づき説明する。なお、第２実施形態における印刷処理装置の基本構成及び処理動作は、前述した第１実施形態における図１〜図１０と同一であり、これら図１〜図１０を適宜参照して説明する。
【０１７７】
本実施形態は、アプリケーションにより文書データの印刷処理を指定し、印刷の体裁としてＮ−ＵＰ印刷及び出力用紙１ページ中にレイアウトするページ数Ｎを指定し、更に自動Ｎ−ＵＰ印刷モードを指定する。また、同時に、両面印刷が可能なプリンタであれば、両面印刷を指示する。
【０１７８】
その後、中間データ書き込みプログラムが、アプリケーションから受け取った文書データを中間データに変換し、その中間データを中間データファイルとして一時保存し、論理ページの総ページ数Ｉを計算し、さらに総ページ数を含んだページ情報を記録したページ情報ファイルを生成する。その後、中間データ編集プログラムにおいて、前記ページ情報ファイルを読み取り、改めて最適なＮ−ＵＰページ数Ｎを計算する。
【０１７９】
ここで、最適なＮは、前記Ｎ−ＵＰ印刷モードであって、且つ、自動Ｎ−ＵＰモードが指定され、更に両面印刷モードが指示されていた場合において、２−ＵＰ（Ｎ＝２）が指定されていた場合、総ページ数Ｉが１ページ或いは２ページならＮ＝１、総ページ数Ｉが３ページ以上ならＮ＝２とする。
【０１８０】
また、４−ＵＰが指定されていた場合、総ページ数Ｉが「１」ページ或いは「２」ページならＮ＝「１」、総ページ数Ｉが「３」ページ或いは「４」ページならＮ＝「２」、総ページ数Ｉが「５ページ以上ならＮ＝「４」とする。
【０１８１】
更に、８−ＵＰが指定されていた場合、総ページ数Ｉが「１」ページ或いは「２」ページならＮ＝「１」、総ページ数Ｉが「３」ページ或いは「４」ページならＮ＝「２」、総ページ数Ｉが「５」ページ以上「８」ページまでならＮ＝「４」、総ページ数Ｉが「９」ページ以上ならＮ＝「８」とする。
【０１８２】
同様に、指定されたＮを最大値として最適なＮは、両面印刷の場合において、総ページ数Ｉを有効に物理ページにレイアウトするための値とする。また、前記両面印刷モードが指定されていない場合は、最適なＮの値は、第１実施形態と同様に総ページ数Ｉを有効に物理ページにレイアウトするための値とする。
【０１８３】
その後、中間データ編集プログラムは前記各々の中間データ一時保存ファイルを読み取り、Ｎ−ＵＰページ数Ｎにしたがってページレイアウトの処理を施し、ページレイアウト印刷処理を行う。
【０１８４】
その後、中間データ出力プログラムが、該中間データを、プリンタ制御コマンド生成プログラム（プリンタドライバ）或はその前段ステップに介在するプログラムに出力し、最終的に前記プリンタ制御コマンド生成プログラム（プリンタドライバ）がプリンタ制御コマンド（印刷データ）を生成し、印刷を行うものである。
【０１８５】
この第２実施形態が前述した第１実施形態と異なる点は、図１０に示したステップ（３）における最適なＮ−ＵＰページ数Ｎの計算処理方法のみであり、その他の処理は同じである。従って、ここでは、図１０に示したステップ（３）における最適なＮ−ＵＰページ数Ｎの計算処理方法を図１３，図１４を用いて説明し、残りの処理は説明を省略する。
【０１８６】
図１３は、本発明に係るデータ処理装置における第５のデータ処理手順の一例を示すフローチャートであり、本実施形態の最適なＮ−ＵＰページ数Ｎを計算するための要部詳細手順に対応する。なお、（１）〜（４）は各ステップを示す。また、これら各ステップを実行する前にＮ−ＵＰページ数Ｎの初期値として、前述の図４に示したステップ（１）で指定されたＮ−ＵＰ印刷のためのページ数Ｎは予め設定されているものとする。
【０１８７】
まず、ステップ（１）で、図４に示したステップ（１）で指定された自動Ｎ−ＵＰフラグがＯＮ（自動Ｎ−ＵＰ印刷）であるか否かを判断し、自動Ｎ−ＵＰフラグがＯＮでないと判定した場合は、Ｎ−ＵＰページ数は前記図４に示したステップ（１）で指定されたページ数のまま変更せずに、処理を終了する。
【０１８８】
一方、ステップ（１）で、自動Ｎ−ＵＰフラグがＯＮであると判定した場合、ステップ（２）へ進み、ステップ（２）へ進み、両面印刷フラグがＯＮに設定されているか否かを判断し、両面印刷フラグがＯＮに設定されていると判定した場合は、ステップ（３）へ進み、後述する図１４に示すテーブルＴＢ−Ｂを参照して最適なＮ−ＵＰページ数Ｎを算出して、処理を終了する。
【０１８９】
一方、ステップ（２）で、両面印刷フラグがＯＦＦに設定されていると判定した場合は、ステップ（４）ヘ進み、第１実施形態で説明した場合と同様に、図１１に示した手順および図１２に示したテーブルＴＢ−Ａを参照して最適なＮ−ＵＰページ数Ｎを算出して、処理を終了する。
【０１９０】
図１４は、図１に示した情報処理装置に記憶される第２のページ数決定テーブルの一例を示す図であり、両面印刷が指定された場合において、最適なＮ−ＵＰページ数を算出するためのテーブルＴＢ−Ｂに対応し、前述の図４に示したステップ（１）で、予め指定されたＮ−ＵＰページ数Ｎ及び、前述の図７に示したフローチャートで計算された文書データの総ページ数Ｉによって最適なＮを決定している。
【０１９１】
例えば、予め指定されているＮ−ＵＰページ数Ｎが「２（２−ＵＰ）」の場合、総ページ数Ｉが「１」ページ或いは「２」ページなら最適なＮの値を「１」とし、総ページ数が「３」ページ以上なら最適なＮの値を「２」とし、予め指定されているＮ−ＵＰページ数Ｎが「４（４−ＵＰ）」の場合、総ページ数Ｉが「１」ページ或いは「２」ページなら最適なＮの値を「１」としている。
【０１９２】
また、総ページ数が「３」ページ或いは「４」ページなら最適なＮの値を「２」とし、総ページ数が「５」ページ以上なら最適なＮの値を「４」としている。
【０１９３】
このように、この図１３に示すテーブルＴＢ−Ｂにより予め指定されたＮの値が「２、４、８、９、１６」についてのすべての場合において、両面印刷が指定された場合の最適なＮの値を、総ページ数Ｉによって改めて決定している。
【０１９４】
〔第３実施形態〕
次に、本発明に係る第３実施形態を図１５に基づき説明する。なお、第３実施形態における印刷処理装置の基本構成及び処理動作は、前述した第１実施形態における図１〜図１１と同一であり、これら図１〜図１１中で必要な図を適宜参照して説明する。
【０１９５】
本実施形態は、アプリケーションにより文書データの印刷処理を指定し、印刷の体裁としてＮ−ＵＰ印刷及び出力用紙１ページ中にレイアウトするページ数Ｎを指定し、更に自動Ｎ−ＵＰ印刷モードを指定する。
【０１９６】
その後、中間データ書き込みプログラムが、アプリケーションから受け取った文書データを中間データに変換し、その中間データを中間データファイルとして一時保存し、論理ページの総ページ数Ｉを計算し、さらに総ページ数を含んだページ情報を記録したページ情報ファイルを生成する。
【０１９７】
その後、中間データ編集プログラムにおいて、前記ページ情報ファイルを読み取り、改めて最適なＮ−ＵＰページ数Ｎを計算する。ここで、最適なＮは、前記Ｎ−ＵＰ印刷モードであって、且つ、自動Ｎ−ＵＰモードが指定された場合において、総ページ数Ｉが「１」ページならＮ＝「１」、総ページ数Ｉが「２」ページなら、Ｎ＝「２」、総ページ数が「３」ページあるいは「４」ページならＮ＝「４」、総ページ数Ｉが「５」ページ以上「８」ページならＮ＝「８」とする。
【０１９８】
さらに、総ページ数Ｉが「９」ページ或いは「１７」ページ或いは「１８」ページならＮ＝「９」、総ページ数Ｉが「１０」ページ以上「１６」ページ或いは「１９」ページ以上ならＮ＝「１６」とする。
【０１９９】
このように、本実施形態における最適なＮの値は、出力ページ数に応じてなるべく出力用紙の枚数を抑え、且つ、用紙の印字領域を有効に使うように計算した値である。
【０２００】
その後、中間データ編集プログラムは前記各々の中間データ一時保存ファイルを読み取り、Ｎ−ＵＰページ数Ｎにしたがってページレイアウトの処理を施し、ページレイアウト印刷処理を行う。
【０２０１】
その後、中間データ出力プログラムが、該中間データを、プリンタ制御コマンド生成プログラム（プリンタドライバ）或はその前段ステップに介在するプログラムに出力し、最終的に前記プリンタ制御コマンド生成プログラム（プリンタドライバ）がプリンタ制御コマンド（印刷データ）を生成し、印刷を行うものである。
【０２０２】
この第３実施形態が前述した第１実施形態と異なる点は、図１１に示したステップ（２）における最適なＮ−ＵＰページ数Ｎの計算処理方法のみであり、その他の処理は同じである。従って、ここでは、このステップ（２）における最適なＮ−ＵＰページ数Ｎの計算処理方法を図１５に示すテーブルＴＢ−Ｃを参照して説明し、残りの処理は説明を省略する。
【０２０３】
図１５は、図１に示した情報処理装置に記憶される第３のページ数決定テーブルの一例を示す図であり、最適なＮ−ＵＰページ数を算出するためのテーブルであり、前述の図７のフローチャ‐卜で計算された文書データの総ページ数Ｉによって最適なＮを決定して場合に対応する。
【０２０４】
図において、総ページ数Ｉが１ページならＮ＝「１」、総ページ数Ｉが「２」ページなら、Ｎ＝「２」、総ページ数が「３」ページあるいは「４」ページならＮ＝「４」、総ページ数Ｉが「５」ページ以上「８」ページならＮ＝「８」とする。
【０２０５】
さらに、総ページ数Ｉが「９」ページ或いは「１７」ページ或いは「１８」ページならＮ＝「９」、総ページ数Ｉが「１０」ページ以上「１６」ページ或いは「１９」ページ以上ならＮ＝「１６」とする。
【０２０６】
このように、この図１５に示したテーブルＴＢ−Ｃにより、最適なＮの値を総ページ数Ｉによって決定している。
【０２０７】
〔第４実施形態〕
次に、本発明に係る第４実施形態を図１６に基づき説明する。なお、第４実施形態における印刷処理装置の基本構成及び処理動作は、前述した第１実施形態における図１〜図１０および第２実施形態における図１３と同一であり、これら図１〜図１０及び図１３を適宜参照して説明する。
【０２０８】
本実施形態は、アプリケーションにより文書データの印刷処理を指定し、印刷の体裁としてＮ−ＵＰ印刷及び出力用紙１ページ中にレイアウトするページ数Ｎを指定し、更に自動Ｎ−ＵＰ印刷モードを指定する。
【０２０９】
また、同時に両面印刷が可能なプリンタであれば両面印刷を指示する。その後、中間データ書き込みプログラムが、アプリケーションから受け取った文書データを中間データに変換し、その中間データを中間データファイルとして一時保存し、論理ページの総ページ数Ｉを計算し、さらに総ページ数を含んだページ情報を記録したページ情報ファイルを生成する。
【０２１０】
その後、中間データ編集プログラムにおいて、前記ページ情報ファイルを読み取り、改めて最適なＮ−ＵＰページ数Ｎを計算する。ここで、最適なＮは、前記Ｎ−ＵＰ印刷モードであって、且つ、自動Ｎ−ＵＰモードが指定され、更に両面印刷モードが指示されていた場合において、総ページ数Ｉが「１」ページ或いは「２」ページならＮ＝「１」、総ページ数Ｉが「３」ページ或いは「４」ページならＮ＝「２」、総ページ数Ｉが「５」ページ以上「８」ページまでならＮ＝「４」とする。
【０２１１】
さらに、総ページ数Ｉが「９」ページ或いは「１７」ページ或いは「１８」ページ或いは「３３」ページ以上「３６」ページまでならＮ＝「９」、総ページ数Ｉが「１０」ページ以上「１６」ページまでならＮ＝「８」、総ページ数Ｉが「１９」ページ以上「３２」ページまで或いは「３７」ページ以上ならＮ＝「１６」とする。
【０２１２】
このように、最適なＮの値は、両面印刷の場合において、出力ページ数に応じてなるべく出力用紙の枚数を抑え、且つ、用紙の印字領域を有効に使うように計算した値である。
【０２１３】
その後、中間データ編集プログラムは前記各々の中間データ一時保存ファイルを読み取り、Ｎ−ＵＰページ数Ｎにしたがってページレイアウトの処理を施し、ページレイアウト印刷処理を行う。
【０２１４】
その後、中間データ出力プログラムが、概中間データを、プリンタ制御コマンド生成プログラム（プリンタドライバ）或はその前段ステップに介在するプログラムに出力し、最終的に前記プリンタ制御コマンド生成プログラム（プリンタドライバ）がプリンタ制御コマンド（印刷データ）を生成し、印刷を行うものである。
【０２１５】
この第４実施形態が前述した第２実施形態と異なる点は、図１３に示したステップ（３）における最道なＮ−ＵＰページ数Ｎの計算処理方法のみであり、その他の処理は同じである。従って、ここでは図１３に示したステップ（３）における最適なＮ−ＵＰページ数Ｎの計算処理方法を図１６に示すテーブルＴＢ−Ｄを参照して説明し、残りの処理は説明を省略する。
【０２１６】
図１６は、図１に示した情報処理装置に記憶される第４のページ数決定テーブルの一例を示す図であり、最適なＮ−ＵＰページ数を算出するためのテーブルであり、前述の図７のフローチャ‐卜で計算された文書データの総ページ数Ｉによって最適なＮを決定して場合に対応する。
【０２１７】
図において、総ページ数Ｉが「１」ページ或いは「２」ページならＮ＝「１」、総ぺ‐ジ数Ｉが「３」ページ或いは「４」ページならＮ＝「２」、総ページ数Ｉが「５」ページ以上「８」ページまでならＮ＝「４」とする。
【０２１８】
さらに、総ページ数Ｉが「９」ページ或いは「１７」ページ或いは「１８」ページ或いは「３３」ページ以上「３６」ページまでならＮ＝「９」、総ページ数Ｉが「１０」ページ以上「１６」ページまでならＮ＝「８」、総ページ数Ｉが「１９」ページ以上「３２」ページまで或いは「３７」ページ以上ならＮ＝「１６」とする。
【０２１９】
このように、図１６に示すテーブルＴＢ−Ｄにより、両面印刷が指定された場合の最道なＮの値を、総ページ数によって決定している。
【０２２０】
以下、図１７に示すメモリマップを参照して本発明に係るデータ処理装置を適用可能な印刷システムで読み出し可能なデータ処理プログラムの構成について説明する。
【０２２１】
図１７は、本発明に係るデータ処理装置を適用可能な印刷システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０２２２】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０２２３】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０２２４】
本実施形態における図４，図７，図１０，図１１，図１３に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０２２５】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０２２６】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２２７】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピーディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ等を用いることができる。
【０２２８】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２２９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２３０】
上記各実施形態によれば、以上説明したように本発明の印刷処理方法及び装置及び記憶媒体によれば、ページ単位で印刷する機能を有するプリンタと、該プリンタと接続されたバーソナルコンピュータ等の情報処理装置からなるシステムであって、さらに、前記情報処理装置上の印刷処理において、前記プリンタに送信すべき印刷データを生成する前に、前記印刷データと異なるデータ形式の中間データを生成し、前記中問データを一時保存し、該中間データから印刷データを生成することが可能な印刷処理システムにおいて、印刷モードが指定され、印刷の実行が指定され、前記中間データが生成され一時保存される際に、前記プリンタに送信すべき印刷データのページ情報が記録され、前記印刷モードと前記ページ情報より、前記一時保存した中間デニタのレイアウト印刷制御が実行され、前記ページ編集された中間データが出力され、前記出力された中間データより、最終的な印刷データが生成出力されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を秦する。
【０２３１】
また、前記印刷モード指定の際、ページレイアウト印刷モードと１ページ中にレイアウトするページ数が指定されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷、を可能にし得る効果を奏する。
【０２３２】
また、前記印刷モード指定の際、ページレイアウト印刷モードが指定された場合に自動的に１ページ中にレイアウトするページ数を計算するか否かの印刷モードが指定されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２３３】
また、前記印刷モード指定の際、プリンタが両面印刷可能ならば両面印刷モードが指定されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷、を可能にし得る効果を奏する。
【０２３４】
また、前記ページ情報記録の際、印刷データの総ページ数がカウントされるので、適切なページレイアウト指示のためのオペレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２３５】
また、前記中間データ編集の際、前記印刷データの指定においてページレイアウト印刷を行うモードであるとき、ページレイアウト印刷処理が実行されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２３６】
また、前記中間データ編集の際、前記自動的に１ページ中にレイアウトするページ数を計算するモードが指定されたときに、指定されたページ数によらず、印刷データの総ページ数が１ページであれば１ページ中にレイアウトするページ数が１ページとされるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２３７】
また、前記中間データ編集の際、前記自動的に１ページ中にレイアウトするページ数を計算するモードが指定され両面印刷が指定されたときに、指定されたページ数によらず、印刷データの総ページ数が１ページ或いは２ページであれば１ページ中にレイアウトするページ数が１ページとされるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２３８】
また、前記中間データ編集の際、前記自動的に１ページ中にレイアウトするページ数を計算するモードが指定されたときに、印刷データの各ページを出力用紙上に有効に配置するために、指定されたページ数を最大とし、印刷データの総ページ数により１ページ中にレイアウトするページ数が自動計算されるので、適切なページレイアウト指示のためのオベーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２３９】
また、前記中間データ編集の際、前記自動的に１ページ中にレイアウトするページ数を計算するモードが指定され両面印刷が指定されたときに、印刷データの各ページを出力用紙の両面に有効に配置するために、指定されたページ数を最大とし、印刷データの総ページ数により１ページ中にレイアウトするページ数が自動計算されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２４０】
また、前記中間データ編集の際、前記自動的に１ページ中にレイアウトするページ数を計算するモードが指定されたときに、印吊けデータの各ページを出力用紙１ページに収まるように配置するために、指定されたページ数によらず印刷データの総ページ数により１ページ中にレイアウトするページ数が自動計算されるので、道切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を秦する。
【０２４１】
また、前記中間データ編集の際、前記自動的に１ページ中にレイアウトするページ数を計算するモードが指定され両面印刷が指定されたときに、印刷データの各ページを出力用紙１ページの両面に収まるように配置するために、指定されたページ数によらず印刷データの総ページ数により１ページ中にレイアウトするページ数が自動計算されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２４２】
また、前記印刷モード指定および前記印刷指示は、キーボードにより指定及び指示されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷処理を可能にし得る効果を奏する。
【０２４３】
また、前記印刷モード指定および印刷指示は、ポインティングデバイスにより指定及び指示されるので、適切なページレイアウト指示のためのオペーレーションを軽減し、出力用紙を節約、或いは出力用紙の印字領域を有効に使った体裁の良いＮ−ＵＰ印刷、を可能にし得る効果を秦する。
【０２４４】
【発明の効果】
以上説明したように、本発明によれば、自動Ｎｕｐ印刷モードが指定された場合でも、入力データのページ数に基づいて１ページ内に出力すべきページ数を適切に確定し、見栄えよく体裁されたＮｕｐ印刷結果を得ることができる。
【０２４５】
従って、印刷指定された印刷データのページ数に依存した最適なページ数がレイアウトされる出力中間データを生成できるため、印刷処理実行時に、レイアウト印刷が指定されていても、何ら特別な回避操作を行うことなく、印刷データ中の論理ページ数が少ないことに起因する余白が目立つ不体裁な印刷処理を自動的に回避するとともに、出力用紙を大幅に節減できる等の効果を奏する。
【図面の簡単な説明】
【図１】本発明の第１実施形態を示すデータ処理装置を適用可能な印刷システムの構成を説明するブロック図である。
【図２】図１に示したフロッピーディスク（ＦＤ）のメモリマップの一例を示す図である。
【図３】図１に示したＲＡＭにのメモリマップの一例を示す図である。
【図４】本発明に係るデータ処理装置における第１のデータ処理手順の一例を示すフローチャートである。
【図５】図１に示した表示部に表示される印刷モード指定画面の一例を示す図である。
【図６】図１に示したＲＡＭ上のアプリケーションプログラムから印刷処理プログラムに引き渡される描画命令源の一例を示す図である。
【図７】本発明に係るデータ処理装置における第２のデータ処理手順の一例を示すフローチャートである。
【図８】図１に示したハードディスク装置上に確保される中間データ一時保存ファイルと中間データファイルとの関係を説明する図である。
【図９】図４に示した中間データ編集処理時におけるページレイアウト印刷機能の一例を説明する図である。
【図１０】本発明に係るデータ処理装置における第３のデータ処理手順の一例を示すフローチャートである。
【図１１】本発明に係るデータ処理装置における第４のデータ処理手順の一例を示すフローチャートである。
【図１２】図１に示した情報処理装置に記憶される第１のページ数決定テーブルの一例を示す図である。
【図１３】本発明に係るデータ処理装置における第５のデータ処理手順の一例を示すフローチャートである。
【図１４】図１に示した情報処理装置に記憶される第２のページ数決定テーブルの一例を示す図である。
【図１５】図１に示した情報処理装置に記憶される第３のページ数決定テーブルの一例を示す図である。
【図１６】図１に示した情報処理装置に記憶される第４のページ数決定テーブルの一例を示す図である。
【図１７】本発明に係るデータ処理装置を適用可能な印刷システムで読み出し可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
１  情報処理装置
５  キーボード
６  ポインティングデバイス
１１  ＣＰＵ
１５  プリンタ装置
【図１】
0003658174.tif 000002
【図２】
0003658174.tif 000003
【図３】
0003658174.tif 000004
【図４】
0003658174.tif 000005
【図５】
0003658174.tif 000006
【図６】
0003658174.tif 000007
【図７】
0003658174.tif 000008
【図８】
0003658174.tif 000009
【図９】
0003658174.tif 000010
【図１０】
0003658174.tif 000011
【図１１】
0003658174.tif 000012
【図１３】
0003658174.tif 000013
【図１２】
0003658174.tif 000014
【図１４】
0003658174.tif 000015
【図１５】
0003658174.tif 000016
【図１６】
0003658174.tif 000017
【図１７】
0003658174.tif 000018