JP3813229B2 - 表示用の形状を塗りつぶすための任意マスキング技法 - Google Patents

表示用の形状を塗りつぶすための任意マスキング技法 Download PDF

Info

Publication number
JP3813229B2
JP3813229B2 JP04895796A JP4895796A JP3813229B2 JP 3813229 B2 JP3813229 B2 JP 3813229B2 JP 04895796 A JP04895796 A JP 04895796A JP 4895796 A JP4895796 A JP 4895796A JP 3813229 B2 JP3813229 B2 JP 3813229B2
Authority
JP
Japan
Prior art keywords
printer
fill pattern
pattern
host computer
fill
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.)
Expired - Fee Related
Application number
JP04895796A
Other languages
English (en)
Other versions
JPH08263674A (ja
Inventor
アンソニー・ディー・パークハースト
パドマナブハン・ランチャンドラン
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH08263674A publication Critical patent/JPH08263674A/ja
Application granted granted Critical
Publication of JP3813229B2 publication Critical patent/JP3813229B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0008Downloading generic data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0011Accepting output data; Preparing data for the controlling system characterised by a particular command or data flow, e.g. Page Description Language, configuration commands

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)
  • Record Information Processing For Printing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はグラフィック処理に関し、より詳細には、任意の形状を表示用に選択されたパターンで塗りつぶす方法に関する。
