JP5941848B2 - Image processing apparatus and image processing method - Google Patents
Image processing apparatus and image processing method Download PDFInfo
- Publication number
- JP5941848B2 JP5941848B2 JP2013007190A JP2013007190A JP5941848B2 JP 5941848 B2 JP5941848 B2 JP 5941848B2 JP 2013007190 A JP2013007190 A JP 2013007190A JP 2013007190 A JP2013007190 A JP 2013007190A JP 5941848 B2 JP5941848 B2 JP 5941848B2
- Authority
- JP
- Japan
- Prior art keywords
- color
- image
- pixel data
- type
- information
- 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.)
- Active
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
- Facsimile Image Signal Circuits (AREA)
- Color Image Communication Systems (AREA)
Description
本発明は、画像処理装置及び画像処理方法に関し、例えば、カラープリンタでの印刷処理に適用して好適なものである。 The present invention relates to an image processing apparatus and an image processing method, and is suitably applied to, for example, a printing process in a color printer.
従来、カラープリンタは、RGB(Red、Green、Blue)形式で表現された印刷用データを、アプリケーションプログラムやホストコンピュータ等の上位装置から受け取り、この印刷用データに基づいてCMY(Cyan、Magenta、Yellow)3色への色変換を行う。 Conventionally, a color printer receives printing data expressed in RGB (Red, Green, Blue) format from a host device such as an application program or a host computer, and based on the printing data, CMY (Cyan, Magenta, Yellow) ) Perform color conversion to three colors.
次に、カラープリンタは、CMY3色へ色変換したデータに基づいて、オブジェクト(文字、図形又はイメージ)に対する所定のラスタオペレーション(以下、これをROPと呼ぶ)処理を行うことで、中間イメージを生成する。尚、ROPは、オブジェクトの重なりを論理演算を用いて表現するものである。 Next, the color printer generates an intermediate image by performing a predetermined raster operation (hereinafter referred to as ROP) processing on an object (character, figure, or image) based on the data converted to CMY three colors. To do. ROP expresses the overlap of objects using logical operations.
さらに、カラープリンタは、このROP処理後の中間イメージをもとに黒(K)データを生成することで、CMYKカラーの印刷イメージを生成する。 Further, the color printer generates black (K) data based on the intermediate image after the ROP process, thereby generating a CMYK color print image.
ここで、黒データを生成する処理(これを黒生成処理と呼ぶ)は、一般的に、文字や図形に対して行うものと、イメージに対して行うものとで異なっている。つまり、カラープリンタでは、オブジェクトの種別に適した黒生成処理を行うようになっていて、これにより美しい印刷イメージを生成できるようになっている。 Here, processing for generating black data (this is called black generation processing) is generally different between processing performed on characters and graphics and processing performed on images. That is, the color printer performs black generation processing suitable for the type of object, thereby generating a beautiful print image.
ところで、ROP処理は、CMY3色のデータで行うことが前提となっており、このROP処理を、例えば、黒生成処理を行った後のCMYK4色のデータに対して行うと、演算結果に不具合が発生することがある。ゆえに、黒生成処理は、ROP処理後のデータに対して行うことが望ましい。
By the way, it is assumed that the ROP process is performed with CMY3 color data. If this ROP process is performed on, for example,
しかしながら、ROP処理後のデータに対して黒生成処理を行う場合、ROP処理によってオブジェクトが変更されるため、この点を考慮する必要がある。 However, when the black generation process is performed on the data after the ROP process, it is necessary to consider this point because the object is changed by the ROP process.
そこで、従来、ROP処理を行うごとに更新するオブジェクト情報を保持するようにして、このオブジェクト情報をもとにROP処理後のデータに対してオブジェクト毎の処理(例えば黒生成処理)を行うようにした技術が提案されている(例えば特許文献1参照)。 Therefore, conventionally, object information to be updated every time ROP processing is performed is held, and processing for each object (for example, black generation processing) is performed on the data after ROP processing based on the object information. Have been proposed (see, for example, Patent Document 1).
この従来技術を利用すれば、CMY3色のデータでROP処理を行った後に、保持しているオブジェクト情報に基づいてオブジェクトの種別に適した黒生成処理を行うことができる。 By using this conventional technique, it is possible to perform black generation processing suitable for the type of object based on the object information held after performing ROP processing with CMY three-color data.
ところが、従来技術は、例えば論理演算の1つであるXOR演算を利用したROP処理を行ったときに、オブジェクト情報が示すオブジェクト種別と、実際に描画されたデータのオブジェクト種別とが異なってしまうことがあるという問題を有している。 However, according to the conventional technique, for example, when the ROP process using the XOR operation which is one of the logical operations is performed, the object type indicated by the object information and the object type of the actually drawn data are different. Have the problem that there is.
実際、XOR演算を利用したROP処理の場合、同一色でXOR演算を2回行うと、その部分の色が、1回目のXOR演算を行う前の元の色に戻る特性を有している。 Actually, in the case of the ROP process using the XOR operation, when the XOR operation is performed twice with the same color, the color of the portion returns to the original color before the first XOR operation.
例えば、図25に示すように、任意の色の図形を描画した部分に、同一色のイメージをXOR演算で2回描画すると、イメージをXOR演算で2回描画した部分は、元の図形の色に戻る。 For example, as shown in FIG. 25, when an image of the same color is drawn twice by an XOR operation on a portion where an arbitrary color figure is drawn, the portion of the image drawn twice by the XOR operation is the color of the original figure. Return to.
このとき、従来技術では、単純に、オブジェクトを描画するごとに描画するオブジェクトの種別でオブジェクト情報を上書きするため、実際、イメージをXOR演算で2回描画した部分のオブジェクト情報には、実際に描画されているオブジェクトの種別(図形)ではなく、最後に描画したオブジェクトの種別(イメージ)が記されてしまう。 At this time, in the prior art, each time an object is drawn, the object information is overwritten by the type of the object to be drawn. Therefore, the object information of the portion where the image is actually drawn twice by the XOR operation is actually drawn. The type (image) of the last drawn object is written instead of the type (graphic) of the drawn object.
そして、この誤ったオブジェクト情報をもとに黒生成処理を行うと、実際のオブジェクト(図形)とは異なるオブジェクト(イメージ)に合った黒生成処理を行ってしまうことになり、結果として、黒生成が正しく行われない。 If black generation processing is performed based on this incorrect object information, black generation processing that matches an object (image) different from the actual object (graphic) will be performed. As a result, black generation processing is performed. Is not done correctly.
このように、従来技術では、オブジェクト情報として、実際に描画されているオブジェクトとは異なるオブジェクトの種別を保持してしまうことがあり、結果として、正確なオブジェクト情報を得ることができず、オブジェクトごとの処理を正しく行うことができないことがあった。 As described above, in the prior art, as object information, a type of object different from the object actually drawn may be held, and as a result, accurate object information cannot be obtained, and each object is not obtained. In some cases, it was not possible to perform the process correctly.
本発明は以上の点を考慮したもので、ROP演算によって描画操作を行ううえで、従来技術より正確なオブジェクト情報を得ることのできる画像処理装置及び画像処理方法を提案しようとするものである。 The present invention has been made in consideration of the above points, and an object of the present invention is to propose an image processing apparatus and an image processing method capable of obtaining object information more accurate than the prior art when performing a drawing operation by ROP calculation.
かかる課題を解決するため本発明の画像処理装置においては、入力されたデータを解析して得られた中間コードに基づき、指定されたラスタオペレーション演算でオブジェクトの描画を行うことにより中間イメージを生成するイメージ生成部と、中間イメージの画素ごとの画素データを格納するデータ格納部とを有し、画素データには、ラスタオペレーション演算としてXOR演算が実施されたかどうかを示すXOR情報と、現在のオブジェクトの種別を示す現在オブジェクト種別と、現在のオブジェクトの前に描画されていたオブジェクトの種別を示す過去オブジェクト種別とが、オブジェクト情報として記され、イメージ生成部は、画素データのXOR情報にXOR演算が実施済みである旨が記されている状態で、1回目のXOR演算と同一色で2回目のXOR演算を行う場合に、画素データに記されている現在オブジェクト種別を、画素データに過去オブジェクト種別として記されている種別に書き換えることで、画素データに記されている現在オブジェクト種別を1回目のXOR演算が行われる前のオブジェクトの種別に戻すようにした。 In order to solve this problem, the image processing apparatus of the present invention generates an intermediate image by drawing an object by a specified raster operation calculation based on an intermediate code obtained by analyzing input data. An image generation unit, and a data storage unit for storing pixel data for each pixel of the intermediate image. The pixel data includes XOR information indicating whether an XOR operation is performed as a raster operation operation, and the current object The current object type indicating the type and the past object type indicating the type of the object drawn before the current object are described as object information, and the image generation unit performs an XOR operation on the XOR information of the pixel data In the state where it has been written, the first XOR operation and When performing the second XOR operation with the same color, the current object type indicated in the pixel data is rewritten to the type indicated as the past object type in the pixel data, thereby rewriting the current object type indicated in the pixel data. The object type is returned to the type of the object before the first XOR operation is performed.
こうすることで、同一色でXOR演算を2回行った場合に、画素データにオブジェクト情報として記される現在オブジェクト種別が、2回目のXOR演算で描画したオブジェクトの種別ではなく、1回目のXOR演算を行う前のオブジェクトの種別となり、従来技術より正確なオブジェクト情報を得ることができる。 By doing this, when the XOR operation is performed twice with the same color, the current object type described as the object information in the pixel data is not the type of the object drawn by the second XOR operation, but the first XOR operation. It becomes the type of the object before the calculation, and more accurate object information can be obtained than in the prior art.
本発明によれば、同一色でXOR演算を2回行う場合でも、従来技術より正確なオブジェクト情報を得ることができ、かくしてROP演算によって描画操作を行ううえで、従来技術より正確なオブジェクト情報を得ることのできる画像処理装置及び画像処理方法を実現できる。 According to the present invention, even when the XOR operation is performed twice with the same color, it is possible to obtain more accurate object information than in the prior art. An image processing apparatus and an image processing method that can be obtained can be realized.
以下、発明を実施するための形態について、図面を用いて詳細に説明する。 DESCRIPTION OF EMBODIMENTS Hereinafter, embodiments for carrying out the invention will be described in detail with reference to the drawings.
[1.第1の実施の形態]
[1−1.カラープリンタの構成]
まず第1の実施の形態について説明する。図1に、カラープリンタ1の機能構成を示す。
[1. First Embodiment]
[1-1. Color printer configuration]
First, a first embodiment will be described. FIG. 1 shows a functional configuration of the
カラープリンタ1は、データ受信部2と、PDL(Page Description Language)データ解析部3と、カラーマッチング処理部4と、データ格納部5と、印刷イメージ生成部6と、印刷部7とで構成される。
The
データ受信部2は、外部から送信される印刷用データであるPDLデータを受信するようになっている。
The
PDLデータ解析部3は、データ受信部2が受信したPDLデータを解析して、図2に示すような中間コードMcを生成するようになっている。この中間コードMcについて詳しくは後述する。
The PDL
カラーマッチング処理部4は、PDLデータ解析部3によりPDLデータを解析して得られるRGBカラー情報を、オブジェクト(図形、文字、イメージ)の種別に基づいて、カラープリンタ1のプリンタ特性に合わせたCMYカラー情報に色変換するようになっている。
The color
データ格納部5は、PDLデータ解析部3により生成された中間コードMcなどを格納するようになっている。印刷イメージ生成部6は、PDLデータ解析部3により生成された中間コードMcに基づき、印刷イメージを生成するようになっている。
The
印刷部7は、印刷イメージ生成部6により生成された印刷イメージに基づき、印刷用紙に印刷を行うようになっている。
The
また、上述の印刷イメージ生成部6は、中間コード判別部10と、図形描画部11と、文字描画部12と、イメージ描画部13と、描画処理部14と、黒生成処理部15とで構成される。
The print
中間コード判別部10は、データ解析部3により生成された中間コードMcを判別するようになっている。図形描画部11、文字描画部12、イメージ描画部13は、それぞれ、中間コードMcに基づいて、図形、文字、イメージの描画を行うようになっている。
The intermediate
描画処理部14は、画素単位の描画処理及びROP演算を行うことで印刷イメージを生成するようになっている。この描画処理部14が行うROP処理は、ROP3に基づく処理であり、このROP3では、ソース、パターン、ディスティネーションに対して、所定の論理演算(これをROP演算と呼ぶ)を行うことで、オブジェクト(図形、文字、イメージ)同士の重なりを実現するようになっている。
The
尚、ソースは、描画する画像、パターンは、描画する画像の塗り潰しパターン、ディスティネーションは、描画先の画像であり、詳しくは後述するが、オブジェクト(図形、文字、イメージ)は、ソース、パターン又はディスティネーションに指定されて、論理演算されるようになっている。 The source is an image to be drawn, the pattern is a fill pattern of the image to be drawn, and the destination is an image at the drawing destination. Although described in detail later, an object (figure, character, image) is a source, pattern, or It is designated as the destination and is logically operated.
黒生成処理部15は、描画処理部14により生成された印刷イメージに含まれるCMYカラー情報とオブジェクト情報をもとに黒生成を行うことで印刷イメージのカラー情報をCMYカラーからCMYKカラーに変換するようになっている。
The black
さらに、上述のデータ格納部5は、図示しないRAM(Random Access Memory)やHDD(Hard Disk Drive)でなり、中間コード格納部16と、印刷イメージ格納部17と、ROP情報格納部18と、カラー情報格納部19とで構成される。
Further, the
中間コード格納部16は、中間コードMcを格納するようになっている。印刷イメージ格納部17は、印刷イメージを格納するようになっている。
The intermediate
ROP情報格納部18は、PDLデータから得られたROP情報を一時保存するようになっている。カラー情報格納部19は、PDLデータから得られたカラー情報を一時保存するようになっている。これらROP情報及びカラー情報について詳しくは後述する。
The ROP
カラープリンタ1は、このような構成となっている。尚、カラープリンタ1の各部の詳しい動作については後述する。
The
[1−2.中間コードのデータ構造]
次に、PDLデータ解析部3によって生成される中間コードMcについて説明する。図2に、この中間コードMcのデータ構造の一例を示す。
[1-2. Intermediate code data structure]
Next, the intermediate code Mc generated by the PDL
この中間コードMcは、複数のコードCdで構成される。実際、図2に示す例では、ROP指定コードCd10、Cd20、Cd30、色指定コードCd11、Cd21、パターン指定コードCd12、Cd13、図形指定コードCd14、文字指定コードCd22、Cd23、イメージ指定コードCd31、Cd32、終端コードCd99が、中間コードMcに含まれている。 The intermediate code Mc is composed of a plurality of codes Cd. In fact, in the example shown in FIG. 2, ROP designation codes Cd10, Cd20, Cd30, color designation codes Cd11, Cd21, pattern designation codes Cd12, Cd13, figure designation code Cd14, character designation codes Cd22, Cd23, image designation codes Cd31, Cd32 The end code Cd99 is included in the intermediate code Mc.
また、これら複数のコードCdは、基本的に、オブジェクト(図形、文字、イメージ)単位で先頭から順に配置されるようになっている。 The plurality of codes Cd are basically arranged in order from the top in units of objects (graphics, characters, images).
例えば、ROP指定コードCd10、色指定コードCd11、パターン指定コードC12、C13、図形指定コードCd14は、オブジェクトの1つである図形をパターンとして描画するためのものである。 For example, the ROP designation code Cd10, the color designation code Cd11, the pattern designation codes C12 and C13, and the graphic designation code Cd14 are for drawing a graphic that is one of the objects as a pattern.
また、ROP指定コードCd20、色指定コードCd21、文字指定コードCd22、Cd23は、オブジェクトの1つである文字を描画するためのものである。 The ROP designation code Cd20, the color designation code Cd21, and the character designation codes Cd22 and Cd23 are for drawing a character that is one of the objects.
さらに、ROP指定コードCd30、イメージ指定コードCd31、Cd32は、オブジェクトの1つであるイメージを描画するためのものである。 Further, the ROP designation code Cd30 and the image designation codes Cd31 and Cd32 are for drawing an image which is one of the objects.
これらのうち、ROP指定コードCd10、Cd20、Cd30は、オブジェクトを描画するときにどのようなROP演算を行うかを指定するものであり、ROP演算コードが記されている。 Among these, the ROP designation codes Cd10, Cd20, and Cd30 designate what kind of ROP computation is performed when drawing an object, and ROP computation codes are written therein.
ここで、代表的なROP演算コードと、ROP演算式との対応表を図3に示す。尚、図3に示すSはソース、Pはパターン、Dはディスティネーションを示している。 Here, FIG. 3 shows a correspondence table between typical ROP operation codes and ROP operation expressions. In FIG. 3, S indicates a source, P indicates a pattern, and D indicates a destination.
図2に示す例では、図形をパターン描画する場合のROP指定コードCd10として、パターン(P)Onlyに対応するROP演算コード「0x0f」が指定され、文字を描画する場合のROP指定コードCd20として、ソース(S)とパターン(P)のANDに対応するROP演算コード「0x03」が指定され、イメージを描画する場合のROP指定コードCd30として、ソース(S)Onlyに対応するROP演算コード「0x33」が指定されている。 In the example shown in FIG. 2, the ROP operation code “0x0f” corresponding to the pattern (P) Only is specified as the ROP specification code Cd10 when drawing a pattern, and the ROP specification code Cd20 when drawing a character is used. The ROP operation code “0x03” corresponding to the AND of the source (S) and the pattern (P) is specified, and the ROP operation code “0x33” corresponding to the source (S) Only is used as the ROP specification code Cd30 when drawing an image. Is specified.
色指定コードCd11、Cd21は、オブジェクトの描画色を指定するためのものである。この色指定コードCd11、Cd21は、CMYカラー3色のそれぞれのカラーレベルを0〜0xffの範囲で指定するものである。 The color designation codes Cd11 and Cd21 are for designating the drawing color of the object. The color designation codes Cd11 and Cd21 designate the color levels of the three CMY colors in the range of 0 to 0xff.
図2に示す例では、図形をパターン描画する場合の色指定コードCd11として、CMY=0xff、0x00、0x00が指定されている。また文字を描画する場合の色指定コードCd21として、CMY=0x00、0xff、0x00が指定されている。 In the example shown in FIG. 2, CMY = 0xff, 0x00, and 0x00 are designated as the color designation code Cd11 for drawing a pattern. Further, CMY = 0x00, 0xff, and 0x00 are designated as the color designation code Cd21 for drawing a character.
ちなみに、この色指定コードCdは、通常、図形又は文字を描画する場合にのみ用いられるものであり、イメージを描画する場合には用いられない。 Incidentally, the color designation code Cd is normally used only when drawing a graphic or a character, and is not used when drawing an image.
パターン指定コードCd12、Cd13は、オブジェクトの塗り潰しパターンを指定するためのものであり、パターン指定コードCd12で、パターンの開始座標と大きさ(幅、高さ)を指定して、つづくパターン指定コードCd13で、実際のパターンデータ(0or1から構成されるビットマップデータ)C13を指定するようになっている。 The pattern designation codes Cd12 and Cd13 are for designating the filling pattern of the object. The pattern designation code Cd12 designates the start coordinates and size (width and height) of the pattern, followed by the pattern designation code Cd13. Thus, actual pattern data (bitmap data composed of 0 or 1) C13 is designated.
このパターン指定コードCdも、通常、図形又は文字を描画する場合にのみ用いられるものであり、イメージを描画する場合には用いられない。 This pattern designation code Cd is also usually used only when drawing a graphic or a character, and is not used when drawing an image.
図形指定コードCd14は、描画する図形の種類、開始座標、大きさ(幅、高さ)を指定するためのものであり、図2に示す例では、図形の種類として矩形を指定している。 The graphic designation code Cd14 is for designating the type, start coordinates, and size (width, height) of the graphic to be drawn. In the example shown in FIG. 2, a rectangle is designated as the graphic type.
文字指定コードCd22、Cd23は、描画する文字を指定するためのものであり、文字指定コードCd22で、文字の開始座標と大きさ(幅、高さ)を指定して、つづく文字指定コードCd23で、実際の文字データ(0or1から構成されるビットマップデータ)を指定するようになっている。 The character designation codes Cd22 and Cd23 are for designating characters to be drawn. The character designation code Cd22 designates the start coordinates and size (width and height) of the character, and the character designation code Cd23 follows. Actual character data (bitmap data composed of 0 or 1) is designated.
イメージ指定コードCd31、Cd32は、描画するイメージを指定するためのものであり、イメージ指定コードCd31で、イメージの開始座標と大きさ(幅、高さ)を指定して、つづくイメージ指定コードCd32で、実際のイメージデータ(1画素3byteのCMYカラーで表現されるバイナリデータ)を指定するようになっている。
The image designation codes Cd31 and Cd32 are for designating an image to be drawn. The image designation code Cd31 designates the start coordinates and size (width and height) of the image, and the image designation code Cd32 follows. Actual image data (binary data expressed in CMY color of 1
終端コードCd99は、中間コードMcの終端を示すものであり、中間コードMcの最後尾に配置されている。 The end code Cd99 indicates the end of the intermediate code Mc and is arranged at the end of the intermediate code Mc.
中間コードMcは、このようなデータ構造となっている。 The intermediate code Mc has such a data structure.
[1−3.カラープリンタによる印刷処理]
次に、カラープリンタ1による印刷処理について説明する。
[1-3. Print processing by color printer]
Next, printing processing by the
まず、図4に示すフローチャートを用いて、印刷処理の概要手順(これを印刷処理概要手順と呼ぶ)RT1から説明する。この印刷処理概要手順RT1では、まずステップSP1において、データ受信部2が、外部よりPDLデータを受信する。
First, the printing process outline procedure (this is called the printing process outline procedure) RT1 will be described with reference to the flowchart shown in FIG. In this print processing overview procedure RT1, first, in step SP1, the
つづくステップSP2において、PDLデータ解析部3が、受信したPDLデータを解析して、中間コードMcを生成する。
In subsequent step SP2, the PDL
つづくステップSP3において、印刷イメージ生成部6が、生成された中間コードMcに基づいて、印刷イメージを生成する。
In subsequent step SP3, the print
つづくステップSP4において、印刷部7が、生成された印刷イメージに基づいて印刷を行う。
In subsequent step SP4, the
カラープリンタ1は、このような印刷処理概要手順RT1にそって印刷処理を行うようになっている。
The
次に、印刷処理概要手順RT1のステップSP2での処理、すなわちPDLデータを解析して中間コードMcを生成する処理の詳しい手順(これをPDLデータ解析処理手順と呼ぶ)RT2について、図5に示すフローチャートを用いて説明する。 Next, FIG. 5 shows the detailed procedure of the processing in step SP2 of the printing processing outline procedure RT1, that is, the detailed processing of analyzing the PDL data and generating the intermediate code Mc (this is called the PDL data analysis processing procedure). This will be described with reference to a flowchart.
このPDLデータ解析処理手順RT2では、まずステップSP10において、PDLデータ解析部3が、PDLデータに対してコマンド分割を行う。
In this PDL data analysis processing procedure RT2, first, in step SP10, the PDL
ここで、PDLデータは、例えば1ページ分の印刷イメージを生成するためのデータであり、このPDLデータには、印刷イメージを生成するためのコマンドとして、ROP処理を指定するROP情報、色を指定するカラー情報、図形を指定する図形指定コマンド、文字を指定する文字指定コマンド、イメージを指定するイメージ指定コマンド、パターンを指定するパターン指定コマンドなどが、実行順に記されている。 Here, the PDL data is, for example, data for generating a print image for one page. In this PDL data, ROP information for specifying ROP processing and a color are specified as a command for generating a print image. Color information to be specified, a figure specifying command for specifying a figure, a character specifying command for specifying a character, an image specifying command for specifying an image, a pattern specifying command for specifying a pattern, and the like are described in the order of execution.
実際、このPDLデータには、例えば、図形をパターン描画する場合、ROP情報、カラー情報、パターン指定コマンド、図形指定コマンドの4つが順に記されている。 Actually, in the PDL data, for example, when drawing a pattern, four patterns of ROP information, color information, a pattern designation command, and a figure designation command are sequentially written.
また、例えば、文字を描画する場合、ROP情報、カラー情報、文字指定コマンドの3つが順に記されている。 Further, for example, when drawing a character, three items of ROP information, color information, and a character designation command are written in order.
さらに、例えば、イメージを描画する場合、ROP情報、イメージ指定コマンドの2つが順に記されている。 Furthermore, for example, when drawing an image, two items of ROP information and an image designation command are written in order.
PDLデータ解析部3は、PDLデータから、このようなコマンドを順に抽出するようになっている。
The PDL
つづくステップSP11において、PDLデータ解析部3は、コマンド分割により得られたコマンドを解析して、以降の処理をコマンドの種別ごとに分岐させる。
In subsequent step SP11, the PDL
ここで、得られたコマンドがROP情報であった場合、PDLデータ解析部3は、ステップSP12において、ROP情報格納部18にこのROP情報を格納する。このとき、このROP情報格納部18に以前のROP情報が格納されている場合には、以前のROP情報を、今回のROP情報で更新する。
If the obtained command is ROP information, the PDL
その後、PDLデータ解析部3は、ステップSP24に移る。このステップSP24の処理については、後述する。
Thereafter, the PDL
また、得られたコマンドがカラー情報であった場合、PDLデータ解析部3は、ステップSP13において、カラー情報格納部19にこのカラー情報を格納する。このとき、このカラー情報格納部19に以前のカラー情報が格納されている場合には、以前のカラー情報を、今回のカラー情報で更新する。尚、このカラー情報は、RGB3色のRGBカラー情報である。その後、PDLデータ解析部3は、ステップSP24に移る。
If the obtained command is color information, the PDL
また、得られたコマンドがパターン指定コマンドであった場合、PDLデータ解析部3は、ステップSP14において、このパターン指定コマンドをもとに、パターン指定用の中間コードMc(例えば図2に示すパターン指定コードCd12及びCd13)を生成して、ステップSP23に移る。このステップSP23の処理については、後述する。
If the obtained command is a pattern designation command, the PDL
また、得られたコマンドが図形指定コマンドであった場合、ステップSP15において、カラーマッチング処理部4が、カラー情報格納部19に格納されている現在のRGBカラー情報を、図形用のカラーマッチング処理によりCMYカラー情報に変換する。
If the obtained command is a graphic designation command, in step SP15, the color
つづくステップSP16において、PDLデータ解析部3は、図形指定コマンドをもとに、図形指定用の中間コードMc(例えば図2に示す図形指定コードCd14)を生成する。
In subsequent step SP16, the PDL
さらに、PDLデータ解析部3は、つづくステップSP21において、ステップSP15で得られたCMYカラー情報をもとに、色指定用の中間コードMc(例えば図2に示す色指定コードCd11)を生成する。
Further, in step SP21, the PDL
さらに、PDLデータ解析部3は、つづくステップSP22において、ROP情報格納部18に格納されているROP情報をもとに、ROP指定用の中間コードMc(例えば図2に示すROP指定コードCd10)を生成する。
Further, in the subsequent step SP22, the PDL
ここまでのステップSP14、15、SP16、SP21、SP22の処理で、図形をパターン描画するための中間コードMc(例えば図2に示すコードCd10〜Cd14)が生成されたことになる。 The intermediate code Mc (for example, the codes Cd10 to Cd14 shown in FIG. 2) for drawing a pattern is generated by the processing of steps SP14, SP16, SP16, SP21, and SP22 so far.
そして、PDLデータ解析部3は、つづくステップSP23において、このようにして生成した中間コードMcを、中間コード格納部16に格納する。その後、PDLデータ解析部3は、ステップSP24に移る。
In step SP23, the PDL
また、得られたコマンドが文字指定コマンドであった場合、ステップSP17において、カラーマッチング処理部4が、カラー情報格納部19に格納されている現在のRGBカラー情報を、文字用のカラーマッチング処理によりCMYカラー情報に変換する。
If the obtained command is a character designation command, in step SP17, the color
つづくステップSP18において、PDLデータ解析部3は、文字指定コマンドをもとに、文字指定用の中間コードMc(例えば図2に示す文字指定コードCd22及びCd23)を生成する。
In subsequent step SP18, the PDL
さらに、PDLデータ解析部3は、つづくステップSP21において、ステップSP17で得られたCMYカラー情報をもとに、カラー指定用の中間コードMc(例えば図2に示す色指定コードCd21)を生成する。
Further, in step SP21, the PDL
さらに、PDLデータ解析部3は、つづくステップSP22において、ROP情報格納部18に格納されているROP情報をもとに、ROP指定用の中間コードMc(例えば図2に示すROP指定コードCd20)を生成する。
Further, in the subsequent step SP22, the PDL
ここまでのステップSP17、SP18、SP21、SP22の処理で、文字を描画するための中間コードMc(例えば図2に示すコードCd20〜Cd23)が生成されたことになる。 The intermediate code Mc (for example, codes Cd20 to Cd23 shown in FIG. 2) for drawing a character is generated by the processing of steps SP17, SP18, SP21, and SP22 so far.
そして、PDLデータ解析部3は、つづくステップSP23において、このようにして生成した中間コードMcを、中間コード格納部16に格納する。その後、PDLデータ解析部3は、ステップSP24に移る。
In step SP23, the PDL
また、得られたコマンドがイメージ指定コマンドであった場合、ステップSP19において、カラーマッチング処理部4が、カラー情報格納部19に格納されている現在のRGBカラー情報を、イメージ用のカラーマッチング処理によりCMYカラー情報に変換する。
If the obtained command is an image designation command, in step SP19, the color
つづくステップSP20において、PDLデータ解析部3は、イメージ指定コマンドをもとに、イメージ指定用の中間コードMc(例えば図2に示すイメージ指定コードCd31及びCd32)を生成する。
In subsequent step SP20, the PDL
さらに、PDLデータ解析部3は、つづくステップSP22において、ROP情報格納部18に格納されているROP情報をもとに、ROP指定用の中間コードMc(例えば図2に示すROP指定コードCd30)を生成する。
Further, in subsequent step SP22, the PDL
ここまでのステップSP19、SP20、SP22の処理で、イメージを描画するための中間コードMc(例えば図2に示すコードCd30〜Cd32)が生成されたことになる。 The intermediate code Mc (for example, the codes Cd30 to Cd32 shown in FIG. 2) for drawing an image is generated by the processing of steps SP19, SP20, and SP22 so far.
そして、PDLデータ解析部3は、つづくステップSP23において、このようにして生成した中間コードMcを、中間コード格納部16に格納する。その後、PDLデータ解析部3は、ステップSP24に移る。
In step SP23, the PDL
ステップSP24において、PDLデータ解析部3は、PDLデータの終端を検出したかどうか、すなわちPDLデータにまだ解析していないコマンドが残っているか否かを確認する。
In step SP24, the PDL
そして、PDLデータ解析部3は、PDLデータにまだ解析していないコマンドが残っている場合には、ステップSP11に戻り、PDLデータのコマンドを全て解析し終えると、このPDLデータ解析処理手順RT2を終了する。
The PDL
カラープリンタ1は、このようなPDLデータ解析処理手順RT2にそって、PDLデータを解析して中間コードMcを生成するようになっている。
The
次に、印刷処理概要手順RT1(図4)のステップSP3での処理、すなわち印刷イメージを生成する処理の詳しい手順(これを印刷イメージ生成処理手順と呼ぶ)RT3について、図6に示すフローチャートを用いて説明する。 Next, the flowchart shown in FIG. 6 is used for the processing in step SP3 of the printing processing outline procedure RT1 (FIG. 4), that is, the detailed procedure of processing for generating a print image (this is called the printing image generation processing procedure) RT3. I will explain.
この印刷イメージ生成処理手順RT3では、まずステップSP30において、中間コード判別部10が、中間コード格納部16に格納されている中間コードMcを解析して、この中間コードMcからコードCdを順に抽出し、以降の処理をコードCdの種別ごとに分岐させる。
In this print image generation processing procedure RT3, first, in step SP30, the intermediate
ここで、抽出したコードCdが、色指定コードCdであった場合、中間コード判別部10は、ステップSP31において、描画処理部14に、この色指定コードCdにより指定されるCMYカラーを示すカラー情報を登録する。
If the extracted code Cd is the color designation code Cd, the intermediate
その後、中間コード判別部10は、ステップSP40に移る。このステップSP40の処理については、後述する。
Thereafter, the intermediate
また、抽出したコードCdが、ROP指定コードCdであった場合、中間コード判別部10は、ステップSP32において、描画処理部14に、このROP指定コードCdにより指定されるROP演算を示すROP情報を登録する。その後、中間コード判別部10は、ステップSP40に移る。
If the extracted code Cd is the ROP designation code Cd, the intermediate
また、抽出したコードCdが、パターン指定コードCdであった場合、中間コード判別部10は、ステップSP33において、描画処理部14に、このパターン指定コードCdにより指定されるパターンを示すパターン情報を登録する。その後、中間コード判別部10は、ステップSP40に移る。
When the extracted code Cd is the pattern designation code Cd, the intermediate
また、抽出したコードCdが、図形指定コードCdであった場合、ステップSP34において、図形描画部11が、描画処理部14にオブジェクト種別として図形を登録する。
If the extracted code Cd is the graphic designation code Cd, the
さらに図形描画部11は、つづくステップSP35において、描画処理部14を利用し、印刷イメージ格納部17のバッファ領域に対して図形描画を行う。尚、このとき、描画処理部14は、図形指定コードCdと、登録されている各種情報(カラー情報、ROP情報、パターン情報)に基づいて、図形描画を行うようになっている。その後、中間コード判別部10が、ステップSP40に移る。
Further, in the subsequent step SP35, the
また、抽出したコードCdが、文字指定コードCdであった場合、ステップSP36において、文字描画部12が、描画処理部14にオブジェクト種別として文字を登録する。
If the extracted code Cd is the character designation code Cd, the
さらに文字描画部12は、つづくステップSP37において、描画処理部14を利用し、印刷イメージ格納部17のバッファ領域に対して文字描画を行う。尚、このとき、描画処理部14は、文字指定コードCdと、登録されている各種情報(カラー情報、ROP情報、パターン情報)に基づいて、文字描画を行うようになっている。その後、中間コード判別部10が、ステップSP40に移る。
Further, in the following step SP37, the
また、抽出したコードCdが、イメージ指定コードCdであった場合、ステップSP38において、イメージ描画部13が、描画処理部14にオブジェクト種別としてイメージを登録する。
If the extracted code Cd is the image designation code Cd, the
さらにイメージ描画部13は、つづくステップSP39において、描画処理部14を利用し、印刷イメージ格納部17のバッファ領域に対してイメージ描画を行う。尚、このとき、描画処理部14は、イメージ指定コードCdと、登録されているROP情報に基づいて、イメージ描画を行うようになっている。その後、中間コード判別部10が、ステップSP40に移る。
Further, in subsequent step SP39, the
ステップSP40において、中間コード判別部10は、次のコードCdが終端コードCdであるかどうかを確認する。ここで、次のコードCdが終端コードCdでない場合、このことは、処理し終えていないコードCdがまだ残っていることを意味する。このとき、中間コード判別部10は、ステップSP30に戻る。
In step SP40, the intermediate
これに対して、次のコードCdが終端コードCdであった場合、このことは、中間コードMcの全コードCdを処理し終えたことを意味する。この時点で、印刷イメージ格納部17には、中間コードMcに基づくCMYカラーの中間イメージが格納されていることになる。尚、この中間イメージは、CMYKカラーの印刷イメージの元となるものである。
On the other hand, when the next code Cd is the termination code Cd, this means that all the codes Cd of the intermediate code Mc have been processed. At this time, the CMY color intermediate image based on the intermediate code Mc is stored in the print
このとき、つづくステップSP41において、黒生成処理部15が、印刷イメージ格納部17のバッファ領域に黒生成処理を行う。すなわち、印刷イメージ格納部17に格納されているCMYカラーの中間イメージに対して黒生成処理を行う。これにより、CMYKカラーの印刷イメージが生成される。尚、この黒生成処理について詳しくは後述する。
At this time, in subsequent step SP41, the black
カラープリンタ1は、このような印刷イメージ生成処理手順RT3で、中間コードMcにもとづく印刷イメージを生成するようになっている。
The
次に、印刷イメージ生成処理手順RT3での描画処理部14の処理(すなわちステップSP35、SP37、SP39での処理)の概要手順(これを描画処理概要手順と呼ぶ)RT4について、図7に示すフローチャートを用いて説明する。
Next, a flowchart shown in FIG. 7 shows an outline procedure (this is called a drawing process outline procedure) RT4 of the process of the
この描画処理概要手順RT4では、まずステップSP50において、描画処理部14が、登録されている各種情報(カラー情報、ROP情報、パターン情報)と、ソース(描画する画像)及びディスティネーション(描画先の画像)のカラー情報を分析して、ROP情報に含まれるROP指定コードCdに対応するROP処理を行う。これにより、中間イメージの各画素のカラー情報が確定する。
In this drawing processing outline procedure RT4, first, in step SP50, the
ここで、描画処理部14は、中間イメージの各画素のデータとして、図8に示すデータ形式でなるカラー画素データCpを生成するようになっている。
Here, the
このカラー画素データCpは、4Byteで表現され、Bit#31〜24の1Byteで、シアンのカラーレベル(0〜255)を保持し、Bit#23〜16の1Byteでマゼンタのカラーレベル(0〜255)を保持し、Bit#15〜8の1Byteでイエローのカラーレベル(0〜255)を保持するようになっている。
The color pixel data Cp is expressed by 4 bytes, holds 1 bit of
さらに、このカラー画素データCpは、Bit#7〜0の1Byteが、オブジェクトに関する情報を保持するオブジェクト情報フィールドOfとなっている。
Further, in this color pixel data Cp, 1 byte of
このオブジェクト情報フィールドOfを構成する各Bitは、それぞれ意味を持っており、Bit#7は、XORを用いたROP処理が実施されたかどうかを識別するためのものである。
Each Bit constituting the object information field Of has a meaning, and
実際、このBit#7は、1であれば、XORを用いたROP処理が行われたことを示し、0であれば、XORを用いたROP処理が行われていないことを示す。このBit#7を、以下、XORフラグとも呼ぶ。
Actually, if
Bit#6は、今回のROP処理が行われるまで描画されていたオブジェクトの種別(これを過去オブジェクト種別と呼ぶ)がイメージであるかどうかを識別するためのものである。Bit#5は、過去オブジェクト種別が文字であるかどうかを識別するためのものであり、Bit#4は、過去オブジェクト種別が図形であるかどうかを識別するためのものである。
つまり、オブジェクト情報フィールドOfは、このBit#4〜6で、今回のROP処理が行われるまで描画されていたオブジェクトの種別を示す過去オブジェクト種別を保持するようになっている。
That is, the object information field Of holds the past object type indicating the type of the object that has been drawn until the current ROP process is performed in
ここで、Bit#6が1、Bit#4と5が0であれば、過去オブジェクト種別がイメージであることを示し、Bit#5が1、Bit#4と6が0であれば文字、Bit#4が1、Bit#5と6が0であれば図形であることを示す。
Here, if
尚、Bit#4〜6の全てが0である場合には、過去オブジェクトが存在しないこと(オブジェクト無し)を意味する。 In addition, when all of Bit # 4-6 are 0, it means that the past object does not exist (no object).
Bit#3は、ダミーであり、Bit#2は、現在のオブジェクト種別がイメージであるかどうかを識別するためのものであり、Bit#1は、現在のオブジェクト種別が文字であるかどうかを識別するためのものであり、Bit#0は、現在のオブジェクト種別が図形であるかどうかを識別するためのものである。
つまり、オブジェクト情報フィールドOfは、このBit#0〜2に、現在のオブジェクト種別(これを現在オブジェクト種別と呼ぶ)を保持するようになっている。
That is, the object information field Of holds the current object type (referred to as the current object type) in
ここで、Bit#2が1、Bit#1と0が0であれば、現在オブジェクト種別がイメージであることを示し、Bit#1が1、Bit#2と0が0であれば文字、Bit#0が1、Bit#2と1が0であれば図形であることを示す。
Here, if
尚、Bit#0〜2の全てが0である場合には、現在オブジェクトが存在しないことを意味する。
If all of
このように、オブジェクト情報フィールドOfには、XORフラグと、過去オブジェクト種別と、現在オブジェクト種別が記される。 Thus, the XOR flag, the past object type, and the current object type are written in the object information field Of.
また、詳しくは後述するが、現在オブジェクト種別は、黒生成処理に利用され、過去オブジェクト種別は、ROP処理としてXORが行われたときのオブジェクト情報フィールドOfの更新に利用される。 As will be described in detail later, the current object type is used for black generation processing, and the past object type is used for updating the object information field Of when XOR is performed as ROP processing.
このような、カラー画素データCpが、印刷イメージの画素ごとのデータとして、印刷イメージ格納部17のバッファ領域に格納されるようになっている。
Such color pixel data Cp is stored in the buffer area of the print
そして、上述のステップSP50では、描画処理部14がROP処理を行うことで、ROP処理の結果として、このカラー画素データCpのBit#31〜8までのCMYカラー情報が確定する。これにより、印刷イメージ格納部17のバッファ領域に対してオブジェクトの描画が行われたことになる。
In the above-described step SP50, the
さらに、つづくステップSP51において、描画処理部14は、今回のROP処理に基づき、カラー画素データCpのオブジェクト情報フィールドOfの更新を行う。尚、このオブジェクト情報フィールドOfの更新について詳しくは後述する。
Further, in subsequent step SP51, the
描画処理部14は、このような描画処理概要手順RT4で、描画処理を行うようになっている。
The
次に、印刷イメージ生成処理手順RT3(図6)のステップSP41での黒生成処理の詳しい手順(これを黒生成処理手順と呼ぶ)RT5について、図9に示すフローチャートを用いて、詳しく説明する。 Next, a detailed procedure of black generation processing (referred to as black generation processing procedure) RT5 in step SP41 of the print image generation processing procedure RT3 (FIG. 6) will be described in detail with reference to the flowchart shown in FIG.
この黒生成処理手順RT5では、まずステップSP60において、黒生成処理部15が、印刷イメージ格納部17に格納されている中間イメージの各画素のオブジェクト情報フィールドOfのBit#2を確認する。
In this black generation processing procedure RT5, first, in step SP60, the black
ここで、Bit#2が1であれば、このことは、画素の現在オブジェクト種別がイメージであることを意味する。このとき、黒生成処理部15は、ステップSP61に移り、このステップSP61において、イメージ用の黒生成処理を行う。
Here, if
一方で、オブジェクト情報フィールドOfのBit#2が0であれば、このことは、画素の現在オブジェクト種別がイメージではないことを意味する。このとき、黒生成処理部15は、ステップSP62に移り、このステップSP62において、オブジェクト情報フィールドOfのBit#1を確認する。
On the other hand, if
ここで、Bit#1が1であれば、このことは、画素の現在オブジェクト種別が文字であることを意味する。このとき、黒生成処理部15は、ステップSP63に移り、このステップSP63において、文字用の黒生成処理を行う。
Here, if
一方で、オブジェクト情報フィールドOfのBit#1が0であれば、このことは、画素の現在オブジェクト種別がイメージでも文字でもなく図形であることを意味する。このとき、黒生成処理部15は、ステップSP64に移り、このステップSP64において、図形用の黒生成処理を行う。
On the other hand, if
尚、黒生成処理部15が行う黒生成処理は、CMYのカラーレベルをもとに黒(K)のカラーレベルを算出して、さらにこの算出した黒(K)のカラーレベルをもとにCMYのカラーレベルを調整する処理である。
The black generation processing performed by the black
つまり、この黒生成処理は、CMYを混ぜ合わせたグレー成分を、Kのみ、もしくはCMYとKとを混ぜ合わせたグレー成分に置き換える処理である。 In other words, this black generation process is a process for replacing the gray component obtained by mixing CMY with the gray component obtained by mixing only K or CMY and K.
そして、上述のステップSP61、SP63、SP64では、それぞれイメージ用の黒生成処理、文字用の黒生成処理、図形用の黒生成処理を行っているが、これらはCMYとKの配分が異なる黒生成処理である。 In the above-described steps SP61, SP63, and SP64, black generation processing for images, black generation processing for characters, and black generation processing for graphics are performed. These are black generations having different CMY and K distributions. It is processing.
例えば、文字用の黒生成処理及び図形用の黒生成処理では、文字及び図形の輪郭をはっきりさせるために、CMYを混ぜ合わせたグレー成分を、Kのみのグレー成分に置き換える。ゆえに、この場合、CMYのカラーレベルは0となる。 For example, in the black generation processing for characters and the black generation processing for graphics, the gray component mixed with CMY is replaced with a gray component of only K in order to clarify the outline of the characters and graphics. Therefore, in this case, the color level of CMY is 0.
また、例えば、イメージ用の黒生成処理では、イメージを鮮明にするために、CMYを混ぜ合わせたグレー成分を、KよりもCMYの比率の方が高くなるようにして、CMYとKとを混ぜ合わせたグレー成分に置き換える。 Also, for example, in the black generation process for an image, in order to make the image clear, the CMY and K components are mixed so that the gray component mixed with CMY is higher in the ratio of CMY than K. Replace with the combined gray component.
このようにして、黒生成処理部15は、オブジェクト種別ごとに最適な黒生成処理を行うようになっている。
In this way, the black
そして、実際、黒生成処理部15は、この黒生成処理を、印刷イメージ格納部17に格納されている中間イメージの画素ごとに行うことで、中間イメージの各画素のカラー画素データCpを更新する。
In practice, the black
このとき、黒生成処理部15は、カラー画素データCpのBit#7〜0に保持されているオブジェクト情報フィールドを、黒生成処理で得られた黒のカラーレベル(0〜255)で上書きする。
At this time, the black
すなわち、黒生成処理後のカラー画素データCpは、図10に示すように、Bit#31〜24の1Byteで、シアンのカラーレベル(0〜255)を保持し、Bit#23〜16の1Byteでマゼンタのカラーレベル(0〜255)を保持し、Bit#15〜8の1Byteでイエローのカラーレベル(0〜255)を保持し、Bit#7〜0の1Byteで黒のカラーレベル(0〜255)を保持するようになっている。
That is, as shown in FIG. 10, the color pixel data Cp after the black generation process is 1 byte of Bits # 31 to 24, holds the cyan color level (0 to 255), and is 1 byte of Bits # 23 to 16. The magenta color level (0 to 255) is held, the yellow color level (0 to 255) is held at 1 byte of
かくして、印刷イメージ格納部17に格納されているCMYカラーの中間イメージがCMYKカラーの印刷イメージに変換されたことになる。
Thus, the CMY color intermediate image stored in the print
黒生成処理部15は、このような黒生成処理手順RT5で、黒生成処理を行うことにより、CMYカラーの中間イメージからCMYKカラーの印刷イメージを生成するようになっている。
The black
ところで、上述のように、オブジェクト種別ごとに最適な黒生成処理を行うには、当然のことながら、カラー画素データCpのオブジェクト情報フィールドOfに記されている現在オブジェクト種別が、実際に描画されているオブジェクトの種別と同じでなければならない。 By the way, as described above, in order to perform the optimum black generation processing for each object type, as a matter of course, the current object type described in the object information field Of of the color pixel data Cp is actually drawn. Must be the same type of object.
そこで、このカラープリンタ1では、上述の描画処理概要手順RT4(図7)のステップSP51において、オブジェクト情報フィールドOfに常に正確な現在オブジェクト種別が記されるように、ROP処理を行うごとに各カラー画素データCpのオブジェクト情報フィールドOfを更新するようになっている。
Therefore, in this
以下、描画処理概要手順RT4のステップSP51でのオブジェクト情報フィールドOfを更新する処理の手順(これをオブジェクト情報更新処理と呼ぶ)RT6について、図11に示すフローチャートを用いて詳しく説明する。 In the following, the process procedure RT6 for updating the object information field Of in step SP51 of the rendering process outline procedure RT4 (referred to as object information update process) RT6 will be described in detail with reference to the flowchart shown in FIG.
尚、このオブジェクト情報更新処理手順RT6を説明した後、実際に行われる様々なROP処理による描画操作を例に挙げて、どのような描画操作を行うときにどのようにオブジェクト情報フィールドOfが更新されるのかを説明することにする。 In addition, after describing this object information update processing procedure RT6, the drawing operation by various ROP processes actually performed is taken as an example, and how the object information field Of is updated in what drawing operation is performed. I will explain what it is.
このオブジェクト情報更新処理手順RT6では、まずステップSP70において、描画処理部14が、登録されているROP情報に記されているROP演算コードを確認して、以降の処理をこのROP演算コードごとに分岐させる。
In this object information update processing procedure RT6, first, in step SP70, the
ここで、ROP演算コードが、0x99、0xa5、0x66、0x5aであった場合、すなわち今回のROP演算がこれらのROP演算コードにより指定されるXOR演算である場合、描画処理部14は、ステップSP71において、オブジェクト情報フィールドOfのBit#7を確認する。
If the ROP operation code is 0x99, 0xa5, 0x66, 0x5a, that is, if the current ROP operation is an XOR operation specified by these ROP operation codes, the
ここで、このBit#7が1の場合、このことは、このオブジェクト情報フィールドOfに対応する画素が、XORが既に1回行われている画素であり、今回のXORが2回目のXORであることを意味する。
Here, when
このとき描画処理部14は、ステップSP72に移り、このステップSP72において、例えば図12(A)に示すように、オブジェクト情報フィールドOfのBit#4〜6の値を、Bit#0〜2に戻す。
At this time, the
つまり、オブジェクト情報フィールドOfに保持されている過去オブジェクト種別を、現在オブジェクト種別として戻す。 That is, the past object type held in the object information field Of is returned as the current object type.
ここで、今回のROP処理を行ってから、このステップSP72でオブジェクト情報フィールドを更新するまでの間、オブジェクト情報フィールドOfのBit#0〜2には、現在オブジェクト種別として、今回のROP処理が行われるまで描画されていたオブジェクトの種別が保持され、Bit#4〜6には、過去オブジェクト種別として、前回のROP処理が行われるまで描画されていたオブジェクトの種別が保持されていることになる。
Here, from the time when the current ROP process is performed until the object information field is updated in step SP72, the current ROP process is performed as the current object type in
そして、このステップSP72では、Bit#4〜6に保持されている過去オブジェクト種別を、現在オブジェクト種別としてBit#0〜2に戻すようになっている。 In step SP72, the past object type held in Bits # 4-6 is returned to Bit # 0-2 as the current object type.
実際、XOR演算を利用したROP処理の場合、1回目のXOR演算により描画された部分に、その部分と同一色で2回目のXOR演算による描画を行うと、その部分の色が1回目のXOR演算を行う前の元の色に戻る特性を有している。ゆえに、この場合、オブジェクト種別も、1回目のXOR演算を行う前の元のオブジェクト種別に戻さなくてはならない。 In fact, in the case of ROP processing using the XOR operation, when the portion drawn by the first XOR operation is drawn by the second XOR operation with the same color as that portion, the color of that portion becomes the first XOR. It has a characteristic of returning to the original color before the calculation. Therefore, in this case, the object type must also be returned to the original object type before the first XOR operation.
そこで、このステップSP72では、現在オブジェクト種別を、1回目のXORが行われる前のオブジェクト種別を示している過去オブジェクト種別に戻すようになっている。 Therefore, in this step SP72, the current object type is returned to the past object type indicating the object type before the first XOR is performed.
これにより、オブジェクト情報フィールドOfには、実際に描画されているオブジェクト種別と同じ正しいオブジェクト種別が保持されることになる。 As a result, the object information field Of holds the same correct object type as the object type actually drawn.
このステップSP72の後、描画処理部14は、つづくステップSP73において、図12(B)に示すように、Bit#7を0にリセットし、オブジェクト情報更新処理を終了する。
After this step SP72, the
また一方で、上述のステップSP71でBit#7を確認した結果、このBit#7が0の場合、このことは、今回のXOR演算が1回目のXOR演算であることを意味する。
On the other hand, if
この場合、描画処理部14は、ステップSP74に移り、例えば図13(A)に示すように、2回目のXOR演算が行われるときのために、Bit#0〜2の値を、Bit#4〜6に移動させる。つまり、オブジェクト情報フィールドOfに現在オブジェクト種別として保持されているオブジェクト種別を、過去オブジェクト種別として保持させる。
In this case, the
尚、このように、現在オブジェクト種別として保持されているオブジェクト種別を、過去オブジェクト種別として保持させることを、以降、オブジェクト種別を退避させると呼ぶ。 Note that holding the object type currently held as the current object type as the past object type in this way is hereinafter referred to as saving the object type.
さらに、描画処理部14は、つづくステップSP75において、例えば図13(B)に示すように、Bit#0〜2に、現在オブジェクト種別として、現在描画されているオブジェクトの種別を設定する。
Further, in the subsequent step SP75, for example, as shown in FIG. 13B, the
これにより、オブジェクト情報フィールドOfには、過去オブジェクト種別と現在オブジェクト種別が保持されることになる。 As a result, the past object type and the current object type are held in the object information field Of.
その後、描画処理部14は、つづくステップSP76において、例えば図13(C)に示すように、今回XOR演算を行ったことを示すために、Bit#7を1にし、オブジェクト情報フィールド更新処理を終了する。
Thereafter, in step SP76, for example, as shown in FIG. 13C, the
また、ROP演算コードが、0x77であった場合、すなわち今回のROP演算が0x77で指定される、ソース(S)とディスティネーション(D)のOR演算である場合、描画処理部14は、ステップSP77において、このときのソースの色を確認する。
If the ROP operation code is 0x77, that is, if the current ROP operation is an OR operation of the source (S) and the destination (D) specified by 0x77, the
尚、0x77は、詳しくは後述するが、XOR演算とセットで利用されるROP演算であって、1回目のXOR演算と2回目のXOR演算との間に行われ、白黒データを描画することで、黒色の部分にのみ描画対象を残す所謂マスク処理を行うためのものである。 Note that 0x77 is an ROP operation used as a set with an XOR operation, which will be described later in detail. It is performed between the first XOR operation and the second XOR operation, and draws monochrome data. This is for performing a so-called mask process that leaves a drawing object only in the black portion.
ここで、ソースの色が白(CMY=0x00、0x00、0x00)である場合、オブジェクト種別は前回描画されていたオブジェクト種別のままなので、オブジェクト情報フィールドOfは更新しない。 Here, when the source color is white (CMY = 0x00, 0x00, 0x00), the object type remains the object type drawn in the previous time, so the object information field Of is not updated.
一方で、ソースの色が白以外である場合、描画処理部14は、ステップ78において、オブジェクト情報フィールドOfのBit#7を確認する。
On the other hand, if the source color is other than white, the
ここで、Bit#7が1の場合、このオブジェクト情報フィールドOfに対応する画素が、XOR演算が行われた画素であり、次回以降に2回目のXOR演算が行われる可能性があることを意味する。
Here, when
このとき、描画処理部14は、ステップSP79に移り、例えば図14(A)に示すように、オブジェクト情報フィールドOfのBit#0〜2の値を、Bit#4〜6に移動させることで、現在オブジェクト種別を過去オブジェクト種別として退避させる。さらに、描画処理部14は、つづくステップSP80において、例えば図14(B)に示すように、Bit#0〜2に現在のオブジェクト種別を設定し、オブジェクト情報更新処理を終了する。
At this time, the
一方で、ソースの色が白以外で、且つBit#7が0の場合、描画処理部14は、ステップSP79の処理を省略して、ステップSP80に移り、ステップSP80において、Bit#0〜2に現在のオブジェクト種別を設定し、オブジェクト情報更新処理を終了する。
On the other hand, when the source color is other than white and
また、ROP演算コードが、0x5f又は0x0fであった場合、すなわち今回のROP演算が0x5fで指定される、パターン(P)とディスティネーション(D)のOR演算、もしくは0x0fで指定されるパターン(P)Onlyである場合、描画処理部14は、ステップSP81において、このときのパターンの色を確認する。
When the ROP operation code is 0x5f or 0x0f, that is, the current ROP operation is specified by 0x5f, the pattern (P) and the destination (D) are ORed, or the pattern (Px is specified by 0x0f) In the case of “Only”, the
尚、0x5fは、詳しくは後述するが、0x77と同様、XOR演算とセットで利用されるROP演算であって、1回目のXOR演算と2回目のXOR演算との間に行われ、白黒データを描画することで、黒色の部分にのみ描画対象を残す所謂マスク処理を行うためのものである。 As will be described in detail later, 0x5f is an ROP operation that is used in combination with the XOR operation as in 0x77, and is performed between the first XOR operation and the second XOR operation. This is for performing a so-called masking process that leaves a drawing target only in the black portion.
また、0x0fも、詳しくは後述するが、XOR演算とセットで利用されるROP演算であって、1回目のXOR演算と2回目のXOR演算との間に行われ、黒データを描画することで、黒色の部分にのみ描画対象を残す所謂マスク処理を行うためのものである。 Also, 0x0f is an ROP operation used in a set with the XOR operation, which will be described later in detail. It is performed between the first XOR operation and the second XOR operation, and draws black data. This is for performing a so-called mask process that leaves a drawing object only in the black portion.
ここで、パターンの色が白(CMY=0x00、0x00、0x00)である場合、オブジェクト種別は何もかわらないので、描画処理部14は、オブジェクト情報フィールドを更新せずに、オブジェクト情報更新処理を終了する。
Here, when the color of the pattern is white (CMY = 0x00, 0x00, 0x00), since the object type does not change, the
一方で、パターンの色が白以外である場合、描画処理部14は、ステップ78に移り、以降、上述したステップSP78〜SP80の処理を行い、オブジェクト情報更新処理を終了する。
On the other hand, when the color of the pattern is other than white, the
また、ROP演算コードが、0x11又は0x05であった場合、すなわち今回のROP演算が0x11で指定される、ソース(S)とディスティネーション(D)のAND演算、もしくは0x05で指定される、パターン(P)とディスティネーション(D)のAND演算である場合、描画処理部14は、ステップSP82において、このときのディスティネーションの色を確認する。
If the ROP operation code is 0x11 or 0x05, that is, the current ROP operation is specified by 0x11, the AND operation of the source (S) and the destination (D), or the pattern (0x05 is specified) In the case of the AND operation of P) and destination (D), the
尚、0x11及び0x05は、詳しくは後述するが、OR演算とセットで利用されるROP演算であり、0x77もしくは0x5fにより白黒データが描画された後に行われ、描画対象をANDすることで、黒い部分にのみ描画対象を残す所謂マスク処理を行うためのものである。 Note that 0x11 and 0x05, which will be described later in detail, are ROP operations that are used in combination with an OR operation, and are performed after black and white data is drawn with 0x77 or 0x5f. This is for performing a so-called masking process that leaves a drawing target only in the region.
ここで、ディスティネーションの色が黒(CMY=0xff、0xff、0xff)である場合、描画処理部14は、ステップSP83に移り、ステップSP83において、Bit#0〜2に現在のオブジェクト種別を設定し、オブジェクト情報更新処理を終了する。
If the destination color is black (CMY = 0xff, 0xff, 0xff), the
一方で、ディスティネーションの色が黒以外である場合、オブジェクト種別は何もかわらないので、描画処理部14は、オブジェクト情報フィールドを更新せずに、オブジェクト情報フィールド更新処理を終了する。
On the other hand, when the destination color is other than black, the object type does not change, so the
また、ROP演算コードが、0x47であった場合、すなわち今回のROP演算が0x47で指定される、パターン(P)とソース(S)のANDと、ソース(S)のNOTとディスティネーション(D)のANDとのOR演算である場合、描画処理部14は、ステップSP84において、このときのソースの色を確認する。
If the ROP operation code is 0x47, that is, the current ROP operation is specified by 0x47, the AND of the pattern (P) and the source (S), the NOT of the source (S), and the destination (D) In step SP84, the
尚、0x47は、詳しくは後述するが、特定のアプリケーションで文字描画を行うときに指定されるROP演算である。 Note that 0x47 is an ROP operation specified when character drawing is performed in a specific application, as will be described in detail later.
ここで、ソースの色が白(CMY=0x00、0x00、0x00)である場合、オブジェクト種別は何もかわらないので、描画処理部14は、オブジェクト情報フィールドを更新せずに、オブジェクト情報更新処理を終了する。
Here, when the source color is white (CMY = 0x00, 0x00, 0x00), since the object type does not change, the
一方で、ソースの色が白以外である場合、描画処理部14は、ステップSP83に移り、ステップSP83において、Bit#0〜2に現在のオブジェクト種別を設定し、オブジェクト情報更新処理を終了する。
On the other hand, when the source color is other than white, the
また、ROP演算コードが、上述したもの以外の場合、描画処理部14は、ステップSP83に移り、ステップSP83において、Bit#0〜2に現在のオブジェクト種別を設定し、オブジェクト情報更新処理を終了する。
If the ROP operation code is other than those described above, the
描画処理部14は、このようなオブジェクト情報更新処理手順RT6にそって、オブジェクト情報フィールドOfを更新するようになっている。
The
ここで、PDLで利用されるROP処理による描画操作と、オブジェクト情報フィールドOfの更新について、具体的な例を挙げながら、詳しく説明する。 Here, the drawing operation by the ROP process used in PDL and the update of the object information field Of will be described in detail with specific examples.
まず、ROP処理による描画操作の1つとして、ROP演算コード=0x47を用いる描画操作について説明する。尚、ここでは、この描画操作を、第1の描画操作と呼ぶ。 First, a drawing operation using ROP operation code = 0x47 will be described as one of drawing operations by ROP processing. Here, this drawing operation is referred to as a first drawing operation.
この第1の描画操作では、ROP演算コード=0x47で指定されるROP演算で、文字もしくは白黒のイメージを描画する。 In the first drawing operation, a character or a monochrome image is drawn by an ROP operation designated by ROP operation code = 0x47.
すなわち、図15に示すように、例えば、任意の色のパターンと、白黒イメージのソースを用いて描画を行う。このとき、ソースが1(黒)の部分にはパターンによる描画を行い、ソースが0(白)の部分は、ディスティネーションのままとする。 That is, as shown in FIG. 15, for example, drawing is performed using an arbitrary color pattern and a monochrome image source. At this time, the pattern is drawn in the portion where the source is 1 (black), and the portion where the source is 0 (white) remains as the destination.
この結果、先に描画されていた図形を背景として、この上に、白黒イメージの黒部分で示される図形のみがパターンの色で描画された画像が得られる。 As a result, an image is obtained in which only the graphic indicated by the black portion of the black and white image is drawn in the pattern color on the background of the previously drawn graphic.
このような第1の描画操作を行う場合、上述したオブジェクト情報更新処理手順RT6のステップSP83及び84での処理に基づいて、オブジェクト情報フィールドOfの更新が行われる。 When such a first drawing operation is performed, the object information field Of is updated based on the processing in steps SP83 and SP84 of the object information update processing procedure RT6 described above.
すなわち、この場合、図15に示すように、ソースが1(黒)の部分の画素のオブジェクト情報フィールドOfには、今回描画したオブジェクトの種別を現在オブジェクト種別として格納するようにし、ソースが0(白)の部分の画素のオブジェクト情報フィールドOfは更新しないようになっている。 That is, in this case, as shown in FIG. 15, in the object information field Of of the pixel whose source is 1 (black), the type of the object drawn this time is stored as the current object type, and the source is 0 ( The object information field Of of the pixel in the white portion is not updated.
尚、図15に示す例では、白黒イメージを描画しているが、この白黒イメージはパターンを用いて文字を描画するためのものであることから、ここでは、ソースが1(黒)の部分のオブジェクト情報フィールドOfに、現在オブジェクト種別として「イメージ」ではなく、「文字」を保持させるようになっている。 In the example shown in FIG. 15, a black-and-white image is drawn. Since this black-and-white image is for drawing characters using a pattern, here, the source is a portion of 1 (black). Instead of “image” as the current object type, “character” is held in the object information field Of.
かくして、第1の描画操作において、オブジェクト情報フィールドOfには、実際に描画されているオブジェクトの種別と同じ現在オブジェクト種別が保持されることになる。 Thus, in the first drawing operation, the object information field Of holds the same current object type as the type of the object actually drawn.
次に、ROP演算コード=0xa5(又は0x99)と0x77を用いる描画について説明する。尚、ここでは、この描画を、第2の描画操作と呼ぶ。 Next, drawing using ROP operation code = 0xa5 (or 0x99) and 0x77 will be described. Here, this drawing is referred to as a second drawing operation.
この第2の描画操作は、2回のXOR演算(0xa5又は0x99)の間に、OR演算(0x77)で白黒のデータを描画することで、この白黒のデータの黒部分にのみ描画対象となるオブジェクトを残すものである。 In this second drawing operation, black and white data is drawn by OR operation (0x77) between two XOR operations (0xa5 or 0x99), so that only the black portion of this black and white data is drawn. It is to leave an object.
まず、0xa5のXOR演算を行う場合について説明する。この場合、図16(A)に示すように、ROP演算コード=0xa5で指定されるROP演算(XOR演算)により、任意の色で図形(例えば矩形)を描画する。 First, a case where 0xa5 XOR operation is performed will be described. In this case, as shown in FIG. 16A, a figure (for example, a rectangle) is drawn in an arbitrary color by an ROP operation (XOR operation) specified by ROP operation code = 0xa5.
次に、図16(B)に示すように、ROP演算コード=0x77で指定されるROP処理(OR演算)で、白黒のイメージを描画する。 Next, as shown in FIG. 16B, a black and white image is drawn by ROP processing (OR operation) designated by ROP operation code = 0x77.
この結果、1回目のXOR演算により描画された図形を背景として、この上に、白黒イメージの黒部分で示される図形のみが描画された画像が得られる。 As a result, an image in which only the graphic indicated by the black portion of the black and white image is drawn on the graphic drawn by the first XOR operation is obtained.
その後、図16(C)に示すように、再び、ROP演算コード=0xa5で指定されるROP演算(XOR演算)で、1回目のXOR演算と同一色で図形(例えば矩形)を描画する。 Thereafter, as shown in FIG. 16C, a figure (for example, a rectangle) is drawn with the same color as the first XOR operation by the ROP operation (XOR operation) designated by ROP operation code = 0xa5 again.
この結果、白黒イメージの黒部分で示される図形が任意の色で描画されると共に、この図形以外の背景が、1回目のXOR演算で図形を描画する前の状態に戻った画像が得られる。 As a result, it is possible to obtain an image in which the graphic indicated by the black portion of the black and white image is drawn in an arbitrary color and the background other than this graphic is returned to the state before drawing the graphic by the first XOR operation.
このような第2の描画操作を行う場合、上述したオブジェクト情報更新処理手順RT6のステップSP71〜SP76、及びSP77〜SP80での処理に基づいて、オブジェクト情報フィールドOfの更新が行われる。 When such a second drawing operation is performed, the object information field Of is updated based on the processing in steps SP71 to SP76 and SP77 to SP80 of the object information update processing procedure RT6 described above.
すなわち、この場合、図17(A)に示すように、1回目のXORで図形が描画された後、オブジェクト情報フィールドOfに保持されている現在オブジェクト種別(この場合「オブジェクト無し」)を、過去オブジェクト種別として退避させ、さらに今回描画したオブジェクトの種別(「図形」)を新たな現在オブジェクト種別として保持させ、XORフラグを1にする。 That is, in this case, as shown in FIG. 17A, after the graphic is drawn by the first XOR, the current object type (in this case, “no object”) held in the object information field Of is changed to the past. It is saved as the object type, and the type (“graphic”) of the object drawn this time is held as the new current object type, and the XOR flag is set to 1.
さらに、図17(B)に示すように、0x77で白黒イメージが描画された後、ソースが1の部分(黒色の図形となる部分)については、オブジェクト情報フィールドOfに保持されている現在オブジェクト種別(「図形」)を過去オブジェクト種別として退避させ、今回描画したオブジェクトの種別(「イメージ」)を新たな現在オブジェクト種別として保持させる。 Further, as shown in FIG. 17B, after the black and white image is drawn at 0x77, the current object type held in the object information field Of for the part whose source is 1 (the part that becomes a black figure) (“Figure”) is saved as the past object type, and the type (“image”) of the object drawn this time is held as the new current object type.
これに対して、ソースが0の部分(文字の背景となる部分)については、今回のROP処理で色が変化しない(オブジェクトも変化しない)ので、オブジェクト情報フィールドOfは更新しない。 On the other hand, since the color is not changed (the object is not changed) in the current ROP process, the object information field Of is not updated for the part where the source is 0 (the part which becomes the background of the character).
これにより、ソースが0の部分のオブジェクト情報フィールドOfには、過去オブジェクト種別として、1回目のXOR演算が行われる前のオブジェクトの種別(「オブジェクト無し」)が保持されつづけることになる。 As a result, the object information field Of whose source is 0 continues to hold the object type (“no object”) before the first XOR operation is performed as the past object type.
そして、最後に、図17(C)に示すように、2回目のXOR演算で図形が描画された後、XORフラグが1の部分のオブジェクト情報フィールドOfについて、保持されている過去オブジェクト種別を、現在オブジェクトに戻す。 Finally, as shown in FIG. 17C, after the graphic is drawn by the second XOR operation, the past object type held for the object information field Of whose XOR flag is 1 is Return to the current object.
この結果、最終的に得られた画像の、文字が図形で描画されている部分のオブジェクト情報フィールドOfには、現在オブジェクト種別として「図形」が保持され、図形の背景となる部分で、1回目のXOR演算が行われる前の状態に戻った部分のオブジェクト情報フィールドOfには、オブジェクト種別として「オブジェクト無し」が保持される。 As a result, in the object information field Of where the character is drawn as a graphic in the finally obtained image, “graphic” is held as the current object type, and the first time in the part that becomes the background of the graphic. In the part of the object information field Of that has returned to the state before the XOR operation is performed, “no object” is held as the object type.
かくして、この第2の描画操作においても、オブジェクト情報フィールドOfには、実際に描画されているオブジェクトの種別と同じ現在オブジェクト種別が保持されることになる。 Thus, also in the second drawing operation, the object information field Of holds the same current object type as the type of the object actually drawn.
さらに、0x99のXORを行う場合についても説明する。この場合、まず、図16(D)に示すように、ROP演算コード=0x99で指定されるROP演算(XOR演算)で、イメージを描画する。 Further, a case where 0x99 XOR is performed will be described. In this case, first, as shown in FIG. 16D, the image is drawn by the ROP operation (XOR operation) specified by the ROP operation code = 0x99.
次に、図16(E)に示すように、ROP演算コード=0x77で指定されるROP演算(OR演算)で、白黒のイメージを描画する。 Next, as shown in FIG. 16E, a monochrome image is drawn by the ROP operation (OR operation) specified by the ROP operation code = 0x77.
この結果、1回目のXOR演算により描画されたイメージの上に、白黒イメージの黒部分の図形のみが描画された画像が得られる。 As a result, an image is obtained in which only the black part of the monochrome image is drawn on the image drawn by the first XOR operation.
その後、図16(F)に示すように、再び、ROP演算コード=0x99で指定されるROP演算(XOR演算)で、1回目のXOR演算と同一のイメージを描画する。 After that, as shown in FIG. 16F, the same image as the first XOR operation is drawn again by the ROP operation (XOR operation) specified by the ROP operation code = 0x99.
この結果、白黒イメージの黒部分が描画されていた部分にのみイメージが描画され、このイメージ以外の部分が、1回目のXOR演算でイメージを描画する前の状態に戻った画像が得られる。 As a result, an image is drawn only in the portion where the black portion of the black and white image has been drawn, and an image in which the portion other than this image has returned to the state before drawing the image by the first XOR operation is obtained.
この場合も、0xa5の場合と同様にして、オブジェクト情報フィールドOfを更新する。 Also in this case, the object information field Of is updated in the same manner as in the case of 0xa5.
この結果、最終的に得られた画像の、イメージが描画されている部分のオブジェクト情報フィールドOfには、現在オブジェクト種別として「イメージ」が保持され、イメージ以外の部分で、1回目のXOR演算が行われる前の状態に戻った部分のオブジェクト情報フィールドOfには、オブジェクト種別として「オブジェクト無し」が保持される。 As a result, “image” is held as the current object type in the object information field Of where the image is drawn in the finally obtained image, and the first XOR operation is performed on the portion other than the image. In the part of the object information field Of that has returned to the state before the execution, “no object” is held as the object type.
かくして、この第2の描画操作においても、オブジェクト情報フィールドOfには、実際に描画されているオブジェクトの種別と同じ現在オブジェクト種別が保持されることになる。 Thus, also in the second drawing operation, the object information field Of holds the same current object type as the type of the object actually drawn.
次に、ROP演算コード=0x0f、0x77及び0x11を用いる描画操作について説明する。尚、ここでは、この描画操作を、第3の描画操作と呼ぶ。 Next, a drawing operation using ROP operation code = 0x0f, 0x77, and 0x11 will be described. Here, this drawing operation is referred to as a third drawing operation.
この第3の描画操作は、OR演算(0x77)で白黒のデータを描画した後、描画対象をAND演算(0x11)することで、この白黒のデータの黒部分にのみ描画対象となるオブジェクトを残すものである。 In this third drawing operation, after drawing black and white data by an OR operation (0x77), an AND operation (0x11) is performed on the drawing target, thereby leaving an object to be drawn only in the black portion of the black and white data. Is.
この場合、図18(A)に示すように、まずROP演算コード=0x0fで指定されるROP演算(パターン(P)Only)により、任意の色(ここでは白以外の色とする)で図形(例えば矩形)をパターン描画する。 In this case, as shown in FIG. 18 (A), first, a ROP operation code (pattern (P) Only) designated by ROP operation code = 0x0f is used to display a figure (any color other than white here) in an arbitrary color (here, a color other than white). For example, a rectangle is drawn as a pattern.
次に、図18(B)に示すように、ROP演算コード=0x77で指定されるROP演算(OR演算)により、白黒のイメージを描画する。 Next, as shown in FIG. 18B, a black and white image is drawn by the ROP operation (OR operation) designated by the ROP operation code = 0x77.
この結果、パターン描画された図形の上に、白黒イメージの黒部分の図形のみが描画された画像が得られる。 As a result, an image is obtained in which only the black part of the black and white image is drawn on the pattern drawn figure.
その後、ROP演算コード=0x11で指定されるROP演算(AND演算)で、イメージを描画する。 Thereafter, the image is drawn by the ROP operation (AND operation) specified by the ROP operation code = 0x11.
この結果、白黒イメージの黒部分が描画されていた部分にのみイメージが描画され、このイメージ以外の部分はパターン描画された図形の色のままとなっている画像が得られる。 As a result, an image is drawn only in the portion where the black portion of the black and white image has been drawn, and an image in which the portion other than this image remains the color of the pattern drawn is obtained.
このような第3の描画操作を行う場合、上述したオブジェクト情報更新処理手順RT6のステップSP77〜SP83での処理に基づいて、オブジェクト情報フィールドOfの更新が行われる。 When such a third drawing operation is performed, the object information field Of is updated based on the processing in steps SP77 to SP83 of the object information update processing procedure RT6 described above.
すなわち、この場合、図18(A)に示すように、0x0fで図形が任意の色でパターン描画された後、オブジェクト情報フィールドOfに、今回描画したオブジェクトの種別(「図形」)を新たな現在オブジェクト種別として保持させる。 That is, in this case, as shown in FIG. 18A, after a figure is drawn with an arbitrary color at 0x0f, the object type (“figure”) drawn this time is set to a new current state in the object information field Of. It is retained as an object type.
さらに、図18(B)に示すように、0x77で白黒イメージが描画された後、ソースが1の部分(黒部分)については、今回描画したオブジェクトの種別(「イメージ」)を新たな現在オブジェクト種別として保持させ、ソースが0の部分については、今回のROP処理でオブジェクトが変化しないので、オブジェクト情報フィールドOfは更新しない。 Further, as shown in FIG. 18B, after the black and white image is drawn at 0x77, for the portion where the source is 1 (black portion), the type (“image”) of the drawn object is set to the new current object. For the portion where the source is 0 and the source is 0, the object does not change in the current ROP process, so the object information field Of is not updated.
最後に、図18(C)に示すように、0x11でイメージが描画された後、ディスティネーションが1の部分(白黒イメージの黒部分が描画されていた部分)については、今回描画したオブジェクトの種別(「イメージ」)を新たな現在オブジェクト種別として保持させ、ディスティネーションが1以外の部分については、今回のROP処理でオブジェクトが変化しないので、オブジェクト情報フィールドOfは更新しない。 Finally, as shown in FIG. 18C, after the image is drawn at 0x11, for the portion whose destination is 1 (the portion where the black portion of the black and white image was drawn), the type of the object drawn this time (“Image”) is held as a new current object type, and the object information field Of is not updated for the portion other than 1 because the object does not change in the current ROP process.
この結果、最終的に得られた画像の、イメージが描画されている部分のオブジェクト情報フィールドOfには、現在オブジェクト種別として「イメージ」が保持され、イメージ以外の部分の、最初に描画された図形の色のままの部分のオブジェクト情報フィールドOfには、オブジェクト種別として「図形」が保持される。 As a result, “image” is held as the current object type in the object information field Of where the image is drawn in the finally obtained image, and the first drawn figure of the portion other than the image In the object information field Of of the portion that remains in the color, “graphic” is held as the object type.
かくして、この第3の描画操作においても、オブジェクト情報フィールドOfには、実際に描画されているオブジェクトの種別と同じ現在オブジェクト種別が保持されることになる。 Thus, also in the third drawing operation, the object information field Of holds the same current object type as the type of the object actually drawn.
次に、ROP演算コード=0xa5と0x0fを用いる描画操作について説明する。尚、ここでは、この描画操作を、第4の描画操作と呼ぶ。 Next, a drawing operation using ROP operation codes = 0xa5 and 0x0f will be described. Here, this drawing operation is referred to as a fourth drawing operation.
この第4の描画操作は、2回のXOR演算(0xa5)の間に、パターン(P)Only(0x0f)で黒データを描画することで、この黒データの部分にのみ描画対象となるオブジェクトを残すものである。 In the fourth drawing operation, black data is drawn with a pattern (P) Only (0x0f) between two XOR operations (0xa5), so that an object to be drawn only in this black data portion can be drawn. It is something to leave.
この場合、図19(A)に示すように、ROP演算コード=0xa5で指定されるROP演算(XOR演算)により、任意の色で図形(例えば矩形)を描画する。 In this case, as shown in FIG. 19A, a figure (for example, a rectangle) is drawn in an arbitrary color by an ROP operation (XOR operation) designated by ROP operation code = 0xa5.
次に、図19(B)に示すように、ROP演算コード=0x0fで指定されるROP演算(パターン(P)Only)で、黒の図形をパターン描画する。 Next, as shown in FIG. 19B, a black figure is pattern-drawn by the ROP operation (pattern (P) Only) designated by the ROP operation code = 0x0f.
この結果、1回目のXOR演算により描画された図形を背景として、この上に、黒の図形がパターン描画された画像が得られる。 As a result, an image in which a black figure is drawn as a pattern on the figure drawn by the first XOR operation is obtained.
その後、図19(C)に示すように、再び、ROP演算コード=0xa5で指定されるROP演算(XOR演算)で、1回目のXOR演算と同一色で図形(例えば矩形)を描画する。 After that, as shown in FIG. 19C, a figure (for example, a rectangle) is drawn with the same color as the first XOR operation by the ROP operation (XOR operation) designated by ROP operation code = 0xa5 again.
この結果、パターン描画されている図形が任意の色で描画されると共に、この図形以外の背景が、1回目のXOR演算で図形を描画する前の状態に戻った画像が得られる。 As a result, it is possible to obtain an image in which the figure on which the pattern is drawn is drawn in an arbitrary color and the background other than this figure is returned to the state before drawing the figure by the first XOR operation.
このような第4の描画操作を行う場合、上述したオブジェクト情報更新処理手順RT6のステップSP71〜SP76、及びSP78〜SP81での処理に基づいて、オブジェクト情報フィールドOfの更新が行われる。 When such a fourth drawing operation is performed, the object information field Of is updated based on the processing in steps SP71 to SP76 and SP78 to SP81 of the object information update processing procedure RT6 described above.
すなわち、この場合、図19(A)に示すように、1回目のXOR演算で図形が描画された後、オブジェクト情報フィールドOfに保持されている現在オブジェクト種別(この場合「オブジェクト無し」)を、過去オブジェクト種別として退避させ、さらに今回描画したオブジェクトの種別(「図形」)を新たな現在オブジェクト種別として保持させ、XORフラグを1にする。 That is, in this case, as shown in FIG. 19A, after the graphic is drawn by the first XOR operation, the current object type (in this case, “no object”) held in the object information field Of is changed. The object is drawn back as a past object type, and the type (“graphic”) of the object drawn this time is held as a new current object type, and the XOR flag is set to 1.
さらに、図19(B)に示すように、0x0fで黒の図形がパターン描画された後、パターンが0以外の部分(今回黒の図形が描画された部分)については、オブジェクト情報フィールドOfに保持されている現在オブジェクト種別(「図形」)を過去オブジェクト種別として退避させ、今回描画したオブジェクトの種別(「図形」)を新たな現在オブジェクト種別として保持させる。 Further, as shown in FIG. 19B, after the black figure is drawn with 0x0f, the part other than the pattern of 0 (the part where the black figure is drawn this time) is held in the object information field Of. The current object type (“graphic”) being saved is saved as the past object type, and the type of the object drawn this time (“graphic”) is held as the new current object type.
これに対して、パターンが0の部分(今回黒の図形が描画されていない部分)については、今回のROP処理でオブジェクトが変化しないので、オブジェクト情報フィールドOfは更新しない。 On the other hand, in the portion where the pattern is 0 (the portion where the black figure is not drawn at this time), the object is not changed by the current ROP process, so the object information field Of is not updated.
これにより、パターンが0の部分のオブジェクト情報フィールドOfには、過去オブジェクト種別として、1回目のXOR演算が行われる前のオブジェクトの種別(「オブジェクト無し」)が保持されつづけることになる。 As a result, the object type field (“no object”) before the first XOR operation is held as the past object type in the object information field Of where the pattern is 0.
最後に、図19(C)に示すように、2回目のXOR演算で図形が描画された後、XORフラグが1の部分のオブジェクト情報フィールドOfについて、保持されている過去オブジェクト種別を、現在オブジェクトに戻して、XORフラグを0にリセットする。 Finally, as shown in FIG. 19C, after the graphic is drawn by the second XOR operation, the past object type held for the object information field Of whose XOR flag is 1 is set as the current object. To reset the XOR flag to 0.
この結果、最終的に得られた画像の、図形が描画されている部分のオブジェクト情報フィールドOfには、現在オブジェクト種別として「図形」が保持され、図形以外の部分の、1回目のXOR演算が行われる前の状態に戻った部分のオブジェクト情報フィールドOfには、オブジェクト種別として「オブジェクト無し」が保持される。 As a result, “figure” is held as the current object type in the object information field Of where the figure is drawn in the finally obtained image, and the first XOR operation of the part other than the figure is performed. In the part of the object information field Of that has returned to the state before the execution, “no object” is held as the object type.
かくして、この第4の描画操作においても、オブジェクト情報フィールドOfには、実際に描画されているオブジェクトの種別と同じ現在オブジェクト種別が保持されることになる。 Thus, also in the fourth drawing operation, the object information field Of holds the same current object type as the type of the object actually drawn.
最後に、ROP演算コード=0x0fと0x11を用いる描画操作について説明する。尚、ここでは、この描画操作を、第5の描画操作と呼ぶ。 Finally, a drawing operation using ROP operation codes = 0x0f and 0x11 will be described. Here, this drawing operation is referred to as a fifth drawing operation.
この第5の描画操作は、パターン(P)Only(0x0f)で黒データを描画した後、描画対象をAND演算(0x11)することで、この黒データの部分にのみ描画対象となるオブジェクトを残すものである。 In the fifth drawing operation, after drawing black data with the pattern (P) Only (0x0f), an AND operation (0x11) is performed on the drawing target, thereby leaving an object to be drawn only in this black data portion. Is.
この場合、図20(A)に示すように、まずROP演算コード=0x0fで指定されるROP演算(パターン(P)Only)により、図形を黒でパターン描画する。 In this case, as shown in FIG. 20A, first, the figure is drawn in black by the ROP operation (pattern (P) Only) designated by the ROP operation code = 0x0f.
次に、図20(B)に示すように、ROP演算コード=0x11で指定されるROP演算(AND演算)により、イメージを描画する。 Next, as shown in FIG. 20B, the image is drawn by the ROP operation (AND operation) specified by the ROP operation code = 0x11.
この結果、黒の図形が描画されていた部分にのみイメージが描画され、このイメージ以外の部分は元の色のままとなっている画像が得られる。 As a result, it is possible to obtain an image in which an image is drawn only in a portion where the black figure has been drawn, and the original color remains in the portion other than this image.
このような第5の描画操作を行う場合、上述したオブジェクト情報更新処理手順RT6のステップSP79〜SP83での処理に基づいて、オブジェクト情報フィールドOfの更新が行われる。 When such a fifth drawing operation is performed, the object information field Of is updated based on the processing in steps SP79 to SP83 of the object information update processing procedure RT6 described above.
すなわち、この場合、図20(A)に示すように、0x0fで図形が黒でパターン描画された後、この図形が描画された部分のオブジェクト情報フィールドOfに、今回描画したオブジェクトの種別(「図形」)を新たな現在オブジェクト種別として保持させる。 That is, in this case, as shown in FIG. 20A, after the figure is drawn in black at 0x0f, the type of the object drawn this time (“figure” is displayed in the object information field Of where the figure is drawn. )) As the new current object type.
またこのとき、図形以外の部分については、今回のROP処理でオブジェクトが変化しないので、オブジェクト情報フィールドOfは更新しない。 At this time, the object information field Of is not updated for portions other than graphics because the object does not change in the current ROP process.
最後に、図20(B)に示すように、0x11でイメージが描画された後、ディスティネーションが1の部分(黒の図形が描画されていた部分)については、今回描画したオブジェクトの種別(「イメージ」)を新たな現在オブジェクト種別として保持させ、ディスティネーションが1以外の部分については、今回のROP処理でオブジェクトが変化しないので、オブジェクト情報フィールドOfは更新しない。 Finally, as shown in FIG. 20B, after the image is drawn at 0x11, for the portion whose destination is 1 (the portion where the black figure was drawn), the type of object drawn this time (“ Image ") is held as a new current object type, and the object information field Of is not updated for portions other than 1 because the object does not change in the current ROP process.
この結果、最終的に得られた画像の、イメージが描画されている部分のオブジェクト情報フィールドOfには、現在オブジェクト種別として「イメージ」が保持され、イメージ以外の部分の、オブジェクトが最初から何も変化していない部分のオブジェクト情報フィールドOfには、オブジェクト種別として「オブジェクト無し」が保持される。 As a result, “image” is held as the current object type in the object information field Of where the image is drawn in the finally obtained image, and nothing other than the object in the portion other than the image from the beginning. In the object information field Of of the part that has not changed, “no object” is held as the object type.
かくして、この第5の描画操作においても、オブジェクト情報フィールドOfには、実際に描画されているオブジェクトの種別と同じ現在オブジェクト種別が保持されることになる。 Thus, also in the fifth drawing operation, the object information field Of holds the same current object type as the type of the object actually drawn.
ここまで説明したように、カラープリンタ1では、様々なROP処理による描画操作を行うときに、常に、カラー画素データCpのオブジェクト情報フィールドOfに記されている現在オブジェクト種別が、実際に描画されているオブジェクトの種別と同じになるようにオブジェクト情報フィールドOfを更新するようになっている。
As described so far, in the
[1−4.効果]
上述したように、カラープリンタ1は、カラー画素コードCdのオブジェクト情報フィールドOfに、XOR演算が行われたかどうかを示すXORフラグと、現在描画されているオブジェクトの種別を示す現在オブジェクト種別と、現在描画されているオブジェクトの前に描画されていたオブジェクトの種別を示す過去オブジェクト種別とを保持させるようにした。
[1-4. effect]
As described above, the
そして、カラープリンタ1は、1回目のXOR演算と同一色で2回目のXOR演算が行われる画素について、オブジェクト情報フィールドOfのXORフラグを参照することで、今回のXOR演算が2回目のXOR演算かどうかを判断し、2回目のXOR演算であると判断すると、オブジェクト情報フィールドOfに記されている過去オブジェクト種別で、現在オブジェクト種別を書き換える。
Then, the
このとき、過去オブジェクト種別には、1回目のXOR演算が行われる前のオブジェクト種別が記されていることから、オブジェクト情報フィールドOfの現在オブジェクト種別は、1回目のXORが行われる前のオブジェクト種別に戻ることになる。 At this time, since the past object type describes the object type before the first XOR operation, the current object type in the object information field Of is the object type before the first XOR. Will return.
この結果、オブジェクト情報フィールドOfには、最後に描画したオブジェクトの種別ではなく、1回目のXOR演算を行う前の元のオブジェクトの種別が保持される。 As a result, the object information field Of holds the type of the original object before the first XOR operation, not the type of the object drawn last.
こうすることで、オブジェクト情報フィールドOfには、現在オブジェクト種別として、実際に描画されているオブジェクトの種別が保持される。 As a result, the object information field Of holds the type of the object actually drawn as the current object type.
かくして、従来問題となっていた、XOR演算を同一色で2回行うことによりオブジェクトの種別が1回目のXOR演算を行う前に戻る場合でも、正確な現在オブジェクト種別を保持することができる。 Thus, even when the XOR operation, which has been a problem in the past, is performed twice with the same color and the object type returns to before the first XOR operation, the correct current object type can be retained.
また、このように、正確な現在オブジェクト種別を得ることができるので、この現在オブジェクト種別を利用して、実際に描画されているオブジェクトの種別ごとに最適な黒生成処理を行うことができ、従来と比して一段と高品位な印刷イメージを生成することができる。 In addition, since an accurate current object type can be obtained in this way, an optimal black generation process can be performed for each type of object actually drawn using the current object type. Compared to the above, it is possible to generate a higher quality print image.
[2.第2の実施の形態]
[2−1.カラープリンタの構成]
次に第2の実施の形態について説明する。図21に、この第2の実施の形態のカラープリンタ100の機能構成を示す。
[2. Second Embodiment]
[2-1. Color printer configuration]
Next, a second embodiment will be described. FIG. 21 shows a functional configuration of the
カラープリンタ100は、データ受信部101と、PDLデータ解析部102と、データ格納部103と、印刷イメージ生成部104と、印刷部105とで構成される。
The
また、上述の印刷イメージ生成部104は、中間コード判別部110と、図形描画部111と、文字描画部112と、イメージ描画部113と、描画処理部114と、カラーマッチング処理部115と、黒生成処理部116とで構成される。
The above-described print
さらに、上述のデータ格納部103は、中間コード格納部117と、印刷イメージ格納部118と、ROP情報格納部119と、カラー情報格納部120とで構成される。
Further, the
このように、このカラープリンタ100は、カラーマッチング処理部115が、印刷イメージ生成部104内に設けられている点が、第1の実施の形態のカラープリンタ1と大きく異なる点である。
As described above, the
そして、このカラープリンタ100では、印刷処理時に、カラープリンタ1とは異なるタイミングで、カラーマッチング処理部115によるカラーマッチング処理(色変換)を行うようになっている。
The
尚、カラープリンタ100は、カラープリンタ1とは異なるタイミングで、カラーマッチング処理を行う点を除けば、基本的に、カラープリンタ1と同様の印刷処理を行うようになっている。
The
ゆえに、ここでは、主に、印刷処理時に、カラーマッチング処理をどのタイミングで行うかについて説明することとする。 Therefore, here, the timing at which the color matching process is performed during the printing process will be mainly described.
[2−2.カラープリンタによる印刷処理]
このカラープリンタ100は、第1の実施の形態で説明した印刷処理概要手順RT1(図4)と同様の手順で印刷処理を行うようになっている。
[2-2. Print processing by color printer]
The
すなわち、印刷処理の概要は、第1の実施の形態と同様であるので、ここでは説明を省略する。 That is, the outline of the printing process is the same as that of the first embodiment, and thus the description thereof is omitted here.
次に、印刷処理概要手順RT1のステップSP2での処理、すなわちPDLデータ解析処理手順RT10について、図22に示すフローチャートを用いて説明する。 Next, the processing in step SP2 of the printing processing outline procedure RT1, that is, the PDL data analysis processing procedure RT10 will be described with reference to the flowchart shown in FIG.
このPDLデータ解析処理手順RT10は、第1の実施の形態で説明したPDLデータ解析処理手順RT2(図5)から、カラーマッチング処理を省略したものである。 In this PDL data analysis processing procedure RT10, the color matching processing is omitted from the PDL data analysis processing procedure RT2 (FIG. 5) described in the first embodiment.
このPDLデータ解析処理手順RT10では、まずステップSP100において、PDLデータ解析部102が、PDLデータに対してコマンド分割を行う。
In this PDL data analysis processing procedure RT10, first, in step SP100, the PDL
つづくステップSP101において、PDLデータ解析部102は、コマンド分割により得られたコマンドを解析して、以降の処理をコマンドの種別ごとに分岐させる。
In subsequent step SP101, the PDL
ここで、得られたコマンドがROP情報であった場合、PDLデータ解析部102は、ステップSP102において、ROP情報格納部119にこのROP情報を格納する。このとき、このROP情報格納部119に以前のROP情報が格納されている場合には、以前のROP情報を、今回のROP情報で更新する。
If the obtained command is ROP information, the PDL
その後、PDLデータ解析部102は、ステップSP111に移る。このステップSP111の処理については、後述する。
Thereafter, the PDL
また、得られたコマンドがカラー情報であった場合、PDLデータ解析部102は、ステップSP103において、カラー情報格納部120にこのカラー情報を格納する。このとき、このカラー情報格納部120に以前のカラー情報が格納されている場合には、以前のカラー情報を、今回のカラー情報で更新する。尚、このカラー情報は、RGB3色のRGBカラー情報である。その後、PDLデータ解析部102は、ステップSP111に移る。
If the obtained command is color information, the PDL
また、得られたコマンドがパターン指定コマンドであった場合、PDLデータ解析部102は、ステップSP104において、このパターン指定コマンドをもとに、パターン指定用の中間コードMc(例えば図2に示すパターン指定コードCd12及びCd13)を生成して、ステップSP110に移る。
If the obtained command is a pattern designation command, the PDL
また、得られたコマンドが図形指定コマンドであった場合、ステップSP105において、PDLデータ解析部102は、図形指定コマンドをもとに、図形指定用の中間コードMc(例えば図2に示す図形指定コードCd14)を生成する。
If the obtained command is a graphic designation command, in step SP105, the PDL
さらに、PDLデータ解析部102は、つづくステップSP108において、カラー情報格納部120に格納されているRGBカラー情報をもとに、色指定用の中間コードMc(例えば図2に示す色指定コードCd11)を生成する。
Further, in step SP108, the PDL
尚、この場合の色指定用の中間コードMcは、CMY3色ではなくRGB3色のそれぞれのカラーレベルを指定するものである。 Note that the intermediate code Mc for color designation in this case designates the color levels of the three RGB colors, not the three CMY colors.
さらに、PDLデータ解析部102は、つづくステップSP109において、ROP情報格納部119に格納されているROP情報をもとに、ROP指定用の中間コードMc(例えば図2に示すROP指定コードCd10)を生成する。
Further, in step SP109, the PDL
そして、PDLデータ解析部102は、つづくステップSP110において、このようにして生成した中間コードMcを、中間コード格納部117に格納する。その後、PDLデータ解析部102は、ステップSP111に移る。
In step SP110, the PDL
また、得られたコマンドが文字指定コマンドであった場合、ステップSP106において、PDLデータ解析部102は、文字指定コマンドをもとに、文字指定用の中間コードMc(例えば図2に示す文字指定コードCd22及びCd23)を生成する。
If the obtained command is a character designation command, in step SP106, the PDL
さらに、PDLデータ解析部102は、つづくステップSP108において、カラー情報格納部120に格納されているRGBカラー情報をもとに、カラー指定用の中間コードMc(例えば図2に示す色指定コードCd21(ただしRGBカラー))を生成する。
Further, in step SP108, the PDL
さらに、PDLデータ解析部102は、つづくステップSP109において、ROP情報格納部119に格納されているROP情報をもとに、ROP指定用の中間コードMc(例えば図2に示すROP指定コードCd20)を生成する。
Further, in step SP109, the PDL
そして、PDLデータ解析部102は、つづくステップSP110において、このようにして生成した中間コードMcを、中間コード格納部117に格納する。その後、PDLデータ解析部102は、ステップSP111に移る。
In step SP110, the PDL
また、得られたコマンドがイメージ指定コマンドであった場合、ステップSP107において、PDLデータ解析部3は、イメージ指定コマンドをもとに、イメージ指定用の中間コードMc(例えば図2に示すイメージ指定コードCd31及びCd32)を生成する。
If the obtained command is an image designation command, in step SP107, the PDL
さらに、PDLデータ解析部102は、つづくステップSP109において、ROP情報格納部119に格納されているROP情報をもとに、ROP指定用の中間コードMc(例えば図2に示すROP指定コードCd30)を生成する。
Further, in step SP109, the PDL
そして、PDLデータ解析部102は、つづくステップSP110において、このようにして生成した中間コードMcを、中間コード格納部117に格納する。その後、PDLデータ解析部102は、ステップSP111に移る。
In step SP110, the PDL
ステップSP111において、PDLデータ解析部102は、PDLデータの終端を検出したかどうか、すなわちPDLデータにまだ解析していないコマンドが残っているか否かを確認する。
In step SP111, the PDL
そして、PDLデータ解析部102は、PDLデータにまだ解析していないコマンドが残っている場合には、ステップSP101に戻り、PDLデータのコマンドを全て解析し終えると、このPDLデータ解析処理手順RT10を終了する。
The PDL
カラープリンタ100は、このようなPDLデータ解析処理手順RT10にそって、PDLデータを解析して、RGB3色でROP処理を行うための中間コードMcを生成するようになっている。
The
次に、印刷処理概要手順RT1(図4)のステップSP3での処理、すなわち印刷イメージ生成処理手順RT11について、図23に示すフローチャートを用いて説明する。 Next, the processing in step SP3 of the printing processing outline procedure RT1 (FIG. 4), that is, the printing image generation processing procedure RT11 will be described with reference to the flowchart shown in FIG.
この印刷イメージ生成処理手順RT11では、まずステップSP120において、中間コード判別部110が、中間コード格納部117に格納されている中間コードMcを解析して、この中間コードMcからコードCdを順に抽出し、以降の処理をコードCdの種別ごとに分岐させる。
In this print image generation processing procedure RT11, first, in step SP120, the intermediate
ここで、抽出したコードCdが、色指定コードCdであった場合、中間コード判別部110は、ステップSP121において、描画処理部114に、この色指定コードCdにより指定されるRGBカラーを示すカラー情報を登録する。
Here, when the extracted code Cd is the color designation code Cd, the intermediate
その後、中間コード判別部110は、ステップSP130に移る。このステップSP130の処理については、後述する。
Thereafter, the intermediate
また、抽出したコードCdが、ROP指定コードCdであった場合、中間コード判別部110は、ステップSP122において、描画処理部114に、このROP指定コードCdにより指定されるROP演算を示すROP情報を登録する。その後、中間コード判別部110は、ステップSP130に移る。
If the extracted code Cd is the ROP designation code Cd, the intermediate
また、抽出したコードCdが、パターン指定コードCdであった場合、中間コード判別部110は、ステップSP123において、描画処理部114に、このパターン指定コードCdにより指定されるパターンを示すパターン情報を登録する。その後、中間コード判別部110は、ステップSP130に移る。
If the extracted code Cd is the pattern designation code Cd, the intermediate
また、抽出したコードCdが、図形指定コードCdであった場合、ステップSP124において、図形描画部111が、描画処理部114にオブジェクト種別として図形を登録する。
If the extracted code Cd is the graphic designation code Cd, the
さらに図形描画部111は、つづくステップSP125において、描画処理部114を利用し、印刷イメージ格納部118のバッファ領域に対して図形描画を行う。
Further, in the subsequent step SP125, the
このとき、描画処理部114は、第1の実施の形態で説明した描画処理概要手順RT4(図7)と同様の手順で、図形指定コードCdと、登録されている各種情報(カラー情報、ROP情報、パターン情報)に基づいて、図形描画を行う。
At this time, the
この結果、Bit#31〜8の3ByteでRGB3色のそれぞれのカラーレベルを示し、Bit#7〜0の1Byteがオブジェクト情報フィールドOfとなるカラー画素データCpが生成され、このカラー画素データCpが印刷イメージ格納部118のバッファ領域に中間イメージのデータとして格納される。
As a result, color pixel data Cp is generated in which 3 bytes of
その後、中間コード判別部110が、ステップSP130に移る。
Thereafter, the intermediate
また、抽出したコードCdが、文字指定コードCdであった場合、ステップSP126において、文字描画部112が、描画処理部114にオブジェクト種別として文字を登録する。
If the extracted code Cd is the character designation code Cd, the
さらに文字描画部112は、つづくステップSP127において、描画処理部114を利用し、印刷イメージ格納部118のバッファ領域に対して文字描画を行う。
Further, in the following step SP127, the
この場合も、描画処理部114は、描画処理概要手順RT4と同様の手順で、文字指定コードCdと、登録されている各種情報(カラー情報、ROP情報、パターン情報)に基づいて、文字描画を行う。
Also in this case, the
この結果、RGB3色のそれぞれのカラーレベルを示すと共にオブジェクト情報フィールドOfを保持するカラー画素データCpが生成され、このカラー画素データCpが印刷イメージ格納部118のバッファ領域に中間イメージのデータとして格納される。
As a result, color pixel data Cp indicating the respective color levels of the three RGB colors and holding the object information field Of is generated, and this color pixel data Cp is stored in the buffer area of the print
その後、中間コード判別部110が、ステップSP130に移る。
Thereafter, the intermediate
また、抽出したコードCdが、イメージ指定コードCdであった場合、ステップSP128において、イメージ描画部113が、描画処理部114にオブジェクト種別としてイメージを登録する。
If the extracted code Cd is the image designation code Cd, the
さらにイメージ描画部113は、つづくステップSP129において、描画処理部114を利用し、印刷イメージ格納部118のバッファ領域に対してイメージ描画を行う。
In step SP129, the
この結果、RGB3色のそれぞれのカラーレベルを示すと共にオブジェクト情報フィールドOfを保持するカラー画素データCpが生成され、このカラー画素データCpが印刷イメージ格納部118のバッファ領域に中間イメージのデータとして格納される。
As a result, color pixel data Cp indicating the respective color levels of the three RGB colors and holding the object information field Of is generated, and this color pixel data Cp is stored in the buffer area of the print
その後、中間コード判別部110が、ステップSP130に移る。
Thereafter, the intermediate
ステップSP130において、中間コード判別部110は、次のコードCdが終端コードCdであるかどうかを確認する。ここで、次のコードCdが終端コードCdでない場合、このことは、処理し終えていないコードCdがまだ残っていることを意味する。このとき、中間コード判別部110は、ステップSP120に戻る。
In step SP130, the intermediate
これに対して、次のコードCdが終端コードCdであった場合、このことは、中間コードMcの全コードCdを処理し終えたことを意味する。この時点で、印刷イメージ格納部118には、中間コードMcに基づくRGBカラーの中間イメージが格納されていることになる。
On the other hand, when the next code Cd is the termination code Cd, this means that all the codes Cd of the intermediate code Mc have been processed. At this time, the RGB image intermediate image based on the intermediate code Mc is stored in the print
このとき、つづくステップSP131において、カラーマッチング処理部115が、印刷イメージ格納部118に格納されている中間イメージをRGBカラーからCMYカラーに色変換するカラーマッチング処理を行う。尚、このカラーマッチング処理について詳しくは後述する。
At this time, in step SP131, the color
この時点で、印刷イメージ格納部118には、中間コードMcに基づくCMYカラーの中間イメージが格納されていることになる。
At this point, the CMY color intermediate image based on the intermediate code Mc is stored in the print
そして、つづくステップSP132において、黒生成処理部116が、印刷イメージ格納部118に格納されているCMYカラーの中間イメージに対して黒生成処理を行う。これにより、CMYKカラーの印刷イメージが生成される。
In step SP132, the black
尚、この黒生成処理は、第1の実施の形態と同様であるので、ここでは詳しい説明を省略する。 Since this black generation process is the same as that in the first embodiment, a detailed description thereof is omitted here.
カラープリンタ100は、このような印刷イメージ生成処理手順RT11で、中間コードMcにもとづく印刷イメージを生成するようになっている。
The
次に、印刷イメージ生成処理手順RT11(図23)のステップSP131でのカラーマッチング処理の手順(これをカラーマッチング処理手順と呼ぶ)RT12について、図24に示すフローチャートを用いて詳しく説明する。 Next, the color matching processing procedure RT12 (referred to as color matching processing procedure) RT12 in step SP131 of the print image generation processing procedure RT11 (FIG. 23) will be described in detail with reference to the flowchart shown in FIG.
このカラーマッチング処理手順RT12では、まずステップSP140において、カラーマッチング処理部115が、印刷イメージ格納部118に格納されてい中間イメージの各画素のオブジェクト情報フィールドOfのBit#2を確認する。
In this color matching processing procedure RT12, first, in step SP140, the color
ここで、Bit#2が1であれば、このことは、画素の現在オブジェクト種別がイメージであることを意味する。このとき、カラーマッチング処理部115は、ステップSP141に移り、このステップSP141において、イメージ用のカラーマッチング処理を行うことで、画素のカラー情報をRGBカラーからCMYカラーに変換する。
Here, if
一方で、オブジェクト情報フィールドOfのBit#2が0であれば、このことは、画素の現在オブジェクト種別がイメージではないことを意味する。このとき、カラーマッチング処理部115は、ステップSP142に移り、このステップSP142において、オブジェクト情報フィールドOfのBit#1を確認する。
On the other hand, if
ここで、Bit#1が1であれば、このことは、画素の現在オブジェクト種別が文字であることを意味する。このとき、カラーマッチング処理部115は、ステップSP143に移り、このステップSP143において、文字用のカラーマッチング処理を行うことで、画素のカラー情報をRGBカラーからCMYカラーに変換する。
Here, if
一方で、オブジェクト情報フィールドOfのBit#1が0であれば、このことは、画素の現在オブジェクト種別がイメージでも文字でもなく図形であることを意味する。このとき、カラーマッチング処理部115は、ステップSP144に移り、このステップSP144において、図形用のカラーマッチング処理を行うことで、画素のカラー情報をRGBカラーからCMYカラーに変換する。
On the other hand, if
このようにして、カラーマッチング処理部115は、オブジェクト種別ごとに最適なカラーマッチング処理を行うようになっている。
In this way, the color
そして、実際、カラーマッチング処理部115は、このカラーマッチング処理を、印刷イメージ格納部17に格納されている中間イメージの画素ごとに行うことで、中間イメージの各画素のカラー画素データCpを更新する。
In practice, the color
かくして、印刷イメージ格納部17に格納されている中間イメージがRGBカラーからCMYカラーに変換されたことになる。
Thus, the intermediate image stored in the print
カラーマッチング処理部115は、このようなカラーマッチング処理手順RT12にそって、カラーマッチング処理を行うことにより、中間イメージをRGBカラーからCMYカラーに変換するようになっている。
The color
この第2の実施の形態のカラープリンタ100によれば、一般的にハードウェア処理されるカラーマッチング処理と黒生成処理とを、印刷イメージ生成部104で連続して行うようになり、こうすることで、印刷イメージの生成を高速化することができる。
According to the
また、このカラープリンタ100によれば、ROP処理を、RGBカラーのまま行うので、より正確な印刷イメージを得ることができるとも言える。
Further, according to this
[3.他の実施の形態]
[3−1.他の実施の形態1]
上述した第1及び第2の実施の形態では、オブジェクト情報フィールドOfに記されている現在オブジェクト種別を利用して、カラーマッチング処理や黒生成処理を行うようにした。
[3. Other Embodiments]
[3-1. Other Embodiment 1]
In the first and second embodiments described above, color matching processing and black generation processing are performed using the current object type described in the object information field Of.
これに限らず、カラーマッチング処理や黒生成処理以外にも、オブジェクト種別ごとに行う処理があれば、この処理を、オブジェクト情報フィールドOfに記されている現在オブジェクト種別を利用して行うようにしてもよい。 In addition to the color matching process and the black generation process, if there is a process to be performed for each object type, this process is performed using the current object type described in the object information field Of. Also good.
例えば、この現在オブジェクト種別を、特色(白やクリア)の設定に利用してもよい。この場合、例えば、カラー画素コードCdに保持されているCMYのカラーレベルが全て0であり、且つ現在オブジェクト種別に、図形、文字、イメージのいずれかが示されている場合、このオブジェクトの色を特色に設定するようにする。 For example, the current object type may be used for setting a spot color (white or clear). In this case, for example, when the CMY color levels held in the color pixel code Cd are all 0, and the current object type indicates any one of a figure, a character, and an image, the color of this object is changed. Set to spot color.
[3−2.他の実施の形態2]
また、上述した第1及び第2の実施の形態では、カラー画素コードCdのBit#0〜7をオブジェクト情報フィールドOfとして利用するようにした。
[3-2. Other Embodiment 2]
In the first and second embodiments described above,
これに限らず、オブジェクト情報フィールドOfを、カラー画素コードCdとは別に、例えば印刷イメージ格納部17に格納するようにしてもよい。
For example, the object information field Of may be stored in the print
尚、このようにオブジェクト情報フィールドOfとカラー画素コードCdとを別々に保持する場合、これらを、画素ごとに紐付けて保持するようにすればよい。 When the object information field Of and the color pixel code Cd are held separately as described above, these may be held in association with each pixel.
[3−3.他の実施の形態3]
さらに、上述した第1及び第2の実施の形態では、ROP3に基づくROP処理を行うカラープリンタ1及び100に本発明を適用したが、これに限らず、XOR演算を同一色で2回行うことにより色が1回目のXOR演算を行う前の色に戻るようなROP処理を行うものであれば、カラープリンタ1及び100以外のカラープリンタに本発明を適用してもよい。
[3-3. Other Embodiment 3]
Furthermore, in the first and second embodiments described above, the present invention is applied to the
[3−4.他の実施の形態4]
さらに、上述した第1及び第2の実施の形態では、文字用の黒生成処理と図形用の黒生成処理を同様の処理(CMYのグレー成分をKのみのグレー成分に置き換える処理)とした。
[3-4. Other Embodiment 4]
Furthermore, in the first and second embodiments described above, the black generation process for characters and the black generation process for graphics are the same process (a process in which the CMY gray component is replaced with a K-only gray component).
これに限らず、文字用の黒生成処理と図形用の黒生成処理を、CMYとKの配分を変えるようにして、異なる処理にしてもよい。 However, the present invention is not limited to this, and the black generation process for characters and the black generation process for graphics may be different processes by changing the distribution of CMY and K.
[3−5.他の実施の形態5]
さらに、上述した第1の実施の形態では、カラープリンタ1を、データ受信部2、PDLデータ解析部3、カラーマッチング処理部4、データ格納部5、印刷イメージ生成部6、印刷部7により構成したが、これらは、任意のソフトウェア又はハードウェアで実装されるものである。
[3-5. Other Embodiment 5]
Further, in the above-described first embodiment, the
第2の実施の形態のカラープリンタ100についても同様であり、データ受信部101、PDLデータ解析部102、データ格納部103、印刷イメージ生成部104、印刷部105は、任意のソフトウェア又はハードウェアで実装されるものである。
The same applies to the
[3−6.他の実施の形態6]
さらに、上述した第1及び第2の実施の形態では、画像処理装置としてのカラープリンタ1及び100に本発明を適用したが、これに限らず、カラープリンタ1や100と同様に、ROP処理を行う装置であれば、ファクシミリ、MFP(Multi Function Product:複合機)、コピー機などに適用することができる。
[3-6. Other Embodiment 6]
Furthermore, in the first and second embodiments described above, the present invention is applied to the
[3−7.他の実施の形態7]
さらに、本発明は、上述した第1及び第2の実施の形態と、上述した他の実施の形態とに限定されるものではない。すなわち本発明は、上述した第1及び第2の実施の形態と上述した他の実施の形態の一部または全部を任意に組み合わせた実施の形態や、一部を抽出した実施の形態にもその適用範囲が及ぶものである。
[3-7. Other Embodiment 7]
Furthermore, the present invention is not limited to the first and second embodiments described above and the other embodiments described above. That is, the present invention is also applicable to an embodiment in which a part or all of the first and second embodiments described above and the other embodiments described above are arbitrarily combined, or an embodiment in which a part is extracted. The scope of application extends.
本発明は、ROP処理を行う印刷装置で広く利用することができる。 The present invention can be widely used in printing apparatuses that perform ROP processing.
1、100……カラープリンタ、2、101……データ受信部、3、102……PDLデータ解析部、4、115……カラーマッチング処理部、5、103……データ格納部、6、104……印刷イメージ生成部、7、105……印刷部、10、110……中間コード判別部、11、111……図形描画部、12、112……文字描画部、13、113……イメージ描画部、14、114……描画処理部、15、116…黒生成処理部、16、117……中間コード格納部、17、118……印刷イメージ格納部、18、119……ROP情報格納部、19、120……カラー情報格納部、Cd……コード、Of……オブジェクト情報フィールド、Mc……中間コード。 DESCRIPTION OF SYMBOLS 1,100 ... Color printer, 2, 101 ... Data receiving part, 3, 102 ... PDL data analysis part, 4, 115 ... Color matching process part, 5, 103 ... Data storage part, 6, 104 ... ... Print image generation unit, 7, 105 ... Printing unit, 10, 110 ... Intermediate code discrimination unit, 11, 111 ... Graphic drawing unit, 12, 112 ... Character drawing unit, 13, 113 ... Image drawing unit , 14, 114... Drawing processing unit, 15, 116... Black generation processing unit, 16, 117... Intermediate code storage unit, 17, 118... Print image storage unit, 18, 119. 120 ... color information storage unit, Cd ... code, Of ... object information field, Mc ... intermediate code.
Claims (17)
上記中間イメージの画素ごとの画素データを格納するデータ格納部と
を有し、
上記画素データには、ラスタオペレーション演算としてXOR演算が実施されたかどうかを示すXOR情報と、現在のオブジェクトの種別を示す現在オブジェクト種別と、現在のオブジェクトの前に描画されていたオブジェクトの種別を示す過去オブジェクト種別とが、オブジェクト情報として記され、
上記イメージ生成部は、
上記画素データのXOR情報にXOR演算が実施済みである旨が記されている状態で、1回目のXOR演算と同一色で2回目のXOR演算を行う場合に、上記画素データに記されている現在オブジェクト種別を、上記画素データに過去オブジェクト種別として記されている種別に書き換えることで、上記画素データに記されている現在オブジェクト種別を1回目のXOR演算が行われる前のオブジェクトの種別に戻す
画像処理装置。 An image generation unit that generates an intermediate image by drawing an object by a specified raster operation calculation based on an intermediate code obtained by analyzing input data;
A data storage unit for storing pixel data for each pixel of the intermediate image,
The pixel data indicates XOR information indicating whether or not an XOR operation has been performed as a raster operation operation, a current object type indicating the type of the current object, and a type of an object drawn before the current object. The past object type is described as object information,
The image generation unit
When the second XOR operation is performed with the same color as the first XOR operation in the state that the XOR operation has been performed in the XOR information of the pixel data, it is described in the pixel data. By rewriting the current object type to the type described as the past object type in the pixel data, the current object type described in the pixel data is returned to the type of the object before the first XOR operation is performed. Image processing device.
上記画素データのXOR情報にXOR演算が実施済みである旨が記されている状態で、1回目のXOR演算と同一色で2回目のXOR演算を行う場合に、上記画素データに記されている現在オブジェクト種別を、上記画素データに過去オブジェクト種別として記されている種別に書き換えると共に、
XOR演算が未実施である旨を示すように上記XOR情報を書き換える
請求項1に記載の画像処理装置。 The image generation unit
When the second XOR operation is performed with the same color as the first XOR operation in the state that the XOR operation has been performed in the XOR information of the pixel data, it is described in the pixel data. While rewriting the current object type to the type described as the past object type in the pixel data,
The image processing apparatus according to claim 1, wherein the XOR information is rewritten to indicate that an XOR operation has not been performed.
上記中間イメージをもとに黒生成処理を行うことで、印刷イメージを生成する黒生成処理部を有し、
上記黒生成処理部は、
上記中間イメージの画素データに記されている現在オブジェクト種別をもとに現在のオブジェクトの種別を識別し、識別したオブジェクトの種別に適した黒生成処理を行う
請求項2に記載の画像処理装置。 The image generation unit
A black generation processing unit that generates a print image by performing black generation processing based on the intermediate image,
The black generation processing unit
The image processing apparatus according to claim 2, wherein the current object type is identified based on the current object type described in the pixel data of the intermediate image, and black generation processing suitable for the identified object type is performed.
上記画素データのXOR情報にXOR演算が未実施である旨が記されている状態で、XOR演算を行った場合に、
上記画素データに記されている過去オブジェクト種別を、上記画素データに現在オブジェクト種別として記されている種別に書き換え、
さらに、上記画素データに記されている現在オブジェクト種別を、今回のXOR演算で描画したオブジェクトの種別に更新し、
さらに、XOR演算が実施済みである旨を示すように上記XOR情報を更新する
請求項3に記載の画像処理装置。 The image generation unit
When the XOR operation is performed in the state where the XOR operation is not performed in the XOR information of the pixel data,
The past object type written in the pixel data is rewritten to the type written as the current object type in the pixel data,
Furthermore, the current object type described in the pixel data is updated to the type of the object drawn by the current XOR operation,
The image processing apparatus according to claim 3, further comprising updating the XOR information so as to indicate that the XOR operation has been performed.
ラスタオペレーション演算として、ソースとディスティネーションのOR演算を行う場合に、
ソースの色が白であれば、上記画素データのオブジェクト情報を更新しない
請求項4に記載の画像処理装置。 The image generation unit
When performing OR operation of source and destination as raster operation calculation,
The image processing apparatus according to claim 4, wherein the object information of the pixel data is not updated if the source color is white.
ラスタオペレーション演算として、ソースとディスティネーションのOR演算を行う場合に、
上記ソースの色が白以外であり、且つ上記画素データのXOR情報にXOR演算が未実施である旨が記されていれば、
上記画素データに記されている現在オブジェクト種別を、今回のOR演算で描画するオブジェクトの種別に書き換え、
上記ソースの色が白以外であり、且つ上記画素データのXOR情報にXOR演算が実施済みである旨が記されていれば、
上記画素データに記されている過去オブジェクト種別を、上記画素データに現在オブジェクト種別として記されている種別に書き換え、
さらに上記画素データに記されている現在オブジェクト種別を、今回のOR演算で描画するオブジェクトの種別に書き換える
請求項4に記載の画像処理装置。 The image generation unit
When performing OR operation of source and destination as raster operation calculation,
If the source color is other than white and the XOR information of the pixel data indicates that the XOR operation has not been performed,
Rewrite the current object type written in the pixel data to the type of object to be drawn by this OR operation,
If the source color is other than white and the XOR information of the pixel data indicates that an XOR operation has been performed,
The past object type written in the pixel data is rewritten to the type written as the current object type in the pixel data,
The image processing apparatus according to claim 4, wherein the current object type written in the pixel data is rewritten to an object type to be drawn by a current OR operation.
ラスタオペレーション演算として、パターンとディスティネーションのOR演算を行う場合に、
上記パターンの色が白であれば、
上記画素データのオブジェクト情報を更新しない
請求項4に記載の画像処理装置。 The image generation unit
When performing the OR operation of the pattern and destination as the raster operation calculation,
If the pattern is white,
The image processing apparatus according to claim 4, wherein the object information of the pixel data is not updated.
ラスタオペレーション演算として、パターンとディスティネーションのOR演算を行う場合に、
上記パターンの色が白以外であり、且つ上記画素データのXOR情報にXOR演算が未実施である旨が記されていれば、
上記画素データに記されている現在オブジェクト種別を、今回のOR演算で描画するオブジェクトの種別に書き換え、
上記パターンの色が白以外であり、且つ上記画素データのXOR情報にXOR演算が実施済みである旨が記されていれば、
上記画素データに記されている過去オブジェクト種別を、上記画素データに現在オブジェクト種別として記されている種別に書き換え、
さらに上記画素データに記されている現在オブジェクト種別を、今回のOR演算で描画するオブジェクトの種別に書き換える
請求項4に記載の画像処理装置。 The image generation unit
When performing the OR operation of the pattern and destination as the raster operation calculation,
If the color of the pattern is other than white and the XOR information of the pixel data indicates that the XOR operation has not been performed,
Rewrite the current object type written in the pixel data to the type of object to be drawn by this OR operation,
If the color of the pattern is other than white and the XOR information of the pixel data indicates that the XOR operation has been performed,
The past object type written in the pixel data is rewritten to the type written as the current object type in the pixel data,
The image processing apparatus according to claim 4, wherein the current object type written in the pixel data is rewritten to an object type to be drawn by a current OR operation.
ラスタオペレーション演算として、ソースとディスティネーションのAND演算を行う場合、もしくは、パターンとディスティネーションのAND演算を行う場合に、
上記ディスティネーションの色が黒以外であれば、
上記画素データのオブジェクト情報を更新しない
請求項4に記載の画像処理装置。 The image generation unit
As a raster operation calculation, when performing AND operation of source and destination, or when performing AND operation of pattern and destination,
If the destination color is not black,
The image processing apparatus according to claim 4, wherein the object information of the pixel data is not updated.
ラスタオペレーション演算として、ソースとディスティネーションのAND演算を行う場合、もしくは、パターンとディスティネーションのAND演算を行う場合に、
上記ディスティネーションの色が黒であれば、
上記画素データに記されている現在オブジェクト種別を、今回のAND演算で描画するオブジェクトの種別に書き換える
請求項4に記載の画像処理装置。 The image generation unit
As a raster operation calculation, when performing AND operation of source and destination, or when performing AND operation of pattern and destination,
If the destination color is black,
The image processing apparatus according to claim 4, wherein the current object type described in the pixel data is rewritten to a type of an object to be drawn by a current AND operation.
ラスタオペレーション演算として、パターンとソースのANDと、ソースのNOTとディスティネーションのANDとのOR演算を行う場合に、
上記ソースの色が白であれば、
上記画素データのオブジェクト情報を更新せず、
上記ソースの色が白以外であれば、
上記画素データに記されている現在オブジェクト種別を、今回のOR演算で描画するオブジェクトの種別に書き換える
請求項4に記載の画像処理装置。 The image generation unit
As a raster operation calculation, when performing an OR operation between a pattern and source AND, and a source NOT and destination AND,
If the source color is white,
Without updating the object information of the pixel data,
If the source color is other than white,
The image processing apparatus according to claim 4, wherein the current object type described in the pixel data is rewritten to a type of an object to be drawn by a current OR operation.
上記データ解析部により上記入力されたデータを解析することで得られた、オブジェクトの描画色を指定するカラー情報を、オブジェクトの種別に適したカラーマッチング処理により色変換するカラーマッチング処理部と
をさらに有し、
上記データ解析部は、
上記入力されたデータと色変換後のカラー情報をもとに、当該色変換後のカラー情報でなる中間イメージを生成するための上記中間コードを生成する
請求項4に記載の画像処理装置。 A data analysis unit that analyzes the input data and generates the intermediate code;
A color matching processing unit for color-converting color information specifying the drawing color of the object obtained by analyzing the input data by the data analysis unit by color matching processing suitable for the type of the object; Have
The data analysis part
The image processing apparatus according to claim 4, wherein the intermediate code for generating an intermediate image composed of the color information after color conversion is generated based on the input data and color information after color conversion.
生成した上記中間イメージのカラー情報を、オブジェクトの種別に適したカラーマッチング処理により色変換するカラーマッチング処理部を有し、
上記カラーマッチング処理部は、
上記中間イメージの画素データに記されている現在オブジェクト種別によりオブジェクトの種別を識別して、上記カラーマッチング処理による色変換を行い、
上記黒生成処理部は、
上記カラーマッチング処理部により色変換された中間イメージをもとに黒生成処理を行う
請求項3に記載の画像処理装置。 The image generation unit
A color matching processing unit that converts the color information of the generated intermediate image by color matching processing suitable for the type of object;
The color matching processing unit
Identify the object type by the current object type written in the pixel data of the intermediate image, perform color conversion by the color matching process,
The black generation processing unit
The image processing apparatus according to claim 3, wherein black generation processing is performed based on the intermediate image color-converted by the color matching processing unit.
請求項3に記載の画像処理装置。 The image processing apparatus according to claim 3, wherein the pixel data includes color information for each pixel of the intermediate image in addition to the object information.
上記黒生成処理部は、
上記黒生成処理を行うことで、上記画素データのオブジェクト情報を黒のカラー情報に書き換える
請求項14に記載の画像処理装置。 In the pixel data, in addition to the object information, color information of three colors of cyan, magenta, and yellow is written as color information for each pixel of the intermediate image.
The black generation processing unit
The image processing device according to claim 14, wherein the object information of the pixel data is rewritten to black color information by performing the black generation processing.
請求項3に記載の画像処理装置。 The image processing apparatus according to claim 3, further comprising a printing unit that prints the print image generated by the image generation unit.
ラスタオペレーション演算としてXOR演算が実施されたかどうかを示すXOR情報と、現在のオブジェクトの種別を示す現在オブジェクト種別と、現在のオブジェクトの前に描画されていたオブジェクトの種別を示す過去オブジェクト種別とが、オブジェクト情報として記されている、中間イメージの画素ごとの画素データを参照し、
上記画素データのXOR情報にXOR演算が実施済みである旨が記されている状態で、1回目のXOR演算と同一色で2回目のXOR演算を行う場合に、上記画素データに記されている現在オブジェクト種別を、上記画素データに過去オブジェクト種別として記されている種別に書き換えることで、上記画素データに記されている現在オブジェクト種別を1回目のXOR演算が行われる前のオブジェクトの種別に戻す
画像処理方法 Based on the intermediate code obtained by analyzing the input data, when generating the intermediate image by drawing the object with the specified raster operation calculation,
XOR information indicating whether an XOR operation has been performed as a raster operation operation, a current object type indicating the type of the current object, and a past object type indicating the type of the object drawn before the current object are: Refer to the pixel data for each pixel of the intermediate image, which is written as object information,
When the second XOR operation is performed with the same color as the first XOR operation in the state that the XOR operation has been performed in the XOR information of the pixel data, it is described in the pixel data. By rewriting the current object type to the type described as the past object type in the pixel data, the current object type described in the pixel data is returned to the type of the object before the first XOR operation is performed. Image processing method
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013007190A JP5941848B2 (en) | 2013-01-18 | 2013-01-18 | Image processing apparatus and image processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013007190A JP5941848B2 (en) | 2013-01-18 | 2013-01-18 | Image processing apparatus and image processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014138363A JP2014138363A (en) | 2014-07-28 |
JP5941848B2 true JP5941848B2 (en) | 2016-06-29 |
Family
ID=51415638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013007190A Active JP5941848B2 (en) | 2013-01-18 | 2013-01-18 | Image processing apparatus and image processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5941848B2 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3687721B2 (en) * | 1998-12-09 | 2005-08-24 | 富士ゼロックス株式会社 | Image processing apparatus, image processing method, and image processing system |
JP4539801B2 (en) * | 2001-03-13 | 2010-09-08 | 富士ゼロックス株式会社 | Image processing apparatus and image forming apparatus |
JP4997924B2 (en) * | 2006-11-01 | 2012-08-15 | セイコーエプソン株式会社 | Print data generation apparatus and print data generation method |
JP4944761B2 (en) * | 2007-12-27 | 2012-06-06 | キヤノン株式会社 | Image processing apparatus, image processing method, and program |
JP5391861B2 (en) * | 2009-06-19 | 2014-01-15 | 株式会社リコー | Image forming apparatus, color conversion control method, color conversion control program, and information processing apparatus having printer driver |
-
2013
- 2013-01-18 JP JP2013007190A patent/JP5941848B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014138363A (en) | 2014-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5067276B2 (en) | Color conversion method, color conversion table generated by the color conversion method, image processing apparatus, and color conversion program | |
JP4544109B2 (en) | Image processing apparatus and program | |
JP5553139B2 (en) | Image processing apparatus and image processing program | |
JP4677379B2 (en) | Image processing apparatus and image processing method | |
US20150178962A1 (en) | Image processing apparatus, image forming apparatus, image generating method, and medium | |
JP2012232590A (en) | System and program for forming image | |
US9218552B2 (en) | Image processing apparatus and image processing method | |
JP4682628B2 (en) | Image processing apparatus, method, and program | |
JP5941848B2 (en) | Image processing apparatus and image processing method | |
US8750612B2 (en) | Image processing apparatus and computer readable medium | |
JP7077451B2 (en) | Image forming apparatus and control method of image forming apparatus, and program | |
US20080013134A1 (en) | Image processing device, image processing method, computer readable medium, and computer data signal | |
JP6794821B2 (en) | Image processing equipment and computer programs | |
US7443538B2 (en) | Method of controlling printed line quality | |
JP4455261B2 (en) | Image processing method, image processing apparatus, and image forming system | |
JP2016005201A (en) | Image processing system, image processing method, and program | |
EP2860956B1 (en) | Method for converting print data into a raster image | |
US11922242B2 (en) | Image forming apparatus, image forming method, and storage medium | |
JP2003283855A (en) | Picture processor, program, and recording medium | |
JP2010135986A (en) | Output system | |
AU2015202676A1 (en) | Systems and methods for efficient halftone screening | |
JP2006059320A (en) | Method and system for application page description in print device color space | |
JP6140973B2 (en) | Image processing apparatus, image processing method, and program | |
JP2008136065A (en) | Profile correction device, profile correcting method, and image forming apparatus and program | |
CN103856685A (en) | Image Processing Apparatus and Image Processing Method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150316 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160209 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160404 |
|
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: 20160426 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160523 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5941848 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |