(57)【要約】【課題】互いに重なる複数のイメージを含む画像に対して効率よく描画処理を行う。【解決手段】互いに重なる複数のイメージデータを含む画像における前記複数のイメージデータが透過イメージであるか否かを前記画像の描画単位毎に判定する判定手段と、前記判定手段により透過イメージでないと判定されたイメージデータに対しては前記描画単位毎に透過処理を行うことにより前記複数のイメージデータを合成して出力画像を描画し、透過イメージであると判定されたイメージデータに対しては前記透過処理を省略する描画手段と、を有することによって課題を解決する。【選択図】図７
2014197349.tif 000002
【特許請求の範囲】
【請求項１】
互いに重なる複数のイメージデータを含む画像における前記複数のイメージデータが透過イメージであるか否かを前記画像の描画単位毎に判定する判定手段と、
前記判定手段により透過イメージでないと判定されたイメージデータに対しては前記描画単位毎に透過処理を行うことにより前記複数のイメージデータを合成して出力画像を描画し、透過イメージであると判定されたイメージデータに対しては前記透過処理を省略する描画手段と、
を有する画像処理装置。
【請求項２】
前記複数のイメージデータから、前記描画単位毎に透過情報を取得する取得手段を更に有し、
前記判定手段は、前記取得手段により取得された透過情報に基づいて、前記複数のイメージデータが透過イメージであるか否かを前記描画単位毎に判定する請求項１記載の画像処理装置。
【請求項３】
前記判定手段は、前記複数のイメージデータの透過度が予め定められた閾値以上であるか否かを示す前記透過情報に基づいて、前記複数のイメージデータが透過イメージであるか否かを前記描画単位毎に判定する請求項２記載の画像処理装置。
【請求項４】
前記判定手段は、スキャンライン上のイメージデータが全て透過イメージであるか否かを前記描画単位毎に判定し、
前記描画手段は、前記判定手段によりスキャンライン上のイメージデータが全て透過イメージであると判定されたスキャンライン毎に前記透過処理を省略する請求項１乃至３何れか１項記載の画像処理装置。
【請求項５】
前記複数のイメージデータから、予め定められた数の描画単位数分の透過情報を抽出する抽出手段と、
前記抽出手段により抽出された透過情報に基づいて、前記複数のイメージデータが疑似透過イメージであるか否かを判定する透過判定手段と、
を更に有し、
前記描画手段は、前記透過判定手段により疑似透過イメージであると判定されたイメージデータに対して前記透過処理を前記描画単位毎に行うことで前記出力画像を描画する請求項１記載の画像処理装置。
【請求項６】
前記判定手段は、前記透過判定手段により疑似透過イメージでないと判定されたイメージデータが透過イメージであるか否かを前記描画単位毎に判定する請求項５記載の画像処理装置。
【請求項７】
前記透過判定手段は、前記透過情報に基づいて、透過のイメージと、透過でないイメージとが描画単位毎に交互に並ぶ場合、前記イメージデータを疑似透過イメージと判定する請求項５又は６記載の画像処理装置。
【請求項８】
前記透過判定手段により疑似透過イメージでないと判定されたイメージデータから、前記描画単位毎に透過情報を取得する取得手段を更に有し、
前記判定手段は、前記取得手段により取得された透過情報に基づいて、前記イメージデータが透過イメージであるか否かを前記描画単位毎に判定する請求項６又は７記載の画像処理装置。
【請求項９】
前記判定手段は、前記疑似透過イメージでないと判定されたイメージデータの透過度が予め定められた閾値以上であるか否かを示す前記透過情報に基づいて、前記イメージデータが透過イメージであるか否かを前記描画単位毎に判定する請求項８記載の画像処理装置。
【請求項１０】
前記判定手段は、スキャンライン上の前記疑似透過イメージでないと判定されたイメージデータが全て透過イメージであるか否かを前記描画単位毎に判定し、
前記描画手段は、前記判定手段によりスキャンライン上のイメージデータが全て透過イメージであると判定されたスキャンライン毎に前記透過処理を省略する請求項６乃至９何れか１項記載の画像処理装置。
【請求項１１】
前記複数のイメージデータを透過処理により合成する処理は、ＲＯＰ処理である請求項１乃至１０何れか１項記載の画像処理装置。
【請求項１２】
画像処理装置が実行する情報処理方法であって、
互いに重なる複数のイメージデータを含む画像における前記複数のイメージデータが透過イメージであるか否かを前記画像の描画単位毎に判定する判定ステップと、
前記判定ステップにより透過イメージでないと判定されたイメージデータに対しては前記描画単位毎に透過処理を行うことにより前記複数のイメージデータを合成して出力画像を描画し、透過イメージであると判定されたイメージデータに対しては前記透過処理を省略する描画ステップと、
を含む情報処理方法。
【請求項１３】
コンピュータに、
互いに重なる複数のイメージデータを含む画像における前記複数のイメージデータが透過イメージであるか否かを前記画像の描画単位毎に判定する判定ステップと、
前記判定ステップにより透過イメージでないと判定されたイメージデータに対しては前記描画単位毎に透過処理を行うことにより前記複数のイメージデータを合成して出力画像を描画し、透過イメージであると判定されたイメージデータに対しては前記透過処理を省略する描画ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
一般にスキャナ等を用いて紙面上の画像を、後述する高圧縮ＰＤＦや高圧縮ＸＰＳ等の高圧縮データに変換する際に、紙面上の文字データを１つの大きなイメージデータ（以下、単にイメージという）としてタグ登録する方法がある。これは、スキャナが、文字データの１つ１つをイメージとしてタグ登録するとデータサイズが非常に大きくなるためである。また、スキャナは、文字データの色毎にマスクイメージを保持するようにすることで、高圧縮データのサイズを小さくすることができる。これにより、スキャナは、ＨＤＤ等の記憶領域に多くのデータを保存することができる。また、データの高圧縮化は、スキャナ等からクラウドシステムへサイズの大きなデータを送信する際に、ネットワーク帯域が狭くて送信が遅くなるという問題に対しても有利である。
一方、印刷機で高圧縮データを印刷する際に、印刷時間が長くなるといった問題がある。これは、印刷機が高圧縮データを処理するために透過演算処理（以下、単に透過処理という）や大量のＲＯＰ（Ｒａｓｔｅｒ  Ｏｐｅｒａｔｉｏｎ）処理等を行う必要があるためである。そこで、特許文献１の技術は、透過処理を要するデータに対して画像処理を行う場合、透過処理の処理対象であるデータに対して透過処理が必要であるか否かを判定し、必要ないと判定した場合、透過処理を伴わない処理に置き換える。より具体的には、特許文献１の技術は、パターンイメージ、ソースイメージ及びＲＯＰコマンド等の情報から構成される置換条件に基づいて前記判定を行い、透過処理が必要ないと判定した場合、透過処理を伴う処理を、透過処理を伴わない処理に置き換える。上記の場合、特許文献１の技術は、ＲＯＰ処理をＲＯＰ３からＲＯＰ２に置き換えている。これにより、特許文献１の技術は、ＲＯＰ処理の時間を短縮することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１８２６９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の技術は、フォントデータ等のオブジェクト単位で透過処理の置き換えや省略を行っているため、フォントデータ等を１つのマスクイメージとして処理するような高圧縮データには対応することができない。即ち、特許文献１の技術は、高圧縮データを処理する場合には、描画処理に要する時間を短縮することができないといった問題がある。
本発明は、上記課題を鑑みてなされたものであり、互いに重なる複数のイメージを含む画像に対して、効率よく描画処理を行うことができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
そこで、本発明の画像処理装置は、互いに重なる複数のイメージデータを含む画像における前記複数のイメージデータが透過イメージであるか否かを前記画像の描画単位毎に判定する判定手段と、前記判定手段により透過イメージでないと判定されたイメージデータに対しては前記描画単位毎に透過処理を行うことにより前記複数のイメージデータを合成して出力画像を描画し、透過イメージであると判定されたイメージデータに対しては前記透過処理を省略する描画手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、互いに重なる複数のイメージを含む画像に対して、効率よく描画処理を行うことができる。
【図面の簡単な説明】
【０００７】
【図１】プリンタのハードウェア構成等の一例を示す図である。
【図２】プリンタコントローラのハードウェア構成の一例を示す図である。
【図３】プリンタのソフトウェア構成等の一例を示す図である。
【図４】レンダリング処理の一例を示す図である。
【図５】描画オブジェクトの重なりの一例を示す図である。
【図６】画像データ等の一例を示す図である。
【図７】実施形態１における処理の一例を示すフローチャートである。
【図８】疑似透過パターンの一例を示す図である。
【図９】実施形態２における処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づき説明する。
【０００９】
＜実施形態１＞
（プリンタの構成）
図１は、プリンタ（印刷装置）１０２のハードウェア構成等の一例を示す図である。なお、プリンタ１０２は、画像処理装置の一例である。
プリンタ１０２は、プリンタコントローラ１０３と、プリンタエンジン１０５と、操作パネル１０４とを有する。
プリンタコントローラ１０３は、プリンタ１０２全体を制御するコントローラである。プリンタコントローラ１０３は、ホストコンピュータ（以下、ホストという）等の外部機器１０１からコードデータ（各種ページ記述言語データ（以下、ＰＤＬデータという））等を受信する。そして、プリンタコントローラ１０３は、受信したＰＤＬデータを解析することによってイメージデータ（以下、単にイメージという）を生成し、インターフェースを介してプリンタエンジン１０５に送信して出力する。
【００１０】
また、プリンタ１０２は、スキャナ装置を有していてもよく、スキャナ装置を介して読み取ったデータに基づいて生成したイメージを印刷出力することができる。更に、プリンタ１０２は、スキャナ装置を介して読み取ったデータから高圧縮データを生成することができ、生成した高圧縮データを印刷出力することができる。プリンタコントローラ１０３は、印刷対象が高圧縮データの場合、高圧縮データに対してＲＯＰ処理を伴うレンダリング処理をすることにより展開したイメージを、インターフェースを介してプリンタエンジン１０５に送信して出力する。なお、プリンタコントローラ１０３は、外部機器１０１から高圧縮データを受信して印刷出力する場合においても、同様にＲＯＰ処理を伴うレンダリング処理をすることにより展開したイメージをプリンタエンジン１０５に送信して出力する。
ここで、高圧縮データについて説明する。高圧縮データとは、圧縮率と、画質とを両立させるために、データの成分毎に構造化されて圧縮されたデータである。高圧縮データの一例として、高圧縮ＰＤＦや高圧縮ＸＰＳ等がある。例えばＰＤＦやＸＰＳ等のような文書の構造を記述することができるフォーマットである場合、プリンタ１０２は、圧縮率と、画質とを両立させるために文字領域、背景領域及び画像領域のデータを抽出する。そして、プリンタ１０２は、抽出した各領域のデータを最も適した圧縮方法で圧縮し、更に、それらを合成することで圧縮率と、画質とが両立可能な高圧縮データを生成することができる。
プリンタエンジン１０５は、電子写真プロセスにより、プリンタコントローラ１０３から受信したイメージの出力画像を用紙上に形成する。プリンタエンジン１０５は、各印刷プロセスの処理を行う各機構と、前記各機構を制御するエンジン制御部とを有する。
操作パネル１０４は、ユーザインターフェースであり、プリンタ１０２に対してユーザが所望する動作を指示するための入力装置である。
【００１１】
（プリンタコントローラの構成）
図２は、プリンタコントローラ１０３のハードウェア構成の一例を示す図である。
プリンタコントローラ１０３は、ＣＰＵ２０２、ＨＤＤ２０９、操作パネルＩ／Ｆ２０１、ホストＩ／Ｆ２０３、ＲＡＭ２０４、ＲＯＭ２０５、ＲＩＰ２０６、エンジンＩ／Ｆ２０７及びシステムバス２０８を有する。
ＣＰＵ２０２は、プリンタコントローラ１０３全体を制御する。ＣＰＵ２０２は、ＲＯＭ２０５やＨＤＤ２０９等に保存されている制御コードやプログラムをＲＡＭ２０４にロードして実行することにより、ＲＩＰ２０６を除くプリンタコントローラ１０３の機能（ソフトウェア構成）を実現する。ＣＰＵ２０２は、操作パネル１０４を介して受け付けたユーザの指示に応じて各種の制御を行う。また、ＣＰＵ２０２は、外部機器１０１との間で通信されるデータの送受信を制御する。
ＲＡＭ２０４は、ＣＰＵ２０２が動作するためのシステムワークメモリであり、入力された画像データを一時的に記憶するための画像メモリでもある。
ＲＯＭ２０５は、ＣＰＵ２０２が実行する制御コードやプログラム等を保存するメモリである。
ＨＤＤ２０９は、画像データやＰＤＬデータ等のプリンタ１０２で扱う各種データや、ＣＰＵ２０２が実行するプログラム等を保存するハードディスクドライブである。
【００１２】
ホストＩ／Ｆ２０３は、プリンタコントローラ１０３と、外部機器１０１との間で通信制御を行うためのインターフェースである。
エンジンＩ／Ｆ２０７は、プリンタコントローラ１０３と、プリンタエンジン１０５との間で通信制御を行うためのインターフェースである。
ラスタイメージプロセッサ（ＲＩＰ）２０６は、ホストＩ／Ｆ２０３を介してプリンタコントローラ１０３が受信したＰＤＬデータ等をビットマップデータに展開してＨＤＤ２０９等に保存する。また、ＲＩＰ２０６は、ＨＤＤ２０９等に保存されている高圧縮データに対してＲＯＰ処理を伴うレンダリング処理をすることにより展開したビットマップデータをＨＤＤ２０９等に保存する。そして、ＣＰＵ２０２は、ＲＩＰ２０６により展開されＨＤＤ２０９等に保存されたビットマップデータをエンジンＩ／Ｆ２０７を介してビデオ信号としてプリンタエンジン１０５に送信する。なお、ＲＩＰ２０６のＣＰＵは、ＲＩＰの記憶領域に保存されているプログラムを実行することによりＲＩＰ２０６の機能及び後述のフローチャートにおけるＲＩＰ２０６の処理を実現する。なお、プリンタ１０２が実行するフローチャートの処理は、情報処理の一例である。
操作パネルＩ／Ｆ２０１は、プリンタコントローラ１０３と、操作パネル１０４との間のインターフェースである。ＣＰＵ２０２は、ユーザによる操作パネル１０４の入力操作に基づく指示を、操作パネルＩ／Ｆ２０１介して受け付ける。
以上の構成が、システムバス２０８上に相互に接続されるように配置されている。
【００１３】
（ソフトウェアの構成）
図３は、プリンタ１０２のソフトウェア構成等の一例を示す図である。
プリンタコントローラ部のＣＰＵ２０２は、ＨＤＤ２０９等に保存されているプログラムを実行することにより、プリンタ通信部３０１、プロトコル制御部３０２、パネル入出力制御部３０６及び印刷制御部３０８の機能を実現する。また、ＲＩＰ２０６は、ＣＰＵと、プログラム等を保存する記憶領域と、を有している。そして、ＲＩＰ２０６のＣＰＵは、ＲＩＰの記憶領域に保存されているプログラムを実行することにより、ＰＤＬデータ解析部３０３及びデータ描画部３０４の機能を実現する。
プリンタ通信部３０１は、ホストＩ／Ｆ２０３を介して外部機器１０１との通信を制御する。また、プリンタ通信部３０１は、外部機器１０１から受信したＰＤＬデータや高圧縮データ等をドキュメント記憶部３０７に保存する。
プロトコル制御部３０２は、外部との通信を行うためにネットワークプロトコルを解析したり、送信したりする。
ＰＤＬデータ解析部３０３は、ドキュメント記憶部３０７に保存されたデータを解析し、図４に示される中間データ４０１に変換する。そして、ＰＤＬデータ解析部３０３は、変換した中間データ４０１をドキュメント記憶部３０７に保存する。なお、ＰＤＬデータ解析部３０３は、ドキュメント記憶部３０７に保存されたＰＤＬデータ等を解析し、描画オブジェクト毎に中間データ４０１に変換することもできる。ここで、描画オブジェクトとは、例えば文字（テキストオブジェクト）、図形（グラフィックオブジェクト）、写真（イメージオブジェクト）等のデータのことである。
データ描画部３０４は、図４で後述するスキャンラインレンダリング処理４０２により、ドキュメント記憶部３０７に保存されている中間データ４０１をビットマップデータに描画展開する。データ描画部３０４は、展開したビットマップデータをページメモリ３０５に逐次保存する。
【００１４】
ページメモリ３０５は、ＲＡＭ２０４やＨＤＤ２０９等により実現されるメモリであり、データ描画部３０４が展開したビットマップデータを一時的に保持するメモリである。
パネル入出力制御部３０６は、操作パネルＩ／Ｆ２０１を介して操作パネル１０４に対する入出力を制御する。また、パネル入出力制御部３０６は、ページメモリ３０５が一時的に保持しているビットマップデータに基づくプレビュー画像を操作パネル１０４に表示する。
ドキュメント記憶部３０７は、入力文書の一塊（ジョブ）単位にベクターデータ、中間データ４０１を包含するデータファイルを記憶する記憶部であり、ＲＡＭ２０４やＨＤＤ２０９等によって実現される。
印刷制御部３０８は、ページメモリ３０５に保存されているビットマップデータをビデオ信号に変換処理し、エンジンＩ／Ｆ２０７を介してプリンタエンジン１０５へ画像転送する。
プリンタエンジン１０５は、受け取ったビデオ信号を記録紙に永久可視画像形成（出力）するための印刷機構である。
なお、プリンタ通信部３０１、プロトコル制御部３０２、ＰＤＬデータ解析部３０３、データ描画部３０４、パネル入出力制御部３０６及び印刷制御部３０８の各機能は、ハードウェアにより実現されるようにしてもよい。
【００１５】
（スキャンラインレンダリング処理）
図４は、スキャンラインレンダリング処理４０２の一例を示す図である。
中間データ４０１は、ＰＤＬデータ解析部３０３がドキュメント記憶部３０７に保存されたデータを中間コードに変換したデータである。
スキャンラインレンダリング処理４０２は、輪郭書き出し処理４０３、重なり整列処理４０４、色塗り処理４０５及び色合成処理４０６により構成される処理である。
まず、データ描画部３０４は、中間データ４０１に含まれる描画オブジェクトから輪郭情報を取得する（輪郭書き出し処理４０３）。ここで、データ描画部３０４は、１ピクセル毎（描画単位毎）に１スキャンライン分の輪郭情報を取得する。輪郭情報は、描画オブジェクトの輪郭の開始点位置及び輪郭幅の２つの情報を含んでいる。図５の例は、データ描画部３０４が取得した描画オブジェクト５０２及び描画オブジェクト５０３の輪郭開始及び終了毎の輪郭情報を示している。また、重なり情報５０４から５０８までは、データ描画部３０４が取得した輪郭情報に基づいて分割された領域毎における描画オブジェクトの重なり情報を示している。なお、図５は、描画オブジェクトの重なりの一例を示す図である。
【００１６】
次に、データ描画部３０４は、輪郭情報と、描画オブジェクト同士の重なりの上下関係の情報（レベル情報）とに基づいて、紙面に対して描画オブジェクトが正しい順番で並ぶように整列させる（重なり整列処理４０４）。図５の例では、データ描画部３０４は、１スキャンラインにおける重なり整列処理４０４により、分割された領域毎に描画オブジェクトのレベル情報に基づいて重なりを整列させている。また、図５の例では、重なり情報５０６が示す領域において最も描画オブジェクトの重なりの数が多くなる（レベル数が高くなる）。なお、データ描画部３０４は、描画データ５０１の背景のレベル情報をレベル０としている。
次に、データ描画部３０４は、整列済みの重なり情報に対して、輪郭で区切られる１つ１つの区間に対して色情報を付加する（色塗り処理４０５）。データ描画部３０４は、色塗り処理４０５を１スキャンラインに対して行う。また、データ描画部３０４は、レベル情報毎の描画オブジェクトの色情報を中間データ４０１から取得する。データ描画部３０４は、描画オブジェクト５０２及び５０３に示されるように重なり合う描画オブジェクトがある場合、後述の色合成処理４０６を実行する。
【００１７】
次に、データ描画部３０４は、色情報が付加された整列済みの重なり情報に基づいて、輪郭で区切られた領域、かつ、前記区切られた領域のうち他の輪郭で区切られた領域と重なっている部分に対して中間データ４０１に従った重なりルールを適用する。即ち、データ描画部３０４は、前記重なりルールに基づいて画像データを合成する（色合成処理４０６）。
ここで、重なりルールの一例として、ＲＯＰ（Ｒａｓｔｅｒ  ＯＰｅｒａｔｏｒ）と、αブレンドとがある。
ＲＯＰとは、領域同士が重なっている部分に、前面側と、背面側との色値を表現するｂｉｔ同士に基づいて論理演算するルールである。重なりルールとしてＲＯＰが指定された場合、データ描画部３０４は、前面側と、背面側との領域を表現する色値の間で論理演算した結果を出力する。
αブレンドとは、輪郭で区切られた領域同士で重なっている部分に対して、前面側と、背面側との色を混ぜて、出力するときの双方の割合比を指定するルールである。
データ描画部３０４は、色合成処理４０９において重なりルールを適用し、重なっている領域の前面の領域と、背面の領域との情報に基づいて出力する色を決定する。より具体的には、データ描画部３０４は、重なり情報５０５、５０７に示されるように、レベル０と、レベル１とにおける画像データの合成に関しては色合成無しのため、上位レベルの描画オブジェクトの色情報をビットマップデータ４０７として描画する。一方、データ描画部３０４は、重なり情報５０６に示されるように、レベル２以上の描画オブジェクトが存在する領域においては、前記重なりルールを適用し、レベル１と、レベル２とにおける画像データの色情報に基づく色合成を行う。データ描画部３０４は、色合成処理４０６して生成した画像データを、１ピクセル毎の色情報を含むビットマップデータ４０７として出力する。
【００１８】
なお、本実施形態では、データ描画部３０４が、輪郭書き出し処理４０３と、重なり整列処理４０４と、色塗り処理４０５と、色合成処理４０６とから構成されるスキャンラインレンダリング処理４０２を実行するものとした。しかし、スキャンラインレンダリング処理４０２は、以下の構成により実現されてもよい。
例えば、プリンタ１０２は、輪郭書き出し処理部と、重なり整列処理部と、色塗り処理部と、合成処理部との４つの専用処理ハードウェアモジュール（以下、単に専用処理モジュールという）を有していてもよい。そして、プリンタ１０２は、前記４つの専用処理モジュールにより、スキャンラインレンダリング処理４０２を実現するようにしてもよい。より具体的には、プリンタ１０２のＲＩＰ２０６が複数のサブＣＰＵを有しており、そのサブＣＰＵを前記４つの専用処理モジュールに割当てる。また、各専用処理モジュールは、ＦＩＦＯにより接続されている。即ち、各専用処理モジュールは、次の処理を行う専用処理モジュールに対して、ＦＩＦＯを介して、画像データ（専用命令コマンド）を送信する。
【００１９】
図６は、データ描画部３０４が色塗り処理４０５後に出力する画像データ等の一例を示す図である。また、図６は、前記４つの専用処理モジュールによりスキャンラインレンダラを実現した場合に、色塗り処理部から色合成処理部に送信される画像データ等の一例を示す図である。
描画インストラクション５５１及び描画インストラクション５５２は、データ描画部３０４がスキャンラインレンダリング処理４０２における各処理で扱う画像データである。
描画インストラクション５５１は、描画オブジェクトの種類５５３、描画ピクセル数５５４、レベル数５５５、ＲＯＰ種別５５６及び透過処理のフラグ５５７の情報で構成される。
描画オブジェクトの種類５５３は、データ描画部３０４が色塗り処理４０５により色情報を付加した文字、図形及び写真といった画像データの属性情報を示す。
描画ピクセル数５５４は、データ描画部３０４が輪郭書き出し処理４０３により取得した輪郭情報に基づく描画オブジェクトの描画領域の情報をピクセル数で示している。
【００２０】
レベル数５５５は、データ描画部３０４が重なり整列処理４０４により整列させた同じ領域内に存在する描画オブジェクトの数の情報を示す。
ＲＯＰ種別５５６は、データ描画部３０４が色塗り処理４０５において中間データ４０１から取得したＲＯＰ２、ＲＯＰ３といった重なりルールに関する論理演算の情報を示す。
透過処理のフラグ５５７は、データ描画部３０４による色塗り処理４０５において、同じ領域内の重なりあう描画オブジェクトが透過表現を含むデータ（透過処理を要するデータ）であるか否かを判定するためのフラグ情報（１又は０）である。なお、透過処理のフラグ５５７は、透過情報の一例である。
描画インストラクション５５２は、データ描画部３０４による色塗り処理４０５において、描画オブジェクトの種類５５３が示す画像データの属性情報に対応するイメージの先頭アドレス５５８の情報を示している。本実施形態において、データ描画部３０４による色合成処理４０６は、重なりあうイメージ同士が透過処理の処理対象である場合において実行される処理である。そのため、データ描画部３０４は、描画インストラクション５５１の描画オブジェクトの種類５５３が示す画像データの属性情報によっては、画像データの情報を変更してもよい。即ち、前記４つの専用処理モジュールによりスキャンラインレンダラが実現された場合、色塗り処理部は、色合成処理部に送信する画像データを変更してもよい。
【００２１】
次に、プリンタ１０２が高圧縮データを印刷処理する際に、処理時間を改善させることができる描画処理方法について、図７のフローチャートを用いて説明する。
まず、フローチャートの説明の前に、従来技術による高圧縮データの印刷処理において、課題となっている点について簡単に説明する。
プリンタ１０２のプリンタコントローラ１０３は、外部機器１０１からネットワークを介して高圧縮データを受信する。そして、プリンタコントローラ１０３は、外部機器１０１から受信した高圧縮データをＨＤＤ２０９へ保存する。なお、プリンタコントローラ１０３は、プリンタ１０２のスキャナで読み取られて生成された高圧縮データをＨＤＤ２０９へ保存することもできる。
ＰＤＬデータ解析部３０３は、ＨＤＤ２０９の高圧縮データから解析した中間データ４０１をドキュメント記憶部３０７に保存する。
データ描画部３０４は、ＰＤＬデータ解析部３０３で生成された中間データ４０１に基づいて、スキャンラインレンダリング処理４０２を実行する。
【００２２】
プリンタ１０２は、高圧縮データの保存にあたり、タグでイメージを登録することでデータ内の情報量を少量に抑えるため、データ内部の文字情報をマスクイメージとして登録している。そのため、プリンタ１０２は、文字データを１文字毎に登録するのではなく、１枚のイメージ属性のデータである１ビットの画像イメージ情報として登録するので、イメージを描画するときに大量のＲＯＰ処理を必要とする。また、プリンタ１０２は、高圧縮データの文字の色情報によってイメージをタグ登録しているため、複数の文字の色毎に同じ領域内で重なるマスクイメージがある。更に、プリンタ１０２は、透過処理対象のイメージを含む高圧縮データに対して、１ピクセル毎に画像処理を行う必要がある。そのため、プリンタ１０２は、高圧縮データを処理する際に、透過処理が必要ない領域においても透過処理を伴うＲＯＰ処理をしていたため、イメージのデータ量によっては大量のＲＯＰ処理が必要となる。そのため、プリンタ１０２は、妥当な時間で印刷処理を完了させることができなかった。
そこで、プリンタ１０２は、図７に示されるフローチャートの処理を実行することにより、高圧縮データの印刷処理における処理時間を改善させることができる。
【００２３】
図７は、実施形態１における処理の一例を示すフローチャートである。
Ｓ６０１において、データ描画部３０４は、処理対象の高圧縮データを構成する全てのレベルのイメージの合成処理が完了したか否かを判定する。より具体的には、データ描画部３０４は、先頭アドレス５５８の情報に基づいて全てのレベルのイメージに対する合成処理が完了したか否かを判定する。Ｓ６０１において、データ描画部３０４は、全てのレベルのイメージの合成処理が完了したと判定した場合、処理を終了する。一方、データ描画部３０４は、全てのレベルのイメージの合成処理が完了していないと判定した場合、処理をＳ６０２に進める。
Ｓ６０２において、データ描画部３０４は、処理対象の高圧縮データにおけるＲＯＰ種別がＲＯＰ３であり、かつ、イメージ同士の合成であるか否かを判定する。より具体的には、データ描画部３０４は、描画インストラクション５５１におけるＲＯＰ種別５５６の情報と、描画オブジェクトの種類５５３の情報とに基づいて、前記判定を行う。ここで、ＲＯＰ３処理とは、前景イメージに対して透過処理を行うことにより背景領域にＲＯＰ処理してイメージを描画する処理である。本実施形態は、プリンタ１０２が透過処理対象のイメージを含む高圧縮データに対して描画処理を行うことを前提としているため、データ描画部３０４は、Ｓ６０２でＲＯＰ種別がＲＯＰ３であるか否かを判定する。Ｓ６０２において、データ描画部３０４は、ＲＯＰ３であり、かつ、イメージ同士の合成であると判定した場合、処理をＳ６０３に進める。一方、データ描画部３０４は、ＲＯＰ３であり、かつ、イメージ同士の合成ではないと判定した場合、処理をＳ６０４に進める。
【００２４】
Ｓ６０３において、データ描画部３０４は、処理中のイメージが透過であるか否かを１スキャンライン上において１ピクセル毎に判定する。より具体的には、データ描画部３０４は、描画インストラクション５５１における透過処理のフラグ５５７の情報から、１スキャンライン上において１ピクセル毎に処理中のイメージが透過であるか否かを判定する。Ｓ６０３において、データ描画部３０４は、処理中のイメージが透過であると判定した場合、処理をＳ６０５に進める。一方、データ描画部３０４は、処理中のイメージが透過でないと判定した場合、処理をＳ６０４に進める。即ち、データ描画部３０４は、処理中のイメージが透過であると判定した場合、前記イメージに対するＲＯＰ３処理を１スキャンライン毎に省略する。ここで、「透過」について説明する。ＰＤＬデータ解析部３０３は、解析したデータの透過度が予め定められた閾値以上の場合、前記データを透過イメージとみなす。一方、ＰＤＬデータ解析部３０３は、解析したデータの透過度が予め定められた閾値以上でない場合、前記データを透過でないイメージとみなす。そして、データ描画部３０４は、ＰＤＬデータ解析部３０３による判定結果に基づく透過処理のフラグ５５７の情報から処理中のイメージが透過であるか否かを判定する。
Ｓ６０４において、データ描画部３０４は、通常のＲＯＰ処理を実行する。即ち、データ描画部３０４は、１ピクセル単位でＲＯＰ処理を実行し、処理をＳ６０５に進める。
Ｓ６０５において、データ描画部３０４は、次のレベルのイメージに対して同様の処理を行うために、処理をＳ６０１に戻す。
以上のように、データ描画部３０４は、図７のフローチャートに示される処理を実行することにより、高圧縮データを構成する各レベルのイメージに対するＲＯＰ処理を省略することができるか否かを判定する。そして、データ描画部３０４は、前記判定の結果に基づいてＲＯＰ処理を１スキャンライン毎に省略することにより、高圧縮データに対する描画処理の処理時間を改善させることができる。また、図７のフローチャートに示される処理は、高圧縮データの描画処理に限らず、透過処理対象のマスクイメージを含む画像に対しても有効である。
【００２５】
＜実施形態２＞
例えば図８に示されるように疑似透過（例えば網目状のパターン）のイメージのように、１ピクセル毎にパターンが異なるイメージがある。
図８は、疑似透過パターンのイメージ（疑似透過イメージ）の一例を示す図である。
このようなイメージの場合、データ描画部３０４は、１ピクセル毎にイメージを読み込んで透過処理を省略することができるか否かを判定するようにすると、妥当な時間で処理を完了させることができない。そこで、データ描画部３０４は、予め定められた数のピクセル分のイメージを抽出することによって、透過処理を省略できるか否かを判定する。
本実施形態では、データ描画部３０４の処理対象のイメージが疑似透過のパターン（ここでは、網目状のパターンとする）である場合の処理について説明する。
図９は、本実施形態の処理の一例を示すフローチャートである。
Ｓ７０１において、データ描画部３０４は、処理対象のイメージから先頭の３２ピクセル分のイメージを抽出する。ここでは、データ描画部３０４が先頭から連続する３２ピクセル分のイメージを抽出するようにしたが、ピクセルの数はこれに限る必要はない。また、データ描画部３０４は、必ずしもイメージの先頭から抽出処理を行う必要はない。即ち、データ描画部３０４は、処理対象のイメージから、予め定められた数のピクセル分（描画単位数分）のイメージを並び順に連続して抽出する。
【００２６】
Ｓ７０２において、データ描画部３０４は、処理対象のイメージが疑似透過のパターン（ここでは、網目状のパターンとする）であるか否かを判定する。Ｓ７０２において、データ描画部３０４は、処理対象のイメージが疑似透過のパターンであると判定した場合、処理をＳ７０４に進める。一方、データ描画部３０４は、処理対象のイメージが疑似透過のパターンでないと判定した場合、処理をＳ７０３に進める。ここで、疑似透過のパターン情報は、０１０１の交互の数値となるため、疑似透過のパターンを有するイメージの情報は、０ｘ５５５５５５５５５又は０ｘａａａａａａａａの何れかの値となる。データ描画部３０４は、上記の情報に基づいて疑似透過パターンであるか否かを判定する。これにより、データ描画部３０４は、１ピクセル毎に上記の判定を行う必要がなくなるため、描画処理の処理時間を改善させることができる。また、疑似透過パターンであるか否かの判定方法は上記の方法に限る必要はなく、その他の方法を用いてもよい。例えば、データ描画部３０４は、描画インストラクション５５１に付加された情報に基づいて疑似透過パターンであるか否かを判定するようにしてもよい。なお、Ｓ７０２の処理は、透過判定処理の一例である。
Ｓ７０４において、データ描画部３０４は、ＲＯＰ３処理を省略しない通常のＲＯＰ処理を行う。
Ｓ７０３において、データ描画部３０４は、実施形態１で説明した図７のフローチャートに示される処理を実行する。
以上のように、データ描画部３０４は、処理対象のイメージから予め定められた数のピクセル分のイメージを並び順に抽出することによって、疑似透過のパターンを有するイメージであるか否かを判定する。これにより、データ描画部３０４は、処理対象のイメージが疑似透過のパターンを有するイメージである場合、１ピクセル毎に透過処理の省略判定を行わずにすむため、描画処理の処理時間を改善させることができる。
【００２７】
＜その他の実施形態＞
また、本実施形態は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００２８】
以上、上述した各実施形態によれば、プリンタ１０２は、互いに重なる複数のイメージを含む高圧縮データに対して、効率よく描画処理を行うことができる。
【００２９】
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
2014197349.tif 000003
【図２】
2014197349.tif 000004
【図３】
2014197349.tif 000005
【図４】
2014197349.tif 000006
【図５】
2014197349.tif 000007
【図６】
2014197349.tif 000008
【図７】
2014197349.tif 000009
【図８】
2014197349.tif 000010
【図９】
2014197349.tif 000011