JP2010183436A - 画像処理のための装置、システム、方法、プログラム - Google Patents

画像処理のための装置、システム、方法、プログラム Download PDF

Info

Publication number
JP2010183436A
JP2010183436A JP2009026339A JP2009026339A JP2010183436A JP 2010183436 A JP2010183436 A JP 2010183436A JP 2009026339 A JP2009026339 A JP 2009026339A JP 2009026339 A JP2009026339 A JP 2009026339A JP 2010183436 A JP2010183436 A JP 2010183436A
Authority
JP
Japan
Prior art keywords
raster data
pixel
image
type object
transmittance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2009026339A
Other languages
English (en)
Inventor
Kimii Mizobe
公威 溝部
Takashi Hiuga
崇 日向
Iwane Ikeda
岩音 池田
Kenji Murakami
謙二 村上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2009026339A priority Critical patent/JP2010183436A/ja
Publication of JP2010183436A publication Critical patent/JP2010183436A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】解像度と表現対象のオブジェクトの種類とが異なる複数のラスターデータを利用する場合に、透過率が設定されたオブジェクトを扱うことを目的とする。
【解決手段】一部のオブジェクトの重畳順に従った描画結果のうち第1画像部分に、透過率が設定された第1種オブジェクトを重ねて描画する場合には、第1画像部分と第1種オブジェクトとの画素値を透過率に応じて合成して、重畳後の高解像度ラスターデータの画素値を設定する。一部のオブジェクトの重畳順に従った描画結果のうち第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された第2種オブジェクトを重ねて描画する場合には、第2画像部分と第2種オブジェクトとの画素値を透過率に応じて合成して、重畳後の低解像度ラスターデータの画素値を設定する。
【選択図】図3

Description

本発明は、画像処理のための装置、システム、方法、プログラムに関するものである。
従来より、パーソナルコンピューターやデジタルカメラ等のコンピューターによって文書データが作成されている。文書データには、文字、ビットマップ画像(例えば、写真)等の種々のオブジェクトが含まれている。文書データに応じて画像を出力(表示や印刷)するために、文書データからラスターデータへの変換(展開)も行われている。ここで、解像度(画素密度)の異なる画像ラスターデータと文字ラスターデータとを利用することが行われている。
特開平6−139032号公報 特開2006−184962号公報 特許第4075546号明細書
ところが、解像度と表現対象のオブジェクトの種類とが異なる複数のラスターデータを利用する場合に、透過率が設定されたオブジェクトを扱うことに関しては、十分な工夫がなされていないのが実情であった。
本発明は、上記の課題の少なくとも一部を解決するためになされたものであり、解像度と表現対象のオブジェクトの種類とが異なる複数のラスターデータを利用する場合に、透過率が設定されたオブジェクトを扱うことを目的とする。
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
[適用例1]画像処理装置であって、複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じて、前記複数のオブジェクトの描画結果を表すラスターデータを作成するラスターデータ作成部を備え、前記ラスターデータは、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを含み、前記ラスターデータ作成部は、一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトを重ねて描画する場合には、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定し、一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定する、画像処理装置。
この構成によれば、解像度と表現対象のオブジェクトの種類とが異なる高解像度ラスターデータと低解像度ラスターデータとを利用することができる。さらに、各ラスターデータの画素値が、透過率に応じて画素値を合成して得られる値に設定されるので、透過率が設定されたオブジェクトを扱うことができる。
[適用例2]適用例1に記載の画像処理装置であって、前記ラスターデータ作成部は、一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの第3画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第3画像部分において、前記高解像度ラスターデータと、前記透過率が設定された前記第2種オブジェクトとの画素値を、前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する、画像処理装置。
この構成によれば、第1種オブジェクトの第3画像部分に、透過率が設定された第2種オブジェクトを重ねて描画する場合に、高解像度ラスターデータの画素値を、透過率に応じて適切に設定することができる。
[適用例3]適用例1または適用例2に記載の画像処理装置であって、前記ラスターデータ作成部は、前記第1画像部分が前記第1種オブジェクトの画像部分である場合には、前記第1画像部分において、前記高解像度ラスターデータと、前記透過率が設定された前記第1種オブジェクトとの画素値を、前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する、画像処理装置。
この構成によれば、第1種オブジェクトの第1画像部分に、透過率が設定された第1種オブジェクトを重ねて描画する場合に、高解像度ラスターデータの画素値を、透過率に応じて適切に設定することができる。
[適用例4]適用例1ないし適用例3のいずれかに記載の画像処理装置であって、前記ラスターデータ作成部は、前記第1画像部分が前記第2種オブジェクトの画像部分である場合には、前記第1画像部分において、前記低解像度ラスターデータと、前記透過率が設定された前記第1種オブジェクトとの画素値を、前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する、画像処理装置。
この構成によれば、第2種オブジェクトの第1画像部分に、透過率が設定された第1種オブジェクトを重ねて描画する場合に、高解像度ラスターデータの画素値を、透過率に応じて適切に設定することができる。
[適用例5]適用例1ないし適用例4のいずれかに記載の画像処理装置であって、前記ラスターデータ作成部は、前記第2画像部分において、前記低解像度ラスターデータと、前記透過率が設定された前記第2種オブジェクトとの画素値を、前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定する、画像処理装置。
この構成によれば、第2画像部分に、透過率が設定された第2種オブジェクトを重ねて描画する場合に、低解像度ラスターデータの画素値を、透過率に応じて適切に設定することができる。
[適用例6]適用例1ないし適用例5のいずれかに記載の画像処理装置であって、前記第1種オブジェクトは、文字を含む、画像処理装置。
この構成によれば、文字が高解像度ラスターデータによって表されるので、文字のジャギーが目立つことを抑制できる。
[適用例7]適用例6に記載の画像処理装置であって、さらに、前記高解像度ラスターデータを圧縮する圧縮部を含み、前記第2種オブジェクトは、ビットマップ画像を含む、画像処理装置。
この構成によれば、高解像度ラスターデータがビットマップ画像のオブジェクトを表さないので、高解像度ラスターデータを効率よく圧縮することができる。また、見た目の精細さが過剰に低下することも抑制できる。
[適用例8]画像処理システムであって、ラスターデータ作成部と、ラスターデータ合成部と、を備え、前記ラスターデータ作成部は、複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じて、前記複数のオブジェクトの描画結果を表すラスターデータを作成し、前記ラスターデータは、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを含み、前記ラスターデータ作成部は、一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトを重ねて描画する場合には、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定し、一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定し、前記ラスターデータ合成部は、前記高解像度ラスターデータの画素に画素値が設定されている画像部分に関しては、前記高解像度ラスターデータの画素値を選択し、前記高解像度ラスターデータの画素に画素値が設定されていない画像部分に関しては、前記低解像度ラスターデータの画素値を選択して、前記高解像度ラスターデータと前記低解像度ラスターデータとの合成データを作成する、画像処理システム。
[適用例9]適用例8に記載の画像処理システムであって、さらに、前記合成データに応じて印刷を行う印刷部を含む、画像処理システム。
[適用例10]ラスターデータを作成する方法であって、複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じて、前記複数のオブジェクトの描画結果を表すラスターデータを作成する工程を備え、前記ラスターデータは、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを含み、前記ラスターデータを作成する工程は、一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトを重ねて描画する場合には、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する工程と、一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定する工程と、を含む、方法。
[適用例11]ラスターデータを作成する処理をコンピューターに実行させるコンピュータープログラムであって、複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じて、前記複数のオブジェクトの描画結果を表すラスターデータを作成する機能をコンピューターに実現させ、前記ラスターデータは、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを含み、前記ラスターデータを作成する機能は、一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトを重ねて描画する場合には、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する機能と、一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定する機能と、を含む、コンピュータープログラム。
[適用例12]画像処理装置であって、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを合成して合成データを作成するラスターデータ合成部を備え、前記高解像度ラスターデータと前記低解像度ラスターデータとは、全体で、複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じた前記複数のオブジェクトの描画結果を表しており、一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトが重ねて描画された画像部分では、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値が設定されており、一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトが重ねて描画された画像部分では、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値が設定されており、前記ラスターデータ合成部は、前記高解像度ラスターデータの画素に画素値が設定されている画像部分に関しては、前記高解像度ラスターデータの画素値を選択し、前記高解像度ラスターデータの画素に画素値が設定されていない画像部分に関しては、前記低解像度ラスターデータの画素値を選択して、前記合成データを作成する、画像処理装置。
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像処理方法および装置、それらの方法または装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した記録媒体、等の形態で実現することができる。
本発明の一実施例としての画像処理システムを示す説明図である。 PDLデータの例を示す概略図である。 コンピューター100(図1)と印刷装置200とによる画像処理の概略を示す説明図である。 ラスターデータ作成処理の手順を示すフローチャートである。 ラスターデータRDH、RDLを示す説明図である。 透過率が設定されていない文字描画命令に応じた描画を示す概略図である。 透過率が設定されていない画像描画命令に応じた描画を示す概略図である。 透過率が設定された文字描画命令に応じた描画を示す概略図である。 バッファBFに格納された第3展開データRDE3と高解像度ラスターデータRDHと低解像度ラスターデータRDLとの例を示す概略図である。 フラグが「1」の場合の画素値の算出例を示している。 フラグが「0」の場合の画素値の算出例を示している。 透過率が設定された画像描画命令に応じた描画を示す概略図である。 バッファBFに格納された第4展開データRDE4と高解像度ラスターデータRDHと低解像度ラスターデータRDLとの例を示す概略図である。 図13に示す2つの画素PX11、PX12のそれぞれの階調値(画素値)の算出例を示している。 重畳画素PXHtの画素値の算出例を示している。 ラスターデータの合成処理の概略図である。 ラスターデータの合成処理の手順を示すフローチャートである。
次に、この発明の実施の形態を実施例に基づいて以下の順序で説明する。
A.実施例:
B.変形例:
A.実施例:
A1.装置構成:
図1は、本発明の一実施例としての画像処理システムを示す説明図である。この画像処理システム900は、コンピューター100と、コンピューター100に伝送路TLを介して接続された印刷装置200とを、含んでいる。コンピューター100は、入力データIDによって表される画像を印刷するために、入力データIDを展開してラスターデータを作成する。「ラスターデータ」は、画素単位で階調値を定めることによって画像を表すデータである。印刷装置200は、コンピューター100から受信したラスターデータに応じて、画像を印刷する。伝送路TLとしては、種々のデータ通信路(例えば、USBケーブルや、有線あるいは無線のネットワーク)を採用可能である。
コンピューター100は、RAM110と、CPU120と、データ送信部130と、を含んでいる。RAM110には、ラスターデータ作成部112と、データ圧縮部114とが格納されている。これらの処理部112、114は、CPU120によって実行されるコンピュータープログラムモジュールである。これらのモジュール112、114は、図示しない不揮発性メモリ(例えば、ROMやハードディスクドライブ)から、RAM110に展開される。以下、モジュールに従ってCPU120が処理を実行することを、単に、「モジュール(例えば、ラスターデータ作成部112)が処理を実行する」とも表現する。データ送信部130は、伝送路TLとの接続インターフェースである。
印刷装置200は、データ受信部210と、RAM220と、CPU230と、プリンター制御部240と、印刷ユニット250と、を含んでいる。データ受信部210は、伝送路TLとの接続インターフェースである。RAM220には、データ展開部222と、ラスターデータ合成部224と、印刷データ作成部226と、が格納されている。これらの処理部222、224、226は、CPU230によって実行されるコンピュータープログラムモジュールである。これらのモジュール222、224、226は、図示しない不揮発性メモリからRAM220に展開される。以下、モジュールに従ってCPU230が処理を実行することを、単に、「モジュール(例えば、ラスターデータ合成部224)が処理を実行する」とも表現する。なお、印刷データ作成部226は、色変換部226aと、ハーフトーン処理部226bとを、含んでいる。
プリンター制御部240は、印刷ユニット250を制御する。印刷ユニット250は、印刷を実行する印刷機構である。印刷機構としては、インク滴を印刷用紙に吐出して画像を形成する印刷機構や、トナーを印刷用紙上に転写・定着させて画像を形成する印刷機構等の種々の印刷機構を採用可能である。なお、本実施例では、プリンター制御部240は、専用の電子回路によって構成されている。
図2は、PDLデータの例を示す概略図である。本実施例では、入力データIDは、PDL(Page Description Language:ページ記述言語)で記述されたPDLデータである。PDLとしては、例えば、ポストスクリプト(アドビシステムズ社の商標)がある。このような入力データID(PDLデータ)は、コンピューター100で動作している文書作成アプリケーション(図示せず)によって、作成され得る。また、別のデータ処理装置(図示せず)からコンピューター100に入力データIDが供給されてもよい。
本実施例では、PDLデータは、描画命令のリストである。PDLデータの最後には、PDLデータの最後を表す終端命令が、配置されている。1つの描画命令は、描画すべき1つのオブジェクトを表している。オブジェクトの種類としては、例えば、「文字」や、「ビットマップで表された画像(ビットマップ画像)」が挙げられる。PDLデータの先頭から始まる描画命令の順番は、対応するオブジェクトの描画のための重畳順を表している。複数のオブジェクトは、1つずつ順番に描画される。各オブジェクトは、描画済みのオブジェクトを表す画像に重ねて描画される。このような、重ねられる(描画される)順番が、「描画のための重畳順」である。「描画のための重畳順」は、複数のオブジェクトが実際に重なっているか否かとは無関係である。或るオブジェクトは、重畳順が先のオブジェクト(一部のオブジェクト)の重畳順に従った描画結果を表す画像に、重ねて描画される。図2の例では、描画命令1〜描画命令N(Nは1以上の整数)の順番に、オブジェクトが描画される。PDLデータに応じて、描画結果を表すラスターデータを作成する場合には、その重畳順に、描画命令が処理される。なお、入力データIDの形式としては、複数のオブジェクトと複数のオブジェクトのそれぞれの描画のための重畳順とを表す任意の形式を採用可能である。
描画済みのオブジェクトに、透過率が設定されていないオブジェクトを重ねて描画する場合には、後から描画されるオブジェクトによって、描画済みのオブジェクトが、上書きされる。描画済みのオブジェクトに、透過率が設定されたオブジェクトを重ねて描画する場合には、描画済みのオブジェクトと、後から描画されるオブジェクトとの、画素値が透過率に応じて合成される。これらの描画の説明は、オブジェクトを描画すべき画像部分(重畳対象の画像部分)に、オブジェクトが描画されていない場合にも、同じである(例えば、重畳対象の画像部分が白を表している場合)。詳細については、後述する。
図3は、コンピューター100(図1)と印刷装置200とによる画像処理の概略を示す説明図である。コンピューター100のラスターデータ作成部112は、入力データID(PDLデータ)を解析して、描画結果を表すラスターデータを作成する。ラスターデータは、高解像度ラスターデータRDHと、低解像度ラスターデータRDLとを含んでいる。高解像度ラスターデータRDHと低解像度ラスターデータRDLとは、入力データIDによって表される同じ画像領域を、異なる解像度(画素密度)で、表している。そして、これらのデータRDH、RDLは、全体で、描画結果を表す。本実施例では、高解像度ラスターデータRDHの画素密度が2400dpiであり、低解像度ラスターデータRDLの画素密度が600dpiである。また、高解像度ラスターデータRDHは、文字を表す画像部分の画素値を表している。低解像度ラスターデータRDLは、文字を表さずに文字以外のオブジェクト(例えば、ビットマップ画像)を表す画像部分の画素値を表している。
図1、図3に示すように、データ圧縮部114は、高解像度ラスターデータRDHを圧縮する。高解像度ラスターデータRDHには、文字が描画されているが、文字以外のオブジェクト(例えば、ビットマップ画像)は描画されていない。従って、広い画像範囲において、同一の画素値を表す複数の画素が連続する。その結果、データ圧縮部114は、ランレングス符号化等の単純な圧縮によって、高解像度ラスターデータRDHを高い効率で圧縮することができる。
データ圧縮部114は、圧縮された高解像度ラスターデータRDHと、低解像度ラスターデータRDLとのセット(「圧縮データCD」と呼ぶ)を、データ送信部130に供給する。データ送信部130は、伝送路TLを介して、圧縮データCDを印刷装置200に送信する。
データ受信部210は、受信した圧縮データCDをデータ展開部222に供給する。データ展開部222は、受信した圧縮データCDを展開(伸張)して、高解像度ラスターデータRDHと、低解像度ラスターデータRDLを取得する。ラスターデータ合成部224は、高解像度ラスターデータRDHと低解像度ラスターデータRDLとを合成することによって、合成ラスターデータRDCを作成する。合成ラスターデータRDC(図3)は、入力データIDによって表される画像を表している。
図1に示すように、印刷データ作成部226は、合成ラスターデータRDCを解析して印刷データPDを作成する。色変換部226aは、合成ラスターデータRDCの各画素の画素値を、印刷ユニット250で利用される各インクの階調値に変換する。例えば、合成ラスターデータRDCの画素値は、R(赤)G(緑)B(青)のそれぞれの階調値で表され得る。そして、印刷ユニット250は、C(シアン)M(マゼンタ)Y(イエロ)K(ブラック)の各インクを利用し得る。この場合、色変換部226aは、RGBの階調値を、CMYKの階調値に変換する。ハーフトーン処理部226bは、各インクの階調値に応じて、ハーフトーン処理を実行する。そして、ハーフトーン処理部226bは、ハーフトーン処理の結果に応じて、印刷データPDを作成する。
印刷データ作成部226は、作成した印刷データPDをプリンター制御部240に供給する。プリンター制御部240は、印刷データPDに応じて印刷ユニット250を制御する。これにより、印刷ユニット250は、画像を印刷する。なお、印刷データ作成部226とプリンター制御部240と印刷ユニット250との全体は、特許請求の範囲における「印刷部」に相当する。
図4は、ラスターデータ作成処理の手順を示すフローチャートである。この処理は、ラスターデータ作成部112(図1)によって実行される。最初のステップS100では、ラスターデータ作成部112は、ラスターデータRDH、RDLを格納すべきRAM110内の記憶領域を確保し、ラスターデータRDH、RDLを初期化する。
図5は、ラスターデータRDH、RDLを示す説明図である。本実施例では、各ラスターデータRDH、RDLの各画素には、RGBのそれぞれの階調値が設定される。また、高解像度ラスターデータRDHの各画素には、さらに、フラグが設定される。フラグ=1は、その画素が文字のオブジェクトを表していることを意味し、フラグ=0は、その画素が文字のオブジェクトを表していないことを意味している。なお、本実施例では、図4のステップS100で、各画素の画素値(ここでは、RGBの階調値)は、最も明るい白を表す値に設定される。本実施例では、各色成分の階調値の全範囲が0〜255であり、ステップS100で、RとGとBとが「255」に設定される。また、各画素のフラグは「0」に設定される。
高解像度ラスターデータRDHの1つの画素が選択されると、その画素に対応して、低解像度ラスターデータRDLにおける、同じ画像部分を含む1つの画素が決まる。図5では、低解像度ラスターデータRDLの1つの画素PLaが、高解像度ラスターデータRDHの1つの画素PHaに基づいて決まる。以下、このように高解像度の1つの画素に応じて決まる低解像度の1つの画素を、「対応画素」とも呼ぶ。
また、低解像度ラスターデータRDLの1つの画素が選択されると、その画素に対応して、高解像度ラスターデータRDHにおける、同じ画像部分を表す複数の画素が決まる(本実施例では、4×4=16の画素)。図5では、高解像度ラスターデータRDHの領域PAb(16画素の集まり)が、低解像度ラスターデータRDLの1つの画素PLbに基づいて決まる。以下、このように低解像度の1つの画素に応じて決まる高解像度の複数の画素(領域)を、「対応領域」とも呼ぶ。
図4の次のステップS110では、ラスターデータ作成部112(図1)は、入力データID(図3)から、1つの命令を読み込む。読み込み順は、上述の重畳順と同じである。次のステップS120では、ラスターデータ作成部112(図1)は、読み込んだ命令が「終端命令」であるか否かを判定する。命令が「終端命令」である場合には、ラスターデータ作成部112は、処理を終了する。そして、各ラスターデータRDH、RDLの作成が完了する。
命令が「終端命令」でない場合には、命令は「描画命令」である。この場合、ラスターデータ作成部112(図1)は、次のステップS130で、その描画命令に応じて、オブジェクトを描画する。すなわち、各ラスターデータRDH、RDLに関して、画素値とフラグとが、オブジェクトの描画結果を表すように、修正される。
ステップS110〜S130の処理が繰り返されることにより、入力データIDの1以上のオブジェクトが、順番に描画される。
本実施例では、描画命令は、以下の4種類に分類される。
(1)文字描画命令(透過率設定無し)
(2)画像描画命令(透過率設定無し)
(3)文字描画命令(透過率設定有り)
(4)画像描画命令(透過率設定有り)
本実施例では、文字以外の任意のオブジェクト(例えば、ビットマップ画像や、文字以外のベクトルグラフィックス(線画やグラフ等の画像))を描画するための命令は、画像描画命令に分類される。以下に、4種類の描画命令のそれぞれに応じた描画を説明する。
A2.描画:
A2−1.文字描画命令(透過率設定無し):
図6は、透過率が設定されていない文字描画命令に応じた描画を示す概略図である。図中には、フローチャートと、描画の概略が示されている。最初のステップS200では、ラスターデータ作成部112(図1)は、描画命令に応じて、オブジェクトを表すラスターデータRDE1(以下、「第1展開データRDE1」とも呼ぶ)を、バッファBFに展開する。バッファBFは、RAM110内の記憶領域である。
ここでは、オブジェクトは「文字」であり、第1展開データRDE1の解像度は、高解像度ラスターデータRDHと同じである。また、本実施例では、描画命令は、描画対象の文字と、描画条件(フォントと、サイズと、色とを含む)と、画像の全体における描画位置とを、表している。ラスターデータ作成部112(図1)は、描画条件に従って描画対象を高解像度でラスターライズし、作成された第1展開データRDE1をバッファBFに一時的に格納する。
次のステップS210では、ラスターデータ作成部112(図1)は、高解像度ラスターデータRDH内の、描画命令で指定された描画位置に、第1展開データRDE1を書き込む。ここでは、高解像度ラスターデータRDHの画素のうちの、文字を表すべき画素の画素値が、第1展開データRDE1の対応する画素の画素値に設定される。文字と文字との間等の空白部分については、画素値は書き込まれない。また、文字を表す画素のフラグは「1」に設定される。文字を表すべき画素に、既に別のオブジェクトの画素値が設定されている場合には、その画素の画素値は、上書きされる。以上のように、オブジェクト(文字)が描画される。
A2−2.画像描画命令(透過率設定無し):
図7は、透過率が設定されていない画像描画命令に応じた描画を示す概略図である。図中には、フローチャートと、描画の概略とが示されている。最初のステップS300では、ラスターデータ作成部112(図1)は、描画命令に応じて、オブジェクトを表すラスターデータRDE2(以下、「第2展開データRDE2」とも呼ぶ)を、バッファBFに展開する。
ここでは、オブジェクトは、文字以外のオブジェクトである(例えば、ビットマップ画像や、文字以外のベクトルグラフィックス)。以下、文字以外のオブジェクトを「画像オブジェクト」と呼ぶ。また、第2展開データRDE2の解像度は、低解像度ラスターデータRDLと同じである。本実施例では、描画命令は、画像オブジェクトを表す画像データ(画像オブジェクトデータと呼ぶ)と、描画条件(サイズを含む)と、画像の全体における描画位置とを、表している。画像オブジェクトデータは、例えば、ビットマップデータであってよく、また、線画を表す命令であってもよい。ラスターデータ作成部112(図1)は、描画条件と画像オブジェクトデータとに応じて低解像度のラスターライズを実行し、作成された第2展開データRDE2をバッファBFに一時的に格納する。
次のステップS310では、ラスターデータ作成部112(図1)は、低解像度ラスターデータRDL内の、描画命令で指定された描画位置に、第2展開データRDE2を書き込む。ここでは、低解像度ラスターデータRDLの画素のうちの、画像オブジェクトを表すべき画素の画素値が、第2展開データRDE2の対応する画素の画素値に設定される。画像オブジェクトを表すべき画素に、既に別のオブジェクトの画素値が設定されている場合には、その画素の画素値は、上書きされる。
次のステップS320では、ラスターデータ作成部112(図1)は、高解像度ラスターデータRDHの画素のうちの、画像オブジェクトに対応する領域を、初期化する。この初期化は、図4のステップS100の初期化と、同じである。この初期化によって、画像オブジェクトの下に隠れるべき文字が、上面に現れることが防止される。以上のように、画像オブジェクトが描画される。
A2−3.文字描画命令(透過率設定有り):
図8は、透過率が設定された文字描画命令に応じた描画を示す概略図である。図中には、フローチャートと、描画の概略が示されている。図8に示される描画命令には、図6に示す描画命令と同じ情報に加えて、透過率が追加されている。
最初のステップS400は、図6のステップS200と同じである。この段階では、ラスターデータ作成部112(図1)は、透過率を考慮せずに、オブジェクト(ここでは、文字)を表すラスターデータRDE3を、作成する。以下、ラスターデータRDE3を「第3展開データRDE3」とも呼ぶ。
図9は、バッファBFに格納された第3展開データRDE3と、高解像度ラスターデータRDHと、低解像度ラスターデータRDLとの例を示す概略図である。高解像度ラスターデータRDHに関しては、処理段階が異なる3つの状態RDHa1〜RDHa3が示されている。図中には、各ラスターデータに関して、同じ画像部分を表す一部分が示されている。解像度の低いラスターデータRDLに関しては、4×4画素の矩形領域が示され、解像度の高いラスターデータRDH、RDE3に関しては、16×16画素の矩形領域が示されている。
第3展開データRDE3では、文字を表す画素にハッチングが付されている。図9の例では、文字を表す画像部分T1(「第1文字部分T1」とも呼ぶ)は、斜めに延びている。図9の左の高解像度ラスターデータRDHa1は、第1文字部分T1の描画前の状態を示している。描画済みのオブジェクト(文字)を表す画素にハッチングが付されている。図9の例では、文字を表す画像部分T2(「第2文字部分T2」とも呼ぶ)は、水平方向に延びている。図9の下には、低解像度ラスターデータRDLが示されている。描画済みの画像オブジェクトを表す画素にハッチングが付されている。図9の例では、画像オブジェクトを表す画像部分(「画像オブジェクト部分I1」とも呼ぶ)は、下半分の2行の画素で表されている。図9の中央の高解像度ラスターデータRDHa2では、第1文字部分T1に対応する画素、すなわち、データが書き込まれる画素(「文字画素PXt」とも呼ぶ)が、太線で示されている。オブジェクト(文字)の描画は、各文字画素PXtの階調値を設定することによって、行われる。図の右の高解像度ラスターデータRDHa3は、第1文字部分T1の描画後の状態を示している。
図9の例では、画素値が以下のように設定されている。すなわち、第3展開データRDE3の第1文字部分T1の画素値は、[R,G,B]=[255,0,0]である。描画前の高解像度ラスターデータRDHa1の第2文字部分T2の画素値は、[R,G,B]=[51,51,204]である。低解像度ラスターデータRDLの画像オブジェクト部分I1の画素値は、[R,G,B]=[0,128,0]である。
高解像度ラスターデータRDHa2、RDHa3には、3つの画素PX1、PX2、PX3が、2重線で示されている。第1画素PX1は、2つの文字部分T1、T2が重なる画像部分の画素である。第2画素PX2は、第1文字部分T1を表し、他のオブジェクトを表さない画像部分の画素である。第3画素PX3は、第1文字部分T1と画像オブジェクト部分I1とが重なる画像部分の画素である。
第3展開データRDE3には、3つの画素PX1E、PX2E、PX3Eが、2重線で示されている。これらの画素PX1E、PX2E、PX3Eは、上述の画素PX1、PX2、PX3に、それぞれ対応している。低解像度ラスターデータRDLには、2つの画素PX2L、PX3Lが、2重線で示されている。これらの画素PX2L、PX3Lは、上述の画素PX2、PX3の対応画素に、それぞれ相当する。
図8の次のステップS410では、ラスターデータ作成部112(図1)は、第3展開データRDE3に応じて、高解像度ラスターデータRDHにオブジェクト(文字)を描画する。この描画は、オブジェクトを表すべき画素PXtのフラグの値に応じて行われる。
図10は、フラグが「1」に設定されている場合の画素値の算出例を示している(その画素が、それまでに描画された文字のオブジェクトを表す場合に、フラグは「1」である)。具体的には、高解像度ラスターデータRDH(図9)の第2文字部分T2を表す第1画素PX1の階調値(画素値)の算出例が示されている。ここで、透過率が0.4であることと仮定している。第1画素PX1の階調値は、新たなオブジェクトの描画前の第1画素PX1の階調値と、第3展開データRDE3の画素PX1Eの階調値とを、透過率に応じて合成した値に設定される。
一般には、高解像度ラスターデータRDHの文字画素PXtの階調値は、以下の式に従って、算出される(フラグ=1)。
階調値=(高解像度ラスターデータRDHの文字画素PXtの描画前の階調値)×(透過率)+(バッファBF中の対応する画素の階調値)×(1−透過率)
ここで、バッファBF中の対応する画素は、第3展開データRDE3の画素のうちの、文字画素PXtと同じ部分を表す画素(同じ位置の画素)を意味している。この算出は、色成分毎に行われる。後述する他の場合に関しても、階調値の算出は、色成分毎に行われる。
図11は、フラグが「0」に設定されている場合の画素値の算出例を示している(その画素が、それまでに描画された文字のオブジェクトを表さない場合に、フラグは「0」である)。具体的には、第2画素PX2(図9)と第3画素PX3のそれぞれの階調値の算出例が示されている(透過率は0.4)。第2画素PX2の階調値は、低解像度ラスターデータRDLの画素PX2Lの階調値と、第3展開データRDE3の画素PX2Eの階調値とを、透過率に応じて合成した値に、設定される。第3画素PX3の階調値は、低解像度ラスターデータRDLの画素PX3Lの階調値と、第3展開データRDE3の画素PX3Eの階調値とを、透過率に応じて合成した値に設定される。
一般には、高解像度ラスターデータRDHの文字画素PXtの階調値は、以下の式に従って、算出される(フラグ=0)。
階調値 =(低解像度ラスターデータRDLの対応画素の階調値)×(透過率)+(バッファBF中の対応する画素の階調値)×(1−透過率)
ここで、低解像度ラスターデータRDLの対応画素は、文字画素PXtに対応した画素を意味している。バッファBF中の対応する画素は、第3展開データRDE3の画素のうちの、文字画素PXtと同じ部分を表す画素(同じ位置の画素)を意味している。
ラスターデータ作成部112(図1)は、文字画素PXtの階調値(画素値)を、上述の演算式に従って設定し、文字画素PXtのフラグを「1」に設定する。以上のように、オブジェクト(文字)が、高解像度ラスターデータRDHに描画される。
A2−4.画像描画命令(透過率設定有り):
図12は、透過率が設定された画像描画命令に応じた描画を示す概略図である。図中には、フローチャートと、描画の概略が示されている。図12に示される描画命令には、図7に示す描画命令と同じ情報に加えて、透過率が追加されている。
最初のステップS500は、図7のステップS300と同じである。この段階では、ラスターデータ作成部112(図1)は、透過率を考慮せずに、オブジェクト(ここでは、画像オブジェクト)を表すラスターデータRDE4を、作成する。以下、ラスターデータRDE4を「第4展開データRDE4」とも呼ぶ。
図13は、バッファBFに格納された第4展開データRDE4と、高解像度ラスターデータRDHと、低解像度ラスターデータRDLとの例を示す概略図である。高解像度ラスターデータRDHと低解像度ラスターデータRDLとに関しては、処理段階が異なる3つの状態RDHa11〜RDHa13、RDLb11〜RDLb13が、それぞれ示されている。図中には、各ラスターデータに関して、同じ画像部分を表す一部分が示されている。解像度の低いラスターデータRDE4、RDLに関しては、4×4画素の矩形領域が示され、解像度の高いラスターデータRDHに関しては、16×16画素の矩形領域が示されている。
図13の上の第4展開データRDE4では、画像オブジェクトを表す画素にハッチングが付されている。図13の例では、画像オブジェクトを表す画像部分I11(「第1画像オブジェクト部分I11」とも呼ぶ)は、左端の1列を除いた残りの3列の画素によって表されている。
図13の左の2つのラスターデータRDHa11、RDLb11は、第1画像オブジェクト部分I11の描画前の状態を示している。描画済みのオブジェクト(例えば、文字や画像オブジェクト)を表す画素にハッチングが付されている。描画前の高解像度ラスターデータRDHa11では、文字を表す画像部分T11(「第1文字部分T11」とも呼ぶ)が、水平方向に延びている。描画前の低解像度ラスターデータRDLb11では、画像オブジェクトを表す画像部分(「第2画像オブジェクト部分I12」とも呼ぶ)は、下半分の2行の画素で表されている。
図13の中央の高解像度ラスターデータRDHa12では、第1画像オブジェクト部分I11に対応する領域の画素が、太線で示されている(これらの画素を「画像画素PXHc」とも呼ぶ)。画像画素PXHcのうちの第1文字部分T11を表す画素PXHtは、描画済みの文字と、新たに描画される画像オブジェクトとが重なる画像部分を表している。このような画素PXHtは、第1画像オブジェクト部分I11に対応する領域(画像画素PXHc)における、フラグが「1」に設定された画素である。以下、これらの画素PXHtを、「重畳画素PXHt」とも呼ぶ。
図13の中央下の低解像度ラスターデータRDLb12では、第1画像オブジェクト部分I11に対応する画素(同じ位置の画素)が、太線で示されている(これらの画素を「画像画素PXLc」とも呼ぶ)。画像画素PXLcは、描画済みの画像オブジェクトを表す画素PXLdと、描画済みの画像オブジェクトを表さない画素PXLeと、に分類される。図13の例では、画素PXLdは、描画済みの第2画像オブジェクト部分I12と、新たに描画される第1画像オブジェクト部分I11とが重なる画像部分を表している(これらの画素PXLdを「重畳画素PXLd」とも呼ぶ)。
図13の右の2つのラスターデータRDHa13、RDLb13は、第1画像オブジェクト部分I11の描画後の状態を、それぞれ示している。高解像度ラスターデータRDHa13では、重畳画素PXHtが、太線で囲まれている。
図13の例では、画素値が以下のように設定されている。すなわち、第4展開データRDE4の第1画像オブジェクト部分I11の画素値は、[R,G,B]=[255,255,0]である。描画前の高解像度ラスターデータRDHa11の第1文字部分T11の画素値は、[R,G,B]=[51,51,204]である。描画前の低解像度ラスターデータRDLb11の第2画像オブジェクト部分I12の画素値は、[R,G,B]=[204,153,255]である。
高解像度ラスターデータRDHa12、RDHa13には、1つの画素PX13が2重線で示されている。この画素PX13は、第1画像オブジェクト部分I11と第1文字部分T11とが重なる画像部分の画素である。第4展開データRDE4の第3画素PX13Eは、この画素PX13に対応している。
低解像度ラスターデータRDLb12、RDLb13には、2つの画素PX11、PX12が2重線で示されている。第1画素PX11は、第1画像オブジェクト部分I11を表し、他のオブジェクトを表さない画像部分の画素である。第2画素PX12は、2つの画像オブジェクト部分I11、I12が重なる画像部分の画素である。第4展開データRDE4の2つの画素PX11E、PX12Eは、これらの画素PX11、PX12に、それぞれ対応している。
図12の次のステップS510では、ラスターデータ作成部112(図1)は、第4展開データRDE4に応じて、低解像度ラスターデータRDLに、画像オブジェクトを描画する。図14は、図13に示す2つの画素PX11、PX12のそれぞれの階調値(画素値)の算出例を示している。透過率が0.4であることと仮定している。第1画素PX11の階調値は、新たなオブジェクトの描画前の第1画素PX11の階調値と、第4展開データRDE4の画素PX11Eの階調値とを、透過率に応じて合成した値に設定される。第2画素PX12の階調値も、同様に、対応画素の階調値を合成した値に設定される。
一般には、低解像度ラスターデータRDLの画像画素PXLcの階調値は、以下の式に従って、算出される。
階調値=(低解像度ラスターデータRDLの画像画素PXLcの描画前の階調値)×(透過率)+(バッファBF中の対応する画素の階調値)×(1−透過率)
ここで、バッファBF中の対応する画素は、第4展開データRDE4の画素のうちの、画像画素PXLcと同じ部分を表す画素(同じ位置の画素)を意味している。なお、本実施例では、文字を表す画像部分を含むか否かに拘わらずに、全ての画像画素PXLcの画素値が更新される。
図12の次のステップS520では、ラスターデータ作成部112(図1)は、高解像度ラスターデータRDHの文字を表す画素のうちの、第1画像オブジェクト部分I11と重なる重畳画素PXHtの画素値を修正する。図15は、重畳画素PXHtの画素値の算出例を示している。具体的には、図13に示す画素PX13の階調値(画素値)の算出例が示されている。画素PX13の階調値は、新たなオブジェクトの描画前の画素PX13の階調値と、第4展開データRDE4の画素PX13Eの階調値とを、透過率に応じて合成した値に設定される。
一般には、文字を表す重畳画素PXHtの階調値は、以下の式に従って、算出される。
階調値=(高解像度ラスターデータRDHの重畳画素PXHtの描画前の階調値)×(透過率)+(バッファBF中の対応する画素の階調値)×(1−透過率)
ここで、バッファBF中の対応する画素は、第4展開データRDE4の画素のうちの、重畳画素PXHtに対応する画素を意味している。
ラスターデータ作成部112(図1)は、全ての画像画素PXLcの階調値(画素値)を、上述の演算式に従って設定する。そして、ラスターデータ作成部112は、全ての重畳画素PXHtの階調値(画素値)を、上述の演算式に従って設定する。以上のように、画像オブジェクトが、描画される。
A3.合成:
図16は、ラスターデータの合成処理の概略図である。この処理は、ラスターデータ合成部224(図1)によって実行される。ラスターデータ合成部224は、高解像度ラスターデータRDHと低解像度ラスターデータRDLとを合成することによって、合成ラスターデータRDCを作成する。合成ラスターデータRDCの解像度(画素密度)は、高解像度ラスターデータRDHのものと同じである。ラスターデータ合成部224は、フラグが「1」の画素については、高解像度ラスターデータRDHの階調値を選択し、フラグが「0」の画素については、低解像度ラスターデータRDLの階調値を選択することによって、合成ラスターデータRDCを作成する。
図17は、ラスターデータの合成処理の手順を示すフローチャートである。最初のステップS600では、ラスターデータ合成部224(図1)は、高解像度ラスターデータRDH(図16)を、合成ラスターデータRDCの基礎として、採用する。本実施例では、ラスターデータ合成部224は、高解像度ラスターデータRDHの画素値を、低解像度ラスターデータRDLによって表される階調値に応じて変更することによって、合成ラスターデータRDCを作成する。ただし、高解像度ラスターデータRDHとは別に、合成ラスターデータRDCのための記憶領域を確保してもよい。
次のステップS610では、ラスターデータ合成部224(図1)は、合成ラスターデータRDC(すなわち、高解像度ラスターデータRDH)の画素のうちの最初の画素を処理対象画素として選択する。画素の処理順番は、予め決定されている。例えば、以下のような順番を採用してよい。すなわち、左上の隅の画素から順番が開始する。1行内の画素については、左端から右端に向かって、順番が進む。右端の画素の次の画素は、1行下の左端の画素である。
次のステップS620では、ラスターデータ合成部224(図1)は、処理対象画素のフラグが「0」であるか否かを判定する。フラグが「0」である場合には、次のステップS630で、ラスターデータ合成部224は、処理対象画素の画素値を、低解像度ラスターデータRDLの対応画素の画素値に設定する。例えば、図13の右の高解像度ラスターデータRDHa13において、画素PXsのフラグは「0」に設定されている(図の左のデータRDHa11参照)。この画素PXsの階調値は、低解像度ラスターデータRDLb13の対応画素(この場合は、画素PX11)の階調値に、設定される。
処理対象画素のフラグが「1」である場合には、ラスターデータ合成部224(図1)は、ステップS630をスキップする。これにより、ラスターデータ合成部224は、合成ラスターデータRDCの画素の画素値として、高解像度ラスターデータRDHの対応する画素の画素値を選択する。例えば、図13の右の高解像度ラスターデータRDHa13において、画素PX13のフラグは「1」に設定されている(図の左のデータRDHa11参照)。この画素PX13の階調値としては、高解像度ラスターデータRDHの階調値が、そのまま採用される。
図17の次のステップS640では、ラスターデータ合成部224(図1)は、未処理の画素が残っているか否かを判定する。未処理の画素が残っている場合には、ラスターデータ合成部224は、次の画素を選択して(ステップS650)、ステップS620に戻る。全ての画素の処理が完了したことに応じて(ステップS640:No)、ラスターデータ合成部224は、合成ラスターデータRDCの作成を完了する。
以上のように、本実施例では、ラスターデータの作成の際に、オブジェクトの種類に応じて、そのオブジェクトを表すべき階調値を格納するラスターデータが、高解像度ラスターデータRDHと低解像度ラスターデータRDLから選択される。従って、解像度と表現対象のオブジェクトの種類とが異なる高解像度ラスターデータと低解像度ラスターデータとを利用することができる。さらに、透過率が設定されたオブジェクトを描画する際には、各ラスターデータRDH、RDLの画素値が、透過率に応じて画素値を合成して得られる値に設定されるので、透過率が設定されたオブジェクトを扱うことができる。
また、図12、図13、図15の画素PX13が示すように、文字を表す画像部分に、透過率が設定された画像オブジェクトを重ねて描画する場合には、以下のように画素値が決定される。すなわち、その画像部分を表す高解像度の画素の画素値と、新たに描画される画像オブジェクトを表す低解像度の画素の画素値とを、透過率に応じて合成することによって、高解像度ラスターデータRDHの画素値が決定される。従って、文字に画像オブジェクトが重畳される場合にも、その文字を表す画像部分に関して、高解像度ラスターデータRDHの画素値を、透過率に応じて適切に決定することができる。
また、図8〜図10の第1画素PX1が示すように、文字を表す画像部分に、透過率が設定された文字を重ねて描画する場合には、高解像度の画素の画素値を利用して、透過率に応じた合成が行われる。従って、文字を表す画像部分に関して、高解像度ラスターデータRDHの画素値を、透過率に応じて適切に決定することができる。
また、図8、図9、図11の画素PX3が示すように、文字を表さずに画像オブジェクトを表す画像部分に、透過率が設定された文字を重ねて描画する場合には、以下のように画素値が決定される。すなわち、その画像部分を表す低解像度の画素の画素値と、新たに描画される文字を表す高解像度の画素の画素値とを、透過率に応じて合成することによって、高解像度ラスターデータRDHの画素値が決定される。従って、画像オブジェクトに文字が重畳される場合にも、その文字を表す画像部分に関して、高解像度ラスターデータRDHの画素値を、透過率に応じて適切に決定することができる。
また、図12〜図14の画素PX11、PX12が示すように、文字を表さない画像部分に、透過率が設定された画像オブジェクトを重ねて描画する場合には、以下のように画素値が決定される。すなわち、その画像部分を表す低解像度の画素の画素値と、新たに描画される画像オブジェクトを表す低解像度の画素の画素値とを、透過率に応じて合成することによって、低解像度ラスターデータRDLの画素値が決定される。従って、文字を表さない画像部分(例えば、画像オブジェクトを表す画像部分)に画像オブジェクトを重畳する場合にも、低解像度ラスターデータRDLの画素値を、透過率に応じて適切に決定することができる。
このように、透過率が設定されたオブジェクトを扱う場合にも、文字を表す画像部分に関しては、高解像度ラスターデータRDHに透過率を考慮した画素値が設定され、文字を表さずに画像オブジェクトを表す画像部分に関しては、低解像度ラスターデータRDLに透過率を考慮した画素値が設定される。その結果、透過率を扱うための特別な処理(例えば、透過率に応じた画素値の合成)を用いずに、図16、図17に示すように、これらのラスターデータRDH、RDLを合成して合成ラスターデータRDCを作成することができる。すなわち、ラスターデータ合成部224(図1)は、高解像度ラスターデータRDHに画素値が設定されている画像部分に関しては、高解像度ラスターデータRDHの画素値を選択し、高解像度ラスターデータRDHに画素値が設定されていない画像部分に関しては、低解像度ラスターデータRDLの画素値を選択すればよい。
ここで、高解像度ラスターデータRDHに画素値が設定されているか否かを判断する方法としては、フラグを利用する方法に限らず、任意の方法を採用してよい。例えば、画素に割り当てられた階調値が表し得る複数の値のうちの特定の値が、画素値が設定されていないことを示してもよい。このように、高解像度ラスターデータRDHの各画素に、画素値が設定されているか否かを表す情報が、関連つけられていてもよい。一般には、ラスターデータ作成部112(図1)は、高解像度ラスターデータRDHによって表され得る複数の画素のうちの画素値が設定された画素を特定する情報(「画素特定情報」と呼ぶ)を、作成することが好ましい。そして、ラスターデータ合成部224は、画素特定情報を利用して、高解像度ラスターデータRDHの画素に画素値が設定されている画像部分を特定すればよい。画素特定情報の形態としては、上述のフラグに限らず、任意の形態を採用可能である。例えば、画素値が設定された画素の識別番号のリストを採用してもよい。また、画素値が設定された画素の位置を表す情報を採用してもよい。
B.変形例:
なお、上記各実施例における構成要素の中の、独立クレームでクレームされた要素以外の要素は、付加的な要素であり、適宜省略可能である。また、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
変形例1:
上述の各実施例において、高解像度ラスターデータRDHが表すオブジェクトの種類と、低解像度ラスターデータRDLが表すオブジェクトの種類との組み合わせとしては、上述の実施例の組み合わせに限らず、任意の組み合わせを採用可能である。例えば、高解像度ラスターデータRDHが、ベクトルグラフィックスの全般(文字と画像とを含む)を表し、低解像度ラスターデータRDLが、ベクトルグラフィックスを表さずにビットマップ画像を表してもよい。また、これらのオブジェクトに限らず、他の種々のオブジェクトを利用してもよい。また、高解像度ラスターデータRDHの解像度が、2400dpiと異なっていてもよく、低解像度ラスターデータRDLの解像度が、600dpiと異なっていても良い。一般には、高解像度ラスターデータRDHの解像度が、低解像度ラスターデータRDLの解像度よりも、高ければよい。ここで、縦方向の解像度が水平方向の解像度と異なっていても良い。この場合、縦方向と水平方向との少なくとも一方において、高解像度ラスターデータRDHの解像度が、低解像度ラスターデータRDLの解像度よりも高ければよく、縦方向と水平方向とのいずれか一方において、解像度が同じであってもよい。いずれの場合も、縦方向と横方向とのそれぞれにおいて、高解像度ラスターデータRDHの解像度(画素密度)が、低解像度ラスターデータRDLの解像度(画素密度)のL倍(Lは1以上の整数)であることが好ましい。また、画素値の色成分は、RGBに限らず、他の色成分であってもよい。
いずれの場合も、文字を表す画像部分に関しては、高解像度ラスターデータRDHに画素値を設定することが好ましい。こうすれば、文字のジャギーが目立つことを抑制できる。なお、「文字を表す画像部分」は、「文字」のみを表す画像部分に限らず、「文字」と「文字以外のオブジェクト」とが合成された画像部分を含んでいる。一般に、「或る種類のオブジェクトを表す画像部分」は、その種類のオブジェクトと、他の種類のオブジェクトとが合成された画像部分を含んでいる。
さらに、文字を表さずにビットマップ画像のオブジェクトを表す画像部分に関しては、低解像度ラスターデータRDLに画素値を設定することが好ましい。こうすれば、高解像度ラスターデータRDHがビットマップ画像のオブジェクトを表さないので、高解像度ラスターデータRDHにおける広い画像範囲において、同一の画素値を表す複数の画素が連続する。その結果、高解像度ラスターデータRDHを効率よく圧縮することができる。また、ビットマップ画像に関しては、低解像度ラスターデータRDLで表された場合であっても、見た目の精細さが過剰に低下することを抑制できる。
変形例2:
上述の各実施例において、データ圧縮部114(図1)とデータ展開部222とによる圧縮・伸張のアルゴリズムとしては、ランレングス符号化に限らず、任意のアルゴリズムを採用可能である(例えば、ハフマン符号化)。いずれの場合も、可逆圧縮アルゴリズムを採用することが好ましい。また、圧縮対象は、高解像度ラスターデータRDHと低解像度ラスターデータRDLとの少なくとも一方でよい。例えば、両方のラスターデータRDH、RDLを圧縮してもよい。また、このような圧縮(データ圧縮部114、データ展開部222)を省略してもよい。ただし、これらのラスターデータRDH、RDLの少なくとも一方を圧縮することが好ましい。こうすれば、データ伝送路(例えば、図1の伝送路TL)の帯域が狭い場合であっても、高解像度のラスターデータを高速に転送することができる。また、ラスターデータの格納に利用される記憶領域の容量を低減することもできる。
変形例3:
上述の各実施例において、画像処理システムの構成としては、図1に示す構成に限らず、種々の構成を採用可能である。例えば、コンピューター100の要素の一部が印刷装置200に設けられていてもよい。逆に、印刷装置200の要素の一部がコンピューター100に設けられていてもよい。また、コンピューター100と印刷装置200とが、1つの装置に組み込まれていても良い。また、データ圧縮部114とデータ展開部222とが省略されてもよい。また、ラスターデータ合成部224が、印刷装置200とコンピューター100とのいずれとも異なる別の装置に設けられていてもよい。
いずれの場合も、透過率を考慮してラスターデータRDH、RDLを作成するラスターデータ作成部112を有する画像処理装置を利用してよい。こうすれば、解像度と表現対象のオブジェクトの種類とが異なる複数のラスターデータを利用する場合に、透過率が設定されたオブジェクトを扱うことができる。そして、このようなラスターデータRDH、RDLを高解像度ラスターデータRDHの階調値を優先して合成するラスターデータ合成部224を有する画像処理装置を利用してよい。こうすれば、適切に画像を再現することができる。
また、合成ラスターデータRDC(図1)の用途としては、印刷に限らず、任意の用途を採用可能である。例えば、ディスプレイ装置が、合成ラスターデータRDCに応じて画像を表示してもよい。このように、合成ラスターデータRDCに応じて画像を出力(表示や印刷)する種々の画像出力部を利用してよい。なお、画像出力部は、ラスターデータ合成部224を有する処理装置とは別の装置であってもよい。
また、ラスターデータ作成部112からラスターデータ合成部224へ、ラスターデータRDH、RDLを転送する方法としては、任意の方法を採用可能である。例えば、伝送路TL(図1)の代わりに、着脱可能なメモリ(例えば、USBメモリ)を利用してもよい。この場合、コンピューター100と印刷装置200とのそれぞれに、メモリを接続するためのインターフェースを設ければよい。また、ラスターデータ作成部112とラスターデータ合成部224とが同じ装置に設けられてもよい。この場合には、ラスターデータ作成部112とラスターデータ合成部224との両方から参照可能なメモリ(例えば、共有メモリ)を利用してもよい。
変形例4:
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、図1のラスターデータ作成部112の機能を、論理回路を有するハードウェア回路によって実現してもよい。
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア(コンピュータープログラム)は、コンピューター読み取り可能な記録媒体に格納された形で提供することができる。この発明において、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスクやCD−ROMのような携帯型の記録媒体に限らず、各種のRAMやROM等のコンピューター内の内部記憶装置や、ハードディスク等のコンピューターに固定されている外部記憶装置も含んでいる。
100…コンピューター
110…RAM
112…ラスターデータ作成部
114…データ圧縮部
120…CPU
130…データ送信部
200…印刷装置
210…データ受信部
222…データ展開部
224…ラスターデータ合成部
226…印刷データ作成部
226a…色変換部
226b…ハーフトーン処理部
230…CPU
240…プリンター制御部
250…印刷ユニット
900…画像処理システム
ID…入力データ
CD…圧縮データ
PD…印刷データ
BF…バッファ
TL…伝送路
RDC…合成ラスターデータ
RDH…高解像度ラスターデータ
RDL…低解像度ラスターデータ

Claims (12)

  1. 画像処理装置であって、
    複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じて、前記複数のオブジェクトの描画結果を表すラスターデータを作成するラスターデータ作成部を備え、
    前記ラスターデータは、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを含み、
    前記ラスターデータ作成部は、
    一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトを重ねて描画する場合には、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定し、
    一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定する、
    画像処理装置。
  2. 請求項1に記載の画像処理装置であって、
    前記ラスターデータ作成部は、一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの第3画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第3画像部分において、前記高解像度ラスターデータと、前記透過率が設定された前記第2種オブジェクトとの画素値を、前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する、
    画像処理装置。
  3. 請求項1または請求項2に記載の画像処理装置であって、
    前記ラスターデータ作成部は、前記第1画像部分が前記第1種オブジェクトの画像部分である場合には、前記第1画像部分において、前記高解像度ラスターデータと、前記透過率が設定された前記第1種オブジェクトとの画素値を、前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する、
    画像処理装置。
  4. 請求項1ないし請求項3のいずれかに記載の画像処理装置であって、
    前記ラスターデータ作成部は、前記第1画像部分が前記第2種オブジェクトの画像部分である場合には、前記第1画像部分において、前記低解像度ラスターデータと、前記透過率が設定された前記第1種オブジェクトとの画素値を、前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する、
    画像処理装置。
  5. 請求項1ないし請求項4のいずれかに記載の画像処理装置であって、
    前記ラスターデータ作成部は、前記第2画像部分において、前記低解像度ラスターデータと、前記透過率が設定された前記第2種オブジェクトとの画素値を、前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定する、
    画像処理装置。
  6. 請求項1ないし請求項5のいずれかに記載の画像処理装置であって、
    前記第1種オブジェクトは、文字を含む、
    画像処理装置。
  7. 請求項6に記載の画像処理装置であって、さらに、
    前記高解像度ラスターデータを圧縮する圧縮部を含み、
    前記第2種オブジェクトは、ビットマップ画像を含む、
    画像処理装置。
  8. 画像処理システムであって、
    ラスターデータ作成部と、
    ラスターデータ合成部と、
    を備え、
    前記ラスターデータ作成部は、複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じて、前記複数のオブジェクトの描画結果を表すラスターデータを作成し、
    前記ラスターデータは、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを含み、
    前記ラスターデータ作成部は、
    一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトを重ねて描画する場合には、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定し、
    一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定し、
    前記ラスターデータ合成部は、前記高解像度ラスターデータの画素に画素値が設定されている画像部分に関しては、前記高解像度ラスターデータの画素値を選択し、前記高解像度ラスターデータの画素に画素値が設定されていない画像部分に関しては、前記低解像度ラスターデータの画素値を選択して、前記高解像度ラスターデータと前記低解像度ラスターデータとの合成データを作成する、
    画像処理システム。
  9. 請求項8に記載の画像処理システムであって、さらに、
    前記合成データに応じて印刷を行う印刷部を含む、
    画像処理システム。
  10. ラスターデータを作成する方法であって、
    複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じて、前記複数のオブジェクトの描画結果を表すラスターデータを作成する工程を備え、
    前記ラスターデータは、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを含み、
    前記ラスターデータを作成する工程は、
    一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトを重ねて描画する場合には、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する工程と、
    一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定する工程と、
    を含む、方法。
  11. ラスターデータを作成する処理をコンピューターに実行させるコンピュータープログラムであって、
    複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じて、前記複数のオブジェクトの描画結果を表すラスターデータを作成する機能をコンピューターに実現させ、
    前記ラスターデータは、第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを含み、
    前記ラスターデータを作成する機能は、
    一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトを重ねて描画する場合には、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値を設定する機能と、
    一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトを重ねて描画する場合には、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値を設定する機能と、
    を含む、コンピュータープログラム。
  12. 画像処理装置であって、
    第1種オブジェクトの画像部分の画素値を表し、第1画素密度の高解像度ラスターデータと、前記第1種オブジェクトではない第2種オブジェクトの画像部分の画素値を表し、前記第1画素密度より低い第2画素密度の低解像度ラスターデータとを合成して合成データを作成するラスターデータ合成部を備え、
    前記高解像度ラスターデータと前記低解像度ラスターデータとは、全体で、複数のオブジェクトと前記複数のオブジェクトのそれぞれを描画する重畳順とを表す入力データに応じた前記複数のオブジェクトの描画結果を表しており、
    一部のオブジェクトの前記重畳順に従った描画結果のうち第1画像部分に、透過率が設定された前記第1種オブジェクトが重ねて描画された画像部分では、前記第1画像部分と前記第1種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記高解像度ラスターデータの画素値が設定されており、
    一部のオブジェクトの前記重畳順に従った描画結果のうち前記第1種オブジェクトの画像部分ではない第2画像部分に、透過率が設定された前記第2種オブジェクトが重ねて描画された画像部分では、前記第2画像部分と前記第2種オブジェクトとの画素値を前記透過率に応じて合成して、重畳後の前記低解像度ラスターデータの画素値が設定されており、
    前記ラスターデータ合成部は、前記高解像度ラスターデータの画素に画素値が設定されている画像部分に関しては、前記高解像度ラスターデータの画素値を選択し、前記高解像度ラスターデータの画素に画素値が設定されていない画像部分に関しては、前記低解像度ラスターデータの画素値を選択して、前記合成データを作成する、
    画像処理装置。
JP2009026339A 2009-02-06 2009-02-06 画像処理のための装置、システム、方法、プログラム Withdrawn JP2010183436A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009026339A JP2010183436A (ja) 2009-02-06 2009-02-06 画像処理のための装置、システム、方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009026339A JP2010183436A (ja) 2009-02-06 2009-02-06 画像処理のための装置、システム、方法、プログラム

Publications (1)

Publication Number Publication Date
JP2010183436A true JP2010183436A (ja) 2010-08-19

Family

ID=42764598

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009026339A Withdrawn JP2010183436A (ja) 2009-02-06 2009-02-06 画像処理のための装置、システム、方法、プログラム

Country Status (1)

Country Link
JP (1) JP2010183436A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016095744A (ja) * 2014-11-17 2016-05-26 京セラドキュメントソリューションズ株式会社 画像形成システム、プリンタードライバー、画像形成装置およびレンダリングプログラム
JP2017004342A (ja) * 2015-06-12 2017-01-05 京セラドキュメントソリューションズ株式会社 画像形成システム、プリンタードライバー、画像形成装置およびレンダリングプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05323562A (ja) * 1992-05-26 1993-12-07 Dainippon Printing Co Ltd 印刷用文字及び画像合成出力装置
JP2004104735A (ja) * 2002-07-17 2004-04-02 Seiko Epson Corp 画像処理装置、生成装置および印刷装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05323562A (ja) * 1992-05-26 1993-12-07 Dainippon Printing Co Ltd 印刷用文字及び画像合成出力装置
JP2004104735A (ja) * 2002-07-17 2004-04-02 Seiko Epson Corp 画像処理装置、生成装置および印刷装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016095744A (ja) * 2014-11-17 2016-05-26 京セラドキュメントソリューションズ株式会社 画像形成システム、プリンタードライバー、画像形成装置およびレンダリングプログラム
JP2017004342A (ja) * 2015-06-12 2017-01-05 京セラドキュメントソリューションズ株式会社 画像形成システム、プリンタードライバー、画像形成装置およびレンダリングプログラム