【0002】
【従来の技術】
HP DeskJet 1200Cプリンタなどの多くのタイプのプリンタでは、ホスト・コンピュータからプリンタに送られる制御情報、及び表示情報は、高水準ページ記述言語で提供され、その後、プリンタによってラスタ走査タイプ形式に変換される。次にプリンタは、媒体上にプリントするために、そのラスタ走査形式のデータをプリント・エンジンに送る。高水準コマンドの処理は、ホスト・コンピュータではなく、プリンタが行うため、コンピュータはユーザに対してより迅速に対応することができる。
【0003】
プリントするページは、まずプリンタに表示リストとして記憶されるか、または個別のピクセルとしてフレーム・バッファに記憶される。Anthony Parkhurst他による、Hewlett-Packard Journal 1994年2月号、85-97ページの論文「Connectivity of the HP DeskJet 1200C Printer」は、ホスト・コンピュータとHP DeskJet 1200Cカラー・プリンタ間の、この周知のインタフェースについて述べている。この論文は、ここで参照することによって本明細書に組み込まれる。このようなインタフェースは、他のプリンタが使用しているインタフェースと同様である。
【0004】
HP DeskJet 1200Cは、ブラック・ペン、シアン・ペン、マゼンタ・ペン、及びイエロー・ペンを使用するカラー・インクジェット型プリンタである。インクジェット・プリントヘッドによってブラック・インク滴、またはカラー・インク滴が噴射され、媒体上にドット、即ちピクセルを形成する。これらのドットは、近接しているか、または重複しており、個々のドットを互いに区別することはできない。シアン、マゼンタ、及びイエローのインクの様々な組み合わせによって、多くの色が作られる。
【0005】
プリンタに送られるページ記述言語は、座標と、矩形、ベクトル、円、多角形などの基本形を使用して、表示される形状を記述する。テキストは、文字の外観を記述するのではなく、文字とフォントを指定することによって記述される。ページ記述言語は、形状を特定のパターン、または色で塗りつぶすなどの、形状に関して行われる操作も記述する。このようなページ記述言語は、プリントする各ピクセルが、ラスタ走査の順にプリンタに送られる単純なピクセル単位の記述とは対照的に、このようなラスタ走査形式の伝送を高水準言語と連係して行うことができる。周知のページ記述言語の1つは、PCL-5C言語である。この言語については、ヒューレット・パッカードの出版物「PCL 5 Printer Language Technical Reference Manual」、1992年版、マニュアル・パート番号5961-0509で詳述されており、ここで参照することによって、本明細書に組み込まれる。グラフィックのプログラムを開発するプログラマは、このようなPCL-5言語を使用して表示イメージを定義することができる。その他のページ記述言語としては、PostScript、及びHP-GL/2などがある。
【0006】
プリンタに必要なメモリ容量と、ページのレンダリング、及びプリントに要する時間は、ページ記述の複雑さに正比例する。HP DeskJet 1200Cのメモリ容量は2メガバイトであるが、より複雑なグラフィックに対して、最大26メガバイトまで拡張可能である。
【0007】
パーソナル・コンピュータ用のグラフィック・アプリケーション・プログラムによって、ユーザは、テキスト、任意オブジェクト、及び背景を塗りつぶすことが容易になってきている。例えば、グラジェントの塗りつぶしの場合、ユーザは始めの色、終わりの色、及び直線的、角度的、放射状、または円錐状などの、グラジェントの種類を選択するだけでよい。グラジェントが定義されると、それが任意のテキスト、またはグラフィックに適用されて、テキストまたはオブジェクトが、事前に定義されたグラジェントのパターンで塗りつぶされる。現在、プレゼンテーション・グラフィックを扱う多くのアプリケーションでは、標準の背景として全画面グラジェントを使用することができる。
【0008】
マウスと組み合わせて使用されるメニュー方式の表示のような、グラフィカル・ユーザ・インタフェース(GUI)によって、エンド・ユーザは塗りつぶしを簡単に行えるようになっているが、その塗りつぶしを内部的に表現し、実現する標準的な方法はない。このことから、(特定のプリンタをホスト・コンピュータ内の様々なアプリケーション・プログラムとインタフェースさせるために使用される)プリンタ・ドライバとページ記述言語が、様々なアプリケーション・プログラムによって使用される様々な塗りつぶしや陰影付け技法を支援することが重要な機能になっている。
【0009】
グラフィック表示機能を含むいくつかの代表的なソフトウェア・アプリケーションは、3ステップのラスタ操作(ROP)処理を使用して、任意形状のオブジェクトを固定的な塗りつぶし、またはパターン化された塗りつぶしで塗りつぶす。ROPとは、イメージ・データに対して行われる論理的な操作である。図1では、任意形状のグラジェントの塗りつぶしが、例として使用されている。
【0010】
図1の(A)ないし(C)に、グラジェントの塗りつぶしを有する楕円を作成する、従来のROP処理を示す。この処理は、任意形状の境界線の外側の表示のどの部分も変更することなく、グラジェントの塗りつぶしを作成する。図1の(A)ないし(C)では、初期の背景は、表示リストまたはフレーム・バッファに記憶されているカラーXの背景10である。
【0011】
ユーザは例えば、従来のグラフィック・プログラムとマウスを使用して、形状の輪郭を描くことによって任意形状を作成する。この任意形状は、アプリケーション・プログラムによって自動的に作成される任意のオブジェクトであってもよい。ここでは、この任意形状は楕円であるものと仮定する。
【0012】
ユーザは次に、任意形状に対して所望の塗りつぶしを選択する。これは、カラーYのグラジェント・パターン12であるものと仮定する。
【0013】
次に、3ステップのROP処理が行われ、選択した塗りつぶしパターンで、その任意形状が塗りつぶされる。
【0014】
この3ステップ処理の最初のステップ(図1の(A))では、背景10の目的領域内のピクセルと、グラジェント塗りつぶしパターン12との排他的論理和(XOR)をとる。このステップは、ページ記述言語においては、ROP 90で指定される。これによって、目的領域にカラーZの中間グラジェント・パターン14が作成される。
【0015】
ステップ2(図1の(B))では、前もって作成された任意形状が、モノクローム・マスク16として(表示リスト、またはフレーム・バッファ内の)目的領域にコピーされ、パターン18で示されているように、目的領域内の対応するピクセルを置換する。このコピー・ステップは、ROP 240で指定される。
【0016】
ステップ3(図1の(C))では、再びROP 90命令を使用して、目的領域パターン18内の全てのピクセルと、グラジェント・パターン12の排他的論理和がとられる。ステップ3の結果、マスク16の外側の部分が、元の表示背景10に変換されると同時に、マスク16内のピクセルが、グラジェント・パターン12に変換される。マスクされた、結果のグラジェント・パターン12は次に、プリントまたはその他の方法で表示される。
【0017】
【発明が解決しようとする課題】
上記3ステップの処理は、グラジェント・パターン12を2回送信する必要があり、このグラジェント・パターンを2回記憶するのに十分なメモリをプリンタ内に必要とする。塗りつぶしパターンが複雑なラスタ・イメージ(例えば写真)であれば、そのイメージを記憶するのに更に多くのメモリが必要になる。
【0018】
図1の(A)ないし(C)に関連して説明した3ステップのROP処理よりもメモリと複雑さが少なくて済み、しかも実施に関して実際的でコストのかからないプリンタ、またはコンピュータによる塗りつぶし処理を実施することが望ましい。
【0019】
【課題を解決するための手段】
本発明の一実施例では、任意形状を1つのパターンで塗りつぶす従来の3ステップのROP処理を、必要な計算とメモリが少なくて済むように修正する。好適実施例では、ホスト・コンピュータに導入されているプリンタ・ドライバ・ルーチンによって、従来のROP命令を修正された命令セットに変換し、次にそれが送信され、プリンタによって処理される。プリンタ内のマスキング・バッファが、この処理を支援する。この改良された方法では、塗りつぶしパターンをプリンタに、2回ではなく1回送信するだけで済み、その結果、最大50%のメモリ節約になり、プリント時間が大幅に短縮される。
【0020】
3ステップのROPプロセスとは対照的に、塗りつぶしパターンと目的領域の排他的論理和をとる最初のステップ(ROP 90)は削除される。塗りつぶされる任意形状がプリンタに送信され、それらの形状(マスク)が一時マスキング・バッファに記憶される。塗りつぶしパターンは次に、プリンタに送信され、マスクの領域と一致する塗りつぶしパターンだけがプリントのために転送されるように、そのマスクと論理積(AND)がとられる。
【0021】
この方法の特定の一実施例は、PCL-5C形式のアーキテクチャを使用し、いかなるアプリケーションも介在することなく実施される。好適実施例では、プリンタ・ドライバが従来のROP処理を、既にこうしたROP処理を使用している既存のアプリケーションによって動作するように変更する。しかし、本発明は、プリンタ・ドライバによる変更を必要としないように、アプリケーション・プログラムによって直接実施されることもできる。結果イメージをプリント以外の方法で表示することも考えられる。
【0022】
【発明の実施の形態】
本発明が、塗りつぶしパターンを有する1つ、または複数の任意形状を表示するように、プリンタに対して命令するホスト・コンピュータに関して説明される。例示のために、ホスト・コンピュータで実行されるアプリケーション・プログラム(例えばグラフィック・プログラム)は、従来の3ステップROP処理を使用して任意形状を塗りつぶし、プリンタに対する命令は、高水準ページ記述言語で送信されるものと仮定する。このようなシステムの構成については、図4に関して更に詳細に説明する。
【0023】
好適実施例では、ソフトウェア・パッケージがプリンタに付属して提供され、ホスト・コンピュータにロードされプリンタ・ドライバとして機能する。プリンタ・ドライバは通常、特定のプリンタを、使用が予想される様々なデータ形式とインタフェースさせるために使用される。次にプリンタ・ドライバは、プリント命令が送信される前に、後述する様々な変換ステップを実行する。次に、送信された命令に関して、プリンタ内の特定のハードウェアとソフトウェアが、後述する様々な処理を実行する。他の実施例では、ホスト・コンピュータで実行されるアプリケーション・プログラムが、プリンタ・ドライバによる変換が不要となるように、直接プリンタ・ドライバの機能を実施する。
【0024】
好適実施例では、プリンタ命令はPCL-5C形式でプリンタに送信される。プリンタによって使用されるPCL-5Cフォーマッタ・アーキテクチャは、入力されるPCL-5Cデータ・ストリームから言語構文解析プログラムによって生成されるオブジェクトの表示リストの構成に基づいている。この構文解析プログラムは、データ・ストリーム内のコマンドを認識し、要求された機能を実行する。この構文解析プログラムの出力は、表示リストとして記憶される。表示リストは、ページ記述が完了し、ページがクローズされるまで成長し続ける。表示リスト内のオブジェクトとそれらの属性は、これらのオブジェクトがページ上に現れる上から下に向けての順に作成される必要はない。表示リスト内のオブジェクトは次に、3プレーン(CMY)スワスにラスタ化され、シアン、マゼンタ、及びイエローのインクジェット・プリント・ヘッドなどの、実際にプリントを行うためのプリント・エンジンに送信される。表示リストは、基本オブジェクト定義のほかに、レンダリング処理において表示リストのオブジェクトの性質を特徴付ける、前景色、パターン、ROPなどの特定の属性も受け取る。これらの状態変更属性は、状態変更の影響を受けるソース・オブジェクトが現れるまで、プリンタに記憶される。状態変更は、状態変更が影響を及ぼすオブジェクトの前で、表示リスト内に待ち行列化される。このような表示リスト形式は公知である。
【0025】
好適方法で使用される命令または状態は、プリンタによって、例えば前景色またはROPなどと同じ方法で扱われ、状態変更の後に表示リストに配置された全てのオブジェクトが、状態変更命令の影響を受ける。従って、本発明の実施態様は、プリンタ電子回路の全体的な動作をほとんど変更する必要がない。
【0026】
図2に示す好適処理では、任意のパターンまたはカラーの元の表示背景22(図3の(A))が仮定されている。ユーザは次に、従来のアプリケーション・プログラムとグラフィカル・ユーザ・インタフェースを使用して、塗りつぶす任意形状を作成する。任意形状を作成するこのステップは、代わりにアプリケーション・プログラムによって自動的に行うこともできる。塗りつぶす任意形状には、テキストやラスタ・イメージを含めることができる。ユーザまたはアプリケーション・プログラムは次に、任意形状の塗りつぶしパターンを選択し、コンピュータに対して、任意形状を選択した塗りつぶしパターンで塗りつぶすよう命令する。この塗りつぶしパターンは、固定的な色でも、グラジェントまたはラスタ・イメージなどの均一でないパターンでもよい。これらの上記ステップは、従来のものであり、公知である。
【0027】
この時点で、アプリケーション・プログラムは、プリンタに対して任意形状を塗りつぶしパターンで塗りつぶすように命令しようと試みて、図1の(A)に関して述べた様々なROPコマンド(ROP 90、ROP 240、ROP 90)の第1のROPコマンドを生成する。しかし、本発明の一実施例に従うと、ホスト・コンピュータ内に事前にプログラムされているプリンタ・ドライバが、アプリケーション・プログラムから第1の命令(ROP 90)を検出する。この検出に応答して、プリンタ・ドライバは次に、排他的論理和ROP 90コマンドと共に(またはその後に)送信された全てのオブジェクト(例えば塗りつぶしパターン)を廃棄する。従って、この塗りつぶしパターンはプリンタに送信されず、排他的論理和ROP 90コマンドに関連する従来の技術の図1の(A)に示す最初のステップはプリンタによって実行されない。従って、プリンタのメモリは、この情報を記憶する必要がない。他の実施例では、排他的論理和ROP 90コマンドと塗りつぶしパターンはプリンタに送信されるが、プリンタによって無視される。
【0028】
次に、アプリケーション・プログラムは図1の(B)の2番目のステップのための命令を生成する。これはマスク・コピー・コマンドROP 240である。プリンタ・ドライバは、このコマンドをインターセプトし、エスケープ・シーケンスにマスク定義の状態を入力する(ESC*11P)。次に、このマスク定義命令ESC*11Pと、ユーザによって生成された任意形状マスク26(図3)がプリンタに送信される。このコマンドESC*11Pに応答して、プリンタは図3の(A)に示すようにマスク26をプリンタ解像度でモノクローム(単一プレーン)マスキング・バッファ30(図4)内に配置する。
【0029】
マスク定義コマンドの後に送信されたオブジェクトがあれば全てマスキング・バッファ30に記憶されるため、複数のオブジェクト(及びラスタ・イメージさえも)が記憶されることがある。マスク26の形状は、周知のPCL-5Cの基本形(例えばベクトル、多角形、テキスト、または1ビット・ラスタなど)のいずれかを使用して定義されうる。
【0030】
アプリケーション・プログラムが、排他的論理和ROP 90ステップの繰り返しである図1の(C)の従来の3ステップROP処理で、3番目の命令を生成すると、プリンタ・ドライバはマスク・クリッピング命令ESC*12Pを生成する。このステップでは、マスキング・バッファ30内のマスク26と、ESC*12P命令とともにプリンタに送信された塗りつぶしパターン32との論理積がとられる(図3の(B))。このステップで、送信された塗りつぶしパターン32がマスク26によってクリップされ、それによってマスク26の形状をとる。これは包含クリッピングと呼ばれる。その結果の任意形状の塗りつぶしパターン34(図3の(B))は、元の背景22とともに1回のスワスで処理される(表示リストが使用される場合)かまたは、後でプリントするためにフレーム・バッファに記憶される。表示リストが使用される場合、イメージ・プロセッサが表示リスト内のデータを、プリントされるスワスに変換し、このデータのスワスをプリント・エンジンに送信する。プリント・エンジンは次に、このスワスをプリンタで使用される様々なペンの付勢信号に変換する。
【0031】
この塗りつぶしパターンを使用してマスク26の外側にあるオブジェクトを塗りつぶしたい場合は、マスキング・バッファ30の内容がまず反転されてから、塗りつぶしパターン32との論理積がとられ、マスク26の境界線内の塗りつぶしパターン32の全ての部分がクリップされる。これは排他クリッピングと呼ばれる。従って、塗りつぶされる任意形状は、マスクの外側の表示部分である。
【0032】
次のステップでは、命令ESC*10Pが送信され、マスキング・バッファ30が割り当て解除され、マスク定義が非活動化される。マスキング・バッファ30はもはや、入力グラフィック・データに影響を及ぼさなくなる。マスキング・バッファ30は、プリンタ内のより大きなメモリの一部であってもよい。モノクローム・マスキング・バッファ30は、単一スワスの大きさだけあれば済む。このスワスのサイズは少なくとも、プリンタの1回の走査のプリント幅と同じ幅である。スワスのサイズは、多重プリント幅とすることができ、処理時間とプリント速度を含む多くの周知のトレードオフに基づいて選択される。従って、オブジェクトのサイズに応じて、表示される1つのオブジェクト(または複数のオブジェクト)が、処理時に多くのスワスに分割されうる。
【0033】
従って、図3の(B)に示す、その結果のマスクされた塗りつぶしパターン34は、図1の(C)の任意形状の塗りつぶしパターン12と同じであるが、従来の3ステップROP処理とは異なり、2ステップしか使用されない。また、塗りつぶしパターンは2回ではなく1回しか送信されないため、最大50%のメモリ節約を実現することができ、プリンタが実際にグラフィックをプリントできるようになるまでに要する処理時間が大幅に短縮される。
【0034】
図1の(A)ないし(C)のROP処理の代わりに、任意のマスキング処理を使用するアプリケーション・プログラムによって、図2に示すROP変換処理ではなく、任意のマスキング処理が直接実行されうる。その場合、図2に関して説明したエスケープ・ルーチンは、他のアプリケーション・プログラムとともに使用するためのプリンタ・ドライバでは依然使用可能であっても、使用されない。
【0035】
図の実施例はイメージを表示するためにプリンタを使用しているが、表示装置は表示スクリーンまたはその他の装置とすることができる。
【0036】
図4は、好適実施例のシステムの様々な構成要素を例示した概略ブロック図である。従来のパーソナル・コンピュータ40は、従来のオペレーティング・システム・ファイル42(MS-DOSなど)、アプリケーション・ファイル44、グラフィカル・ユーザ・インタフェース(GUI)ファイル(マイクロソフトによるものなど)、及びグラフィカル・デバイス・インタフェース(GDI)ファイル46(マイクロソフトによるウィンドウズなど)を使用してプログラムされている。マウスやキーボードなどの従来の入力装置48と、従来のCRT 50またはその他の表示スクリーンが、従来の方式でコンピュータ40に接続されている。ブロック52に表示プロセッサとフレーム・バッファが示されている。
【0037】
コンピュータ40には、プリンタ・ドライバ・ファイル56もロードされており、従来のROP塗りつぶし命令から、図2及び図3に関して説明した任意のマスキング命令への変換と、プリンタ・ドライバの従来のインタフェース機能を実行する。
【0038】
ケーブル58が、コンピュータ40からプリンタ60にPCL-5Cのデータを送信する。PCL-5Cのデータは次に、PCLフォーマッタ62によって適切にフォーマットされ、構文解析される。そこで処理されたデータは、表示リスト64内に記憶される。
【0039】
前述のマスキング・バッファ30は、表示リスト64及びイメージ・プロセッサ66と関連して使用され、ラスタ化されたブラック・スワスと3プレーンCMYスワスを生成する。これらのスワスはプリント・エンジン68にプリントのために送られる。本明細書で特に記述されていない構成要素、及び機能は、全て公知であり、従来のものとすることができ、このことは本発明固有の利点である。
【0040】
本発明に従ったプリンタは、表示リスト64の代わりに従来のフレーム・バッファ、及びそれに関連する処理ハードウェアを利用することもできる。こうしたプリンタの詳細な構成は、当業者には周知であろう。
【0041】
プリンタ電子回路が、コンピュータ40の外側に図示されているが、このプリンタ電子回路(またはその他の表示電子回路)は、コンピュータ40の内部に収容されうる。
【0042】
図5の(A)ないし(C)、及び図6の(A)ないし(B)に、本発明のクリップ/マスク技法と従来のROP処理の処理速度及びメモリ節約の性能比較が示されている。これらのグラフから分かるように、表示リスト・オブジェクト及びファイル・サイズが、クリップ/マスク技法を使用することによって大幅に削減され、クリップ/マスク技法を使用した、データ処理のシミュレーション・タイミングは、ROP処理タイミングに対して大幅に短縮されている。
【0043】
本発明の特定の実施例を示し、説明してきたが、当業者には、本発明から逸脱することなく、その広範な態様において変更、及び修正を加えることができることが明かであろう。従って、特許請求の範囲は、本発明の真の意図、及び範囲内に包含される、こうした全ての変更、及び修正を含むものである。
【0044】
以下に本発明の実施態様を列挙する。
【0045】
1. 任意形状を塗りつぶす方法であって、
塗りつぶしパターンで塗りつぶす任意形状を指定するステップ、
前記任意形状を表すデータを受信機構に送信するステップ、
前記任意形状の少なくとも一部をマスクとしてマスク・バッファに記憶するステップ、
前記塗りつぶしパターンを前記受信機構に送信するステップ、
前記マスク・バッファ内の前記マスクと前記塗りつぶしパターンの論理積をとって、クリップされた塗りつぶしパターンを作成するステップ、及び
前記クリップされた塗りつぶしパターンを表示するステップを含むことを特徴とする、前記方法。
【0046】
2. 論理積をとる前記ステップの前に、前記マスク・バッファの内容を反転して前記塗りつぶしパターンの排他クリッピングを行うステップを更に含むことを特徴とする、項番1に記載の方法。
【0047】
3. 前記記憶ステップと、前記論理積をとるステップが、ホスト・コンピュータからページ記述言語で命令を受け取るプリンタによって実行されることを特徴とする、項番1または2のどちらかに記載の方法。
【0048】
4. ホスト・コンピュータに記憶されているプリンタ・ドライバ・プログラムが、前記ホスト・コンピュータ内で生成されたページ記述言語の命令を変換して、プリンタに送信するための変換後の前記ページ記述言語の命令にし、前記変換後の命令が、前記記憶ステップと論理積をとる前記ステップを前記プリンタに実行させることを特徴とする、項番1、2、または3のいずれかに記載の方法。
【0049】
5. 任意形状を指定する前記ステップとデータを送信する前記ステップの間で実行される、
送信された塗りつぶしパターンと表示背景との排他的論理和(XOR)をとるための、前記ホスト・コンピュータによる排他的論理和命令の生成を検出し、前記検出ステップに応答して、前記排他的論理和命令が実行されないようにし、前記塗りつぶしパターンが前記プリンタ内のメモリに記憶されないようにするステップを更に含むことを特徴とする、項番4に記載の方法。
【0050】
6. 排他的論理和命令の生成を検出する前記ステップの後で実行される、
前記任意形状を第1のパターン上にコピーして、第2のパターンを作成するための、前記ホスト・コンピュータによるコピー命令の生成を検出し、前記コピー命令の生成を検出する前記ステップに応答して、前記任意形状を表すデータを受信機構に送信する前記ステップを実行するステップを更に含むことを特徴とする、項番5に記載の方法。
【0051】
7. 前記記憶ステップの後で、
前記塗りつぶしパターンと前記第2のパターンの排他的論理和をとるための、前記ホスト・コンピュータによる排他的論理和命令の生成を検出し、前記排他的論理和命令の生成を検出する前記ステップに応答して、前記塗りつぶしパターンを前記受信機構に送信する前記ステップと、前記マスク・バッファ内の前記マスクと前記塗りつぶしパターンの論理積をとる前記ステップを実行するステップを更に含むことを特徴とする、項番6に記載の方法。
【0052】
8. 送信されたデータとホスト・コンピュータからのプリント命令を受け取る受信機構、
送信された任意形状の少なくとも一部をマスクとして記憶するマスク・バッファ、
前記任意形状に関する塗りつぶしパターンを記憶するメモリ、
前記マスク・バッファ内の前記マスクと前記塗りつぶしパターンとの論理積をとって、クリップされた塗りつぶしパターンを作成する手段、及び
前記クリップされた塗りつぶしパターンを表示するプリンタを備えた、プリンタ・システム。
【0053】
9. 前記マスクと前記塗りつぶしパターンの論理積をとる前に、前記マスク・バッファの内容を反転して、前記塗りつぶしパターンの排他クリッピングを行うインバータを更に備えていることを特徴とした、項番8に記載のシステム。
【0054】
10. ホスト・コンピュータによって生成された第1の組の塗りつぶしステップを、任意形状を塗りつぶしパターンで塗りつぶす第2の組の塗りつぶしステップに変換する、プリンタ・ドライバを更に備えることを特徴とする、項番8または9のどちらかに記載のシステム。
【0055】
【発明の効果】
本発明によって、任意形状をあるパターンで塗りつぶす、従来の3ステップROP処理を修正し、プリンタの計算量とメモリ量を低減させる技法が提供される。
【図面の簡単な説明】
【図1】1つの任意形状を1つの塗りつぶしパターンで塗りつぶす、従来の3ステップのROP処理における適当なステップを例示する図である。
【図2】1つの任意形状を塗りつぶすための、好適実施例の方法で用いられる基本ステップのフロー・チャートを示す図である。
【図3】図2の好適処理で実行される、選択されたステップを例示する図である。
【図4】本発明の一実施例を実行するために使用されるコンピュータ、及びプリンタ・システムのブロック図である。
【図5】好適方法と従来の方法の処理速度と必要メモリを比較するグラフを示す図である。
【図6】好適方法と従来の方法の処理速度と必要メモリを比較するグラフを示す図である。
【符号の説明】
30 マスキング・バッファ
40 コンピュータ
42 オペレーティング・システム・ファイル
44 アプリケーション、及びGUIファイル
46 GDIファイル
48 入力装置
50 CRT
52 表示プロセッサ、及びバッファ
56 プリンタ・ドライバ・ファイル
58 ケーブル
60 プリンタ
62 PCL-5Cフォーマッタ
64 表示リスト
66 イメージ・プロセッサ
68 プリント・エンジン

