(57)【要約】【課題】  複数回参照される共通オブジェクトであっても、変形する際はその都度レンダリングしていたため、レンダリング時間がかかっていた課題がある。【解決手段】  複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであるか否かを判断し（Ｓ２０７，Ｓ２０８，Ｓ２０９）、複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断されない場合、変形済みの新しいオブジェクトを作成せず、複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断された場合、変形済みの新しいオブジェクトを作成する（Ｓ２１０）ことを特徴とする。【選択図】  図８
2011154636.tif 000002
【特許請求の範囲】
【請求項１】
複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであるか否かを判断する判断手段と、
前記判断手段により複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断されない場合、変形済みの新しいオブジェクトを作成せず、前記判断手段により複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断された場合、変形済みの新しいオブジェクトを作成する作成手段とを有することを特徴とするレンダリングシステム。
【請求項２】
前記変形に際してレンダリングに時間がかかる共通オブジェクトはイメージデータを含むことを特徴とする請求項１に記載のレンダリングシステム。
【請求項３】
前記変形はアフィン変換による変形を含むことを特徴とする請求項１または、請求項２に記載のレンダリングシステム。
【請求項４】
前記作成手段により変形済みの新しいオブジェクトが作成された後、共通オブジェクトが各ページから何回参照されているかを示す参照情報を生成する生成手段を有し、
前記参照情報は、オブジェクトのレンダリング処理を複数のレンダリングサーバーコンピューターで分散して処理する際に利用されることを特徴とする請求項１記載のレンダリングシステム。
【請求項５】
前記レンダリングサーバーコンピューターは、
レンダリング済みオブジェクトが存在するかどうかを別のレンダリングサーバーコンピューターに問い合わせる問い合わせ手段と、
前記問い合わせ手段の結果に基づいて、別のレンダリングサーバーコンピューターからレンダリング済みの共通オブジェクトを取得する取得手段とを有することを特徴とする請求項４記載のレンダリングシステム。
【請求項６】
前記レンダリングサーバーコンピューターは、
レンダリング済みオブジェクトの存在を示す情報を保持する保持手段と、
前記保持手段により保持された情報に基づいて、別のレンダリングサーバーコンピューターからレンダリング済みの共通オブジェクトを取得する取得手段を有することを特徴とする請求項４記載のレンダリングシステム。
【請求項７】
前記レンダリングサーバーコンピューターは、
レンダリング済みオブジェクトが別のレンダリングサーバーコンピューターに存在するかどうかを共通オブジェクト情報管理サーバーに問い合わせる問い合わせ手段と、
前記問い合わせ手段の結果に基づいて、別のレンダリングサーバーコンピューターからレンダリング済みの共通オブジェクトを取得する取得手段を有することを特徴とする請求項４記載のレンダリングシステム。
【請求項８】
レンダリング処理を開始した時には、レンダリングサーバーコンピューターに１ページ分の情報を送信し、以降のページに関しては先にレンダリングを行ったページと共通オブジェクトが多く共通する未処理のページをレンダリングサーバーコンピューターに送信する送信手段を有することを特徴とする請求項４記載のレンダリングシステム。
【請求項９】
オブジェクトのレンダリング処理と、別のレンダリングサーバーコンピューターからのレンダリング済みのオブジェクトの取得処理を並列処理することを特徴とする請求項４記載のレンダリングシステム。
【請求項１０】
複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであるか否かを判断する判断ステップと、
前記判断ステップにより複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断されない場合、変形済みの新しいオブジェクトを作成せず、前記判断ステップにより複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断された場合、変形済みの新しいオブジェクトを作成する作成ステップとを有することを特徴とするデータの最適化方法。
【請求項１１】
前記作成ステップにより変形済みの新しいオブジェクトが作成された後、共通オブジェクトが各ページから何回参照されているかを示す参照情報を生成する生成ステップを有し、
前記参照情報は、オブジェクトのレンダリング処理を複数のサーバーで分散して処理する際に利用されることを特徴とする請求項１０記載のデータの最適化方法。
【請求項１２】
複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであるか否かを判断する判断ステップと、
前記判断ステップにより複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断されない場合、変形済みの新しいオブジェクトを作成せず、前記判断ステップにより複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断された場合、変形済みの新しいオブジェクトを作成する作成ステップとをコンピューターに実行させることを特徴とするプログラム。
【請求項１３】
前記作成ステップにより変形済みの新しいオブジェクトが作成された後、共通オブジェクトが各ページから何回参照されているかを示す参照情報を生成する生成ステップをコンピューターに実行させ、
前記参照情報は、オブジェクトのレンダリング処理を複数のサーバーで分散して処理する際に利用されることを特徴とする請求項１２記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オブジェクトのレンダリング（ＲＩＰ）処理を行なうレンダリングシステム、データの最適化方法、及びプログラムに関わる。
【背景技術】
【０００２】
現在、電子化やネットワークの発展により、カタログやパンフレット、チラシなどの商用印刷サービスでは、デジタルデータによる入稿が一般化しつつあり、またデジタルデータにより、必要なときに必要な分だけ印刷を実施するオンデマンド印刷化が進んできている。そのため、このデジタル商用印刷サービスでは、短期間で高品質の印刷を実現する必要があり、システムとして高速で高画質のプリンタの利用や、複数台のサーバーを利用して処理を分散することで実現している。
【０００３】
入稿されるデジタルデータは、ＰｏｓｔＳｃｒｉｐｔやＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）などを印刷フォーマットとして利用している。これらの印刷フォーマットを利用した場合、レンダリング（ＲＩＰ）処理をページ単位で行う必要がある。そのため、高速化を測るためにレンダリング処理を行うサーバーコンピューターを複数台活用することや、処理をマルチスレッド化、複数プロセス化などにより事前にレンダリング処理を行い、処理の負荷を分散し高速印刷を実現している。さらに印刷フォーマットとして、２００７年９月より標準化されたＰＤＦ／ＶＴ（Ｖａｒｉａｂｌｅ  ａｎｄ  Ｔｒａｎｓａｃｔｉｏｎａｌ）も今後は利用の拡大が見込まれている。
【０００４】
またこれらの印刷フォーマットの場合、複数台のレンダリングサーバーコンピューターを利用したとしても、複数のページより共通で参照しているオブジェクトがあるなど、ページ単位で分割することができない。そのため、デジタルデータをページ単位に分割せずファイル単位でレンダリング処理を行うサーバーコンピューターへ送信し、必要なページのみレンダリング処理を実施するという特徴がある。
【０００５】
従来の印刷の負荷を分散する技術として、過去にレンダリング処理を実施した時間を蓄積し、次にレンダリング処理を実施する際に予測時間を立て、レンダリング処理を分散する方法（特許文献１参照）がある。また複数のレンダリング処理を行うサーバーコンピューターでページの昇順と降順でそれぞれレンダリング処理を行う方法（特許文献２参照）などがある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−１４９３４７号公報
【特許文献２】特開２００７−２１３２３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来から印刷時間を短縮するために、レンダリング（ＲＩＰ）処理の高速化が行われてきた。しかし、レンダリング処理そのものを高速化することが中心であり、レンダリング処理前での高速化が行われていない課題がある。また印刷データはページ単位で分割することができないため、複数のレンダリングサーバーコンピューターで構成されたシステムであっても、ファイル単位ですべてのレンダリングサーバーコンピューターへ送付するという課題がある。そのため、ページ間で共通に参照しているオブジェクトを個別にレンダリングサーバーコンピューターでページ単位に処理を行うため、重複したオブジェクトに対し同一の処理を行っているという課題がある。
【０００８】
そこで本発明では、上記の問題を解決するためになされたもので、レンダリング結果の参照により、効率のよい印刷を行えるレンダリングシステムを提供する。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明のレンダリングシステムは、複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであるか否かを判断する判断手段と、
前記判断手段により複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断されない場合、変形済みの新しいオブジェクトを作成せず、前記判断手段により複数ページで利用され変形に際してレンダリングに時間がかかる共通オブジェクトであると判断された場合、変形済みの新しいオブジェクトを作成する作成手段とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、レンダリング処理に掛かる速度への向上が可能となる。
【図面の簡単な説明】
【００１１】
【図１】レンダリングシステムの構成図
【図２】本発明の実施形態を示すブロック図
【図３】本実施例で扱うプログラムコードとデータに関するデータフロー図
【図４】共通オブジェクトの変形に関するイメージ図
【図５】サーバー間のオブジェクト検索に関するイメージ図
【図６】レンダリングサーバーコンピューター内の処理フロー図
【図７】レンダリングシステムに関するフローチャート
【図８】インタープリット処理に関わるフローチャート
【図９】共通オブジェクトがない中間言語データ送信フローチャート
【図１０】共通オブジェクトがある中間言語データ送信フローチャート
【図１１】共通オブジェクト問い合わせに関するフローチャート
【図１２】共通オブジェクト検索に関するフローチャート
【図１３】実施例２の共通オブジェクト問い合わせに関するフローチャート
【図１４】実施例３の共通オブジェクト問い合わせに関するフローチャート
【発明を実施するための形態】
【００１２】
〔実施例１〕
図１は、本発明の実施の形態に係るレンダリングシステムの構成を示す模式図である。
【００１３】
このレンダリングシステムは、レンダリングサーバーコンピューター１０２ａから１０２ｎ、クライアントコンピューター１０５、プリントサーバーコンピューター１０４、共通オブジェクト情報管理サーバー１０６、及び印刷装置１０３を有している。それらはネットワーク１０１を介して接続されている。レンダリングサーバーコンピューター１０２ａから１０２ｎは、台数が限定されるものでなく、複数台有しても良い。また  共通オブジェクト情報管理サーバー１０６は、各レンダリングサーバーコンピューター１０２ａから１０２ｎで代用可能である。
【００１４】
クライアントコンピューター１０５は、ネットワーク１０１を介して印刷データをプリントサーバーコンピューター１０４に送信する。プリントサーバーコンピューター１０４は、ネットワーク１０１に接続された各種装置とのデータの送受信を管理する。印刷装置１０３は、印刷データを受け取ると印刷を開始する。
【００１５】
図２は、本発明の実施形態を示すブロック図である。
【００１６】
図２の１０４は、プリントサーバーコンピューター１０４のブロック図である。図２の１０４の制御部２０３は、ＣＰＵであり、ＲＡＭ２０２は、不揮発性の大容量メモリであり、ＲＯＭ２０１からロードされた各種プログラムコードやデータファイルを記憶する。ＲＯＭ２０１は、制御部２０３によって実行されるコンピュータープログラムを記憶する。図２の１０２ａ〜１０２ｎは、レンダリングサーバーコンピューター１０２ａ〜１０２ｎのブロック図である。図２の１０２ａから１０２ｎの制御部２０５は、ＣＰＵであり、ＲＡＭ２０８は、不揮発性の大容量メモリであり、ＲＯＭ２０７からロードされた各種プログラムコードやデータファイルを記憶する。ＲＯＭ２０７は、制御部２０５によって実行されるコンピュータープログラムを記憶する。印刷装置２０９は、ネットワークまたはケーブルなどによってデータ送信可能になっている。
【００１７】
プリントサーバーコンピューター１０４のネットワークＩ／Ｆ２０４は、レンダリングサーバーコンピューター１０２ａ〜１０２ｎのネットワークＩ／Ｆ２０６とネットワーク１０１を通じてデータ送信が可能になっている。本実施例では、プログラムコードがＲＡＭ２０２、ＲＡＭ２０８上にロードされるものとして説明しているが、直接ＲＯＭ２０１、ＲＯＭ２０７から実行することも可能である。
【００１８】
図３は、本実施例で扱うプログラムコードとデータがどのような関係にあるかを示すデータフロー図である。また、本実施例では、印刷データのフォーマットとしてＰＤＦ／ＶＴを例に記載しているが、ＰＤＦ等の他の印刷データフォーマットであっても適用可能である。
【００１９】
図３の１０４は、プリントサーバーコンピューター１０４内の処理部である。ＰＤＦ／ＶＴデータ受信部３０２は、印刷データであるＰＤＦ／ＶＴデータ３０１を受信し、処理対象の印刷データに対し、処理を行うようになっている。ＰＤＦ／ＶＴデータ受信部３０２は、ＰＤＦ／ＶＴデータ解析部３０３へＰＤＦ／ＶＴデータ３０１を渡す。ＰＤＦ／ＶＴデータ解析部３０３は、ＰＤＦ／ＶＴデータ３０１内のメタデータより、Ｒｅｆｅｒｅｎｃｅ  ＸＯｂｊｅｃｔ参照情報を取得し共通で参照されているオブジェクトの情報を取得する。オブジェクト制御部３０４は、ＰＤＦ／ＶＴデータ解析部３０３で抽出された共通オブジェクト情報を基に、新規に共通オブジェクトを生成する必要があるオブジェクトを抽出する。オブジェクト生成部３０５は、オブジェクト制御部３０４で抽出された共通オブジェクトを新規の共通オブジェクトとして生成する。オブジェクト情報生成部３０６は、ＰＤＦ／ＶＴデータ３０１のメタデータにあるＲｅｆｅｒｅｎｃｅ  ＸＯｂｊｅｃｔ参照情報をオブジェクト生成部３０５で作成された新規の共通オブジェクトの情報に書き換える。またオブジェクト情報生成部３０６は、ＰＤＦ／ＶＴデータ３０１のメタデータにあるＲｅｆｅｒｅｎｃｅ  ＸＯｂｊｅｃｔ参照情報より、どのＤＰａｒｔから何回参照されているのか情報を取得する。なおＤＰａｒｔとは、ＰＤＦ／ＶＴで定義されているページをページ領域の階層に分類するデータを保持しているデータである。
【００２０】
さらにオブジェクト情報生成部３０６は、共通オブジェクトごとにページ間で参照している共通オブジェクトの数を抽出し、参照共通オブジェクト情報３０８に書き込む。例えば、１ページ目と２ページ目で同一の共通オブジェクトを２つ利用していた場合、１ページ目の参照共通オブジェクト情報３０８は、２ページと同じ共通オブジェクトが２つ存在するという情報を保持する。参照共通オブジェクト情報３０８は、ページ番号と共通オブジェクト情報、送信済みページ番号を保持する。インタープリット処理部３０７は、オブジェクト情報生成部３０６で作成されたＰＤＦ／ＶＴデータを利用し、中間言語データ３１０を生成する。中間言語データ送信部３０９は、インタープリット処理部３０７で作成された中間言語データ３１０と参照共通オブジェクト情報３０８にある共通オブジェクト情報をページ単位でレンダリングサーバーコンピューター１０２ａ〜１０２ｎへ送信する。また、中間言語データ送信部３０９は、参照共通オブジェクト情報３０８の情報を書き換える。
【００２１】
レンダリングサーバーコンピューター１０２ａ〜１０２ｎの３１２は、印刷データである中間言語データ３１０を受信するデータ受信部であり、受信した中間言語データ３１０に対し、処理を行うようになっている。また中間言語データ受信部３１２は、中間言語データ解析部３１３へ中間言語データ３１０を渡す。
【００２２】
中間言語データ解析部３１３は、受信した中間言語データ３１０内の参照オブジェクト情報３１１より、参照している共通オブジェクト情報が存在するか確認する。中間言語データ解析部３１３は、処理対象の中間言語データ３１０のページをはじめて受信した場合、レンダリング処理部３１５へ中間言語データ３１０と共通オブジェクト情報を渡す。中間言語データ解析部３１３は、はじめてページを受信した以降の中間言語データ３１０のページを受信し、参照している共通オブジェクトがない場合、レンダリング処理部３１５へ中間言語データ３１０を渡しレンダリング処理をする。中間言語データ解析部３１３は、はじめてページを受信した以降の中間言語データ３１０のページを受信し、中間言語データ３１０に参照している共通オブジェクトがある場合、共通オブジェクト検索部３１４へ共通オブジェクト情報を渡す。
【００２３】
共通オブジェクト検索部３１４は、共通オブジェクト保持情報３２０を参照し、共通オブジェクト情報が存在しない場合、参照している共通オブジェクト情報を基に、別のレンダリングサーバーコンピューターにレンダリング済み共通オブジェクトの存在を検索する。共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューター内にレンダリング済みの共通オブジェクトを発見できなかった場合、レンダリング処理部３１５へ中間言語データ３１０を渡す。共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューターにレンダリング済み共通オブジェクトを発見できた場合、共通オブジェクト取得部３１６よりレンダリング済みの共通オブジェクトを取得する。レンダリング処理部３１５は、中間言語データ３１０のレンダリングを行う。
【００２４】
レンダリング処理部３１５は、中間言語データ解析部３１３から送信された参照オブジェクト情報に参照している共通オブジェクトがあった場合、共通オブジェクトキャッシュ部３１７へレンダリング済みの共通オブジェクトと共通オブジェクト情報を渡す。
【００２５】
レンダリング処理部３１５は、１ページ分のレンダリングが終了した後、レンダリング結果送信部３２３へレンダリング結果を渡す。
【００２６】
共通オブジェクトキャッシュ部３１７は、レンダリング処理部３１５で生成した共通オブジェクトのレンダリング結果，もしくは共通オブジェクト取得部３１６で取得した共通オブジェクトのレンダリング結果を、共通オブジェクトデータ３１８にキャッシュする。共通オブジェクトデータ３１８は、共通オブジェクトのレンダリングを行った結果のデータをキャッシュする。共通オブジェクト情報作成部３１９は、ページ単位に自レンダリングサーバーコンピューターで保持している共通オブジェクトの情報を共通オブジェクト保持情報３２０へ書き込みを行う。共通オブジェクト保持情報３２０は、レンダリングを行った共通オブジェクトのページ番号と共通オブジェクトの情報を保持する。
【００２７】
共通オブジェクト検索受付部３２１は、別のレンダリングサーバーコンピューターより共通オブジェクトの存在確認があった場合、共通オブジェクト検索部３１４を経由して共通オブジェクト保持情報３２０を参照することができる。共通オブジェクト送信部３２２は、共通オブジェクト検索受付部３２１で該当するオブジェクトが共通オブジェクト保持情報３２０に存在した場合、共通オブジェクトデータ３１８にアクセスする。共通オブジェクト送信部３２２は、共通オブジェクトデータ３１８より、キャッシュされている該当の共通オブジェクトデータを問い合わせされた別のレンダリングサーバーコンピューターへ送信を行う。
【００２８】
レンダリング結果送信部３２３は、レンダリング処理部３１５で作成された中間言語データ３１０のレンダリング結果を、プリントサーバーコンピューター１０４へ送信を行う。レンダリング結果受信部３２４は、レンダリング結果送信部３２３より送信されたレンダリング結果を受信し、キャッシュを行う。プリンタ送信部３２５は、レンダリング結果受信部３２４で受信したレンダリング結果をページ順にプリンタへ送信を行う。レンダリング結果を受信したプリンタは印刷を実行する。
【００２９】
以下、本発明の実施例を図面およびフローチャートを参照して説明する。
【００３０】
図４は、図３におけるＰＤＦ／ＶＴデータ解析部３０３、オブジェクト制御部３０４、オブジェクト生成部３０５、オブジェクト情報生成部３０６の共通オブジェクトの新規作成イメージ図である。
【００３１】
図４の（Ａ）は、印刷データとして入力されたＰＤＦ／ＶＴデータ３０１の状態であり、図４の（Ｂ）は共通オブジェクトを抽出し、変形が含まれる共通オブジェクトを新規に作成した後の最適化された中間言語化データである。
【００３２】
図４の（Ａ）のページ部４０２は、プリントサーバーコンピューター１０４で受信した印刷データであるＰＤＦ／ＶＴデータである。図４の（Ａ）のＤｐａｒｔ４０１は、ＰＤＦ／ＶＴデータのメタデータにあるＤＰａｒｔである。図４の（Ａ）の共通オブジェクト参照情報４０３は、ＰＤＦ／ＶＴデータのメタデータにあるＲｅｆｅｒｅｎｃｅ  ＸＯｂｊｅｃｔ参照情報である。また図４の（Ａ）の共通オブジェクト４０４は、ＰＤＦ／ＶＴデータの各ページが共通で利用しているオブジェクトデータである。
【００３３】
図４の（Ｂ）のページ部４０５は、中間言語化された印刷データである。図４の（Ｂ）の共通オブジェクト参照情報４０６は、共通で参照されているオブジェクト情報である。図４の（Ｂ）の共通オブジェクト４０７は、変形が含まれる複数回参照されている共通オブジェクトデータを新規に作成した後の共通オブジェクトデータである。図４の（Ｂ）の共通オブジェクト数情報４０８は、ページ間で利用している共通オブジェクトの数である。例えば左側の１列目と上段の１行目の１から５はページを示す。また１ページと５ページから参照される共通オブジェクトが１つ（Ｒｅ）、２ページと４ページから参照される共通オブジェクトが２つ（Ｒｂ、Ｒｄ）、３ページと５ページから参照される共通オブジェクトが１つ（Ｒｆ）あることを示している。
【００３４】
ＰＤＦ／ＶＴデータ解析部３０３は、ＰＤＦ／ＶＴデータ（Ａ）のＤｐａｒｔ４０１および共通オブジェクト参照情報４０３を参照し、共通で利用しているオブジェクトの情報を取得する。その後、オブジェクト生成部３０５は、ＰＤＦ／ＶＴデータ解析部３０３の取得情報である共通オブジェクト情報を取得し、新規に作成するオブジェクトを特定する。オブジェクト情報生成部３０６は、図４の（Ａ）のＰＤＦ／ＶＴデータの共通オブジェクト参照情報４０３を新規に作成した共通オブジェクト情報で書き換えを行う。またオブジェクト情報生成部３０６は、共通オブジェクト参照情報４０６を基に、共通オブジェクト数情報４０８の作成を行い、参照共通オブジェクト情報３０８へ格納を行う。
【００３５】
オブジェクト情報生成部３０６で作成されたＰＤＦ／ＶＴデータを基に，インタープリット処理部３０７は、図（Ｂ）の中間言語データを作成する。例えば、ＰＤＦ／ＶＴデータのページ部４０２のＰａｇｅ１は、共通オブジェクト４０４のＸａを参照し、縮小と回転の変形を行い、Ｘａ’を作成している。同様にＰＤＦ／ＶＴデータのページ部４０２のＰａｇｅ５は、共通オブジェクト４０４のＸａを参照し、縮小と回転の変形を行い、Ｘａ’を作成している。
【００３６】
そのため、オブジェクト生成部３０５は、新規に作成が必要な共通オブジェクト４０４のＸａの変形済み画像である共通オブジェクト４０７のＲｅを生成する。オブジェクト情報生成部３０６は、ＰＤＦ／ＶＴデータのページ部４０２のＰａｇｅ１とＰａｇｅ５の共通オブジェクト参照情報４０３にあるＸａ’をＲｅへ書き換えを行う。インタープリット処理部３０７は、オブジェクト情報生成部３０６で作成されたＰＤＦ／ＶＴデータを基にインタープリット処理を行い、共通オブジェクト参照情報４０６を基に、共通オブジェクト数情報４０８の作成を行う。
【００３７】
また、Ｐａｇｅ４のＲｂ’は、複数のページから参照されていないので変形済み共通オブジェクトの作成は行なわれない。図５は、図３におけるレンダリングサーバーコンピューター間の共通オブジェクト検索のイメージ図である。
【００３８】
プリントサーバーコンピューター５０１は、中間言語化した印刷データをレンダリングサーバーコンピューター５０２ａから５０２ｎに振り分ける。共通オブジェクト情報管理サーバー５０５は、共通オブジェクト情報５０３ａ、５０３ｂ、５０３ｎの情報を保持している。レンダリングサーバーコンピューター５０２ａから５０２ｎの台数は、レンダリングシステムにより増減が可能である。またレンダリングサーバーコンピューター５０２ａから５０２ｎは、共通オブジェクト情報管理サーバー５０５の機能を有することも可能である。
【００３９】
例えば、レンダリングサーバーコンピューター５０２ａは、自身でレンダリングを作成または別のレンダリングサーバーコンピューターより取得したオブジェクトデータを共通オブジェクトデータ５０４ａへキャッシュすることができる。レンダリングサーバーコンピューター５０２ａは、キャッシュした共通オブジェクトデータの情報を共通オブジェクト情報５０３ａへ保持することができる。レンダリングサーバーコンピューター５０２ａでキャッシュされた共通オブジェクトデータ５０４ａおよび共通オブジェクト情報５０３ａは、別のレンダリングサーバーコンピューターより参照することができる。
【００４０】
レンダリングサーバーコンピューター５０２ａは、共通オブジェクトデータを利用している中間言語データを処理する場合、レンダリングサーバーコンピューター５０２ａですでにレンダリング処理を行い、保持しているか共通オブジェクト情報５０３ａを参照する。レンダリングサーバーコンピューター５０２ａは、共通オブジェクト情報５０３ａに該当する共通オブジェクトデータの情報がない場合、レンダリングサーバーコンピューター５０２ｂ、５０２ｎに問い合わせし、共通オブジェクト情報５０３ｂ、５０３ｎを参照する。例えば、レンダリングサーバーコンピューター５０２ａは、検索している共通オブジェクトデータがレンダリングサーバーコンピューター５０２ｎに存在した場合、レンダリングサーバーコンピューター５０２ｎへ共通オブジェクトデータの送信を依頼する。データの送信依頼を受けたレンダリングサーバーコンピューター５０２ｎは、該当する共通オブジェクトデータをキャッシュしている共通オブジェクトデータ５０４ｎより、レンダリングサーバーコンピューター５０２ａへ送信を行う。送信された共通オブジェクトデータを取得したレンダリングサーバーコンピューター５０２ａは、共通オブジェクトデータ５０４ａへキャッシュすると共に、共通オブジェクト情報５０３ａの書き換えを行う。
【００４１】
またその別のレンダリングサーバーコンピューターに関しても同様の処理機能を保有している。
【００４２】
図６は、例えば（１）のような中間言語データがレンダリングサーバーコンピューターへ送信された場合、レンダリングサーバーコンピューター内で実施される共通オブジェクト情報の検索と取得の処理を表すフローである。
【００４３】
中間言語データ（１）のオブジェクトデータは、共通オブジェクトではないオブジェクトデータ６０１と、共通オブジェクトであり別のレンダリングサーバーコンピューターでレンダリング済みのオブジェクトデータ６０２を参照している。さらに、中間言語データ（１）のオブジェクトデータは、共通オブジェクトであり別のレンダリングサーバーコンピューターでレンダリング済みでないオブジェクトデータ６０３を参照している。
【００４４】
（２）の図は、オブジェクトデータのレンダリング処理６０４、検索処理６０５、取得処理６０６を直列処理で実施した場合の処理を表すフローである。
【００４５】
まずレンダリング処理６０７で、レンダリング処理部３１５は、オブジェクトデータ６０１をレンダリングする。
【００４６】
レンダリング処理６０７で、オブジェクトデータ６０１のレンダリング処理が終了した後、検索処理６０５で、共通オブジェクト検索部３１４は、共通オブジェクトであるオブジェクトデータ６０２を別のレンダリングサーバーコンピューターに検索を行う。
【００４７】
検索処理６０５で、オブジェクトデータ６０２の検索が終了した後、取得処理６０６で、共通オブジェクト取得部３１６は、該当するオブジェクトデータ６０２を別のレンダリングサーバーコンピューターからレンダリング結果を取得する。共通オブジェクトキャッシュ部３１７は、共通オブジェクト取得部３１６で取得したオブジェクトデータ６０２のレンダリング結果を共通オブジェクトデータ３１８へキャッシュする。共通オブジェクト情報作成部３１９は、共通オブジェクトキャッシュ部３１７でキャッシュしたオブジェクトデータ６０２の共通オブジェクト情報を共通オブジェクト保持情報３２０へ保持する。
【００４８】
取得処理６０６で、オブジェクトデータ６０２の取得が終了した後、検索処理６０５で、共通オブジェクト検索部３１４は、共通オブジェクトであるオブジェクトデータ６０３を別のレンダリングサーバーコンピューターに検索を行う。共通オブジェクト検索部３１４は、検索結果が別のレンダリングサーバーコンピューターに存在しない場合、レンダリング処理部３１５へオブジェクトデータ６０３を渡す。
【００４９】
検索処理６０５で、オブジェクトデータ６０３の検索が終了した後、レンダリング処理６０４で、レンダリング処理部３１５は、オブジェクトデータ６０３をレンダリングする。
【００５０】
（３）の図は、オブジェクトデータのレンダリング処理６０７、検索処理６０８、取得処理６０９のそれぞれの処理が独立して動作する並列処理の場合の処理を表すフローである。
【００５１】
まずレンダリング処理６０７で、レンダリング処理部３１５は、オブジェクトデータ６０１をレンダリングする。平行して検索処理６０８で、共通オブジェクト検索部３１４は、共通オブジェクトであるオブジェクトデータ６０２を別のレンダリングサーバーコンピューターに検索を行う。
【００５２】
検索処理６０８で、オブジェクトデータ６０１の検索が終了した後、検索処理６０８で、共通オブジェクト検索部３１４は、共通オブジェクトであるオブジェクトデータ６０３を別のレンダリングサーバーコンピューターに検索を行う。平行して、取得処理６０９で、共通オブジェクト取得部３１６は、該当するオブジェクトデータ６０２を別のレンダリングサーバーコンピューターからレンダリング結果を取得する。共通オブジェクトキャッシュ部３１７は、共通オブジェクト取得部３１６で取得したオブジェクトデータ６０２のレンダリング結果を共通オブジェクトデータ３１８へキャッシュする。共通オブジェクト情報作成部３１９は、共通オブジェクトキャッシュ部３１７でキャッシュしたオブジェクトデータ６０２の共通オブジェクト情報を共通オブジェクト保持情報３２０へ保持する。
【００５３】
検索処理６０８で、オブジェクトデータ６０３の検索が終了した後、レンダリング処理６０７で、レンダリング処理部３１５は、オブジェクトデータ６０３をレンダリングする。
【００５４】
図７は、図３の全体の処理を表すフローチャートである。図７のフローチャートに関わるプログラムはプリントサーバーコンピューターのメモリに記憶されており、ＣＰＵにより実行される。
【００５５】
プリントサーバーコンピューター１０４が印刷データであるＰＤＦ／ＶＴデータ３０１を送信されると、ステップＳ１０２で、ＰＤＦ／ＶＴデータ受信部３０２はＰＤＦ／ＶＴデータ３０１を受信する処理を行う。
【００５６】
ステップＳ１０３で、ＰＤＦ／ＶＴデータ解析部３０３、オブジェクト制御部３０４、オブジェクト生成部３０５、オブジェクト情報生成部３０６は、ＰＤＦ／ＶＴデータ３０１を解析する。またステップＳ１０３で、インタープリット処理部３０７は、時間御かかる共通オブジェクトの作成と、中間言語データ３１０の作成をする処理を行う。
【００５７】
ステップＳ１０４で、中間言語データ送信部３０９は、中間言語化された印刷データに対し、ステップＳ１０５からＳ１０７を繰り返す処理を行う。ステップＳ１０５で、中間言語データ送信部３０９は、中間言語化された印刷データ３１０をレンダリングサーバーコンピューターへ送信する処理を行う。ステップＳ１０６で、レンダリング結果受信部３２４は、レンダリング結果送信部３２３から送信される印刷データのページ単位のレンダリング結果を受信し、キャッシュする処理を行う。ステップＳ１０７で、プリンタ送信部３２５は、レンダリング結果受信部３２４でキャッシュしたレンダリング結果をページ順にプリンタへ送信する。
【００５８】
図８は、図７のステップＳ１０３の詳細説明であり、図３のＰＤＦ／ＶＴデータ解析部３０３からインタープリット処理部３０７の処理を表すフローチャートである。図８のフローチャートに関わるプログラムはプリントサーバーコンピューターのメモリに記憶されており、ＣＰＵにより実行される。
【００５９】
ステップＳ２０２で、ＰＤＦ／ＶＴデータ解析部３０３は、印刷データであるＰＤＦ／ＶＴデータの解析処理を行う。
【００６０】
ステップＳ２０３で、ＰＤＦ／ＶＴデータ解析部３０３は、ＰＤＦ／ＶＴデータの構造を解析し、メタデータよりＲｅｆｅｒｅｎｃｅ  ＸＯｂｊｅｃｔ  参照情報を参照する。ステップＳ２０４で、ＰＤＦ／ＶＴデータ解析部３０３は、ステップＳ２０３で取得した共通オブジェクト参照情報４０３より、各ページで参照している共通オブジェクト情報を取得する処理を行う。
【００６１】
ステップＳ２０５で、オブジェクト制御部３０４は、ステップＳ２０４で取得した共通オブジェクト参照情報４０３に共通オブジェクトが複数回参照されているか、同一のオブジェクト名称の出現回数を確認する。ステップＳ２０５で、オブジェクト制御部３０４は、共通オブジェクトが存在した場合、ステップＳ２０６へ進む。ステップＳ２０５で、オブジェクト制御部３０４は、共通オブジェクトが存在しなかった場合、ステップＳ２１３へ進む。
【００６２】
ステップＳ２０６で、オブジェクト制御部３０４は、共通オブジェクトがイメージデータであるかＰＤＦ／ＶＴデータの構造を解析し、メタデータよりＲｅｆｅｒｅｎｃｅ  ＸＯｂｊｅｃｔにあるグラフィック状態を確認し判断する処理を行う。ステップＳ２０６で、オブジェクト制御部３０４は、共通オブジェクトがイメージデータである場合、ステップＳ２０７へ進む。ステップＳ２０６で、オブジェクト制御部３０４は、共通オブジェクトがイメージデータではなかった場合、ステップＳ２１３へ進む。
【００６３】
ステップＳ２０７で、オブジェクト制御部３０４は、ステップＳ２０４で取得した各ページで参照している共通オブジェクト参照情報４０３より、共通オブジェクトが複数のページで参照しているかオブジェクト名称の出現回数を確認し判断する処理を行う。ステップＳ２０７で、オブジェクト制御部３０４は、共通オブジェクトが複数のページで参照している場合、ステップＳ２０８へ進む。ステップＳ２０７で、オブジェクト制御部３０４は、共通オブジェクトが複数のページで参照されていない場合、ステップＳ２１３へ進む。
【００６４】
ステップＳ２０８で、オブジェクト制御部３０４は、共通オブジェクトがアフィン変換であるか、ＰＤＦ／ＶＴデータの構造を解析し、イメージ座標系を確認し判断する処理を行う。すなわち、アフィン変換により拡大、縮小、平行移動、反転処理されレンダリングに時間がかかるオブジェクトであるかを判断する。ステップＳ２０８で、オブジェクト制御部３０４は、共通オブジェクトがアフィン変換されている場合、ステップＳ２０９へ進む。ステップＳ２０８で、オブジェクト制御部３０４は、共通オブジェクトがアフィン変換されていない場合、ステップＳ２１３へ進む。
【００６５】
ステップＳ２０９で、オブジェクト制御部３０４は、共通オブジェクトが単純回転かどうかイメージ座標系の情報と単純回転値を比較し判断する処理を行う。ステップＳ２０９で、オブジェクト制御部３０４は、共通オブジェクトが単純回転ではなかった場合、ステップＳ２１０へ進む。ステップＳ２０９で、オブジェクト制御部３０４は、共通オブジェクトが単純回転であった場合、ステップＳ２１３へ進む。なお、単純回転処理は、ハードで回転しても、ソフトで回転しても通常は高速に処理できるが、ハードの性能により、単純回転でも速度を出せない場合は、単純回転でもＳ２１０に進むようにしても良い。
【００６６】
ステップＳ２１０で、オブジェクト生成部３０５は、新しい共通オブジェクトを作成する処理を行う。
【００６７】
ステップＳ２１１で、オブジェクト情報生成部３０６は、ＰＤＦ／ＶＴデータのメタデータにあるＸＯｂｊｅｃｔ参照情報をオブジェクト生成部３０５で作成された新規の共通オブジェクトの情報に書き換える処理を行う。
【００６８】
ステップＳ２１２で、オブジェクト情報生成部３０６は、ステップＳ２０４で取得した各ページで参照している共通オブジェクト参照情報４０３を書き換え、参照共通オブジェクト情報３０８へ保持する処理を行う。
【００６９】
ステップＳ２１３で、インタープリット処理部３０７は、印刷データであるＰＤＦ／ＶＴデータを中間言語化し、中間言語データ３１０を作成する処理を行う。
【００７０】
図９は、図３のプリントサーバーコンピューター１０４内に作成された中間言語データ３１０が、複数ページで共通オブジェクトを利用していない場合の処理を表す。具体的には、レンダリングサーバーコンピューターへ中間言語データ送信部３０９が、中間言語データ３１０を送信する処理を表すフローチャートである。また、図７のステップＳ１０５とステップＳ１０６の詳細説明である。図９のフローチャートに関わるプログラムはプリントサーバーコンピューターのメモリに記憶されており、ＣＰＵにより実行される。中間言語データ送信部３０９は、オブジェクト情報生成部３０６で作成された参照共通オブジェクト情報３０８を参照し、送信する中間言語データ３１０に複数ページで利用する共通オブジェクトが含まれていないか判断を行う。
【００７１】
ステップＳ３０２で、中間言語データ送信部３０９は、レンダリングサーバーコンピューターの台数を取得する。なおレンダリングサーバーコンピューターの台数は事前にプリントサーバーコンピューター１０４で保持しておいても良い。
【００７２】
ステップＳ３０３で、中間言語データ送信部３０９は、送信処理が開始された場合、レンダリングサーバーコンピューターの台数分、レンダリングサーバーコンピューターへ順番に１ページ分の中間言語データ３１０を送信する。またステップＳ３０３で、中間言語データ送信部３０９は、送信したページ番号と送信したレンダリングサーバーコンピューター情報を送信済みページ情報として参照共通オブジェクト情報３０８へ保持する処理を行う。
【００７３】
ステップＳ３０４で、レンダリングサーバーコンピューターは、ＰＤＦ／ＶＴデータ３０１の総ページ数から送信ページ数を引いた分だけステップＳ３０５からＳ３０７を繰り返す処理を行う。
【００７４】
ステップＳ３０５で、レンダリング処理部３１５は、レンダリングサーバーコンピューターで受信した１ページ分の中間言語データ３１０のレンダリング処理を行う。
【００７５】
ステップＳ３０６で、レンダリング結果送信部３２３は、レンダリング処理部３１５で作成されたレンダリング結果を、レンダリング結果受信部３２４へ送信する処理を行う。
【００７６】
ステップＳ３０７で、中間言語データ送信部３０９は、参照共通オブジェクト情報３０８に保持されている送信ページ番号を基に、送信していない１ページ分の中間言語データ３１０をレンダリングサーバーコンピューターへ送信する処理を行う。ステップＳ３０７で、中間言語データ送信部３０９は、送信したページ番号と送信したレンダリングサーバーコンピューター情報を参照共通オブジェクト情報３０８へ保持する処理を行う。
【００７７】
図１０は、図３のプリントサーバーコンピューター１０４内に作成された中間言語データ３１０が複数ページで共通オブジェクトを利用する場合の処理である。具体的には、レンダリングサーバーコンピューターへ中間言語データ送信部３０９が、中間言語データ３１０を送信する処理を表すフローチャートである。また、図７のステップＳ１０５とステップＳ１０６の詳細説明である。図１０のフローチャートに関わるプログラムはプリントサーバーコンピューターのメモリに記憶されており、ＣＰＵにより実行される。
【００７８】
中間言語データ送信部３０９は、オブジェクト情報生成部３０６で作成された参照共通オブジェクト情報３０８を参照し、送信する中間言語データ３１０に複数ページで利用する共通オブジェクトが含まれているか判断を行う。
【００７９】
複数ページで参照する共通オブジェクトが含まれるＰＤＦ／ＶＴデータ３０１のインタープリット処理結果である中間言語データ３１０が作成された後、ステップＳ４０２で、中間言語データ送信部３０９は、レンダリングサーバーコンピューターの台数を取得する。なおレンダリングサーバーコンピューターの台数は事前にプリントサーバーコンピューター１０４で保持しておいても良い。
【００８０】
ステップＳ４０３で、中間言語データ送信部３０９は、送信処理が開始された場合、レンダリングサーバーコンピューターの台数分、レンダリングサーバーコンピューターへ順番に１ページ分の中間言語データ３１０を送信する。またステップＳ３０３で、中間言語データ送信部３０９は、送信したページ番号と送信したレンダリングサーバーコンピューター情報を送信済みページ情報として参照共通オブジェクト情報３０８へ保持する処理を行う。
【００８１】
ステップＳ４０４で、中間言語データ送信部３０９は、ＰＤＦ／ＶＴデータの総ページ数から送信したページ数を引いた分だけステップＳ４０７からＳ４０８を繰り返す処理を行う。
【００８２】
ステップＳ４０５で、レンダリング処理部３１５はレンダリングサーバーコンピューターで受信した１ページ分の中間言語データ３１０のレンダリング処理を行う。
【００８３】
ステップＳ４０６で、レンダリング結果送信部３２３は、レンダリング処理部３１５で作成されたレンダリング結果を、レンダリング結果受信部３２４へ送信する処理を行う。
【００８４】
ステップＳ４０７で、中間言語データ送信部３０９は、中間言語データ送信部３０９が参照共通オブジェクト情報３０８へ保持した送信済みページ情報と、オブジェクト情報生成部３０６で作成した共通オブジェクトデータ３１８を取得する。ステップＳ４０７で、中間言語データ送信部３０９は、取得した送信済みページ情報と共通オブジェクトデータを比較し未処理のページ番号を取得する。ステップＳ４０７で、中間言語データ送信部３０９は、参照共通オブジェクト情報３０８に保持しているページ番号と送信済みページ番号より、未処理のページ番号を取得する。中間言語データ送信部３０９は、この未処理のページ番号と、参照共通オブジェクト情報３０８（共通オブジェクト数情報４０８）の共通オブジェクト情報から、参照している共通オブジェクトの数が多いページの検索を行う。
【００８５】
ステップＳ４０８で、中間言語データ送信部３０９は、ステップＳ４０７で検索した未処理の中間言語データ３１０のページを送信する処理を行う。
【００８６】
ステップＳ４０９で、共通オブジェクト検索部３１４は、レンダリングサーバーコンピューターへ共通オブジェクトの検索処理を行う。
【００８７】
例えば、参照共通オブジェクト情報３０８に格納されているデータの例である図４の共通オブジェクト数情報４０８で具体例を説明する。まず、サーバーＡに１ページ目を送信し、サーバーＢに２ページ目を送信する。その後、サーバーＡが１ページ目のレンダリングを終了した場合、未処理の３、４、５ページの中からサーバーＡには３ページ目ではなく、１ページ目との共通オブジェクトを持つ５ページ目が送信される。次にサーバーＢが２ページ目を終了した場合、未処理の３、４ページの中からサーバーＢには３ページ目ではなく２ページ目との共通オブジェクトが多い４ページ目が送信される。このようにすることにより共通オブジェクトのキャッシュが有効になりサーバーは高速にレンダリング処理できる。最後にサーバーＡが５ページ目のレンダリングを終了した場合、サーバーＡには未処理の３ページ目が送信される。図１１は、図１０のステップＳ４０９の詳細説明であり、図３のレンダリングサーバーコンピューターが共通オブジェクトの検索からレンダリング済みの共通オブジェクトを取得する処理を表すフローチャートである。図１１のフローチャートに関わるプログラムはレンダリングサーバーコンピューターのメモリに記憶されており、ＣＰＵにより実行される。
【００８８】
中間言語データ３１０を、中間言語データ受信部３１２で受信した後、ステップＳ５０２で、中間言語データ解析部３１３は、受信した中間言語データ３１０内の参照オブジェクト情報３１１を取得する処理を行う。
【００８９】
ステップＳ５０３で、中間言語データ解析部３１３は、中間言語データ３１０から取得した参照オブジェクト情報３１１より、共通オブジェクト情報が存在するか判断する処理を行う。ステップＳ５０３で、中間言語データ解析部３１３は、共通オブジェクト情報が存在した場合、ステップＳ５０４へ進む。ステップＳ５０３で、中間言語データ解析部３１３は、共通オブジェクト情報が存在しなかった場合、ステップＳ５１５へ進む。
【００９０】
ステップＳ５０４で、ステップＳ５０５からＳ５１３を繰り返す処理を行う。
【００９１】
ステップＳ５０５で、共通オブジェクト検索部３１４は、既に自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクト情報を共通オブジェクト保持情報３２０より取得する処理を行う。
【００９２】
ステップＳ５０６で、共通オブジェクト検索部３１４は、自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクトが存在した場合、ステップＳ５１３へ進む。ステップＳ５０６で、共通オブジェクト検索部３１４は、自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクトが存在しなかった場合、ステップＳ５０７へ進む。
【００９３】
ステップ５０７で、共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューターへレンダリング済み共通オブジェクトの存在を確認する処理を行う。レンダリング済み共通オブジェクトの存在確認は、任意の順番で検索が可能である。
【００９４】
ステップＳ５０８で、共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューターにレンダリング済み共通オブジェクトが存在するかどうかの判断を行い、共通オブジェクトが存在した場合、ステップＳ５１３へ進む。ステップＳ５０８で、共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューターにレンダリング済み共通オブジェクトが存在しなかった場合、ステップＳ５０９へ進む。
【００９５】
ステップ５０９で、共通オブジェクト検索部３１４は、すべてのレンダリングサーバーコンピューターの検索を行ったか確認する処理を行う。ステップ５０９で、共通オブジェクト検索部３１４は、すべてのレンダリングサーバーコンピューターの検索を行った場合、Ｓ５１１へ進む。ステップ５０９で、共通オブジェクト検索部３１４は、すべてのレンダリングサーバーコンピューターの検索を行っていない場合、Ｓ５０７へ進む。
【００９６】
ステップＳ５１０で、共通オブジェクト取得部３１６は、レンダリング済み共通オブジェクトが存在したレンダリングサーバーコンピューターより、該当する共通オブジェクトデータのレンダリング結果を取得する。
【００９７】
ステップ５１１で、レンダリング処理部３１５は、共通オブジェクトをレンダリングする処理を行う。
【００９８】
ステップＳ５１２で、共通オブジェクトキャッシュ部３１７は、ステップＳ５１０で別のレンダリングサーバーコンピューターから取得した共通オブジェクトを共通オブジェクトデータ３１８へキャッシュする処理を行う。またはステップＳ５１２で、共通オブジェクトキャッシュ部３１７は、ステップＳ５１１でレンダリングを行った共通オブジェクトを共通オブジェクトデータ３１８へキャッシュする処理を行う。
【００９９】
ステップＳ５１３で、共通オブジェクト情報作成部３１９は、ステップＳ５１２でキャッシュした共通オブジェクトの情報を共通オブジェクト保持情報３２０へ書き込みをする処理を行う。
【０１００】
図１２は、図１１のステップＳ５０７より呼び出される処理であり、レンダリングサーバーコンピューターが、別のレンダリングサーバーコンピューターより、共通オブジェクトを検索され該当する共通オブジェクトを送信する処理を表すフローチャートである。図１２のフローチャートに関わるプログラムはレンダリングサーバーコンピューターのメモリに記憶されており、ＣＰＵにより実行される。
【０１０１】
ステップＳ６０２で、共通オブジェクト検索受付部３２１は、別のレンダリングサーバーコンピューターより、共通オブジェクトのレンダリング結果の検索を受け付ける処理を行う。
【０１０２】
ステップＳ６０３で、共通オブジェクト検索受付部３２１は、共通オブジェクト検索部３１４を経由し、該当する共通オブジェクトを保持しているか共通オブジェクト保持情報３２０を参照し検索する処理を行う。
【０１０３】
ステップＳ６０４で、共通オブジェクト検索受付部３２１は、該当する共通オブジェクトが共通オブジェクト保持情報３２０で保持している場合、ステップＳ６０５へ進む。ステップＳ６０４で、共通オブジェクト検索受付部３２１は、該当する共通オブジェクトを保持していない場合、ステップＳ６０７へ進む。
【０１０４】
ステップＳ６０５で、共通オブジェクト送信部３２２は、該当する共通オブジェクトをキャッシュしている共通オブジェクトデータ３１８より取得する処理を行う。
【０１０５】
ステップＳ６０６で、共通オブジェクト送信部３２２は、共通オブジェクトデータ３１８より取得した共通オブジェクトを検索元のレンダリングサーバーコンピューターへ送信する処理を行う。
【０１０６】
ステップＳ６０７で、共通オブジェクト送信部３２２は、問い合わせ元のレンダリングサーバーコンピューターへ該当する共通オブジェクトがないことを送信する処理を行う。
【０１０７】
〔実施例２〕
本発明第１の実施の形態にあっては、共通オブジェクトの存在と取得を別のレンダリングサーバーコンピューターに順番に検索することで、共通オブジェクトを取得することを示した。しかしながら、レンダリングシステムの構成により検索方式を変更することができる。
【０１０８】
図１３は、図１０のステップＳ４０９の詳細説明であり、別のレンダリングサーバーコンピューターに一斉に検索して共通オブジェクトの検索と取得を行う処理を表すフローチャートである。図１３のフローチャートに関わるプログラムはレンダリングサーバーコンピューターのメモリに記憶されており、ＣＰＵにより実行される。
【０１０９】
図３のプリントサーバーコンピューターから中間言語データ３１０を、中間言語データ受信部３１２で受信した後、ステップＳ７０２で、中間言語データ解析部３１３は、受信した中間言語データ３１０内の参照オブジェクト情報３１１を取得する処理を行う。
【０１１０】
ステップＳ７０３で、中間言語データ解析部３１３は、中間言語データ３１０から取得した参照オブジェクト情報３１１より、共通オブジェクト情報が存在するか判断する処理を行う。ステップＳ７０３で、中間言語データ解析部３１３は、共通オブジェクト情報が存在した場合、ステップＳ７０４へ進む。ステップＳ５０３で、中間言語データ解析部３１３は、共通オブジェクト情報が存在しなかった場合、ステップＳ７１４へ進む。
【０１１１】
ステップＳ７０４で、ステップＳ７０５からＳ７１２まで繰り返す処理を行う。
【０１１２】
ステップＳ７０５で、共通オブジェクト検索部３１４は、既に自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクト情報を共通オブジェクト保持情報３２０より取得する処理を行う。
【０１１３】
ステップＳ７０６で、共通オブジェクト検索部３１４は、自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクトが存在した場合、ステップＳ７１３へ進む。ステップＳ７０６で、共通オブジェクト検索部３１４は、自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクトが存在しなかった場合、ステップＳ７０８へ進む。
【０１１４】
ステップＳ７０７で、共通オブジェクト検索部３１４は、すべての別のレンダリングサーバーコンピューターへレンダリング済み共通オブジェクトの存在を確認する処理を行う。
【０１１５】
ステップＳ７０８で、共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューターへレンダリング済み共通オブジェクトが存在した場合、ステップＳ７０９へ進む。ステップＳ７０８で、共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューターへレンダリング済み共通オブジェクトが存在しなかった場合、ステップＳ７１０へ進む。
ステップＳ７０９で、共通オブジェクト取得部３１６は、レンダリング済み共通オブジェクトが存在したレンダリングサーバーコンピューターより、該当する共通オブジェクトのレンダリング結果を取得する処理を行う。
【０１１６】
ステップＳ７１０で、レンダリング処理部３１５は、共通オブジェクトをレンダリングする処理を行う。
【０１１７】
ステップＳ７１１で、共通オブジェクトキャッシュ部３１７は、ステップＳ７０８で取得した共通オブジェクトを共通オブジェクトデータ３１８へキャッシュする処理を行う。またはＳ７１１で、共通オブジェクトキャッシュ部３１７は、ステップＳ７０９でレンダリングを行った共通オブジェクトを共通オブジェクトデータ３１８へキャッシュする処理を行う。
【０１１８】
ステップＳ７１２で、共通オブジェクト情報作成部３１９は、ステップＳ７１１でキャッシュした共通オブジェクトの情報を共通オブジェクト保持情報３２０へ格納する処理を行う。
【０１１９】
〔実施例３〕
実施例１あるいは実施例２では、レンダリングサーバーコンピューターに共通オブジェクトの存在を問い合わせすることを説明してきた。ここでは共通オブジェクト情報を保持する共通オブジェクト情報管理サーバーが存在する場合のレンダリングシステムの場合について説明する。
【０１２０】
共通オブジェクト情報管理サーバーコンピューターは、中間言語データのページ番号と、ページごとの共通オブジェクト情報、レンダリング処理の有無、レンダリングをしたレンダリングサーバーコンピューター情報を保持している。
【０１２１】
図１４は、図１０のステップＳ４０９の詳細説明であり、共通オブジェクト情報を管理用のサーバーで管理し、そこから共通オブジェクトがどのレンダリングサーバーコンピューターに存在するか判断を行う処理を表すフローチャートである。図１４のフローチャートに関わるプログラムはレンダリングサーバーコンピューターのメモリに記憶されており、ＣＰＵにより実行される。
【０１２２】
図３のプリントサーバーコンピューターから中間言語データ３１０を、中間言語データ受信部３１２で受信した後、ステップＳ８０２で、中間言語データ解析部３１３は、受信した中間言語データ３１０から参照オブジェクト情報３１１を取得する処理を行う。
【０１２３】
ステップＳ８０３で、中間言語データ解析部３１３は、中間言語データ３１０から取得した参照オブジェクト情報３１１より、共通オブジェクト情報が存在するか判断する処理を行う。ステップＳ８０３で、中間言語データ解析部３１３は、共通オブジェクト情報が存在した場合、ステップＳ８０４へ進む。ステップＳ８０３で、中間言語データ解析部３１３は、共通オブジェクト情報が存在しなかった場合、ステップＳ８１４へ進む。
【０１２４】
ステップＳ８０４で、ステップＳ８０５からＳ８１２まで繰り返す処理を行う。
【０１２５】
ステップＳ８０５で、共通オブジェクト検索部３１４は、既に自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクト情報を共通オブジェクト保持情報３２０より取得する処理を行う。
【０１２６】
ステップＳ８０６で、共通オブジェクト検索部３１４は、自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクトが存在した場合、ステップＳ８１２へ進む。ステップＳ８０５で、共通オブジェクト検索部３１４は、自レンダリングサーバーコンピューター内で、レンダリング処理を行った共通オブジェクトが存在しなかった場合、ステップＳ８０７へ進む。
【０１２７】
ステップＳ８０７で、共通オブジェクト検索部３１４は、共通オブジェクト情報管理サーバーへレンダリング済み共通オブジェクトが、別のレンダリングサーバーコンピューターに存在するか確認する処理を行う。
【０１２８】
ステップＳ８０８で、共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューターへレンダリング済み共通オブジェクトが存在した場合、ステップＳ８０９へ進む。ステップＳ８０８で、共通オブジェクト検索部３１４は、別のレンダリングサーバーコンピューターへレンダリング済み共通オブジェクトが存在しなかった場合、ステップＳ８１０へ進む。
【０１２９】
ステップＳ８０９で、共通オブジェクト取得部３１６は、共通オブジェクト情報管理サーバーより、レンダリング済み共通オブジェクトが存在するレンダリングサーバーコンピューター情報を取得する。共通オブジェクト取得部３１６は、該当するレンダリングサーバーコンピューターより、共通オブジェクトのレンダリング結果を取得する。
【０１３０】
ステップＳ８１０で、レンダリング処理部３１５は、共通オブジェクトをレンダリングする処理を行う。
【０１３１】
ステップＳ８１１で、共通オブジェクトキャッシュ部３１７は、ステップＳ８０９で取得した共通オブジェクトを共通オブジェクトデータ３１８へキャッシュする処理を行う。またはステップＳ８１１で、共通オブジェクトキャッシュ部３１７は、レンダリングを行った共通オブジェクトを共通オブジェクトデータ３１８へキャッシュする処理を行う。
【０１３２】
ステップＳ８１２で、共通オブジェクト情報作成部３１９は、ステップＳ８１１でキャッシュした共通オブジェクトの情報を共通オブジェクト保持情報３２０へ格納する処理を行う。
【０１３３】
本発明の実施の形態によれば、ページ単位に分割できるように中間言語化することで、印刷データの転送やレンダリング処理に掛かる速度への向上が可能となる。さらに、共通で利用しているオブジェクトのレンダリング結果を各レンダリングサーバーコンピューターで共有することにより、重複したレンダリングを実施しなくなり、印刷速度の向上が可能となる。また、メタデータを利用して、共通オブジェクトの情報を取得し、レンダリングサーバーコンピューターへ印刷データの送信を分散する処理に利用することで、効率的な分散が可能となる。
【符号の説明】
【０１３４】
１０１  ネットワーク
１０２  レンダリングサーバーコンピューター
１０３  印刷装置
１０４  プリントサーバーコンピューター
１０５  クライアントコンピューター
１０６  共通オブジェクト情報管理サーバーコンピューター
２０１  ＲＯＭ
２０２  ＲＡＭ
２０３  制御部
２０４  ネットワークＩ／Ｆ
２０５  制御部
２０６  ネットワークＩ／Ｆ
２０７  ＲＯＭ
２０８  ＲＡＭ
２０９  印刷装置
３０１  ＰＤＦ／ＶＴデータ
３０２  ＰＤＦ／ＶＴデータ受信部
３０３  ＰＤＦ／ＶＴデータ解析部
３０４  オブジェクト制御部
３０５  オブジェクト生成部
３０６  オブジェクト情報生成部
３０７  インタープリット処理部
３０８  参照共通オブジェクト情報
３０９  中間言語データ送信部
３１０  中間言語データ
３１１  参照オブジェクト情報
３１２  中間言語データ受信部
３１３  中間言語データ解析部
３１４  共通オブジェクト検索部
３１５  レンダリング処理部
３１６  共通オブジェクト取得部
３１７  共通オブジェクトキャッシュ部
３１８  共通オブジェクトデータ
３１９  共通オブジェクト情報作成部
３２０  共通オブジェクト保持情報
３２１  共通オブジェクト検索受付部
３２２  共通オブジェクト送信部
３２３  レンダリング結果送信部
３２４  レンダリング結果受信部
３２５  プリンタ送信部
【図１】
2011154636.tif 000003
【図２】
2011154636.tif 000004
【図３】
2011154636.tif 000005
【図４】
2011154636.tif 000006
【図５】
2011154636.tif 000007
【図６】
2011154636.tif 000008
【図７】
2011154636.tif 000009
【図８】
2011154636.tif 000010
【図９】
2011154636.tif 000011
【図１０】
2011154636.tif 000012
【図１１】
2011154636.tif 000013
【図１２】
2011154636.tif 000014
【図１３】
2011154636.tif 000015
【図１４】
2011154636.tif 000016