(57)【要約】      （修正有）【課題】レイアウト設定及びオブジェクトの情報の少なくともいずれかの情報に基づいて複数のレンダリング部を用いたレンダリング処理の効率化を図るようにした技術を提供する。【解決手段】印刷装置は、複数のページを含むジョブデータを解析し、レイアウト設定と、各ページに含まれるオブジェクトの情報とを取得する解析手段と、前記ジョブデータをページ単位に分割する分割手段と、前記レイアウト設定及び前記オブジェクトの情報の少なくともいずれかの情報に基づいて前記分割手段による分割により得られた複数のページデータを１又は複数まとめた分割データを複数生成し、該分割データ各々に対するレンダリング処理を複数のレンダリング手段のうちのいずれかを用いて実行させるレンダリング管理手段と、前記レンダリング手段により生成されたビットマップデータ毎に印刷動作を実施し、記録媒体上に印刷を行なう印刷手段とを具備する。【選択図】図２
2013039749.tif 000002
【特許請求の範囲】
【請求項１】
複数のページを含むジョブデータを解析し、レイアウト設定と、各ページに含まれるオブジェクトの情報とを取得する解析手段と、
前記ジョブデータをページ単位に分割する分割手段と、
前記レイアウト設定及び前記オブジェクトの情報の少なくともいずれかの情報に基づいて前記分割手段による分割により得られた複数のページデータを１又は複数まとめた分割データを複数生成し、該分割データ各々に対するレンダリング処理を複数のレンダリング手段のうちのいずれかを用いて実行させるレンダリング管理手段と、
前記レンダリング手段により生成されたビットマップデータ毎に印刷動作を実施し、記録媒体上に印刷を行なう印刷手段と
を具備することを特徴とする印刷装置。
【請求項２】
前記レンダリング管理手段は、
前記複数のページデータで共通して利用される共通オブジェクトがある場合、前記複数の分割データの生成に際して、いずれか１つの分割データに該共通オブジェクトを含めて前記複数の分割データを生成する分割データ生成手段と、
各レンダリング手段の処理状況に基づいて前記複数の分割データに対してレンダリング処理を行なうレンダリング手段を決定する決定手段と、
前記決定手段により前記複数の分割データに対するレンダリング処理を前記複数のレンダリング手段を用いて実行すると決められた場合、前記共通オブジェクトの複製とその参照回数とを各分割データに付加する付加手段と
を具備し、
前記レンダリング手段は、
前記共通オブジェクトを含むとともに且つ前記参照回数が付加された分割データを受信した場合、該共通オブジェクト及び該参照回数を保持する保持手段と、
前記保持手段に保持された前記共通オブジェクトを用いてレンダリング処理を行なう変換処理手段と、
前記レンダリング処理において前記共通オブジェクトを前記参照回数分使用したときに前記保持手段に保持された前記共通オブジェクト及び前記参照回数を削除するオブジェクト管理手段と
具備することを特徴とする請求項１記載の印刷装置。
【請求項３】
前記付加手段は、
前記決定手段により前記複数の分割データに対するレンダリング処理を前記複数のレンダリング手段を用いて実行しないと決められた場合、前記共通オブジェクトを含む分割データに対して参照回数を付加する
ことを特徴とする請求項２記載の印刷装置。
【請求項４】
前記レンダリング管理手段は、
前記複数のページデータで共通して利用される共通オブジェクトがある場合、前記複数の分割データの生成に際して、いずれか１つの分割データに該共通オブジェクトを含めて前記複数の分割データを生成する分割データ生成手段と、
前記共通オブジェクトを含む分割データに対して参照回数を付加する付加手段と
を具備し、
前記レンダリング手段は、
前記共通オブジェクトを含むとともに且つ前記参照回数が付加された分割データを受信した場合、該共通オブジェクト及び該参照回数を保持する保持手段と、
前記保持手段に保持された前記共通オブジェクトを用いてレンダリング処理する変換処理手段と、
前記レンダリング処理において前記共通オブジェクトを前記参照回数分使用したときに前記保持手段に保持された前記共通オブジェクト及び前記参照回数を削除するオブジェクト管理手段と
を具備することを特徴とする請求項１記載の印刷装置。
【請求項５】
前記レンダリング管理手段は、
前記レイアウト設定に基づいて、前記印刷手段による１回の印刷動作で印刷される複数のページデータをまとめた分割データを複数生成する
ことを特徴とする請求項１記載の印刷装置。
【請求項６】
印刷装置の処理方法であって、
解析手段が、複数のページを含むジョブデータを解析し、レイアウト設定と、各ページに含まれるオブジェクトの情報とを取得する工程と、
分割手段が、前記ジョブデータをページ単位に分割する工程と、
レンダリング管理手段が、前記レイアウト設定及び前記オブジェクトの情報の少なくともいずれかの情報に基づいて前記分割手段による分割により得られた複数のページデータを１又は複数まとめた分割データを複数生成し、該分割データ各々に対するレンダリング処理を複数のレンダリング手段のうちのいずれかを用いて実行させる工程と、
印刷手段が、前記レンダリング手段により生成されたビットマップデータ毎に印刷動作を実施し、記録媒体上に印刷を行なう工程と
を含むことを特徴とする処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置及びその処理方法に関する。
【背景技術】
【０００２】
印刷装置は、外部装置からＰＤＬ（Page Description Language）形式のジョブデータを受信すると、ジョブデータをレンダリングし、当該レンダリングしたデータに基づいて記録媒体（例えば、ロールシート）に印刷を行なう。
【０００３】
このような印刷装置においては、印刷速度の高速化を実現するため、レンダリング処理を行なうレンダリング部が複数設けられており、また、その管理を行なうレンダリング管理部が設けられている。この場合、複数のレンダリング部においては、複数ページからなるジョブデータをそれぞれ並列に処理する。
【０００４】
また、上述した印刷装置においては、例えば、面付け処理を行なう場合がある。面付け処理は、平綴じ及び中綴じ等の綴じ方や、片面、両面といった印刷設定に応じて行なわれ、例えば、中綴じの場合は２つのページを１ページ分のメディアに面付け処理される（特許文献１）。ここで、図９（ａ）及び図９（ｂ）を用いて、面付け処理の一例について説明する。ここでは、両面中綴じを行なう場合について説明する。
【０００５】
図９（ａ）は中綴じ後の冊子を上から見た図の一例を示しており、丸囲みの数字は、ページの順序を示している。図９（ａ）に示す中綴じの冊子の印刷は、図９（ｂ）の丸囲み数字の順番で行なわれる。例えば、符号３０１に示すページにおいては、おもて面にページデータ８及びページデータ１が面付けされ、その裏面にはページデータ７及びページデータ２が面付けされる。
【０００６】
このような構成においては、レンダリング処理を印刷速度にあわせて高速に行なう必要がある。そのため、複数ページからなるジョブデータを印刷する際には、ページ毎に各レンダリング部に分割して処理が行なわれる（特許文献２〜４参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−２００８１４号公報
【特許文献２】特開平９−２１８７５８号公報
【特許文献３】特開平１１−２４８６０号公報
【特許文献４】特開２０００−３３７４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記例示したような従来の構成においては、以下に示す問題がある。例えば、ページ毎に別々のレンダリング部で処理を行なう構成であっても、面付け等を考慮する必要があるときには、複数のレンダリング結果が集まらないと、最終的な出力データを生成することができない。
【０００９】
この点について具体例を挙げて説明する。例えば、図９（ａ）に示す場合であれば、おもて面のページデータ８及びページデータ１は、エンジン部による１回の印刷動作により印刷されるため、印刷装置では、これらページデータを同一のビットマップデータ上に生成する必要がある。そのため、高速化のために、ページデータ１及びページデータ８を別々のレンダリング部で処理したとしても、全てのビットマップデータが生成されていないと、エンジン部にデータを転送することができない。
【００１０】
また、複数ページに跨って共通するオブジェクトが存在する場合であっても、各ページ毎に別々のレンダリング部でレンダリング処理が行なわれる可能性がある。この場合、共通のオブジェクトであるにも関わらず、複数のレンダリング部で当該オブジェクトに対するレンダリング処理が行なわれる。そのため、重複した処理が複数のレンダリング部で生じることになり、処理効率がいいとはいえない。
【００１１】
また更に、元のＰＤＬ内において、共通するオブジェクトが複数存在していたとしても、当該ＰＤＬ内には、当該オブジェクトについては１つのみしか保持されていない。そのため、複数のレンダリング部に分けて処理する場合には、各レンダリング部に共通オブジェクトをコピーして転送する必要があり、コントローラ部と各レンダリング部との間の通信トラフィックもビジー状態となる恐れもある。
【００１２】
このように処理の高速化を図るためには、一般に、ページ毎に処理を分割してレンダリング処理することが有効と思われてるが、レイアウトやＰＤＬのオブジェクト構造の制約によって処理待ちが発生したり、また、データの複製が必要となったりする場合がある。そのため、このような要因を起因として印刷速度の低下が生じることとなっていた。
【００１３】
そこで、本発明は、上記課題に鑑みてなされたものであり、レイアウト設定及びオブジェクトの情報の少なくともいずれかの情報に基づいて複数のレンダリング部を用いたレンダリング処理の効率化を図るようにした技術を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記課題を解決するため、本発明の一態様による印刷装置は、複数のページを含むジョブデータを解析し、レイアウト設定と、各ページに含まれるオブジェクトの情報とを取得する解析手段と、前記ジョブデータをページ単位に分割する分割手段と、前記レイアウト設定及び前記オブジェクトの情報の少なくともいずれかの情報に基づいて前記分割手段による分割により得られた複数のページデータを１又は複数まとめた分割データを複数生成し、該分割データ各々に対するレンダリング処理を複数のレンダリング手段のうちのいずれかを用いて実行させるレンダリング管理手段と、前記レンダリング手段により生成されたビットマップデータ毎に印刷動作を実施し、記録媒体上に印刷を行なう印刷手段とを具備する。
【発明の効果】
【００１５】
本発明によれば、レイアウト設定及びオブジェクトの情報の少なくともいずれかの情報に基づいて複数のレンダリング部を用いたレンダリング処理の効率化を図ることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施の形態に係わる印刷装置の構成の一例を示す図。
【図２】図１に示す印刷装置１０の制御系の構成の一例を示す図。
【図３】メニュー画面の一例を示す図。
【図４】実施形態１に係わる印刷装置１０の処理の概要を示す図。
【図５】実施形態２に係わる印刷装置１０の処理の概要を示す図。
【図６】実施形態３に係わるコントローラ２０の処理の流れの一例を示すフローチャート。
【図７】実施形態３に係わるコントローラ２０の処理の流れの一例を示すフローチャート。
【図８】実施形態３に係わる各レンダリング部３０の処理の流れの一例を示すフローチャート。
【図９】従来技術を説明するための図。
【発明を実施するための形態】
【００１７】
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。以下の説明において説明する印刷装置は、例えば、印刷機能のみを有するシングルファンクションプリンタであっても良いし、また、例えば、印刷機能、ＦＡＸ機能、スキャナ機能等の複数の機能を有するマルチファンクションプリンタであっても良い。また、例えば、カラーフィルタ、電子デバイス、光学デバイス、微小構造物等を所定の印刷方式で製造するための製造装置であっても良い。
【００１８】
図１は、本発明の一実施の形態に係わる印刷装置の構成の一例を示す図である。ここでは、印刷装置の構成を示す断面図が示される。本実施形態に係わる印刷装置は、ロール状に巻かれた記録媒体（搬送方向において印刷単位の長さよりも長い連続した連続シート：ロールシート）を使用し、片面印刷及び両面印刷の両方に対応した高速ラインプリンタを例に挙げて説明する。
【００１９】
なお、本実施形態においては、記録媒体がロールシートである場合を例に挙げて説明するが、これに限られない。例えば、布、プラスチック・フィルム、金属板、ガラス、セラミックス、樹脂、木材、皮革等、記録剤（インク、トナー等）を受容可能なものもであれば良い。
【００２０】
また、本実施形態においては、インクジェット方式の印刷装置について説明するが、これに限られず、例えば、サーマルプリンタ（昇華型、熱転写型など）、ドットインパクトプリンタ、ＬＥＤプリンタ、レーザープリンタなど、どのような方式を採用しても良い。
【００２１】
ここで、印刷装置１０には、シート供給ユニット１０１と、搬送ユニット１０２と、搬送用エンコーダ１０３と、回転ローラ１０４と、ヘッドユニット１０５と、印刷ヘッド１０６と、検査ユニット１０７とが設けられる。この他、制御ユニット１０８、インクタンク１０９、カッタユニット１１０、裏面印字ユニット１１１、乾燥ユニット１１２、シート巻取ユニット１１３、仕分けユニット１１４、操作ユニット１１５も設けられる。
【００２２】
シート供給ユニット１０１は、ロール状に巻かれたロールシート（以下、シートと呼ぶ場合もある）を収納して供給する。シート供給ユニット１０１は、上段シートカセット１０１ａと下段シートカセット１０１ｂとを備え、２つのロールを収納可能に構成されており、択一的にシートを引き出して供給する。なお、収納可能なロールは、必ずしも２つである必要はなく、１つ或いは３つ以上のロールを収納可能に構成されていても良い。
【００２３】
ここで、印刷装置１０においては、搬送ユニット１０２、ヘッドユニット１０５により印刷ユニットが構成される。印刷ユニットは、搬送されるシート上に画像を形成し印刷を行なう。
【００２４】
ヘッドユニット１０５には、インクジェット用の印刷ヘッド１０６が複数設けられる。印刷ヘッド１０６は、複数の印刷ヘッドが搬送方向に沿って並べられている。本実施形態においては、複数色（本実施形態では、７色）に対応して設けられている。なお、インクジェット方式は、発熱素子を用いた方式、ピエゾ素子を用いた方式、静電素子を用いた方式、ＭＥＭＳ素子を用いた方式等を採用することができる。
【００２５】
各色のインクは、インクタンク１０９からそれぞれインクチューブを介して各印刷ヘッド１０６に供給される。本実施形態に係わる印刷ヘッド１０６は、フルラインタイプの印刷ヘッドで構成され、使用が想定されるシートの最大幅に対応した印刷幅を有している。
【００２６】
検査ユニット１０７には、例えば、ＣＣＤラインセンサ等が設けられる。ＣＣＤラインセンサは、例えば、２次元イメージセンサで構成され、シート搬送方向と直交する方向に読取素子が複数並べられている。この他、検査ユニット１０７には、発光素子等も設けられる。このような構成により、検査ユニット１０７においては、シートに印刷されたパターンや画像を光学的に読み取り、印刷ヘッド１０６のノズルの状態、シートの搬送状態、画像の位置等を検査する。
【００２７】
カッタユニット１１０は、画像印刷後のシートを所定の印刷単位の長さにカットする機構である。印刷単位の長さは、印刷する画像サイズに応じて異なってくる。例えば、Ｌ版写真では搬送方向の長さは１３５ｍｍ、Ａ４サイズでは搬送方向の長さは２９７ｍｍとなる。
【００２８】
裏面印字ユニット１１１は、カットされたシートの裏面に印刷画像毎の情報（例えば、オーダー管理用番号や日付等）を印字する。乾燥ユニット１１２は、画像が印刷されたシートを加熱して、付加されたインクを（短時間に）乾燥させる。乾燥ユニット１１２には、シートを次工程に送り出すための搬送ベルトや搬送ローラが設けられる。
【００２９】
シート巻取ユニット１１３は、両面印刷を行なう際に、おもて面の印刷が完了したロールシートを一時的に巻き取る。シート巻取ユニット１１３には、シートを巻き取るために回転する巻取ドラムが設けられる。おもて面の印刷が済んだ後、カッタユニット１１０でカットされていないシートは、巻取ドラムに一時的に巻き取られる。巻き取りが終われば、巻取ドラムが逆回転し、巻き取られたシートは、元のシート搬送路に送られる。このシートは、表裏反転しているため、上述した印刷ユニットでは、シート裏面に印刷を行なうことができる。
【００３０】
仕分けユニット１１４は、カッタユニット１１０でカットされた後、乾燥ユニット１１２で乾燥させられたシートを各トレーに積載する。どのトレーに積載するかは、印刷画像毎に設定されたトレー番号に従って決められる。仕分けユニット１１４では、複数のトレーを保持しており、印刷単位の長さに応じで積載するトレーを分別する。また、積載中や積載完了等の状態表示も行なう。
【００３１】
制御ユニット１０８は、印刷装置１０における各部の制御を司る。制御ユニット１０８は、例えば、ＣＰＵ（Central Processing Unit）、メモリ、各種Ｉ／Ｏインターフェース等を備えたコントローラ２０と、電源とを具備して構成される。印刷装置１０の動作は、コントローラ２０又はコントローラ２０にＩ／Ｏインターフェースを介して接続される外部装置（例えば、ホスト装置）からの指令に基づいて制御される。
【００３２】
操作ユニット１１５は、印刷状況等の情報をオペレータに向けて表示したり、オペレータからの指示を装置内に入力したりする。例えば、指定のオーダー画像がどこのトレーに積載されているか等や、印刷中であるか印刷が終了しているか等のオーダー毎の印刷状況の確認表示を行なう。その他、インク残量や紙の残量等装置状態の確認、ヘッドクリーニング等の装置メンテナンスの実施を行なうためにオペレータが操作／確認するための情報等の表示を行なう。
【００３３】
ここで、図１に示す印刷装置１０において、シートに印刷（片面印刷）を行なう際の処理の流れについて簡単に説明する。
【００３４】
まず、上段シートカセット１０１ａ及び下段シートカセット１０１ｂからシートが引き出され、それぞれのシートが図中ａ方向及びｂ方向に搬送される。その後、それぞれのカセットユニットから引き出されたシートは、図中ｃ方向に搬送され、搬送ユニット１０２に到達する。
【００３５】
搬送ユニット１０２は、複数の回転ローラを用いてシートを図中ｄ方向（水平方向）に搬送する。このとき、各印刷ヘッド１０６からは、搬送ユニット１０２によるシートの搬送に同期してインクが吐出される。これにより、シート上に画像が形成され、印刷が行なわれる。なお、インクの吐出のタイミングは、搬送用エンコーダ１０３の出力信号によって決定される。
【００３６】
印刷が行なわれたシートは、検査ユニット１０７に搬送され、各種検査が行なわれる。検査後、検査ユニット１０７から搬送されたシートは、図中ｅ方向に搬送され、カッタユニット１１０に到達する。カッタユニット１１０では、シートを所定の印刷単位の長さ毎に切断し、当該切断されたシートは、図中ｆ方向に搬送され、裏面印字ユニット１１１に搬送され、必要となる情報が印字される。
【００３７】
裏面印字ユニットから搬送されたシートは、乾燥ユニット１１２に到達する。乾燥ユニット１１２では、インクが付加されたシートを短時間で乾燥させるために、図中ｇ方向に搬送されるシートを温風で加熱する。
【００３８】
印刷単位の長さに切断されたシートは、１枚ずつ乾燥ユニット１１２内を通過して、図中ｈ方向に搬送されて仕分けユニット１１４に到達する。仕分けユニット１１４では、図中ｉ方向に搬送されるシートをセンサで確認しながら各トレーに積載していく。これにより、シートのいずれかの面に対する印刷が終了する。なお、両面印刷の場合は、上述した通り、片面印刷が行なわれた後、シート巻取ユニット１１３において、当該シートを巻き取り、それを元のシート搬送路に戻してやることにより行なわれる。なお、この場合、おもて面印刷のみが行なわれたシートは、カッタユニット１１０で切断されていない。
【００３９】
次に、図２を用いて、図１に示す印刷装置１０の制御系の構成の一例について説明する。
【００４０】
まず、ホスト装置５０は、ジョブデータの供給源となるコンピュータ（或いは、画像読取用のリーダやデジタルカメラなど）である。
【００４１】
ここで、印刷装置１０には、制御系の構成として、コントローラ２０と、複数のレンダリング部３０と、ユーザインターフェース部４１と、エンジン部４２とを具備して構成される。
【００４２】
ユーザインターフェース部４１は、図１に示す操作ユニット１１５により実現される。すなわち、ユーザインターフェース部４１は、オペレータに向けて各種情報（例えば、ジョブステータス）を表示したり、また、オペレータからの各種指示を装置内に入力したりする機能を果たす。
【００４３】
コントローラ２０は、ホスト装置５０からのジョブデータを解析し、その解析結果やユーザインターフェース部４１からの指示に基づき、各レンダリング部３０へのコマンドやデータを作成する。また、レンダリング後のデータを各レンダリング部３０から受け取り、エンジン部４２へ転送する。
【００４４】
ここで、コントローラ２０は、図１に示す制御ユニット１０８の一部により実現される。コントローラ２０には、受信部２１と、解析部２２と、ページ分割部２３と、レンダリング管理部２４と、通信部２５と、スプール部２６とが設けられる。
【００４５】
受信部２１は、ホスト装置５０からＰＤＬ等のジョブデータを受信する。解析部２２は、ジョブデータの解析を行なう。解析部２２においては、ジョブデータがどのようなレイアウト設定なのか、また更に、カラージョブなのかモノクロジョブなのか等の解析を行なう。その他、ジョブデータ内の各ページにおけるオブジェクトの情報等の解析も行なう。このような解析は、ジョブデータ自体を解析する他、ユーザインターフェース部４１を介したユーザの指示に基づくジョブであれば、ユーザ指示を直接取得することにより行なわれる。例えば、ユーザインターフェース部４１を介したユーザの指示は、図３に示すようなメニュー画面を用いて行なわれる。図３には、綴じ設定６０１、レイアウト設定６０２、両面設定６０３、画像補正設定６０４を行なうためのメニュー画面が示されている。
【００４６】
ページ分割部２３は、ジョブデータをページ単位に分割する。これにより、複数のページデータが生成される。
【００４７】
レンダリング管理部２４は、複数のレンダリング部３０における処理を管理する。より具体的には、解析部２２の解析結果に基づいてページ分割部２３の分割により得られた複数のページデータを１又は複数まとめた分割データを複数生成する。そして、当該分割データ各々に対するレンダリング処理を複数のレンダリング部３０のうちのいずれかを用いて実行させる。
【００４８】
ここで、レンダリング管理部２４には、分割データ生成部５１と、コマンド作成部５２と、オブジェクト判定部５３と、転送先決定部５４と、付加部５５とが具備される。
【００４９】
分割データ生成部５１は、解析部２２の解析結果に基づいて、各レンダリング部３０に指示する単位毎に複数のページデータをまとめた分割データを生成する。コマンド作成部５２は、コマンドの作成を行なう。具体的には、解析部２２の解析結果に基づき、レンダリング部３０に対して画像処理モード等を指示するためのコマンドを作成する。
【００５０】
オブジェクト判定部５３は、複数のページデータ（又は１つのページデータ内）で繰り返し利用される共通オブジェクトが存在するか否かを判定する。転送先決定部５４は、各分割データの転送先となるレンダリング部３０を決定する。この決定は、例えば、各レンダリング部３０の処理状況等に基づいて行なわれる。付加部５５は、オブジェクト判定部５３の判定結果や転送先決定部５４による決定結果に基づいて、分割データに対して各種情報（後述する参照回数）を付加する。
【００５１】
通信部２５は、各レンダリング部３０との間で各種データの授受を行なう。通信部２５では、例えば、レンダリング管理部２４からの指示に基づき、画像処理モードを指示するためのコマンドや分割データを各レンダリング部３０に向けて転送する。ここでいうモードとは、例えば、画像補正処理の有無や、片面、両面といった設定や、平綴じ、中綴じといった後工程の有無等を指す。
【００５２】
スプール部２６は、各レンダリング部３０により処理されたビットマップデータ及び当該データのヘッダー情報を所定の順序でエンジン部４２に転送する。
【００５３】
レンダリング部３０は、図１に示す制御ユニット１０８の一部として実現される。レンダリング部３０は、コントローラ２０からのコマンドやデータに基づきレンダリング処理を行なう。なお、レンダリング後のビットマップデータは、スプール部２６を介してコントローラ２０へ転送される。
【００５４】
各レンダリング部３０には、通信部３１と、変換処理部３２と、オブジェクト保持部３３と、オブジェクト管理部３４とが設けられる。
【００５５】
通信部３１は、コントローラ２０との間で各種データの授受を行なう。通信部３１では、例えば、コントローラ２０から送られてきたコマンドや分割データを受信する。
【００５６】
変換処理部３２は、通信部３１を介して受け取ったデータに基づいてレンダリング処理を行なう。変換処理部３２では、画像補正処理、ＰＤＬラスタライズ処理、モノクロ変換処理、面付け処理等を行なう。
【００５７】
ここで、画像補正処理においては、分割データ内の画像データに対してコマンドで指定された補正処理が行なわれる。ＰＤＬラスタライズ処理においては、ＰＤＬを解釈して論理描画等が行なわれ、ビットマップデータが作成される。また、モノクロ変換処理においては、エンジン部４２内の色変換部（不図示）における色変換処理に先立った色変換処理が行なわれる。具体的には、エンジン部４２内の色変換部（不図示）において、モノクロ処理における温黒、冷黒、純黒といった微妙な再現の違いを出すための前段処理が行なわれる。面付け処理においては、コントローラ２０からのコマンドで指定された平綴じ、中綴じ等の綴じ方や片面、両面といった印刷設定に応じて、例えば、中綴じの場合は２つのページを１ページ分のメディアに面付け処理する。面付け処理が終わったビットマップデータは、通信部３１からコントローラ２０内の通信部２５へ転送される。
【００５８】
また、この通信部３１からのビットマップデータの転送と同時にビットマップデータに関するジョブステータス情報もコントローラ２０側に送られる。ジョブステータス情報は、ジョブデータが正常にレンダリングされたか、エラーが発生したか等を示す情報であり、ユーザインターフェース部４１上のジョブステータス表示に使用される。例えば、変換処理部３２においてエラーが発生した場合は、エラーのステータス情報がコントローラ２０に送られる。
【００５９】
オブジェクト保持部３３は、複数のページデータで利用される共通オブジェクトやそれに関連する情報を（一時的に）保持する。例えば、コントローラ２０からのコマンド又は分割データ内に付加された情報において、ＰＤＬ内の特定のオブジェクトが複数のページデータで利用されていることを示す情報が設定されているとする。この場合、変換処理部３２においては、オブジェクト保持部３３から該当のオブジェクトを取得し、ＰＤＬラスタライズ処理に利用する。
【００６０】
オブジェクト管理部３４は、オブジェクト保持部３３に保持される共通オブジェクトやそれに関連する情報（参照情報）を管理する。例えば、共通オブジェクト等をオブジェクト保持部３３から削除する。
【００６１】
エンジン部４２は、図１に示す制御ユニット１０８の一部と、図１で説明した印刷ユニットとにより実現される。エンジン部４２においては、コントローラ２０から受け取ったビットマップデータ毎に印刷動作を実施し、記録媒体上に印刷を行なう。このとき、エンジン部４２は、ビットマップデータに対して、ヘッダー情報に基づいた色変換等の処理を施した後、ロールシート等の記録媒体上へ印刷を行なう。ヘッダー情報では、ビットマップデータがモノクロモードであるかカラーモードであるか等の情報が保持される。色変換処理では、例えば、カラーモードの場合は第１の色変換テーブルが使用され、モノクロモードの場合は第２の色変換テーブルが使用される。ここでいう色変換とは、カラーモードではカラーマネージメント等の色変換を行なうものであり、モノクロモードでは、レンダリング部にモノクロ処理部された結果に応じて、例えば、温黒、冷黒、純黒といったモノクロ処理を行なうものである。かかる処理後、例えば、エンジン部４２の扱う色空間であるＣＭＹＫ等に変換し、更に必要に応じて２値化処理を行なう。色変換処理後のデータがシート上に印刷される。
【００６２】
（実施形態１）
ここで、実施形態１について説明する。実施形態１においては、ジョブデータの解析により得られたレイアウト設定に基づいてエンジン部４２の印刷単位に従った分割データを生成し、それをレンダリング部３０に処理させる場合について説明する。
【００６３】
図４を用いて、実施形態１に係わるジョブ分割〜レンダリング処理の一例について具体例を挙げて説明する。ここでは、レンダリング部３０として、第１のレンダリング部〜第３のレンダリング部が設けられているとする。
【００６４】
ここで、ホスト装置５０から複数ページを含むジョブデータ（入力データ）が送られてきたとする。具体的には、ジョブデータには、ページ１〜６が含まれており、また、レイアウト設定では、中綴じ設定且つ２ｉｎ１が指定されている。
【００６５】
印刷装置１０は、解析部２２において、ジョブデータを解析し、レイアウト設定（中綴じ設定且つ２ｉｎ１）を取得するとともに、ページ分割部２３において、ジョブデータをページ単位に分割する。
【００６６】
ここで、印刷装置１０は、分割データ生成部５１において、解析部２２の解析結果に基づいて、複数の分割データを生成する。この場合、レイアウト設定が「中綴じ設定且つ２ｉｎ１」であるため、ページデータ１とページデータ６とを含む分割データと、ページデータ２とページデータ５とを含む分割データと、ページデータ３とページデータ４とを含む分割データとが生成される。
【００６７】
分割データの生成が済むと、印刷装置１０は、通信部２５において、これら分割データを各レンダリング部３０にそれぞれ転送し、レンダリング処理を実行される。この場合、ページデータ１とページデータ６とを含む分割データは、第１のレンダリング部で処理される。また、ページデータ２とページデータ５とを含む分割データは、第２のレンダリング部で処理され、また、ページデータ３とページデータ４とを含む分割データは、第３のレンダリング部で処理される。すなわち、エンジン部４２による１回の印刷動作で印刷される複数のページデータが同じレンダリング部３０で処理されることになる。
【００６８】
以上説明したように実施形態１によれば、レイアウト設定に基づいてエンジン部４２の印刷単位に従った分割データを生成し、それを各レンダリング部３０に転送する。
【００６９】
これにより、エンジン部４２による１回の印刷動作で印刷されるページデータを同じレンダリング部３０で処理することができる。そのため、従来のように、エンジン部による１回の印刷動作で印刷されるページデータが別々のレンダリング部で処理されるといった不具合が起きないので、それに起因した処理の遅延を防ぐことができる。
【００７０】
（実施形態２）
次に、実施形態２について説明する。実施形態２においては、、ジョブデータの解析により得られたオブジェクトの情報に基づいて、１又は複数のページデータで同じオブジェクトが共通して利用される場合に、それらオブジェクトをまとめてレンダリング部に転送する場合について説明する。
【００７１】
図５を用いて、実施形態２に係わるジョブ分割〜レンダリング処理について具体例を挙げて説明する。ここでは、レンダリング部３０として、第１のレンダリング部〜第３のレンダリング部が設けられているとする。
【００７２】
ここで、ホスト装置５０から複数ページを含むジョブデータ（入力データ）が送られてきたとする。具体的には、ジョブデータには、ページ１〜５が含まれている。
【００７３】
印刷装置１０は、解析部２２において、ジョブデータを解析し、オブジェクトの情報を取得するとともに、ページ分割部２３において、ジョブデータをページ単位に分割する。このとき、ページデータ１及びページデータ２には、それぞれ同じ（共通）オブジェクト（オブジェクトＡ）が含まれおり、ページデータ３及びページデータ４には、それぞれ同じオブジェクト（オブジェクトＥ）が含まれている。そのため、レンダリング管理部２４においては、ページデータ１とページデータ２とが同じレンダリング部で処理されるように制御し、ページデータ３とページデータ４とが同じレンダリング部で処理されるように制御する。
【００７４】
この点について具体的に説明すると、まず、印刷装置１０は、分割データ生成部５１において、ページデータ１及びページデータ２を含む分割データを生成する。このとき、当該分割データ内にオブジェクトＡを１つのみ含める。当該分割データ内には更に、当該オブジェクトＡの参照回数を示す参照カウンタも付加される。
【００７５】
これにより、当該分割データを処理するレンダリング部３０は、変換処理部３２において、分割データ内に含まれる１つのオブジェクトＡに基づいて、ページデータ１及び２に対応するレンダリング処理を実施する。そして、オブジェクト管理部３４において、オブジェクトを参照する度に、参照カウンタを１減算し、その値が「０」になった段階でオブジェクトＡをオブジェクト保持部３３から削除する。
【００７６】
また、印刷装置１０は、上記同様に、ページデータ３及びページデータ４を含む分割データを生成し、上記参照カウンタを付加してレンダリング部３０に転送する。これにより、オブジェクトＥについても、上述したオブジェクトＡと同様の処理が行なわれる。
【００７７】
以上説明したように実施形態２によれば、１又は複数のページデータにおいて共通のオブジェクトがある場合には、該当のページデータを同じレンダリング部３０で処理させる。また、当該共通のオブジェクトは、コントローラ２０側からレンダリング部３０へ１度送信されるだけで済む。
【００７８】
これにより、従来のように、共通のオブジェクトが別々のレンダリング部で処理されるといった不具合が起きないので、それに起因した処理効率の低下を防ぐことができる。また、コントローラ２０と各レンダリング部３０との間の通信トラフィックの低下も図れる。
【００７９】
（実施形態３）
次に、実施形態３について説明する。実施形態２においては、１又は複数のページデータにおいて共通のオブジェクトがあった場合、それらページデータを同一のレンダリング部３０で処理させる場合について説明した。これに対して、実施形態３においては、複数のページデータにおいて共通のオブジェクトがあった場合であっても、各レンダリング部３０の処理状況によっては、複数のレンダリング部３０を用いてレンダリング処理を行なう場合について説明する。
【００８０】
図６〜図８を用いて、実施形態３に係わる印刷装置１０の処理の流れの一例について説明する。まず、図６を用いて、コントローラ２０の処理の流れの一例について説明する。ここでは、ジョブデータを受信した後、当該ジョブデータに対するレンダリング処理を各レンダリング部３０に依頼する際の処理について説明する。
【００８１】
コントローラ２０は、受信部２１において、ジョブデータを受信すると、解析部２２において、当該ジョブデータを解析するとともに（Ｓ１０１）、ページ分割部２３において、ジョブデータをページ単位に分割する（Ｓ１０２）。すなわち、複数のページデータが生成される。
【００８２】
続いて、コントローラ２０は、分割データ生成部５１において、Ｓ１０１の解析結果に基づいて、複数のページデータを１又は複数まとめた分割データを複数生成する（Ｓ１０２）。また、コントローラ２０は、コマンド作成部５２において、コマンドの作成を行なう（Ｓ１０３）。すなわち、上述した解析結果に基づき、レンダリング部３０に対して画像処理モード等を指示するためのコマンドを作成する。
【００８３】
コマンドの作成が済むと、コントローラ２０は、オブジェクト判定部５３において、複数のページデータで繰り返し利用される共通オブジェクトが存在するか否かを判定する。判定の結果、共通オブジェクトがあれば（Ｓ１０４でＹＥＳ）、転送先決定部５４は、各レンダリング部３０の処理状況を取得し、当該処理状況に基づいて各分割データの転送先を決定する（Ｓ１０５）。例えば、複数のページデータで繰り返し利用すれる共通オブジェクトがあったとしても、各レンダリング部３０の処理状況によっては、複数のレンダリング部３０に対して別々にレンダリング処理を指示した方が効率が良い場合がある。この場合、転送先決定部５４は、複数のレンダリング部に分割データを転送すると決定する。なお、転送先の決定に際しては、レンダリング部３０の処理状況（負荷状態）の他、オブジェクトのデータサイズや通信部２５及び３１間の通信帯域等を考慮しても良い。
【００８４】
Ｓ１０６の処理の結果、複数のレンダリング部３０を用いてレンダリング処理を行なわない場合（Ｓ１０６でＮＯ）、コントローラ２０は、実施形態２と同様の処理を行なう。すなわち、Ｓ１０２で生成された分割データ内のいずれか１つに、共通オブジェクトが（１つのみ）含まれている。そのため、当該オブジェクトに対する参照回数を示す参照カウンタを当該いずれか１つの分割データに付加する（Ｓ１０８）。
【００８５】
その後、コントローラ２０は、通信部２５において、実施形態２で説明したように、同一のレンダリング部３０にＳ１０８の処理で生成した複数の分割データ及びそれに対応するコマンドを転送する（Ｓ１０９）。これにより、当該レンダリング部３０においては、共通オブジェクトを繰り返し利用してレンダリング処理を行なうことになる。そのため、通信トラフィックの低下を図れる。
【００８６】
一方、複数のレンダリング部３０を用いてレンダリング処理を行なう場合（Ｓ１０６でＹＥＳ）、コントローラ２０は、付加部５５において、共通オブジェクトのコピー（複製）、その参照回数を示す参照カウンタや参照ＩＤを分割データに付加する。そして、通信部２５において、複数のレンダリング部３０に向けて当該複数の分割データ及びそれに対応するコマンドを転送する（Ｓ１０９）。なお、共通オブジェクトのコピーを作成して付加するのは、元のＰＤＬ内において、同じオブジェクトが複数存在していたとしても、当該ＰＤＬ内には、当該オブジェクトについては１つのみしか保持されていない。そのため、複数の分割データが生成されたとしても、そのうちのいずれか１つにしか共通オブジェクトが含まれていないので、このように共通オブジェクトのコピーを各分割データに付加することになる。
【００８７】
次に、図７を用いて、コントローラ２０における処理の流れの一例として、レンダリング部３０からレンダリング後のデータを受信する際の処理について説明する。
【００８８】
コントローラ２０は、まず、通信部２５において、レンダリング部３０からビットマップデータ及びそれに対応するジョブステータス情報を受信する（Ｓ２０１でＹＥＳ）。これにより、コントローラ２０は、ジョブのステータスを当該レンダリングの終了を示すステータスに更新する（Ｓ２０２）。
【００８９】
続いて、コントローラ２０は、レンダリング結果がエラーであるか否かを判定する。この判定は、Ｓ２０１の処理で受信したジョブステータス情報に基づいて行なわれる。判定の結果、エラーであれば（Ｓ２０３でＹＥＳ）、コントローラ２０は、当該ジョブＩＤに相当するジョブのステータスをエラーステータスに更新した後、再度、Ｓ２０１の処理に戻る。
【００９０】
一方、エラーが生じていなければ（Ｓ２０３でＮＯ）、コントローラ２０は、スプール部２６において、ビットマップデータを保持する（Ｓ２０５）。そして、ジョブのステータスを出力待ち状態に更新する（Ｓ２０６）。
【００９１】
また、コントローラ２０は、スプール部２６において、ビットマップデータ及び当該データのヘッダー情報を、所定の順序（印刷の順序）に従ってエンジン部４２へ転送する（Ｓ２０７）。この転送が済むと、コントローラ２０は、ジョブステータスを出力中状態に更新する（Ｓ２０８）。その後、コントローラ２０は、再度、Ｓ２０１の処理に戻り、次のビットマップデータの受信を行なう。
【００９２】
次に、図８を用いて、各レンダリング部３０の処理の流れの一例について説明する。ここでは、コントローラ２０側から分割データを受信した際の処理について説明する。
【００９３】
レンダリング部３０は、通信部３１において、コントローラ２０から送られてきた分割データ及びそれに対応するコマンドを受信する（Ｓ３０１でＹＥＳ）。当該データの受信が済むと、レンダリング部３０は、当該受信したコマンドに従って画像補正処理を行なう（Ｓ３０２）。
【００９４】
続いて、レンダリング部３０は、オブジェクト管理部３４において、新規の共通オブジェクトが分割データに含まれているか否かを判定する。新規の共通オブジェクトが含まれていれば（Ｓ３０３でＹＥＳ）、レンダリング部３０は、オブジェクト保持部３３において、当該オブジェクト及び参照カウンタ等を保持する（Ｓ３０４）。その後、レンダリング部３０は、Ｓ３０６の処理に進む。
【００９５】
Ｓ３０３の判定の結果、新規の共通オブジェクトが分割データ内に含まれていなければ、レンダリング部３０は、当該分割データ内のデータが、オブジェクト保持部３３に既に保持されている共通オブジェクトを利用（参照）するか否かを判定する。
【００９６】
判定の結果、利用する場合（Ｓ３０６でＹＥＳ）、レンダリング部３０は、変換処理部３２において、該当の共通オブジェクトをオブジェクト保持部３３から取得し（Ｓ３０７）、当該オブジェクトに対応する参照カウントを１減少させる（Ｓ３０８）。そして、当該参照カウントが「０」になったか否かを判定し、「０」になっていなければ（Ｓ３０９でＮＯ）、レンダリング部３０は、Ｓ３１１の処理に進む。一方、「０」になっていれば（Ｓ３０９でＹＥＳ）、レンダリング部３０は、オブジェクト管理部３４において、オブジェクト保持部３３から当該オブジェクトを削除した後（Ｓ３１０）、Ｓ３１１の処理に進む。すなわち、共通オブジェクトが参照カウント分使用（参照回数分使用）された場合、当該オブジェクトはオブジェクト保持部３３から削除される。なお、この参照カウントは、後続の共通オブジェクトを利用する分割データにも適用される。そのため、後続の共通オブジェクトを利用する分割ジョブのレンダリング中にオブジェクト保持部３３から当該共通オブジェクトが削除される場合もある。
【００９７】
また、Ｓ３０６の判定の結果、分割データ内のデータが、オブジェクト保持部３３に既に保持されているオブジェクトを利用していなければ（Ｓ３０６でＮＯ）、レンダリング部３０は、Ｓ３１１の処理に進む。すなわち、変換処理部３２において、当該分割データに対してＰＤＬラスタライズ処理を行なう（Ｓ３１１）。
【００９８】
その後、レンダリング部３０は、変換処理部３２において、生成されたビットマップデータに対して、モノクロ処理、面付け処理をそれぞれコマンドに応じて実施する（Ｓ３１２、Ｓ３１３）。そして、通信部３１において、ビットマップデータ及びレンダリングの処理結果をコントローラ２０に向けて送信する（Ｓ３１４、Ｓ３１５）。
【００９９】
以上説明したように実施形態３によれば、複数のページデータにおいて共通のオブジェクトがある場合であっても、各レンダリング部３０の処理状況によっては、複数のレンダリング部３０を用いてレンダリング処理を行なう。
【０１００】
これにより、各レンダリング部３０の処理状況をも考慮して、ジョブデータに基づく印刷に対する全体的な処理のスループットを向上させることができる。
【０１０１】
また、繰り返し利用される共通オブジェクトに参照回数を付加してレンダリング部３０に保持させるため、コントローラ２０とレンダリング部３０との間の通信トラフィックの低下も図れるので、並列動作性を向上させることができる。
【０１０２】
以上説明したように実施形態１〜３によれば、複数のレンダリング部から構成される印刷装置において、レイアウト設定や繰り返し利用される共通オブジェクトの存在及びレンダリング部の処理状況を考慮して、効率良くレンダリング処理を行なうことができる。
【図１】
2013039749.tif 000003
【図２】
2013039749.tif 000004
【図３】
2013039749.tif 000005
【図４】
2013039749.tif 000006
【図５】
2013039749.tif 000007
【図６】
2013039749.tif 000008
【図７】
2013039749.tif 000009
【図８】
2013039749.tif 000010
【図９】
2013039749.tif 000011