Claims (10)

  1. 任意形状を塗りつぶしパターンで塗りつぶす方法であって、
    塗りつぶしパターンで塗りつぶすための任意形状をホストコンピュータにおいて指定するためのステップと、
    前記塗りつぶしパターンと表示背景との排他的論理和(XOR)をとるための排他的論理和(XOR)命令の生成を前記ホストコンピュータにおいて検出するステップと、
    前記XOR命令の生成の検出に応じて前記XOR命令が実行されないようにするとともに前記塗りつぶしパターンがプリンタに格納されないようにするステップと、
    前記任意形状を表すデータを前記ホストコンピュータから前記プリンタへ送信するステップと、
    前記任意形状の少なくとも一部をマスクとして前記プリンタ内のマスクバッファに記憶するステップと、
    前記塗りつぶしパターンを前記ホストコンピュータから前記プリンタへ送信するステップと、
    前記マスクバッファ内の前記マスクと前記塗りつぶしパターンとの論理積をとってクリップされた塗りつぶしパターンを作成するステップと、
    前記クリップされた塗りつぶしパターンを前記プリンタにおいて印刷するステップと、
    からなる方法。
  2. 前記塗りつぶしパターンが均一でないパターンである、請求項1の方法。
  3. 前記任意形状がラスタイメージである、請求項1の方法。
  4. 前記記憶するステップ及び前記論理積をとるステップは前記ホストコンピュータからページ記述言語で命令を受信することに応じて実施される、請求項1の方法。
  5. 前記ホストコンピュータに記憶されたプリンタドライバプログラムが、該ホストコンピュータ内で生成されたページ記述言語の命令を変換し、変換されたページ記述言語の命令をプリンタへ送信し、前記変換された命令によって前記記憶するステップ及び前記論理積をとるステップを前記プリンタに実施させる、請求項1の方法。
  6. 前記排他的論理和命令の生成を検出するステップの後に、
    前記任意形状を第1のパターン上にコピーするための前記ホストコンピュータによるコピー命令の生成を検出するステップと、
    前記コピー命令の生成の検出に応じて前記任意形状を表すデータを前記プリンタへ送信するステップと、
    をさらに含む、請求項1の方法。
  7. 前記記憶するステップの後に、前記塗りつぶしパターンと前記第1のパターンとの排他的論理和をとるための前記ホストコンピュータによるXOR命令の生成を検出するステップをさらに含み、
    前記XOR命令の生成の検出に応じて、前記塗りつぶしパターンを前記プリンタへ送信する前記ステップが実施される、請求項6の方法。
  8. 送信された塗りつぶしパターンと表示背景との排他的論理和をとるためのホストコンピュータによる排他的論理和(XOR)命令の生成を検出し、該検出に応じて前記XOR命令が実行されないようにするとともに前記塗りつぶしパターンがプリンタに格納されないようにするための手段と、
    前記ホストコンピュータから送信されたデータ及び印刷命令を受信するための受信機と、
    送信された任意形状の少なくとも一部をマスクとして記憶するためのマスクバッファと、
    前記任意形状について塗りつぶしパターンを記憶するためのメモリと、
    前記マスクバッファ内の前記マスクと前記塗りつぶしパターンとの論理積をとってクリップされた塗りつぶしパターンを作成するための手段と、
    前記クリップされた塗りつぶしパターンを印刷するためのプリンタと、
    からなるプリンタシステム。
  9. 前記マスクと前記塗りつぶしパターンとの論理積をとる前に前記マスクバッファの内容を反転させ、前記塗りつぶしパターンの排他クリッピングを実施するためのインバータをさらに含む、請求項8のプリンタシステム。
  10. ホストコンピュータによって生成された塗りつぶしステップの第1の集合を、任意形状を塗りつぶしパターンで塗りつぶすための塗りつぶしステップの第2の集合に変換するための、プリンタドライバをさらに含む、請求項8のプリンタシステム。
