(57)【特許請求の範囲】
【請求項１】
複数のページの画像を表す印刷データを描画データに変換する際に前記複数のページにわたって共通に利用される共通描画資源を記憶する第１の記憶部から、前記共通描画資源を分割して分割描画資源として順次取得し、第２の記憶部に記憶する描画資源取得部と、
前記第２の記憶部に記憶された分割描画資源を利用して、画像形成装置において取り扱い可能な形式の描画データを生成する描画データ生成部と、
前記描画資源取得部により一の分割描画資源が取得されて前記第２の記憶部に記憶された場合に、当該一の分割描画資源が前記描画データ生成部により利用されて描画データが生成された後であり、かつ、前記描画資源取得部により前記一の分割描画資源の後に取得された他の分割描画資源が前記第２の記憶部に記憶される前に、当該一の分割描画資源の記憶領域の全部又は一部を解放する記憶領域開放部と
を備える情報処理装置。
【請求項２】
前記描画資源取得部は、前記描画データ生成部による前記一の分割描画資源に基づく描画データの生成が完了する前に、前記他の分割描画資源の取得を開始することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記共通描画資源は、入れ子状に階層化された複数の部分共通描画資源により構成され、
前記描画資源取得部は、前記第１の記憶部から、前記複数の部分共通描画資源の各々を分割して分割描画資源として順次取得し、前記第２の記憶部に記憶し、
前記複数の部分共通描画資源のうち前記描画資源取得部により最初に取得される部分共通描画資源を起算点としてｎ番目の階層の部分共通描画資源から分割される分割描画資源のサイズは、ｎ＋１番目階層の部分共通描画資源から分割される分割描画資源のサイズよりも大きい
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記複数の部分共通描画資源のうちｎ番目の階層の部分共通描画資源から分割される分割描画資源のサイズは、予め定められた値を２のｎ乗で除することにより求められる値以下であることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
コンピュータを、
複数のページの画像を表す印刷データを描画データに変換する際に前記複数のページにわたって共通に利用される共通描画資源を記憶する第１の記憶部から、前記共通描画資源を分割して分割描画資源として順次取得し、第２の記憶部に記憶する描画資源取得部と、
前記第２の記憶部に記憶された分割描画資源を利用して、画像形成装置において取り扱い可能な形式の描画データを生成する描画データ生成部と、
前記描画資源取得部により一の分割描画資源が取得されて前記第２の記憶部に記憶された場合に、当該一の分割描画資源が前記描画データ生成部により利用されて描画データが生成された後であり、かつ、前記描画資源取得部により前記一の分割描画資源の後に取得された他の分割描画資源が前記第２の記憶部に記憶される前に、当該一の分割描画資源の記憶領域の全部又は一部を解放する記憶領域開放部
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
印刷ジョブでページ共通のフォーム又はイメージを使用するいわゆるバリアブル印刷では、印刷データをページ共通の再利用可能な共通部分と可変部分とに分けて解釈し、各々の中間データを出力する。中間データをビットマップ画像データに展開する際には、可変部分から参照される共通部分を収集し結合してゆく。
【０００３】
バリアブル印刷の際に、必要とされるメモリの容量を低減したり中間データの転送量を低減したりするための技術が従来提案されている。例えば、特許文献１では、フォーム情報をビットマップに展開して圧縮し、キャッシュとして記憶しておき、フォームオーバレイが指示された時に、その他の画像データと記憶されているフォーム情報とを合成して画像を形成できる画像形成方法が提案されている。特許文献２では、フォームデータをコンピュータ端末装置であらかじめ印刷装置固有の色変換およびｎ値化まで実施した後に保存し、フォームデータの情報量低減を図るようにした印刷処理方法が提案されている。特許文献３では、印刷作業が行われない時期に印刷装置側にバリアブルデータをストアすることで、印刷時にバリアブルデータの転送量を減らすことができ、バリアブル印刷の高速化を可能にするバリアブル印刷システムが提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平６−１０６８１０号公報
【特許文献２】特開２００３−３１９１６７号公報
【特許文献３】特開２００８−３３６３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
中間データをビットマップ画像データに展開する際に可変部分から参照される共通部分は、キャッシュ利用されるフォームやイメージ等で構成されるため、可変部分に対してデータサイズが大きくなることがある。
【０００６】
本発明は、かかる事情に鑑みてなされたものであり、印刷データを描画データに変換する際に複数のページにわたって共通に利用される共通描画資源を記憶するための記憶領域のサイズを抑制することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するため、本発明の請求項１に係る情報処理装置は、複数のページの画像を表す印刷データを描画データに変換する際に前記複数のページにわたって共通に利用される共通描画資源を記憶する第１の記憶部から、前記共通描画資源を分割して分割描画資源として順次取得し、第２の記憶部に記憶する描画資源取得部と、前記第２の記憶部に記憶された分割描画資源を利用して、画像形成装置において取り扱い可能な形式の描画データを生成する描画データ生成部と、前記描画資源取得部により一の分割描画資源が取得されて前記第２の記憶部に記憶された場合に、当該一の分割描画資源が前記描画データ生成部により利用されて描画データが生成された後であり、かつ、前記描画資源取得部により前記一の分割描画資源の後に取得された他の分割描画資源が前記第２の記憶部に記憶される前に、当該一の分割描画資源の記憶領域の全部又は一部を解放する記憶領域開放部とを備える。
【０００８】
本発明の請求項２に係る情報処理装置は、請求項１に記載の構成において、前記描画資源取得部は、前記描画データ生成部による前記一の分割描画資源に基づく描画データの生成が完了する前に、前記他の分割描画資源の取得を開始することを特徴とする。
【０００９】
本発明の請求項３に係る情報処理装置は、請求項１又は２に記載の構成において、前記共通描画資源は、入れ子状に階層化された複数の部分共通描画資源により構成され、前記描画資源取得部は、前記第１の記憶部から、前記複数の部分共通描画資源の各々を分割して分割描画資源として順次取得し、前記第２の記憶部に記憶し、前記複数の部分共通描画資源のうち前記描画資源取得部により最初に取得される部分共通描画資源を起算点としてｎ番目の階層の部分共通描画資源から分割される分割描画資源のサイズは、ｎ＋１番目階層の部分共通描画資源から分割される分割描画資源のサイズよりも大きいことを特徴とする。
【００１０】
本発明の請求項４に係る情報処理装置は、請求項３に記載の構成において、前記複数の部分共通描画資源のうちｎ番目の階層の部分共通描画資源から分割される分割描画資源のサイズは、予め定められた値を２のｎ乗で除することにより求められる値以下であることを特徴とする。
【００１１】
本発明の請求項５に係るプログラムは、コンピュータを、複数のページの画像を表す印刷データを描画データに変換する際に前記複数のページにわたって共通に利用される共通描画資源を記憶する第１の記憶部から、前記共通描画資源を分割して分割描画資源として順次取得し、第２の記憶部に記憶する描画資源取得部と、前記第２の記憶部に記憶された分割描画資源を利用して、画像形成装置において取り扱い可能な形式の描画データを生成する描画データ生成部と、前記描画資源取得部により一の分割描画資源が取得されて前記第２の記憶部に記憶された場合に、当該一の分割描画資源が前記描画データ生成部により利用されて描画データが生成された後であり、かつ、前記描画資源取得部により前記一の分割描画資源の後に取得された他の分割描画資源が前記第２の記憶部に記憶される前に、当該一の分割描画資源の記憶領域の全部又は一部を解放する記憶領域開放部として機能させる。
【発明の効果】
【００１２】
請求項１又は５に係る発明によれば、印刷データを描画データに変換する際に複数のページにわたって共通に利用される共通描画資源を記憶するための記憶領域のサイズを、共通描画資源全体が取得されてから描画データが生成される場合と比較して、抑制することができる。
請求項２に係る発明によれば、一の分割描画資源に基づく描画データの生成が完了してから他の分割描画資源の取得が開始される場合と比較して、共通描画資源に基づく描画データの生成に要する時間が低減される。
請求項３又は４に係る発明によれば、共通描画資源を記憶するための記憶領域の上限が定められる。
【図面の簡単な説明】
【００１３】
【図１】印刷システム１の構成の一例を示す図である。
【図２】ＲＩＰ部４１とＢＥＰ部５１の構成の一例を示す図である。
【図３】ラスタライズ処理の一例を示すフローチャートである。
【図４】共通リソース取得処理の一例を示すフローチャートである。
【図５】ページデータを構成する各オブジェクトがラスタライズされる過程の一例を示す図である。
【図６】ネスト構造を有する共通リソースの一例を示す図である。
【図７】ラスタライズ処理の一例を示すフローチャートである。
【図８】共通リソース取得処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について図面を参照しつつ説明する。
１．実施形態
１−１．構成
図１は、本発明の一実施形態に係る印刷システム１の構成の一例を示す図である。印刷システム１は、複数のクライアント装置１０と、印刷装置２０と、印刷画像処理システム１００とを備える。印刷画像処理システム１００は、中央制御処理装置３０、解釈処理装置４０及びバックエンド処理装置５０を備える。クライアント装置１０は、中央制御処理装置３０と通信回線６０を介して接続され、中央制御処理装置３０は、解釈処理装置４０と通信回線７０を介して接続され、解釈処理装置４０は、バックエンド処理装置５０と通信回線８０を介して接続され、バックエンド処理装置５０は、印刷装置２０と通信回線９０を介して接続される。通信回線６０、７０、８０及び９０は、例えば、有線又は無線のＬＡＮ（Local Area Network）である。なお、解釈処理装置４０、バックエンド処理装置５０はソフトウェアによって実現することも可能で、そのような場合の通信回線はいわゆるプロセス間通信になる。
【００１５】
クライアント装置１０は、印刷画像処理システム１００に対して印刷データを含む印刷指示を送信するコンピュータ装置である。クライアント装置１０から送信される印刷データは、ページ記述言語（Page Description Language、略称ＰＤＬ）で記述される。
【００１６】
印刷装置２０は、用紙等の記録媒体に画像を形成する画像形成装置である。印刷装置２０は、例えば、連続紙プリンタやカット紙プリンタである。印刷装置２０の印刷方式は、例えば、電子写真方式やインクジェット方式である。
【００１７】
印刷画像処理システム１００を構成する中央制御処理装置３０、解釈処理装置４０及びバックエンド処理装置５０は、各々コンピュータ装置である。各装置は、制御部と、記憶部と、通信部とを備える。制御部は、ＣＰＵ（Central Processing Unit）と、ＲＯＭ（Read Only Memory）と、ＲＡＭ（Random Access Memory）とを備える。ＣＰＵは、ＲＯＭ又は記憶部からＲＡＭ上にプログラムをロードして実行することにより、後述する各種の機能を実現する。記憶部は、ハードディスクドライブ等の記憶装置である。記憶部は、ＣＰＵにより実行されるプログラムや各種のデータを記憶する。通信部は、データ通信カード等の通信インタフェースである。通信部は、他の装置の通信を制御する。以下、各装置について個別に説明する。
【００１８】
中央制御処理装置３０は、ＣＥＰ（Central Processor）部３１を備える。ＣＥＰ部３１は、中央制御処理装置３０の制御部により実現される機能である。ＣＥＰ部３１は、クライアント装置１０から印刷データを含んだ印刷指示を受信すると、その印刷指示に応じた印刷処理を実行するために、当該印刷データを解釈処理装置４０に対して送信する。当該印刷データは、ＰＤＬで記述されたデータである。
【００１９】
解釈処理装置４０は、ＲＩＰ（Raster Image Processor）部４１を備える。ＲＩＰ部４１は、解釈処理装置４０の制御部により実現される機能である。ＲＩＰ部４１は、ＣＥＰ部３１から受信した印刷データを解釈して、印刷データが表す各ページの画像を表現する中間データを生成する。そして、生成した各ページの中間データをバックエンド処理装置５０に送信する。解釈処理装置４０は複数設けられて、並列処理が行われてもよい。
【００２０】
バックエンド処理装置５０は、ＢＥＰ（Back End Processor）部５１を備える。ＢＥＰ部５１は、バックエンド処理装置５０の制御部により実現される機能である。ＢＥＰ部５１は、ＲＩＰ部４１から受信した各ページの中間データを処理して、それら各ページのラスタデータを生成する。ＢＥＰ部５１は、生成したラスタデータを印刷装置２０に送信して印刷を実行させる。バックエンド処理装置５０は、本発明に係る「情報処理装置」の一例である。バックエンド処理装置５０は複数設けられて、並列処理が行われてもよい。
【００２１】
図２は、ＲＩＰ部４１とＢＥＰ部５１の構成の一例を示す図である。ＲＩＰ部４１は、印刷データ取得部４１１と、印刷データ解釈部４１２と、スプール４１３と、ページデータ送信部４１４と、共通リソース送信部４１５とを備える。ＢＥＰ部５１は、ページデータ取得部５１１と、共通リソース取得部５１２と、バッファ５１３と、ラスタデータ生成部５１４と、ページメモリ５１５と、記憶領域開放部５１６と、ラスタデータ送信部５１７とを備える。
【００２２】
ＢＥＰ部５１の印刷データ取得部４１１は、ＣＥＰ部３１から送信される印刷データを取得する。この印刷データは、ＰＤＬで記述されている。
【００２３】
印刷データ解釈部４１２は、印刷データ取得部４１１により取得された印刷データを解釈して、印刷データが表す各ページについて中間データ（以下、「ページデータ」という。）を生成する。
【００２４】
印刷データが表す各ページは、１以上のオブジェクト（言い換えると、画像要素）を含む。オブジェクトには、例えば、文字列、グラフィックス（線画、図形）、イメージ（連続調画像）などの種類がある。ページ中に含まれるオブジェクトの中には、再利用されるもの、すなわち印刷データの全ページの画像の中に複数回現れるものがある。例えば、PostScript（登録商標）の場合では、フォームやイメージなどといったタイプのオブジェクトがその一例である。印刷データ解釈部４１２は、印刷データの解釈中に、そのような再利用されるオブジェクトを検出すると、当該オブジェクトの中間データ（以下、「共通リソース」という。）を生成して、スプール４１３に保存する。そして、共通リソースの代わりに、当該共通リソースを特定するための特定情報をページデータに記述する。ここで、特定情報とは、例えば、当該共通リソースの格納場所を示すＵＲＬ（Uniform Resource Locator）である。なお、印刷データ解釈部４１２は、例えば印刷データ中の描画命令の種類に基づいて、当該描画命令が表すオブジェクトが再利用されるタイプか否かを判定する。
【００２５】
印刷データ解釈部４１２の分割部４１２１は、スプール４１３に保存される共通リソースのサイズが、予め定められたサイズ（以下、「システム固定値」という。）よりも大きい場合には、システム固定値よりも小さくなるように分割してからスプール４１３に保存する。ここで、共通リソースが分割されて生成される各データを、以下の説明では、「分割共通リソース」という。ただし、特に、分割されない共通リソースと区別する必要がない場合には、単に「共通リソース」という。印刷データ解釈部４１２は、分割部４１２１により共通リソースが分割されてスプール４１３に保存された場合には、分割されて生成された各分割共通リソースを特定する特定情報をページデータに記述する。なお、上記のシステム固定値は、例えば、２５６ＭＢである。
【００２６】
印刷データ解釈部４１２は、印刷データの解釈中に、すでにその中間データがスプール４１３に保存されている再利用オブジェクトになっていることを検出した場合には、当該オブジェクトの中間データの保存を省略してもよい。その場合、印刷データ解釈部４１２は、すでにスプール４１３に保存されている共通リソースを特定する特定情報をページデータに記述する。印刷データ解釈部４１２は、例えば、印刷データに含まれるオブジェクトのＩＤを参照することにより、すでにその中間データがスプール４１３に保存されているか否かを判定する。
【００２７】
ページデータ送信部４１４は、印刷データ解釈部４１２により生成されたページデータをＢＥＰ部５１に対して送信する。
【００２８】
共通リソース送信部４１５は、ＢＥＰ部５１からの送信要求を受けて、共通リソースをスプール４１３から読み出してＢＥＰ部５１に対して送信する。
【００２９】
次に、ＢＥＰ部５１のページデータ取得部５１１は、ＲＩＰ部４１から送信されるページデータを取得する。
【００３０】
共通リソース取得部５１２は、共通リソースを記憶するＲＩＰ部４１のスプール４１３から、共通リソースを分割して分割共通リソースとして順次取得し、バッファ５１３に記憶する。ここで、スプール４１３は、本発明に係る「第１の記憶部」の一例であり、バッファ５１３は、本発明に係る「第２の記憶部」の一例である。共通リソース取得部５１２は、本発明に係る「描画資源取得部」の一例である。
【００３１】
共通リソース取得部５１２は、ラスタデータ生成部５１４からの取得要求を受けて、ＲＩＰ部４１のスプール４１３から、共通リソースを分割して順次取得して、バッファ５１３に記憶する。
【００３２】
共通リソース取得部５１２は、ラスタデータ生成部５１４による一の分割共通リソースに基づくラスタデータの生成が完了する前に、他の分割共通リソースの取得を開始する。
【００３３】
ここで、ラスタデータの生成が完了する前とは、具体的には、ラスタデータがページメモリ５１５に書き込まれる前である。または、ラスタデータの生成が開始される前である。他の分割共通リソースは、例えば、一の分割共通リソースと同一の共通リソースから分割されて生成された分割共通リソースである。他の分割共通リソースは、必ずしも一の分割共通リソースの直後に共通リソース取得部５１２により取得されたものに限られない。分割共通リソースの取得を開始するとは、具体的には、共通リソース取得部５１２が、ＲＩＰ部４１の共通リソース送信部４１５に対して送信要求を送信することをいう。または、共通リソース取得部５１２が、共通リソース送信部４１５からの共通リソースの受信を開始することをいう。
【００３４】
ラスタデータ生成部５１４は、ページデータ取得部５１１により取得されたページデータを解釈して、各ページのラスタデータを生成する（すなわち、ラスタライズする）。具体的には、ページデータを構成する各オブジェクトを解釈して、オブジェクトごとにラスタデータを生成する。その際、ラスタデータ生成部５１４は、ページデータ内のデータだけで完結するオブジェクトについては、そのままラスタライズを行う。一方、共通リソースを参照するオブジェクトについては、共通リソース取得部５１２を介して分割取得される共通リソースを利用してラスタライズを行う。ラスタデータ生成部５１４は、オブジェクトの解釈の際に、共通リソースを特定する特定情報を検出すると、共通リソース取得部５１２に対して当該共通リソースの取得要求を発行する。ラスタデータ生成部５１４は、ラスタデータを生成すると、生成したラスタデータをページメモリ５１５に書き込む。ラスタデータ生成部５１４は、本発明に係る「描画データ生成部」の一例である。
【００３５】
記憶領域開放部５１６は、バッファ５１３の記憶領域の全部又は一部を開放する。ここで、記憶領域を開放するとは、当該記憶領域に新たなデータが記憶可能な状態にすることをいう。例えば、当該記憶領域に記憶されるデータを削除することをいう。または、当該記憶領域に記憶されるデータに対して上書きが可能な状態にすることをいう。
【００３６】
記憶領域開放部５１６は、共通リソース取得部５１２により一の分割共通リソースが取得されてバッファ５１３に記憶された場合に、当該一の分割共通リソースがラスタデータ生成部５１４により利用されてラスタデータが生成された後であり、かつ、共通リソース取得部５１２により当該一の分割共通リソースの後に取得された他の分割共通リソースがバッファ５１３に記憶される前に、当該一の分割共通リソースの記憶領域の全部又は一部を解放する。
【００３７】
ここで、ラスタデータが生成された後とは、具体的には、ラスタデータがページメモリ５１５に書き込まれた後である。他の分割共通リソースは、例えば、一の分割共通リソースと同じ共通リソースから分割された分割共通リソースである。他の分割共通リソースは、必ずしも一の分割共通リソースが取得された直後に共通リソース取得部５１２により取得されたものに限られない。
【００３８】
ラスタデータ送信部５１７は、ページメモリ５１５に書き込まれたラスタデータを印刷装置２０に対して送信する。
【００３９】
１−２．動作
次に、ＢＥＰ部５１の動作について説明する。具体的には、ＢＥＰ部５１のラスタデータ生成部５１４により実行されるラスタライズ処理と、共通リソース取得部５１２により実行される共通リソース取得処理について説明する。図３は、ラスタライズ処理の一例を示すフローチャートであり、図４は、共通リソース取得処理の一例を示すフローチャートである。共通リソース取得部５１２とラスタデータ生成部５１４とは、同一のページデータを参照して各処理を実行する。
【００４０】
まず、ラスタデータ生成部５１４は、共通リソース取得要求を共通リソース取得部５１２に対して発行する（ステップＳａ１）。この共通リソース取得要求は、共通リソース取得部５１２に対する割り込み要求として作用する。
【００４１】
次に、ラスタデータ生成部５１４は、ページデータを構成するオブジェクトを１つ読み込む（ステップＳａ２）。その際、ラスタデータ生成部５１４は、例えば、ページデータの先頭からオブジェクトの読み込みを開始する。
【００４２】
ラスタデータ生成部５１４は、読み込んだオブジェクトが、共通リソースを参照するオブジェクトであるか否かを判断する（ステップＳａ３）。この判断の結果、読み込んだオブジェクトが、共通リソースを参照しないオブジェクトである場合には（ステップＳａ３：ＮＯ）、ラスタデータ生成部５１４は、当該オブジェクトをラスタライズして、生成したラスタデータをページメモリ５１５に書き込む（ステップＳａ４）。
【００４３】
次に、ラスタデータ生成部５１４は、読み込んだオブジェクトが、ページデータにおいて最後のオブジェクトであるか否かを判断する（ステップＳａ５）。この判断の結果、読み込んだオブジェクトが最後のオブジェクトでない場合には（ステップＳａ５：ＮＯ）、ラスタデータ生成部５１４はステップＳａ２に戻り、次のオブジェクトを読み込む。一方、この判断の結果、読み込んだオブジェクトが最後のオブジェクトである場合には（ステップＳａ５：ＹＥＳ）、ラスタデータ生成部５１４は、終了要求を割り込み要求として共通リソース取得部５１２に対して発行して（ステップＳａ６）、本処理を終了する。
【００４４】
上記のステップＳａ３の判断の結果、読み込んだオブジェクトが、共通リソースを参照するオブジェクトである場合には（ステップＳａ３：ＹＥＳ）、ラスタデータ生成部５１４は、共通リソース取得部５１２から、共通リソース取得通知を取得しているか否かを判断する（ステップＳａ７）。この判断の結果、まだ共通リソース取得通知を取得していない場合には（ステップＳａ７：ＮＯ）、ラスタデータ生成部５１４は待機する。一方、この判断の結果、共通リソース取得通知を取得している場合には（ステップＳａ７：ＹＥＳ）、ラスタデータ生成部５１４は、次の共通リソースの取得要求を共通リソース取得部５１２に対して発行する（ステップＳａ８）。ここで、ラスタデータ生成部５１４は、すでに取得された共通リソースに基づいてラスタデータを生成する前に、次の共通リソースの取得を共通リソース取得部５１２に対して要求する。
【００４５】
共通リソースの取得要求の発行後、ラスタデータ生成部５１４は、共通リソース取得部５１２により取得された共通リソースをバッファ５１３から取得する。そして、当該共通リソースを解釈してラスタデータを生成し、ページメモリ５１５に書き込む（ステップＳａ４）。なお、バッファ５１３における当該共通リソースの記憶領域は、ラスタデータのページメモリ５１５への書き込み後に、記憶領域開放部５１６により開放される。ラスタデータを生成すると、ラスタデータ生成部５１４は、すでに説明したステップＳａ５を実行する。
以上が、ラスタライズ処理について説明である。
【００４６】
次に、共通リソース取得部５１２の方は、ラスタデータ生成部５１４から発行される割り込み要求を取得したか否かを判断する（ステップＳｂ１）。この判断の結果、割り込み要求を取得していない場合には（ステップＳｂ１：ＮＯ）、共通リソース取得部５１２は待機する。一方、この判断の結果、割り込み要求を取得している場合には（ステップＳｂ１：ＹＥＳ）、共通リソース取得部５１２は、取得した割り込み要求が終了要求であるか否かを判断する（ステップＳｂ２）。この判断の結果、取得した割り込み要求が終了要求である場合には（ステップＳｂ２：ＹＥＳ）、共通リソース取得部５１２は本処理を終了する。一方、この判断の結果、取得した割り込み要求が終了要求でない場合には（すなわち、取得した割り込み要求が共通リソース取得要求である場合には）（ステップＳｂ２：ＮＯ）、共通リソース取得部５１２は、ページデータを構成するオブジェクトを１つ読み込む（ステップＳｂ３）。その際、共通リソース取得部５１２は、例えば、ページデータの先頭からオブジェクトの読み込みを開始する。
【００４７】
共通リソース取得部５１２は、読み込んだオブジェクトが、共通リソースを参照するオブジェクトであるか否かを判断する（ステップＳｂ４）。この判断の結果、読み込んだオブジェクトが、共通リソースを参照しないオブジェクトである場合には（ステップＳｂ４：ＮＯ）、共通リソース取得部５１２は、読み込んだオブジェクトが、ページデータにおいて最後のオブジェクトであるか否かを判断する（ステップＳｂ５）。この判断の結果、読み込んだオブジェクトが最後のオブジェクトでない場合には（ステップＳｂ５：ＮＯ）、共通リソース取得部５１２はステップＳｂ３に戻り、次のオブジェクトを読み込む。一方、この判断の結果、読み込んだオブジェクトが最後のオブジェクトである場合には（ステップＳｂ５：ＹＥＳ）、ステップＳｂ１に戻る。
【００４８】
上記のステップＳｂ４の判断の結果、読み込んだオブジェクトが、共通リソースを参照するオブジェクトである場合には（ステップＳｂ４：ＹＥＳ）、共通リソース取得部５１２は、当該共通リソースを取得する（ステップＳｂ６）。具体的には、ＲＩＰ部４１に対して共通リソースの送信要求を送信し、ＲＩＰ部４１から共通リソースを取得すると、バッファ５１３に記憶する。共通リソースを取得すると、共通リソース取得部５１２は、共通リソース取得通知をラスタデータ生成部５１４に対して発行する（ステップＳｂ７）。その後、共通リソース取得部５１２は、ステップＳｂ１に戻る。
以上が、共通リソース取得処理について説明である。
【００４９】
次に、以上説明したラスタライズ処理及び共通リソース取得処理の具体例について説明する。図５は、ページデータを構成する各オブジェクトがラスタライズされる過程の一例を示す図である。同図に示す例では、ページデータを構成するオブジェクトｏｂｊのうち、オブジェクトｏｂｊ４は、共通リソースｍｎｇ１を参照するオブジェクトであり、オブジェクトｏｂｊ５は、共通リソースｍｎｇ２を参照するオブジェクトである。共通リソースｍｎｇ１及びｍｎｇ２は、各々分割して共通リソース取得部５１２により取得される。
【００５０】
ラスタデータ生成部５１４は、先頭のオブジェクトｏｂｊ１をラスタライズする前に、まず、共通リソース取得部５１２に対して、共通リソース取得要求を発行する（ステップＳａ１）。この取得要求を受けて、共通リソース取得部５１２は、オブジェクトｏｂｊ４により参照される分割共通リソースｍｎｇ１−１をＲＩＰ部４１から取得する（ステップＳｂ６）。そして、取得すると、共通リソース取得通知をラスタデータ生成部５１４に対して発行する（ステップＳｂ７）。
【００５１】
ラスタデータ生成部５１４は、共通リソース取得要求の発行後、共通リソースｍｎｇを参照しないオブジェクトｏｂｊ１〜ｏｂｊ３をそれぞれラスタライズする（ステップＳａ４）。
【００５２】
オブジェクトｏｂｊ１〜ｏｂｊ３をラスタライズ後、ラスタデータ生成部５１４は、オブジェクトｏｂｊ４については共通リソースｍｎｇ１を参照するオブジェクトであるから、共通リソースｍｎｇ１の取得後にラスタライズを行う。具体的には、共通リソース取得部５１２から、分割共通リソースｍｎｇ１−１についての取得通知を取得しているか否かを判断し（ステップＳａ７）、取得している場合には（ステップＳａ７：ＹＥＳ）、次の共通リソースの取得要求を共通リソース取得部５１２に対して発行する（ステップＳａ８）。この取得要求を受けて、共通リソース取得部５１２は、オブジェクトｏｂｊ４により参照される分割共通リソースｍｎｇ１−２をＲＩＰ部４１から取得する（ステップＳｂ６）。この取得は、本具体例において、分割共通リソースｍｎｇ１−１に基づくラスタデータの生成と並行して実行される。共通リソース取得部５１２は、分割共通リソースｍｎｇ１−２を取得すると、共通リソース取得通知をラスタデータ生成部５１４に対して発行する（ステップＳｂ７）。
【００５３】
共通リソース取得要求の発行後、ラスタデータ生成部５１４は、分割共通リソースｍｎｇ１−１をバッファ５１３から取得する。そして、分割共通リソースｍｎｇ１−１を解釈してラスタデータを生成し、ページメモリ５１５に書き込む（ステップＳａ４）。生成されたラスタデータがページメモリ５１５に書き込まれると、記憶領域開放部５１６は、バッファ５１３において分割共通リソースｍｎｇ１−１により占められていた記憶領域を開放する。この記憶領域の開放は、本具体例において、分割共通リソースｍｎｇ１−３がバッファ５１３に記憶される前に実行される。
【００５４】
分割共通リソースｍｎｇ１−１に基づいてラスタデータを生成すると、ラスタデータ生成部５１４は、次に、分割共通リソースｍｎｇ１−２についての取得通知を取得しているか否かを判断し（ステップＳａ７）、取得している場合には（ステップＳａ７：ＹＥＳ）、次の共通リソースの取得要求を共通リソース取得部５１２に対して発行する（ステップＳａ８）。この取得要求を受けて、共通リソース取得部５１２は、オブジェクトｏｂｊ４により参照される分割共通リソースｍｎｇ１−３をＲＩＰ部４１から取得する（ステップＳｂ６）。この取得は、本具体例において、分割共通リソースｍｎｇ１−２に基づくラスタデータの生成と並行して実行される。共通リソース取得部５１２は、分割共通リソースｍｎｇ１−３を取得すると、共通リソース取得通知をラスタデータ生成部５１４に対して発行する（ステップＳｂ７）。
【００５５】
共通リソース取得要求の発行後、ラスタデータ生成部５１４は、分割共通リソースｍｎｇ１−２をバッファ５１３から取得する。そして、分割共通リソースｍｎｇ１−２を解釈してラスタデータを生成し、ページメモリ５１５に書き込む（ステップＳａ４）。生成されたラスタデータがページメモリ５１５に書き込まれると、記憶領域開放部５１６は、バッファ５１３において分割共通リソースｍｎｇ１−２により占められていた記憶領域を開放する。この記憶領域の開放は、本具体例において、分割共通リソースｍｎｇ２−１がバッファ５１３に記憶される前に実行される。
【００５６】
分割共通リソースｍｎｇ１−２に基づいてラスタデータを生成すると、ラスタデータ生成部５１４は、次に、分割共通リソースｍｎｇ１−３についての取得通知を取得しているか否かを判断し（ステップＳａ７）、取得している場合には（ステップＳａ７：ＹＥＳ）、次の共通リソースの取得要求を共通リソース取得部５１２に対して発行する（ステップＳａ８）。この取得要求を受けて、共通リソース取得部５１２は、オブジェクトｏｂｊ５により参照される分割共通リソースｍｎｇ２−１をＲＩＰ部４１から取得する（ステップＳｂ６）。そして、取得すると、共通リソース取得通知をラスタデータ生成部５１４に対して発行する（ステップＳｂ７）。
【００５７】
共通リソース取得要求の発行後、ラスタデータ生成部５１４は、分割共通リソースｍｎｇ１−３をバッファ５１３から取得する。そして、分割共通リソースｍｎｇ１−３を解釈してラスタデータを生成し、ページメモリ５１５に書き込む（ステップＳａ４）。この際、オブジェクトｏｂｊ４により参照される共通リソースｍｎｇ１はすべて取得済みであるので、ラスタデータ生成部５１４は当該オブジェクトをラスタライズする。生成されたラスタデータがページメモリ５１５に書き込まれると、記憶領域開放部５１６は、バッファ５１３において分割共通リソースｍｎｇ１−３により占められていた記憶領域を開放する。
【００５８】
以上は、オブジェクトｏｂｊ４をラスタライズするまでの説明であるが、オブジェクトｏｂｊ５についてもオブジェクトｏｂｊ４と同様にラスタライズ処理が実行される。
【００５９】
以上説明したラスタライズ処理及び共通リソース取得処理によれば、ＲＩＰ部４１に記憶される共通リソースは、ＢＥＰ部５１により分割して取得される。そして、解釈されラスタデータが生成された分割共通リソースから順次その記憶領域が開放される。そのため、共通リソース全体が取得されてからその解釈が行われてラスタデータが生成される場合と比較して、共通リソースを記憶するための記憶領域のサイズが小さく済む。
【００６０】
また、以上説明したラスタライズ処理及び共通リソース取得処理によれば、ＢＥＰ部５１において、一の分割共通リソースの取得が、他の分割共通リソースのラスタライズと並行して実行される。そのため、一の分割共通リソースのラスタライズが完了してから他の分割共通リソースの取得が開始される場合と比較して、ラスタライズ処理に要する時間が低減される。
【００６１】
２．変形例
上記の実施形態は下記のように変形してもよい。また、下記の変形例は他の１以上の変形例と組み合わせてもよい。
【００６２】
２−１．変形例１
上記の実施形態において、共通リソースはネスト構造を有してもよい。すなわち、共通リソースは、入れ子状に階層化された複数の共通リソースにより構成されてもよい。図６は、ネスト構造を有する共通リソースの一例を示す図である。
【００６３】
同図に示す例において、共通リソースｍｎｇはネスト構造を有している。共通リソースｍｎｇは、入れ子状に階層化された複数の部分共通リソースｍｎｇ１、ｍｎｇ２及びｍｎｇ３により構成されている。部分共通リソースｍｎｇ１は、ページデータを構成するオブジェクトｏｂｊ４により参照され、オブジェクトｏｂｊ５〜ｏｂｊ８と、部分共通リソースｍｎｇ２とにより構成される。部分共通リソースｍｎｇ２は、オブジェクトｏｂｊ８により参照され、オブジェクトｏｂｊ９〜ｏｂｊ１１と、部分共通リソースｍｎｇ３とにより構成される。部分共通リソースｍｎｇ３は、オブジェクトｏｂｊ１１により参照され、オブジェクトｏｂｊ１２及びｏｂｊ１３により構成される。以下の説明では、ページデータにより直接参照される部分共通リソースｍｎｇ１を第１階層（または、ネスト１）とする。そして、第ｎ階層（または、ネストｎ）の部分共通リソースｍｎｇにより参照される部分共通リソースｍｎｇを第ｎ＋１階層（または、ネストｎ＋１）とする。
【００６４】
ＲＩＰ部４１の印刷データ解釈部４１２は、図６に示すページデータを生成する場合、参照先の部分共通リソースｍｎｇをスプール４１３に保存するとともに、当該部分共通リソースｍｎｇを特定する特定情報を参照元の部分共通リソースｍｎｇ又はページデータに記述する。具体的には、まず、部分共通リソースｍｎｇ３をスプール４１３に保存するとともに、部分共通リソースｍｎｇ３を特定する特定情報を部分共通リソースｍｎｇ２に記述する。次に、部分共通リソースｍｎｇ２をスプール４１３に保存するとともに、部分共通リソースｍｎｇ２を特定する特定情報を部分共通リソースｍｎｇ１に記述する。最後に、部分共通リソースｍｎｇ１をスプール４１３に保存するとともに、部分共通リソースｍｎｇ１を特定する特定情報をページデータに記述する。
【００６５】
印刷データ解釈部４１２の分割部４１２１は、スプール４１３に保存される部分共通リソースｍｎｇのサイズが、分割サイズよりも大きい場合には、分割サイズよりも小さくなるように分割してからスプール４１３に保存する。ここで、当該分割サイズは、本変形例では、階層に応じて決定される。第ｎ階層の分割サイズＶは下式により求められる。
Ｖ＝Ｘ／２n
ここで、変数Ｘは、システム固定値である。例えば、システム固定値を「１ＧＢ」とすると、第１階層の分割サイズは「５１２ＭＢ」となり、第２階層の分割サイズは「２５６ＭＢ」となり、第３階層の分割サイズは「１２８ＭＢ」となる。
【００６６】
印刷データ解釈部４１２は、分割部４１２１により、参照先の部分共通リソースｍｎｇが分割されてスプール４１３に保存された場合には、分割されて生成された各分割共通リソースを特定する特定情報を、参照元の部分共通リソースｍｎｇ又はページデータに記述する。
【００６７】
ＢＥＰ部５１の共通リソース取得部５１２は、ＲＩＰ部４１のスプール４１３から、部分共通リソースｍｎｇの各々を分割して分割共通リソースとして順次取得し、バッファ５１３に記憶する。部分共通リソースｍｎｇのうち共通リソース取得部５１２により最初に取得される部分共通リソースｍｎｇを起算点としてｎ番目の階層の部分共通リソースｍｎｇから分割される分割共通リソースのサイズは、予め定められた値を２のｎ乗で除することにより求められる値以下となる。
【００６８】
次に、本変形例に係るＢＥＰ部５１の動作について説明する。図７は、本変形例に係るラスタライズ処理の一例を示すフローチャートである。同図に示すラスタライズ処理は、図３に示すラスタライズ処理と比較して、ステップＳｃ１が追加されている点において相違している。以下ではこの相違点についてのみ説明する。図８は、本変形例に係る共通リソース取得処理の一例を示すフローチャートである。同図に示す共通リソース取得処理は、図４に示す共通リソース取得処理と比較して、ステップＳｄ１が追加されている点において相違している。以下ではこの相違点についてのみ説明する。
【００６９】
ラスタデータ生成部５１４は、共通リソース取得通知を取得すると（ステップＳａ７：ＹＥＳ）、共通リソース取得部５１２により取得された共通リソースをバッファ５１３から取得する。そして、取得した共通リソースについて、図７に示すラスタライズ処理（図７に示すステップＳａ１〜Ｓａ８及びＳｃ１）を実行する。すなわち、ラスタデータ生成部５１４は、取得した共通リソースを構成する各オブジェクトを読み込んで、共通リソースを参照しないオブジェクトである場合には、そのままラスタライズし、共通リソースを参照するオブジェクトである場合には、共通リソースを取得してからラスタライズする。なお、その際、ラスタデータ生成部５１４は、取得した共通リソースについて、図７に示すラスタライズ処理（図７に示すステップＳａ１〜Ｓａ８及びＳｃ１）を実行する。このように再帰的にラスタライズ処理が実行されるのは、本変形例に係る共通リソースがネスト構造を有しているからである。
【００７０】
共通リソース取得部５１２は、共通リソースを取得して（ステップＳｂ４：ＹＥＳ）、共通リソース取得通知をラスタデータ生成部５１４に対して発行すると、（ステップＳｂ７）、取得した共通リソースについて、図８に示す共通リソース取得処理（図８に示すステップＳｂ１〜Ｓｂ７及びＳｄ１）を実行する。すなわち、共通リソース取得部５１２は、ラスタデータ生成部５１４からの取得要求を受けて、取得した共通リソースを構成する各オブジェクトを読み込み、共通リソースを参照するオブジェクトである場合には、その参照される共通リソースを取得する。なお、その際、共通リソース取得部５１２は、取得した共通リソースについて、図８に示すラスタライズ処理（図８に示すステップＳｂ１〜Ｓｂ７及びＳｄ１）を実行する。このように再帰的に共通リソース取得処理が実行されるのは、本変形例に係る共通リソースがネスト構造を有しているからである。
【００７１】
以上説明した変形例に係るラスタライズ処理及び共通リソース取得処理によれば、ネスト構造の階層が深くなるにつれて、取得される分割共通リソースのサイズが小さくなってゆく。そのため、共通リソースを記憶するための記憶領域の上限を定められる。
【００７２】
２−２．変形例２
上記の実施形態に係る共通リソースは、本発明に係る「共通描画資源」の一例である。共通描画資源とは、複数のページの画像を表す印刷データを描画データに変換する際に、複数のページにわたって共通に利用される描画資源である。ここで、印刷データは、ＰＤＬで記述されたデータである。例えば、PostScript（登録商標）で記述されたデータである。印刷データにより表される各ページは、１以上のオブジェクト（換言すると、画像要素）を含む。オブジェクトには、文字列、グラフィックス（線画、図形等）、イメージ（連続調画像等）などの種類がある。描画データは、画像形成装置において取り扱い可能な形式のデータである。例えば、ラスタ形式のデータである。描画データは、印刷データから中間データを経て生成される。ここで、中間データは、印刷データと描画データの中間の粒度のデータである。中間データでは、ＰＤＬで記述されたオブジェクトが単純な形状の微小要素に細分化されて表現される。中間データの形式には、ディスプレイリスト形式が含まれる。
【００７３】
共通描画資源は、オブジェクトを表すデータである。特に、複数のページ間で再利用されるオブジェクト（すなわち、共通部分）を表すデータである。再利用されるオブジェクトとは、フォームやイメージである。より具体的には、罫線や枠線や企業ロゴ等である。共通描画資源は、オブジェクトの中間データである。
【００７４】
２−３．変形例３
上記の実施形態に係る分割共通リソースは、本発明に係る「分割描画資源」の一例である。分割描画資源とは、共通描画資源を構成する一部分である。分割描画資源は、例えば、共通描画資源を分割して生成される。分割描画資源のデータサイズは、予め定められた値以下に設定される。例えば、２５６ＭＢに設定される。
【００７５】
分割描画資源は、可変描画資源により参照される。具体的には、可変描画資源内に記述される特定情報により特定される。特定情報とは、分割描画資源の記憶場所を示す情報であり、例えばＵＲＬである。ここで、可変描画資源は、オブジェクトを表すデータである。特に、ページごとに異なるオブジェクト（すなわち、バリアブル部又は可変部分）を表すデータである。可変描画資源は、オブジェクトの中間データである。上記の実施形態に係るページデータは、可変描画資源の一例である。
【００７６】
２−４．変形例４
上記の変形例１に係る部分共通リソースｍｎｇは、本発明に係る「部分共通描画資源」の一例である。部分共通描画資源とは、入れ子状に階層化された共通描画資源の一部分である。部分共通描画資源は、可変描画資源により参照される。また、部分共通描画資源は、他の部分共通描画資源を参照する。
【００７７】
２−５．変形例５
上記の変形例１に係る、部分共通リソースｍｎｇの分割サイズを算出するための計算式は一例にすぎない。第ｎ＋１階層の分割サイズが第ｎ階層の分割サイズよりも小さくなる式であれば他の計算式を採用してもよい。
【００７８】
２−６．変形例６
上記の実施形態又は変形例において解釈処理装置４０又はバックエンド処理装置５０の制御部により実行されるプログラムは、磁気テープ、磁気ディスク、フレキシブルディスク、光ディスク、光磁気ディスク、メモリ等の記憶媒体に記憶された状態で提供されてもよい。また、当該プログラムは、インターネット等の通信回線を介してダウンロードされてもよい。
【符号の説明】
【００７９】
１…印刷システム、１０…クライアント装置、２０…印刷装置、３０…中央制御処理装置、３１…ＣＥＰ部、４０…解釈処理装置、４１…ＲＩＰ部、５０…バックエンド処理装置、５１…ＢＥＰ部、６０…通信回線、７０…通信回線、８０…通信回線、９０…通信回線、１００…印刷画像処理システム、４１１…印刷データ取得部、４１２…印刷データ解釈部、４１３…スプール、４１４…ページデータ送信部、４１５…共通リソース送信部、５１１…ページデータ取得部、５１２…共通リソース取得部、５１３…バッファ、５１４…ラスタデータ生成部、５１５…ページメモリ、５１６…記憶領域開放部、５１７…ラスタデータ送信部、４１２１…分割部
【図１】
0006471660.tif 000002
【図２】
0006471660.tif 000003
【図３】
0006471660.tif 000004
【図４】
0006471660.tif 000005
【図５】
0006471660.tif 000006
【図６】
0006471660.tif 000007
【図７】
0006471660.tif 000008
【図８】
0006471660.tif 000009