Similar Documents

Publication Publication Date Title
US7164493B1 (en) Image processing method, system and apparatus, and storage medium
US9176935B2 (en) Image forming apparatus capable of displaying print preview on screen
JP5031668B2 (ja) 印刷装置、その制御方法、プログラム
JP2011151720A (ja) 画像処理装置
JP5406703B2 (ja) 画像処理装置及び画像処理方法及び画像形成装置
JP2010183436A (ja) 画像処理のための装置、システム、方法、プログラム
JP2004104735A (ja) 画像処理装置、生成装置および印刷装置
JP2007158952A (ja) 画像処理装置、画像処理方法、画像処理プログラム、記録媒体及び画像形成装置
JP4356953B2 (ja) 画像処理システム及び画像処理装置及びその制御方法及び記憶媒体
JP2007088912A (ja) 画像処理装置およびプログラム
JP4109785B2 (ja) 画像処理装置及びその方法、コンピュータ可読メモリ
JP2010193030A (ja) 画像処理のための装置、システム、方法、プログラム
JP4514168B2 (ja) 画像処理システム及び画像処理方法
JP2010193028A (ja) 画像処理のための装置、方法、プログラム
JP4412363B2 (ja) 画像処理装置
JP2011053263A (ja) 画像処理装置、画像処理方法、画像出力システム、プログラム及び記録媒体
JP2009177307A (ja) 画像形成装置及びサムネイル画像生成方法
JP2008028932A (ja) 画像処理システムおよび画像処理方法
JP2703223B2 (ja) カラー画像処理装置
JP2005073025A (ja) 画像処理装置及び画像処理をコンピュータに実行させる画像処理プログラム
JP5326858B2 (ja) 画像処理装置及び画像処理プログラム
JP2010171926A (ja) 印刷システム,印刷装置及び画像印刷方法
JP4423812B2 (ja) 描画処理装置および描画処理方法
JP2007074539A (ja) 画像形成装置
JP6140973B2 (ja) 画像処理装置、画像処理方法ならびにプログラム

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20111024

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20111026

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111101

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120903

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120911

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20120924