JP04895796A 1995-03-06 1996-03-06 表示用の形状を塗りつぶすための任意マスキング技法 Expired - Fee Related JP3813229B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/399,403 US5642474A (en) 1995-03-06 1995-03-06 Arbitrary masking technique for filling in shapes for display
US399403 1995-03-06

Publications (2)

Publication Number Publication Date
JPH08263674A JPH08263674A (ja) 1996-10-11
JP3813229B2 true JP3813229B2 (ja) 2006-08-23

Family

ID=23579374

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04895796A Expired - Fee Related JP3813229B2 (ja) 1995-03-06 1996-03-06 表示用の形状を塗りつぶすための任意マスキング技法

Country Status (4)

Country Link
US (1) US5642474A (ja)
EP (1) EP0731423B1 (ja)
JP (1) JP3813229B2 (ja)
DE (1) DE69525031T2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6476924B1 (en) * 1994-08-31 2002-11-05 Canon Kk Image processing apparatus and method for equalizing images outputted by different devices
US6024630A (en) * 1995-06-09 2000-02-15 Applied Materials, Inc. Fluid-pressure regulated wafer polishing head
JP3229526B2 (ja) * 1995-10-26 2001-11-19 キヤノン株式会社 記録装置およびその記録データ処理方法
US5854886A (en) * 1996-03-29 1998-12-29 Hewlett-Packard Company Method and system for printing rasterized documents
US6320667B1 (en) * 1996-12-27 2001-11-20 Canon Kabushiki Kaisha Information processing apparatus and method for transmitting printing information, and recording medium readable by a computer storing a program for transmitting printing information
US6019454A (en) * 1997-03-04 2000-02-01 Hewlett-Packard Company Multipass inkjet printmodes with randomized dot placement, to minimize patterning and liquid loading
US6039434A (en) * 1997-03-04 2000-03-21 Hewlett-Packard Company Thresholded undercolor removal and black replacement in a thermal-inkjet printer or plotter
US6176566B1 (en) * 1997-03-10 2001-01-23 Hewlett-Packard Company Cell-based text enhancement for a color printer by complete excess-color stripping, based on previous regions
US6082849A (en) * 1997-03-10 2000-07-04 Hewlett-Packard Company Random printmasks in a multilevel inkjet printer
JP3008943B1 (ja) 1998-08-18 2000-02-14 富士ゼロックス株式会社 画像処理装置および画像処理方法
JP3362674B2 (ja) 1998-08-26 2003-01-07 富士ゼロックス株式会社 画像処理装置および画像処理方法
US7133143B2 (en) * 2001-12-21 2006-11-07 Xerox Corporation Printing method employing printer-independent print quality characteristics
JP3754975B2 (ja) * 2003-11-18 2006-03-15 キヤノン株式会社 情報処理装置及び情報処理方法
US20050129308A1 (en) * 2003-12-10 2005-06-16 International Business Machines Corporation Method, apparatus and program storage device for identifying a color of a displayed item using a non-color indicator
US20050264582A1 (en) * 2004-05-27 2005-12-01 Agfa Monotype Corporation Method and system for application page description in print device color space
JP4522290B2 (ja) 2005-03-01 2010-08-11 キヤノン株式会社 印刷制御装置及びその制御方法とプログラム
US8208169B2 (en) * 2006-05-24 2012-06-26 Lexmark International, Inc. Method and system for rendering a transparent object in an image
US8098261B2 (en) * 2006-09-05 2012-01-17 Apple Inc. Pillarboxing correction
JP5791256B2 (ja) * 2010-10-21 2015-10-07 キヤノン株式会社 表示制御装置、表示制御方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4992956A (en) * 1987-10-08 1991-02-12 Advanced Micro Devices, Inc. Apparatus for assembling data for supply to a scanning output device
US5003496A (en) * 1988-08-26 1991-03-26 Eastman Kodak Company Page memory control in a raster image processor
US5212770A (en) * 1989-12-06 1993-05-18 Eastman Kodak Company Data-handling and display system capable of supporting multiple application programs and output devices
US5237655A (en) * 1990-07-05 1993-08-17 Eastman Kodak Company Raster image processor for all points addressable printer
US5255360A (en) * 1990-09-14 1993-10-19 Hughes Aircraft Company Dual programmable block texturing and complex clipping in a graphics rendering processor
US5249061A (en) * 1990-12-21 1993-09-28 Canon Kabushiki Kaisha Color image printer with adaptive color process

