(57)【要約】【課題】  ページ記述データをより簡便に処理することができるようにする為の技術を提供すること。【解決手段】  正負何れかの符号を第１符号、第２符号とした場合に、ページ記述データによって１ページ上に規定された座標系においてｘ座標値が第１の符号を有し、ｙ座標値が第２の符号を有する領域内に全てのオブジェクト描画領域が収まるように、全てのオブジェクト描画領域の配置座標位置を変更することで、ページ記述データを更新する（Ｓ６０１〜Ｓ６１１）。そして、更新されたページ記述データを出力する。【選択図】  図６
2008033441.tif 000002
【特許請求の範囲】
【請求項１】
１ページ上における１以上のオブジェクト描画領域について記したページ記述データを処理する情報処理装置であって、
正負何れかの符号を第１符号、第２符号とした場合に、前記ページ記述データによって１ページ上に規定された座標系においてｘ座標値が前記第１の符号を有し、ｙ座標値が前記第２の符号を有する領域内に全てのオブジェクト描画領域が収まるように、当該全てのオブジェクト描画領域の配置座標位置を変更することで、前記ページ記述データを更新する更新手段と、
前記更新手段により更新されたページ記述データを出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記変更手段は、
オブジェクト描画領域内で最小のｘ座標値と最小のｙ座標値とを取得する処理を、前記ページ記述データに記されている全てのオブジェクト描画領域について行う第１の手段と、
前記第１の手段が取得したそれぞれのオブジェクト描画領域の最小のｘ座標値のうち最小のｘ座標値を原点ｘ座標値として取得すると共に、前記第１の手段が取得したそれぞれのオブジェクト描画領域の最小のｙ座標値のうち最小のｙ座標値を原点ｙ座標値として取得する第２の手段と、
前記ページ記述データに記されているオブジェクト描画領域の配置ｘ座標値から前記原点ｘ座標値を引くことで当該配置ｘ座標値を更新すると共に、前記ページ記述データに記されているオブジェクト描画領域の配置ｙ座標値から前記原点ｙ座標値を引くことで当該配置ｙ座標値を更新する処理を、前記ページ記述データに記されているそれぞれのオブジェクト描画領域について行う第３の手段と
を備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記変更手段は、前記１ページを複数の領域に分割した場合に、それぞれの分割領域内に属するオブジェクト描画領域について、それぞれの分割領域におけるローカル座標系に従った処理を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記ページ記述データは、ＸＭＬ形式のＳＶＧであることを特徴とする請求項１に記載の情報処理装置。
【請求項５】
１ページ上における１以上のオブジェクト描画領域について記したページ記述データを処理する情報処理装置が行う情報処理方法であって、
正負何れかの符号を第１符号、第２符号とした場合に、前記ページ記述データによって１ページ上に規定された座標系においてｘ座標値が前記第１の符号を有し、ｙ座標値が前記第２の符号を有する領域内に全てのオブジェクト描画領域が収まるように、当該全てのオブジェクト描画領域の配置座標位置を変更することで、前記ページ記述データを更新する更新工程と、
前記更新工程で更新されたページ記述データを出力する出力工程と
を備えることを特徴とする情報処理方法。
【請求項６】
コンピュータに請求項５に記載の情報処理方法を実行させるためのプログラム。
【請求項７】
請求項６に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ページ記述データを処理するための技術に関するものである。
【背景技術】
【０００２】
一般にプリンタ装置には、ホストコンピュータから送られてくるページ記述データを解釈し、印刷用のイメージデータを生成する方法が用いられている。このようなページ記述データには、印刷する矩形領域の頂点の一つを原点とした座標空間に描画オブジェクトを配置した形式のデータが一般に用いられている。例えば、印刷する用紙の左上の頂点を原点とし、水平方向をＸ軸、垂直方向をＹ軸とした座標空間を用いて、描画オブジェクトの描画位置やサイズ、角度を記述する形式のページ記述データがある。
【０００３】
また、データ処理時のオーバーフローを防ぐために、矩形領域の中央が原点になるようにデータを生成するものもあった（特許文献１を参照）。このようなページ記述データは、印刷用途だけでなく、ディスプレイ装置等における表示手段においても用いられることがあった。
【特許文献１】特開２００４−３４５８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、ページ記述データの解釈には複雑な数値計算を必要とする場合があるため、十分な処理能力がない小型機器などにおいてページ記述データを処理する場合には、少なからぬ処理時間を要することがあった。
【０００５】
本発明は以上の問題に鑑みてなされたものであり、ページ記述データをより簡便に処理することができるようにする為の技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の目的を達成するために、例えば、本発明の情報処理装置は以下の構成を備える。
【０００７】
即ち、１ページ上における１以上のオブジェクト描画領域について記したページ記述データを処理する情報処理装置であって、
正負何れかの符号を第１符号、第２符号とした場合に、前記ページ記述データによって１ページ上に規定された座標系においてｘ座標値が前記第１の符号を有し、ｙ座標値が前記第２の符号を有する領域内に全てのオブジェクト描画領域が収まるように、当該全てのオブジェクト描画領域の配置座標位置を変更することで、前記ページ記述データを更新する更新手段と、
前記更新手段により更新されたページ記述データを出力する出力手段と
を備えることを特徴とする。
【０００８】
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
【０００９】
即ち、１ページ上における１以上のオブジェクト描画領域について記したページ記述データを処理する情報処理装置が行う情報処理方法であって、
正負何れかの符号を第１符号、第２符号とした場合に、前記ページ記述データによって１ページ上に規定された座標系においてｘ座標値が前記第１の符号を有し、ｙ座標値が前記第２の符号を有する領域内に全てのオブジェクト描画領域が収まるように、当該全てのオブジェクト描画領域の配置座標位置を変更することで、前記ページ記述データを更新する更新工程と、
前記更新工程で更新されたページ記述データを出力する出力工程と
を備えることを特徴とする。
【発明の効果】
【００１０】
本発明の構成によれば、ページ記述データをより簡便に処理することができる。
【発明を実施するための最良の形態】
【００１１】
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
【００１２】
［第１の実施形態］
図２は、本実施形態に係るシステムの構成例を示す図である。同図に示す如く、本実施形態に係るシステムは、コンピュータ装置２０１、プリンタ装置２０３により構成されており、それぞれはＬＡＮやインターネット等のネットワーク２０２に接続されている。これにより、コンピュータ装置２０１とプリンタ装置２０３とはこのネットワーク２０２を介して互いにデータ通信を行うことができる。
【００１３】
以下の説明では、コンピュータ装置２０１はページ記述データを生成し、ネットワーク２０２を介してプリンタ装置２０３に送信する。ページ記述データは、例えば、コンピュータ装置２０１側で動作するアプリケーションによって作成される。そして、プリンタ装置２０３はこのページ記述データを受けると、これに基づいた印刷処理を行う。本実施形態では、このページ記述データとして、ＸＭＬ形式のベクトルグラフィックスであるＳＶＧ（Scalable Vector Graphics）を用いるが、これに限定するものではない。
【００１４】
なお、ネットワーク２０２に接続される機器については様々なものが考えられ、更に、コンピュータ装置２０１やプリンタ装置２０３の数についても様々なものが考えられる。即ち、以下の説明に適用可能なシステムの構成については同図に示した構成に限定するものではない。
【００１５】
図１は、コンピュータ装置２０１のハードウェア構成を示すブロック図である。
【００１６】
１０１はＣＰＵで、ＲＯＭ１０２やＲＡＭ１０３に格納されているプログラムやデータを用いてコンピュータ装置２０１全体の制御を行うと共に、コンピュータ装置２０１が行う後述の各処理を実行する。
【００１７】
１０２はＲＯＭで、コンピュータ装置２０１の設定データやブートプログラムなどを格納する。
【００１８】
１０３はＲＡＭで、ハードディスク１０４からロードされたプログラムやデータ、Ｉ／Ｆ（インターフェース）１０７を介して外部から受信したプログラムやデータ等を一時的に記憶するためのエリアを備える。また、ＲＡＭ１０３は、ＣＰＵ１０１が各種の処理を実行する際に用いるワークエリアも有する。即ち、ＲＡＭ１０３は各種のエリアを適宜提供することができる。
【００１９】
１０４はハードディスクで、ここにはＯＳ（オペレーティングシステム）や、コンピュータ装置２０１が行う後述の各処理をＣＰＵ１０１に実行させるためのプログラムやデータが保存されている。これらのプログラムやデータは、ＣＰＵ１０１による制御に従って適宜ＲＡＭ１０３にロードされる。そしてＣＰＵ１０１がこのロードされたプログラムやデータを用いて処理を実行することで、コンピュータ装置２０１は以下説明する各処理を実行する。
【００２０】
１０５は表示部で、ＣＲＴや液晶画面などにより構成されており、ＣＰＵ１０１による処理結果を画像や文字などでもって表示する。
【００２１】
１０６は操作部で、キーボードやマウスなどにより構成されており、コンピュータ装置２０１の操作者が操作することで、各種の指示をＣＰＵ１０１に対して入力することができる。
【００２２】
１０７はＩ／Ｆで、コンピュータ装置２０１を上記ネットワーク２０２に接続するためのもので、コンピュータ装置２０１はこのＩ／Ｆ１０７を介してネットワーク２０２に接続されているプリンタ装置２０３とのデータ通信を行うことができる。
【００２３】
１０８は上述の各部を繋ぐバスである。
【００２４】
図３は、コンピュータ装置２０１側で生成するページ記述データの内容の一例を示す図である。以下の説明では、同図に示したページ記述データがコンピュータ装置２０１側で生成された場合を例に取り、説明する。
【００２５】
同図に示したページ記述データは、１ページ分の描画情報を記述したものである。このページ記述データで規定している１ページのサイズは、ｓｖｇ要素のｗｉｄｔｈ属性の値およびｈｅｉｇｈｔ属性の値に記述されたものであるから、幅２１０ｍｍ、高さ２９７ｍｍである。また、このページ記述データで規定している座標系は、ｓｖｇ要素のｖｉｅｗＢｏｘ属性の値で示されたものであるから、左上隅を（０，０）とした座標系であり、描画領域の幅は２１００ピクセル、高さは２９７０ピクセルである。すなわち、幅２１０ｍｍ、高さ２９７ｍｍの領域に幅２１００ピクセル、高さ２９７０ピクセルで描画することになる。したがって、解像度は縦横とも１０ピクセル／ｍｍとなる。
【００２６】
また、同図に示したページ記述データには、円、多角形、矩形、楕円、線分、テキストというオブジェクトの描画領域について記述されている。例えば、円については、中心座標位置、半径、塗りつぶし色、が記されている。
【００２７】
図４は、図３に例示したページ記述データに基づいて描画される１ページを示す図である。この描画はプリンタ装置２０３が行う。同図に示す如く、図３に例示したページ記述データに記述されている上記各オブジェクトが１ページ分の描画領域４０１内に描画されている。しかし、オブジェクトによっては、ページ記述データが規定する１ページ分の描画領域４０１内には収まっていないものもある。同図では、円、楕円、矩形については、１ページ分の描画領域４０１内には収まっていない。図５は、この収まっていない部分をも示した図である。
【００２８】
図５に示す如く、円、楕円、矩形のそれぞれのオブジェクトについては、その描画領域のうち幾分かが領域４０１の外にある。例えば、円のオブジェクトについては、その描画領域のうち幾分かが、ｘ座標値が負であったり、ｙ座標値が負であったりする。
【００２９】
図６は、コンピュータ装置２０１がページ記述データを生成した後に、各オブジェクトの描画領域内のｘ座標値、ｙ座標値を共に正に変更することで各オブジェクトの描画領域を再配置すべく、このページ記述データを更新する処理のフローチャートである。なお、同図のフローチャートをコンピュータ装置２０１のＣＰＵ１０１に実行させるためのプログラムやデータはハードディスク１０４に保存されている。このプログラムやデータはＣＰＵ１０１による制御に従ってＲＡＭ１０３にロードされ、ＣＰＵ１０１はこのプログラムやデータを用いて処理を実行する。また、同図のフローチャートに従った処理は、図３に例示するページ記述データを解析する処理と並行して行われるものである。
【００３０】
先ず、ステップＳ６０１では、ページ記述データで記されているオブジェクトの数をカウントする為の変数Ｎを０に初期化する。次にステップＳ６０２では、以下の処理で用いる変数ｘＭｉｎ、ｙＭｉｎをそれぞれ０に初期化する。
【００３１】
次にステップＳ６０３では先ず、ページ記述データを先頭から参照してＮ番目のオブジェクトの描画領域についてのデータを参照する。図３に示したページ記述データの場合、Ｎ＝０であれば、０番目のオブジェクト（即ち、円のオブジェクト）の描画領域についてのデータ（即ち、中心ｘ座標値＝２００、中心ｙ座標値＝３００、半径＝４００）を参照する。
【００３２】
次に、この参照している描画領域内で最小のｘ座標値を取得し、変数ｘに設定する。本ステップにおける処理について円のオブジェクトを例に取り説明する。円の中心座標位置は（ｘ、ｙ）＝（２００，３００）、半径＝４００であるので、円のオブジェクトの描画領域内のｘ座標値の取りうる範囲は、−２００≦ｘ座標値≦６００となる。従って、円のオブジェクトの描画領域内のｘ座標値の最小値は−２００となるので、ステップＳ６０３では、変数ｘに−２００をセットする。
【００３３】
次にステップＳ６０４では、変数ｘにセットされている値と変数ｘＭｉｎにセットされている値との大小比較を行う。この大小比較の結果、ｘ≧ｘＭｉｎの場合には処理をステップＳ６０６に進め、ｘ＜ｘＭｉｎの場合には処理をステップＳ６０５に進める。ステップＳ６０５では、変数ｘＭｉｎに変数ｘの値をセットする。
【００３４】
ステップＳ６０６では先ず、ページ記述データを先頭から参照してＮ番目のオブジェクトの描画領域についてのデータを参照する。図３に示したページ記述データの場合、Ｎ＝０であれば、０番目のオブジェクト（即ち、円のオブジェクト）の描画領域についてのデータ（即ち、中心ｘ座標値＝２００、中心ｙ座標値＝３００、半径＝４００）を参照する。
【００３５】
次に、この参照している描画領域内で最小のｙ座標値を取得し、変数ｙに設定する。本ステップにおける処理について円のオブジェクトを例に取り説明する。円の中心座標位置は（ｘ、ｙ）＝（２００，３００）、半径＝４００であるので、円のオブジェクトの描画領域内のｙ座標値の取りうる範囲は、−１００≦ｙ座標値≦７００となる。従って、円のオブジェクトの描画領域内のｙ座標値の最小値は−１００となるので、ステップＳ６０６では、変数ｙに−１００をセットする。
【００３６】
次にステップＳ６０７では、変数ｙにセットされている値と変数ｙＭｉｎにセットされている値との大小比較を行う。この大小比較の結果、ｙ≧ｙＭｉｎの場合には処理をステップＳ６０９に進め、ｙ＜ｙＭｉｎの場合には処理をステップＳ６０８に進める。ステップＳ６０８では、変数ｙＭｉｎに変数ｙの値をセットする。
【００３７】
次にステップＳ６０９では、ページ記述データで記述されている全てのオブジェクトの描画領域のデータを参照したか否かをチェックする。このチェックの結果、全てのオブジェクトの描画領域のデータを参照していない場合には処理をステップＳ６１０に進める。ステップＳ６１０では、変数Ｎの値を１つインクリメントする。そして処理をステップＳ６０３に進め、次のオブジェクトの描画領域について上記処理を行う。
【００３８】
一方、全てのオブジェクトの描画領域のデータを参照した場合には、処理をステップＳ６１１に進める。全てのオブジェクトの描画領域のデータを参照した場合、結果として変数ｘＭｉｎには、全てのオブジェクトの描画領域内のｘ座標値の取りうる値のうち最小のｘ座標値が保持されており、変数ｙＭｉｎには、全てのオブジェクトの描画領域内のｙ座標値の取りうる値のうち最小のｙ座標値が保持されていることになる。
【００３９】
図３の例では、円のオブジェクトの上端のｙ座標値（−１００）と左端のｘ座標値（−２００）とがそれぞれ変数ｙＭｉｎ、ｘＭｉｎに保持されていることになる。
【００４０】
ステップＳ６１１では、位置（ｘＭｉｎ、ｙＭｉｎ）が原点位置にくるように、ページ記述データに記述されている座標系を移動させる。具体的には、原点の座標値を（−ｘＭｉｎ、−ｙＭｉｎ）とすると共に、全てのオブジェクトの描画配置位置（ｂｘ、ｂｙ）に（−ｘＭｉｎ、−ｙＭｉｎ）を加える（下記式を参照）。これにより、全てのオブジェクトの描画配置位置を更新する。
【００４１】
ｂｘ’＝ｂｘ−ｘＭｉｎ
ｂｙ’＝ｂｙ−ｙＭｉｎ
ここで、ｂｘ’は、更新後のオブジェクトの描画配置ｘ座標値、ｂｙ’は、更新後のオブジェクトの描画配置ｙ座標値である。
【００４２】
以上の処理により、ページ記述データを更新する。図７は、図６のフローチャートに従った処理の対象として図３のページ記述データを用いた場合に得られるページ記述データの内容を示す図である。図３のページ記述データと比べると、原点とそれぞれのオブジェクトの描画配置位置のｘ座標値、ｙ座標値にそれぞれ、−ｘＭｉｎ＝２００、−ｙＭｉｎ＝１００が加えられている。
【００４３】
これにより、それぞれのオブジェクトの描画領域は全て、ｘ座標値、ｙ座標値共に正の領域内（即ち、領域４０１内）に移動することになる。
【００４４】
以上のようにして変換されたページ記述データは、Ｉ／Ｆ１０７を介してプリンタ装置２０３に送出される。プリンタ装置２０３は、この変換されたページ記述データを受けると、これに基づいて１ページ分の画像を描画し、紙などの記録媒体上にこの画像を記録する処理を行う。
【００４５】
プリンタ装置２０３においては、図３に示したページ記述データより、図７に示したページ記述データの方が高速に処理することができる。以下ではその理由について説明する。
【００４６】
プリンタ装置２０３はページ記述データを解析し、その解析結果に基づいて各オブジェクトを描画するのであるが、その際、各オブジェクトを構成する各画素の座標値を計算する必要がある。ここで、オブジェクトを構成する各画素の座標値が常に正の値である場合と、負の値を含む場合とでは、その計算量は全く異なる。
【００４７】
例えば、任意の値ｘを超えない最大の整数ｎを求める演算を行う場合、Ｃ言語の標準ライブラリではfloor関数を用いる。この演算では、ｘの値が負か否かで計算方法が異なる。
【００４８】
ｘの値が負であり、且つｘが整数Ｎｘと小数Ａｘ（０＜Ａｘ＜１）を用いてｘ＝−（Ｎｘ＋Ａｘ）と表されるとき、ｆｌｏｏｒ（ｘ）は（Ｎｘ−１）を出力する。一方、ｘの値が正であり、且つｘが整数Ｎｘと小数Ａｘ（０＜Ａｘ＜１）を用いてｘ＝Ｎｘ＋Ａｘと表されるとき、ｆｌｏｏｒ（ｘ）はＮｘを出力する。ｘの値が整数の場合には、ｘの正負に関わらずｆｌｏｏｒ（ｘ）はｘを出力する。このような演算をＣ言語を用いて表現すると以下のようになる。
【００４９】
（ｉｎｔ）（ｘ）＞（ｘ）  ？  （ｉｎｔ）（ｘ）−１  ：  （ｉｎｔ）（ｘ）
すなわち、ある値ｘを超えない最大の整数ｎを求める演算においては、ｘの値が負の値か否かを判断するステップが必要となる。一方、ｘの値が常に０以上ということが明らかであれば、このステップは必要がない。このような演算をＣ言語を用いて表現すると、ｘの値が常に正であれば、（ｉｎｔ）（ｘ）のみで良い。
【００５０】
このように、変数の値が負にならないことが明らかな場合には、処理ステップが減り、処理の高速化を行うことが可能となる。特に、ｆｌｏｏｒ関数のように浮動小数点の変数を扱う演算の場合には、その効果が大きい。同様の理由で、変数の値が正にならないことが明らかな場合にも、処理の高速化が可能である。また、処理ステップが減ることで、プリンタ装置２０３側に搭載されている「画像の描画に係るプログラム」のサイズを縮小させることができる。
【００５１】
従って本実施形態では、コンピュータ装置２０１からプリンタ装置２０３にページ記述データを送信する際、前手順としてプリンタ装置２０３は座標値が常に０以上であるページ記述データを要求する。コンピュータ装置２０１はそれに呼応して図６のフローチャートに従った処理を行う旨をプリンタ装置に通知した上で同フローチャートに従った処理を行う。これにより、座標値が常に０以上のページ記述データが送られてくるので、プリンタ装置２０３はこのページ記述データに基づいた画像描画処理をより高速に行うことができる。
【００５２】
もちろん、上記前手順無しでも良い。即ち、コンピュータ装置２０１はページ記述データをプリンタ装置２０３に送信する際には必ず図６のフローチャートに従った処理を行い、各オブジェクトの座標値が常に０以上であるようなページ記述データを得、プリンタ装置２０３に送信する。
【００５３】
［第２の実施形態］
本実施形態では、１つのページを複数の領域に分け、それぞれの領域について図６のフローチャートに従った処理を行う。図８は、図４に示した１ページを８０１で示す点線で２つの領域に分割している様子を示す図である。以下では、点線８０１よりも上の領域を上領域、下の領域を下領域と呼称する。
【００５４】
本実施形態の場合、コンピュータ装置２０１は、上領域（the first area）内に含まれるオブジェクトについて、その描画領域が上領域内に収まるように、原点、描画領域を移動させる。この処理は図６のフローチャートに従った上記処理と同じである。また、コンピュータ装置２０１は、下領域（the second area）内に含まれるオブジェクトについて、その描画領域が下領域内に収まるように、原点、描画領域を移動させる。この処理は図６のフローチャートに従った上記処理と同じである。このとき、下領域内の各オブジェクトの配置位置は、下領域の左上隅の位置を原点としていることに注意されたい。
【００５５】
図９は、図３のページ記述データについて本実施形態に係る上記処理を行った結果得られるページ記述データの内容を示す図である。
【００５６】
なお、分割の仕方については様々な方法があり、原点、描画領域の移動を行わなくても良い領域を除く他の領域を分割する、といったこともできる。また、１ページをバンド単位で印刷するような場合には、バンド単位の領域に分割しても良い。このように、１ページを複数の領域に分割することで、原点と描画領域の移動を最小限に押さえることができる。
【００５７】
また、移動によっては移動先の座標値が大きい値となり、この座標値を用いた計算処理でオーバーフローを起こすことも考えられる。しかし、本実施形態によれば、各領域内における原点、描画領域の座標値はその領域におけるローカル座標系に従ったものとなるので、余り大きな座標値となることはなく、オーバーフローの問題を解消することができる。
【００５８】
なお、第１の実施形態、第２の実施形態における処理の趣旨は、正負何れかの符号を第１符号、第２符号とした場合に、ページ記述データによって１ページ上に規定された座標系においてｘ座標値が第１の符号を有し、ｙ座標値が第２の符号を有する領域内に全てのオブジェクト描画領域が収まるように、全てのオブジェクト描画領域の配置座標位置を変更することにある。
【００５９】
これにより、全てのオブジェクトの描画領域内のｘ座標は同じ符号であるし、ｙ座標値もまた同じ符号となるので、描画領域毎に座標値の符号判定を行わなくてすむ。なお、第１の実施形態では、この第１符号、第２符号が共に正である。
【００６０】
また、上述の通り、第１の実施形態では、ページ記述データとして、ＸＭＬ形式のベクトルグラフィックスであるＳＶＧ（Scalable Vector Graphics）を用いたが、ページ記述言語を用いた形式等、座標空間を用いて印刷や表示情報の記述を行うすべての形式が適用可能である。
【００６１】
また、ページ記述データとして第１の実施形態で用いたＳＶＧは説明を簡単にするため、比較的平易な記述のものを用いたが、これはあくまでも説明のための一例であり、より複雑な記述のＳＶＧやページ記述言語を用いても良い。
【００６２】
また、上記実施形態では、コンピュータ装置２０１側でページ記述データの変換処理を行い、変換したページ記述データをプリンタ装置２０３に送出しているが、この変換処理はプリンタ装置２０３側で行うようにしても良い。これは、１ページの領域分割についても同様である。また、このような変換処理や領域分割処理をコンピュータ装置２０１側で行うのかプリンタ装置２０３側で行うのかについての判断は、ページ記述データを送出する先の装置の能力等に基づいて行うようにしても良い。
【００６３】
また、上記実施形態では変換後のページ記述データの送出先としてプリンタ装置２０３、所謂印刷目的の装置を用いた。しかし、ページ記述データの使用目的はこれに限定するものではなく、コンピュータ装置２０１が有する表示部１０５の表示画面上に、この変換後のページ記述データに基づいた画像を表示するようにしても良い。また、ネットワーク２０２に接続されている装置に送出し、この装置が有する表示装置の表示画面上に表示させるようにしても良い。また、このネットワーク２０２に接続されている装置に登録する目的で、この装置に送出するようにしても良い。
【００６４】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００６５】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６６】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００６７】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００６８】
【図１】コンピュータ装置２０１のハードウェア構成を示すブロック図である。
【図２】本発明の第１の実施形態に係るシステムの構成例を示す図である。
【図３】コンピュータ装置２０１側で生成するページ記述データの内容の一例を示す図である。
【図４】図３に例示したページ記述データに基づいて描画される１ページを示す図である。
【図５】円、楕円、矩形について、１ページ分の描画領域４０１内に収まっていない部分をも示した図である。
【図６】コンピュータ装置２０１がページ記述データを生成した後に、各オブジェクトの描画領域内のｘ座標値、ｙ座標値を共に正に変更することで各オブジェクトの描画領域を再配置すべく、このページ記述データを更新する処理のフローチャートである。
【図７】図６のフローチャートに従った処理の対象として図３のページ記述データを用いた場合に得られるページ記述データの内容を示す図である。
【図８】図４に示した１ページを８０１で示す点線で２つの領域に分割している様子を示す図である。
【図９】図３のページ記述データについて本実施形態に係る上記処理を行った結果得られるページ記述データの内容を示す図である。
【図１】
2008033441.tif 000003
【図２】
2008033441.tif 000004
【図３】
2008033441.tif 000005
【図４】
2008033441.tif 000006
【図５】
2008033441.tif 000007
【図６】
2008033441.tif 000008
【図７】
2008033441.tif 000009
【図８】
2008033441.tif 000010
【図９】
2008033441.tif 000011