Also Published As

Publication number Publication date
DE69525031D1 (de) 2002-02-21
EP0731423A1 (en) 1996-09-11
JPH08263674A (ja) 1996-10-11
DE69525031T2 (de) 2002-07-04
US5642474A (en) 1997-06-24
EP0731423B1 (en) 2002-01-16

Similar Documents

Publication Publication Date Title
JP3813229B2 (ja) 表示用の形状を塗りつぶすための任意マスキング技法
EP0764918B1 (en) Display list architecture having two dimensional array of zones
EP0654759B1 (en) Printing apparatus
US8208169B2 (en) Method and system for rendering a transparent object in an image
US6323958B1 (en) Printing apparatus
US5852679A (en) Image processing apparatus and method
US7379197B2 (en) Apparatus for controlling printer to improve printing speed and method thereof
JP3175498B2 (ja) インクジェット式カラー印刷のための黒色領域識別方式
US6456298B1 (en) Image processing apparatus and method
JP3845045B2 (ja) 画像処理装置、画像処理方法、画像形成装置、印刷装置及びホストpc
JPH02120988A (ja) データ処理パイプライン装置
JP5025338B2 (ja) 画像処理装置、プリンタ、画像処理方法及び画像処理プログラム
JP2875725B2 (ja) 印刷制御装置および印刷制御方法
JP2001293936A (ja) 描画情報処理装置および描画情報処理方法
JP2009129342A (ja) 画像処理装置及び方法
JPH08139953A (ja) 印刷装置及び印刷方法
JP2004021886A (ja) 画像処理装置及び画像処理方法
JP3158101B2 (ja) カラー画像処理装置およびカラー画像処理方法
JP2004358722A (ja) 画像処理装置、描画データ処理方法及び該方法を実行するためのプログラム
JP2002024840A (ja) 描画処理装置
JP3968989B2 (ja) 画像処理装置、画像処理方法および画像処理プログラムを記録した記憶媒体
JP2005007824A (ja) 画像出力装置及び画像出力システム
JP2003162405A (ja) 印刷制御装置、印刷システム、プレビュー表示方法、記憶媒体、プログラム、描画処理装置、描画処理方法、描画処理プログラム、及び描画処理プログラムを記憶する記憶媒体
JP2005119219A (ja) 印刷処理方法及び装置
JP2001296857A (ja) データ保存方法およびデータ変換装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051108

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060207

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060427

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060530

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060531

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees