JP2010146255A - Vector graphics drawing device - Google Patents
Vector graphics drawing device Download PDFInfo
- Publication number
- JP2010146255A JP2010146255A JP2008322186A JP2008322186A JP2010146255A JP 2010146255 A JP2010146255 A JP 2010146255A JP 2008322186 A JP2008322186 A JP 2008322186A JP 2008322186 A JP2008322186 A JP 2008322186A JP 2010146255 A JP2010146255 A JP 2010146255A
- Authority
- JP
- Japan
- Prior art keywords
- tile
- buffer
- processing
- contour
- unit
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000002156 mixing Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000004148 unit process Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Images
Landscapes
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
Description
この発明は、描画領域を複数のタイル領域で分割し、当該タイル領域毎に、輪郭が数式で定義されたベクトル図形の描画を行うベクトル図形描画装置に関するものである。 The present invention relates to a vector graphic drawing apparatus that divides a drawing area into a plurality of tile areas and draws a vector graphic whose contour is defined by a mathematical expression for each tile area.
ベクトル図形やアウトラインフォントは輪郭が数式で定義されており、拡大・縮小・回転等の変形が容易にでき、また変形しても画質が劣化しなという特徴がある。ベクトル図形やアウトラインフォントを液晶ディスプレイ等の表示デバイスへ表示させる場合にはラスタデータへ変換する必要があり、座標変換を行い所望の大きさへ変換した後、輪郭の数式に従い輪郭を描画し、内部を塗り潰すという処理が必要となる。この処理は、通常CPUによるソフトウェア処理により行われているが、ハードウェアにより高速に描画を行わせる場合もある。 Vector graphics and outline fonts have contours defined by mathematical formulas, and can be easily deformed such as enlarged, reduced, and rotated, and the image quality does not deteriorate even when deformed. When displaying vector graphics and outline fonts on a display device such as a liquid crystal display, it is necessary to convert them to raster data. After converting the coordinates to the desired size, draw the contour according to the contour formula, The process of painting out is required. This processing is normally performed by software processing by the CPU, but there are cases where drawing is performed at high speed by hardware.
従来、ベクトル図形やアウトラインフォントの描画処理において必要となる輪郭の情報を格納するワークメモリの容量を減らすために、小容量のワークメモリを内蔵し、描画する図形または文字がワークメモリの領域を超える場合には、ワークメモリ領域相当のタイル単位に分割して描画する方法があった(例えば、特許文献1参照)。 Conventionally, in order to reduce the amount of work memory that stores outline information required for drawing processing of vector graphics and outline fonts, a small amount of work memory is built in, and the graphics or characters to be drawn exceed the work memory area. In some cases, there has been a method of drawing by dividing into tile units corresponding to the work memory area (see, for example, Patent Document 1).
上記のような従来の図形描画装置では、有効描画領域をタイル単位に分割し、分割した各領域について順次処理を行う。しかしながら、このように順次処理を行うことから、図形が存在しない領域も同様に処理を行うことになる。その結果、ベクトル図形の形状によっては無駄なタイル領域に対する処理の割合が大きくなり、描画の効率が悪くなるという問題があった。 In the conventional graphic drawing apparatus as described above, the effective drawing area is divided into tile units, and the divided areas are sequentially processed. However, since the processing is sequentially performed in this way, a region where no graphic is present is similarly processed. As a result, depending on the shape of the vector graphic, there is a problem in that the ratio of processing to a useless tile area increases and drawing efficiency deteriorates.
この発明は上記のような課題を解決するためになされたもので、無駄なタイル領域に対する処理を省き、高速に動作するベクトル図形描画装置を得ることを目的とする。 The present invention has been made to solve the above-described problems, and an object of the present invention is to obtain a vector graphic drawing apparatus that operates at high speed while omitting processing for useless tile areas.
この発明に係るベクトル図形描画装置は、輪郭の曲線を複数の微小直線へと分割する曲線分割部と、直線とスキャンラインとの交点の情報を求める輪郭描画部と、輪郭描画部で求めた情報を保持する輪郭バッファと、輪郭バッファに保持された情報を読み出して画素を生成する画素生成部と、タイル領域の処理方向においてどのタイル領域が有効かを示すフラグを保持する有効タイルフラグバッファと、曲線分割部と輪郭描画部と画素生成部が、タイル領域単位で処理を行うよう制御すると共に、有効タイルフラグバッファを参照して次にどのタイル領域について処理を行うかを判断する制御部とを備えたものである。 The vector graphic drawing apparatus according to the present invention includes a curve dividing unit that divides a contour curve into a plurality of minute straight lines, a contour drawing unit that obtains information on intersections between straight lines and scan lines, and information obtained by the contour drawing unit , A pixel generation unit that reads out information stored in the contour buffer and generates pixels, an effective tile flag buffer that holds a flag indicating which tile area is valid in the processing direction of the tile area, The curve dividing unit, the contour drawing unit, and the pixel generation unit are controlled to perform processing in units of tile areas, and a control unit that determines which tile area is to be processed next with reference to the effective tile flag buffer. It is provided.
この発明のベクトル図形描画装置は、タイル領域の処理方向においてどのタイル領域が有効かを示すフラグを保持する有効タイルフラグバッファを備え、この有効タイルフラグバッファを参照して次にどのタイル領域について処理を行うかを判断するようにしたので、無駄なタイル領域に対する処理を省くことができ、高速な描画を行うことができる。 The vector graphic drawing apparatus according to the present invention includes an effective tile flag buffer that holds a flag indicating which tile area is valid in the processing direction of the tile area, and which tile area is processed next with reference to the effective tile flag buffer. Therefore, it is possible to omit processing for useless tile areas and to perform high-speed drawing.
実施の形態1.
図1は、この発明の実施の形態1によるベクトル図形描画装置を示す構成図である。
図において、ベクトル図形描画装置10は、座標変換部11、入力バッファ12、曲線分割部13、輪郭描画部14、輪郭バッファ15、有効タイルフラグバッファ16、補助バッファ17、画素生成部18、制御部19を備えている。
FIG. 1 is a block diagram showing a vector graphic drawing apparatus according to
In the figure, a vector graphic drawing apparatus 10 includes a coordinate conversion unit 11, an
座標変換部11は、入力されるベクトルデータに座標変換処理を施してフレームバッファ20上の座標へと変換する処理部である。入力バッファ12は、座標変換部11から出力されるベクトルデータを格納するバッファである。曲線分割部13は、入力バッファ12に格納されたデータを読み出して曲線から微小線分への分割を行う処理部である。輪郭描画部14は、曲線分割部13から出力される直線についてラスタライズ処理を行い、輪郭情報の描画および有効なタイル領域の判定を行う処理部である。輪郭バッファ15は、輪郭描画部14から出力される輪郭情報を保持するバッファである。有効タイルフラグバッファ16は、輪郭描画部14で判定された有効なタイル領域の情報を保持するバッファである。補助バッファ17は、輪郭バッファ15の縦一列分の輪郭情報を保持するバッファである。画素生成部18は、輪郭バッファ15および補助バッファ17を参照して描画する画素を生成する処理部である。制御部19は、各処理部の制御を行う制御部である。また、フレームバッファ20は、描画結果のイメージを保持するバッファである。
The coordinate conversion unit 11 is a processing unit that performs coordinate conversion processing on input vector data and converts the vector data into coordinates on the
尚、ベクトル図形描画装置10はコンピュータを用いて実現され、座標変換部11、曲線分割部13、輪郭描画部14、画素生成部18および制御部19は、それぞれの処理に対応したソフトウェアと、このソフトウェアを実行するためのCPUやメモリ等のハードウェアから構成されるか、あるいはそれぞれが専用のハードウェアで構成されている。また、入力バッファ12、輪郭バッファ15および有効タイルフラグバッファ16は、それぞれメモリ上に設けられる一時記憶部である。
The vector graphic drawing apparatus 10 is realized by using a computer. The coordinate conversion unit 11, the
また、アウトラインフォントはベクトル図形の一種であると考えられるため、以下、アウトラインフォントも含めてベクトル図形として説明する。更に、実施の形態では、描画領域における横方向をタイル領域の処理方向として説明する。 Since the outline font is considered to be a kind of vector graphic, it will be described as a vector graphic including the outline font. Furthermore, in the embodiment, the horizontal direction in the drawing area will be described as the processing direction of the tile area.
次に、実施の形態1のベクトル図形描画装置の動作について説明する。
ベクトル図形描画装置10の初期状態として、入力バッファ12は空の状態であり、輪郭バッファ15、有効タイルフラグバッファ16および補助バッファ17は全て初期値“0”に初期化されているものとする。
また、図を簡略化するため、ここでは、輪郭バッファ15は8×8ピクセルのタイル分の容量をもっているものとする。また、有効タイルフラグバッファ16は1つのタイル領域当たり1ビットの情報を持つ1次元のバッファである。また、補助バッファ17は上述したように輪郭バッファ15の縦一列分の容量を持つバッファである。
Next, the operation of the vector graphic drawing apparatus of the first embodiment will be described.
As an initial state of the vector graphic drawing apparatus 10, it is assumed that the
In order to simplify the drawing, it is assumed here that the
ベクトル図形描画装置10が、ベクトル図形の描画を行う際には、先ず、図示しない上位装置より、図形の色等の属性を指定され、図形の輪郭を構成するベクトルデータが入力される。あるいは、図示しない外部メモリに格納されているベクトルデータをベクトル図形描画装置10が読み出してきても良い。図形の輪郭を構成するベクトルデータは、コマンドとXY座標で構成されており、図2に示すように直線の頂点や曲線の頂点および制御点により輪郭が定義される。また、以後の説明ではXY座標の原点は左上に存在するものとする。 When the vector graphic drawing apparatus 10 draws a vector graphic, first, an attribute such as the color of the graphic is designated from a host device (not shown), and vector data constituting the outline of the graphic is input. Alternatively, the vector graphic drawing apparatus 10 may read out vector data stored in an external memory (not shown). The vector data constituting the contour of the figure is composed of commands and XY coordinates, and the contour is defined by the vertices of straight lines, the vertices of curves, and control points as shown in FIG. In the following description, it is assumed that the origin of the XY coordinates exists at the upper left.
入力されたベクトルデータは、座標変換部11へ入力される。座標変換部11では文字の拡大縮小、回転、平行移動等を行うために、予め設定された変換行列に従いベクトルデータの座標に対して順次座標変換処理を施して、描画するフレームバッファ20上の座標へ変換して入力バッファ12へ格納する。また、その際に座標変換後のX座標およびY座標について最小値および最大値を記憶しておく。
The input vector data is input to the coordinate conversion unit 11. The coordinate conversion unit 11 performs coordinate conversion processing on the coordinates of the vector data in accordance with a preset conversion matrix in order to perform enlargement / reduction, rotation, translation, etc. of characters, and the coordinates on the
一つの図形を構成するベクトルデータが全て入力バッファ12へ格納されると、座標変換部11には図3に示すように図形を構成するベクトルデータのX座標およびY座標についてそれぞれ最小値および最大値(Xmin,Ymin,Xmax,Ymax)が記憶されている。ここでは座標変換の結果、図3のように図形が縦横それぞれタイル領域(輪郭バッファ15の大きさ)6個分にまたがる大きさになったものとして説明する。
When all the vector data constituting one figure is stored in the
一つの図形を構成するベクトルデータが全て入力バッファ12へ格納されると、制御部19は曲線分割部13に処理の開始を指示する。その際に、制御部19は、先ず、図3における領域1Aへの描画を行うために、文字のバウンディングボックスの最小座標(Xmin,Ymin)と輪郭バッファ15の原点とを対応させるよう曲線分割部13に指示を出す。また、制御部19は、処理対象の領域1Aが横方向で最初のタイル領域であることを曲線分割部13に通知する。
When all the vector data composing one graphic is stored in the
曲線分割部13は、制御部19から処理の開始を指示されると、入力バッファ12からベクトルデータを順次読み出して処理を行う。以下、図4を参照しながら曲線分割部13の動作を説明する。
曲線分割部13は、ベクトルデータの座標(Xmin,Ymin)を輪郭バッファ15上の原点(0,0)に対応させるために、入力バッファ12から読み出したベクトルデータのX座標の値からXminの値を引き、同様にY座標の値からYminの値を引く(図4−a)。
When the
The
次に、輪郭を構成する直線または曲線が完全に処理対象のタイル領域の外側に位置するか否かを判断し、外側に位置すると判断した場合には、その直線または曲線を破棄し、以降の処理を行わないようにする。但し、処理対象の領域1Aが横方向で最初のタイル領域であるため、タイルの上下方向の外側に位置する直線または曲線のみを破棄するように制御を行う。即ち、直線・曲線を定義する頂点・制御点のY座標が全て0未満または8以上の直線・曲線を破棄する(図4−b)。 Next, it is determined whether or not the straight line or curve constituting the outline is completely outside the tile area to be processed, and if it is determined to be located outside, the straight line or curve is discarded and the subsequent Do not perform processing. However, since the processing target area 1A is the first tile area in the horizontal direction, control is performed so as to discard only the straight line or curve located outside the tile in the vertical direction. That is, the straight lines / curves whose Y coordinates of the vertices / control points defining the straight lines / curves are all less than 0 or 8 or more are discarded (FIG. 4B).
次に、曲線分割部13は、曲線を微小直線へと分割する。曲線を直線へ分割する方法は公知であるので詳細な説明は省略するが、曲線の曲率に基づいて分割数を変化させる方法が望ましい。入力データが直線の場合には分割を行わない(図4−c)。
Next, the
次に、曲線分割部13は、曲線から分割された直線について、再びその直線が完全に処理対象のタイル領域の外側に位置するか否かを判断し、外側に位置すると判断した場合には、その直線または曲線を破棄し、以降の処理を行わないようにする。ここでも上記と同様に、処理対象の領域1Aが横方向で最初のタイル領域であるため、タイルの上下方向の外側に位置する直線のみを破棄する。また、直線がタイル領域の上辺と下辺をまたぐ場合にはクリップ処理を行う(図4−d)。
上記の処理を行い、曲線分割部13は直線のデータを輪郭描画部14へ出力する。
Next, the
By performing the above processing, the
輪郭描画部14は、曲線分割部13から入力される直線についてラスタライズを行い、スキャンラインと直線との交点を求めて輪郭バッファ15へ描画する。その際に、上向きの直線である場合には輪郭バッファ15における交点座標の値に1を加算し、下向きの直線である場合には輪郭バッファの値から1を減算するように描画を行う。また、交点の座標が処理対象のタイル領域を超える場合には書き込みを行わないようにする。
また、輪郭描画部14は、処理対象の領域1Aが横方向で最初のタイル領域であるため、処理対象のタイル領域を超える座標を持つ直線については、始点および終点の座標から、その直線が横方向のどのタイル領域にまたがるかを求め、有効タイルフラグバッファ16の対応するビットを“1”にする。
曲線分割部13および輪郭描画部14は上記の処理をパイプライン処理で行い、入力バッファ12に格納されている一つの図形の全てのデータについて処理を行う。
The
In addition, since the processing target region 1A is the first tile region in the horizontal direction, the
The
図5−aおよび図5−bは、図3における領域1Aの処理が終わった時の輪郭バッファ15および有効タイルフラグバッファ16の例を示す図である。図5−bにおいて、有効タイルフラグバッファ16は左端のビットと左から5番目のビットが“1”となっており、これは図3における領域1Bと領域1Fに輪郭線が存在することを示している。
5A and 5B are diagrams showing examples of the
制御部19は、曲線分割部13および輪郭描画部14の処理が終わったことを検知すると、次に画素生成部18に対して処理を開始するように指示する。その際、制御部19は、輪郭バッファ15の原点とフレームバッファ20上の座標(Xmin,Ymin)とを対応させるよう画素生成部18に指示を出す。
When the
画素生成部18は、制御部19から処理の開始を指示されると、輪郭バッファ15および補助バッファ17を参照して描画するピクセルを生成する。以下、図5−aおよび図6を参照しながら画素生成部18の動作を説明する。
画素生成部18は、スキャンライン方向へのピクセル生成を、輪郭バッファ15の縦解像度分だけ繰り返すことによりピクセルを生成する。また、スキャンライン方向へのピクセル生成は、各ピクセルにおける輪郭との交差回数を求めることにより行う。
各ピクセルにおける輪郭との交差回数は、左のピクセルにおける輪郭との交差回数の値に、輪郭バッファ15の対応する位置の値を加算したものである。また、輪郭との交差回数の初期値は補助バッファ17の対応する位置の値となる。各ピクセルにおける輪郭との交差回数が0以外であれば、そのピクセルは図形の内側にあるため描画する必要があると判断し、ピクセルを生成する。
When instructed to start processing from the
The
The number of intersections with the contour in each pixel is obtained by adding the value of the corresponding position in the
例えば、一番上(Y=0)のスキャンラインの例では、初期値は補助バッファ17の対応する位置から読み出した値であり、ここでは“0”である(図6−a)。そして、座標(0,0)から順次輪郭バッファ15の値(図5−a参照)を加算していくと、座標(2,0)、(3,0)、(4,0)のピクセルにおいて輪郭との交差回数が“1”となるため、画素生成部18はこれらのピクセルを生成する。そして、右端のピクセルにおける輪郭との交差回数を、補助バッファ17の対応する位置へ書き戻す。
For example, in the example of the uppermost scan line (Y = 0), the initial value is a value read from the corresponding position of the
上記の処理を一番下(Y=7)のスキャンラインまで繰り返すことにより、輪郭バッファ15の領域内で描画する必要のある全てのピクセルを生成する。生成されたピクセルは、X座標の値にXminの値を加算し、Y座標の値にYminの値を加算することによりフレームバッファ20上の座標に変換され、予め設定された描画色でフレームバッファ20へ描画される。
By repeating the above processing up to the scan line at the bottom (Y = 7), all the pixels that need to be drawn in the region of the
画素生成部18は上記の処理をパイプライン処理で行い、描画する必要のある全てのピクセルを全てフレームバッファ20へ描画し終わると動作を終了する。図6−bは、図3の領域1Aにおける画素生成部18のピクセル生成の結果を示す図である。また、図6−cは同様に、図3の領域1Aにおいて画素生成部18の動作が終了した時点での補助バッファ17の内容を示す図である。
The
上記の画素生成部18の説明では、輪郭バッファ15の読み出しを1ピクセルずつ行うものとしたが、1度に複数ピクセル分の輪郭バッファ15を読み出してピクセル生成処理を行うように構成してもよい。
また、輪郭バッファ15は次のタイル領域の処理を行う前に初期化をする必要がある。そこで、画素生成部18において輪郭バッファ15を読み出した際に初期化を行うようにする。読出しと初期化を同時に行うことができるようにするため、輪郭バッファ15を2ポートメモリで構成するのが望ましい。
In the description of the
The
以上の処理により図3における領域1Aの部分の描画が完了すると、制御部19は、有効タイルフラグバッファ16を参照して、次にどのタイル領域について処理を行うかを判断する。この例では有効タイルフラグバッファ16より、図3における領域1Bと領域1Fに輪郭線が存在することがわかるため、制御部19は先ず領域1Bについて処理を行うと判断し、曲線分割部13に再び処理の開始を指示する。その際に制御部19は、領域1Bの部分の描画を行うために、領域1Bの左上の座標と輪郭バッファ15の原点とを対応させるよう曲線分割部13に指示を出す。即ち、輪郭バッファ15の大きさが8×8であればベクトルデータの座標(Xmin+8,Ymin)と輪郭バッファ15の原点とを対応させるよう指示を出す。また、制御部19は、処理対象の領域1Bが横方向で最初のタイル領域ではないことを通知する。更に、制御部19は、有効タイルフラグバッファ16の領域1Bに対応するビットを“0”にクリアする。
When the drawing of the portion of the area 1A in FIG. 3 is completed by the above processing, the
曲線分割部13は制御部19から処理の開始を指示されると、再び入力バッファ12からベクトルデータを順次読み出して処理を行う。図7はこの時の曲線分割部13の動作を説明するための図である。
曲線分割部13は、ベクトルデータの座標(Xmin+8,Ymin)を輪郭バッファ15上の原点(0,0)に対応させるために、入力バッファ12から読み出したベクトルデータのX座標の値から(Xmin+8)の値を引き、同様にY座標の値からYminの値を引く(図7−a)。
When the
The
次に、輪郭を構成する直線または曲線が完全に処理対象のタイル領域の外側に位置するか否かを判断し、外側に位置すると判断した場合には、その直線または曲線を破棄し、以降の処理を行わないようにする。この時、処理対象の領域1Bが横方向で最初のタイル領域ではないため図4の処理とは異なり、対象のタイル領域外に位置する直線・曲線は全て破棄する(図7−b)。
次に、曲線を微小直線へと分割し(図7−c)、曲線から分割された直線について、再びその直線が完全に処理対象のタイル領域の外側に位置するか否かを判断し、外側に位置すると判断した場合には、その直線または曲線を破棄し、以降の処理を行わないようにする。ここでも上記の分割前の処理と同様に、処理対象の領域1Bが横方向で最初のタイル領域ではないため、タイル領域外に位置する直線は全て破棄する。また、直線がタイル領域の上下左右の四辺をまたぐ場合にはクリップ処理を行う(図7−d)。
上記の処理を行い、曲線分割部13は直線のデータを輪郭描画部14へ出力する。
Next, it is determined whether or not the straight line or curve constituting the outline is completely outside the tile area to be processed, and if it is determined to be located outside, the straight line or curve is discarded and the subsequent Do not perform processing. At this time, since the
Next, the curve is divided into minute straight lines (FIG. 7C), and for the straight lines divided from the curve, it is determined again whether the straight line is completely outside the tile area to be processed. If it is determined that it is located at the position, the straight line or curve is discarded and the subsequent processing is not performed. Here, similarly to the above-described processing before the division, the
By performing the above processing, the
輪郭描画部14は曲線分割部13から入力される直線について、上述した領域1Aの処理と同様にラスタライズを行い、スキャンラインと直線との交点を求めて輪郭バッファ15へ描画する。この時、輪郭描画部14は、処理対象の領域1Bが横方向で最初のタイル領域ではないため、領域1Aの場合とは異なり、有効タイルフラグバッファ16に対しては書き込みを行わず、輪郭バッファ15への描画のみを行う。図8は、図3の領域1Bにおける輪郭描画部14の処理が終わった時の輪郭バッファ15の例を示す図である。
The
制御部19は、曲線分割部13および輪郭描画部14における処理が終わったことを検知すると、次に画素生成部18に対して処理を開始するように指示する。その際に制御部19は、輪郭バッファ15の原点とフレームバッファ上の座標(Xmin+8,Ymin)とを対応させるよう画素生成部18に指示を出す。
When the
画素生成部18は、制御部19から処理の開始を指示されると、輪郭バッファ15および補助バッファ17を参照して描画するピクセルを生成する。画素生成部18における処理は、生成したピクセルのX座標に加算する値を(Xmin+8)とする以外は上述した領域1Aの処理と同様である。この時、図9−aに示すように、処理開始時の補助バッファ17には、前回の領域、即ち図3の領域1Aの右端のピクセルにおける輪郭との交差回数の値が格納されているため、この値を初期値として利用することにより、タイル領域間でピクセルの抜けを発生させることなく正確にピクセルの生成を行うことができる。図9−bは、図3の領域1Bにおける画素生成部18のピクセル生成の結果を示す図である。また、図9−cは同様に、図3の領域1Bにおいて画素生成部18の動作が終了した時点での補助バッファ17の内容を示す図である。
When instructed to start processing from the
以上の処理により図3における領域1Bの部分の描画が完了すると、制御部19は有効タイルフラグバッファ16を参照して、次にどのタイル領域について処理を行うかを判断する。この例では有効タイルフラグバッファ16より、図3における領域1Fに輪郭線が存在することがわかるため、制御部19は次に領域1Fについて処理を行うと判断し、曲線分割部13に再び処理の開始を指示する。その際に制御部19は、領域1Fの部分の描画を行うために、領域1Fの左上の座標と輪郭バッファ15の原点とを対応させるよう曲線分割部13に指示を出す。即ち、(Xmin+40,Ymin)と輪郭バッファ15の原点とを対応させるよう指示を出す。また、制御部19は、処理対象の領域1Fが横方向で最初のタイル領域ではないことを通知する。また、制御部19は、有効タイルフラグバッファの領域1Fに対応するビットを“0”にクリアする。
When the drawing of the portion of the
領域1Fへの描画は、曲線分割部13でベクトルデータの座標から減算する値および画素生成部18で生成したピクセルの座標に加算する値を、(Xmin+40,Ymin)とする以外は上述した領域1A,1Bに対する処理と同様である。
Drawing in the area 1F is the above-described area 1A except that the value to be subtracted from the coordinates of the vector data by the
以上の処理により図3における領域1Fの描画が完了すると、制御部19は有効タイルフラグバッファ16を参照して横方向にはもう処理すべきタイル領域がないと判断し、次に領域2Aの描画を行うために、領域2Aの左上の座標と輪郭バッファ15の原点とを対応させるよう曲線分割部13に指示を出す。即ち、(Xmin,Ymin+8)と輪郭バッファ15の原点とを対応させるよう指示を出す。また、制御部19は、処理対象の領域2Aが横方向で最初のタイル領域であることを通知する。
When the drawing of the area 1F in FIG. 3 is completed by the above processing, the
領域2Aへの描画は、曲線分割部13でベクトルデータの座標から減算する値および画素生成部18で生成したピクセルの座標に加算する値を、(Xmin,Ymin+8)とする以外は領域1Aに対する処理と同様であるため、ここでの詳細な説明は省略する。
領域2Aへの描画が完了すると、制御部19は有効タイルフラグバッファ16を参照して、横方向の有効なタイルを判断して再び描画処理を指示する。図3の例では、領域2B、領域2E、領域2Fの順で描画処理を行う。
以下同様に、横方向の最初のタイル領域の処理の際に、輪郭描画部14において輪郭線が存在するタイル領域を判断して有効タイルフラグバッファ16に書き込み、横方向の2回目以降の処理については輪郭線が存在するタイル領域のみ処理を行う。
Drawing in the
When the drawing in the
Similarly, when processing the first tile area in the horizontal direction, the
図10は、図3の領域5Aにおける曲線分割部13の処理を説明する図である。また、図11は図3の領域5Aにおける輪郭描画部14の処理が完了した際の輪郭バッファ15(図11−a)および有効タイルフラグバッファ16(図11−b)の例を示した図である。
制御部19は、領域5Aの処理が完了した後は、有効タイルフラグバッファ(図11−b)を参照して領域5Bと領域5Eについての描画処理を指示する。
図12−aは領域5Bへの描画が完了した時点でのフレームバッファの状態を示したものである。この状態で次に領域5Eへ描画を行うと、本来描画を行わなくてはならない領域5Cおよび5Dが描画されないことになる。そこで、画素生成部18においてピクセルを生成する際に、前回処理を行ったタイル領域よりも横方向に離れた位置のタイル領域について処理を行う場合には、補助バッファ17の値が“0”以外のスキャンラインについては、処理を省略したタイル領域を塗り潰すようにピクセルを生成することとする。これにより、領域5Eの処理が完了した時点で領域5Cおよび領域5Dも描画が完了することとなる(図12−b)。
FIG. 10 is a diagram illustrating the processing of the
After the processing of the area 5A is completed, the
FIG. 12A shows the state of the frame buffer at the time when drawing in the area 5B is completed. When drawing is next performed in the area 5E in this state, the areas 5C and 5D that should originally be drawn are not drawn. Therefore, when the
以降は同様に処理を行い、Y座標の最大値(Ymax)を含む横一列のタイル領域の処理が終了すると、制御部19はベクトル図形の描画が完了したと判断して、入力バッファ12に保持されている入力データを破棄してベクトル図形描画装置10は動作を終了する。
Thereafter, the same processing is performed, and when the processing of the tile region in the horizontal row including the maximum value (Ymax) of the Y coordinate is completed, the
以上のように、横方向の最初のタイル領域の処理を行う際に、同時に横方向のどのタイル領域を処理する必要があるかを判断して結果を保持しておき、横方向の2回目以降の処理時にフラグを参照して輪郭線が存在するタイル領域についてのみ輪郭処理を行うことにより、図13に示すように、無駄なタイル領域についての処理を省き、高速に動作することができる。 As described above, when processing the first tile area in the horizontal direction, it is determined which tile area needs to be processed in the horizontal direction at the same time, and the result is retained. By performing the contour processing only for the tile region where the contour line exists with reference to the flag during the processing, it is possible to omit the processing for the useless tile region and operate at high speed as shown in FIG.
尚、以上の説明では、曲線分割部13および輪郭描画部14と、画素生成部18とが交互に動作するように記述したが、輪郭バッファ15をダブルバッファ構成にすることにより、図3の例では、画素生成部18が領域1Aの処理を行っている間に、曲線分割部13および輪郭描画部14が領域1Bの処理を行う、というように曲線分割部13および輪郭描画部14と画素生成部18を並列に動作させることができる。
In the above description, the
また、画素生成部18において各ピクセルにおける輪郭との交差回数が0以外であれば描画するものとしたが、交差回数が0以外の場合に描画するという処理(non−zeroルール)と、交差回数が奇数の場合に描画するという処理(even−oddルール)を切替えられるようにしても良い。
In addition, the
また、輪郭バッファ15を、例えば4×4等のサブピクセルの解像度とし、輪郭描画部14がサブピクセル単位で輪郭の情報を生成して輪郭バッファ15へ書き込み、画素生成部18がサブピクセル単位で描画するサブピクセルを生成し、ピクセル毎に有効なサブピクセルの割合から描画する画素の濃度を算出し、既に描画されている画素との間でブレンド処理を行うことによりアンチエイリアス処理を施した図形を描画するようにしても良い。
The
以上のように、実施の形態1のベクトル図形描画装置によれば、複数のタイル領域で分割した描画領域に、輪郭が数式で定義されたベクトル図形を描画するベクトル図形描画装置において、輪郭の曲線を複数の微小直線へと分割する曲線分割部と、直線とスキャンラインとの交点の情報を求める輪郭描画部と、輪郭描画部で求めた情報を保持する輪郭バッファと、輪郭バッファに保持された情報を読み出して画素を生成する画素生成部と、タイル領域の処理方向においてどのタイル領域が有効かを示すフラグを保持する有効タイルフラグバッファと、曲線分割部と輪郭描画部と画素生成部が、タイル領域単位で処理を行うよう制御すると共に、有効タイルフラグバッファを参照して次にどのタイル領域について処理を行うかを判断する制御部とを備えたので、無駄なタイル領域に対する処理を省くことができ、高速な描画を行うことができる。 As described above, according to the vector graphic drawing apparatus of the first embodiment, in the vector graphic drawing apparatus that draws a vector graphic whose outline is defined by a mathematical expression in a drawing area divided by a plurality of tile areas, the contour curve Is divided into a plurality of minute straight lines, a contour drawing unit that obtains information on the intersection of a straight line and a scan line, a contour buffer that holds information obtained by the contour drawing unit, and a contour buffer A pixel generation unit that reads out information to generate pixels, an effective tile flag buffer that holds a flag indicating which tile region is valid in the processing direction of the tile region, a curve division unit, a contour drawing unit, and a pixel generation unit, A control unit that controls processing to be performed in units of tile areas and determines which tile area is to be processed next with reference to the valid tile flag buffer Because with a, it is possible to omit the processing for unnecessary tile area, it is possible to perform high-speed drawing.
また、実施の形態1のベクトル図形描画装置によれば、輪郭描画部は、タイル領域の処理方向における処理開始端のタイル領域について処理を行う際に、これから処理するタイル領域についてどのタイル領域を処理する必要があるかを求め、その結果を有効タイルフラグバッファへ保持しておき、制御部は、次のタイル領域の処理を行う際に、有効タイルフラグバッファを参照して有効なタイル領域のみ処理を行うように制御することにより、無駄なタイル領域を容易に判別することができ、高速な動作を実現することができる。 Further, according to the vector graphic drawing apparatus of the first embodiment, when performing processing on the tile area at the processing start end in the processing direction of the tile area, the contour drawing unit processes which tile area for the tile area to be processed from now on. The result is stored in the valid tile flag buffer, and when the next tile area is processed, the control unit processes only the valid tile area with reference to the valid tile flag buffer. By performing control so as to perform the above, it is possible to easily determine a useless tile area and to realize a high-speed operation.
また、実施の形態1のベクトル図形描画装置によれば、曲線分割部は、タイル領域の処理方向における処理開始端のタイル領域について処理を行う際はタイル領域の処理方向に垂直な方向にのみクリップ処理を行い、次以降のタイル領域について処理を行う際はタイル領域の上下左右についてクリップ処理を行うようにしたので、それぞれのタイル領域の処理を正確に行うことができ、高速かつ正確な描画を行うことができる。 Further, according to the vector graphic drawing apparatus of the first embodiment, the curve dividing unit clips only in a direction perpendicular to the processing direction of the tile area when processing the tile area at the processing start end in the processing direction of the tile area. When processing the next and subsequent tile areas, the clipping process is performed on the top, bottom, left, and right of the tile area, so that each tile area can be processed accurately, and high-speed and accurate drawing can be performed. It can be carried out.
また、実施の形態1のベクトル図形描画装置によれば、タイル領域の処理方向に垂直な方向におけるタイル領域一列分の画素の値を保持する補助バッファを有し、画素生成部は、画素生成処理時に、処理したタイル領域の処理方向先頭の画素における輪郭との交差回数を値として補助バッファへ格納し、次のタイル領域の処理時に補助バッファの値を輪郭との交差回数の初期値として利用するようにしたので、それぞれのタイル領域の画素生成処理を正確に行うことができる。 In addition, according to the vector graphic drawing apparatus of the first embodiment, the pixel generation unit has the auxiliary buffer that holds the pixel values for one column of the tile area in the direction perpendicular to the processing direction of the tile area. Sometimes, the number of intersections with the contour of the first pixel in the processing direction of the processed tile area is stored as a value in the auxiliary buffer, and the value of the auxiliary buffer is used as the initial value of the number of intersections with the outline when processing the next tile area. Since it did in this way, the pixel generation process of each tile area | region can be performed correctly.
また、実施の形態1のベクトル図形描画装置によれば、画素生成部は、処理対象とするタイル領域との間に処理対象とはしないタイル領域があり、かつ、補助バッファの値を参照して画素生成の必要がある場合は、処理対象とはしないタイル領域の部分も含めて画素生成を行うようにしたので、処理を行わないタイル領域が存在しても確実に描画することができる。 Further, according to the vector graphic drawing apparatus of the first embodiment, the pixel generation unit includes a tile area that is not a processing target between the processing target tile areas and refers to the value of the auxiliary buffer. When pixel generation is necessary, pixel generation is performed including a portion of a tile area that is not a processing target, so that even if there is a tile area that is not processed, rendering can be performed reliably.
また、実施の形態1のベクトル図形描画装置によれば、輪郭バッファはサブピクセル単位の解像度で構成され、画素生成部は、画素を生成する際に、有効なサブピクセルの割合から描画する画素の濃度を算出し、すでに描画されている画素との間でブレンド処理を行うことによりアンチエイリアス処理を施した図形を描画するようにしたので、アンチエイリアス処理を施した図形を容易かつ高速に描画することができる。 In addition, according to the vector graphic drawing apparatus of the first embodiment, the contour buffer is configured with a resolution in units of subpixels, and the pixel generation unit generates a pixel to be drawn from the ratio of effective subpixels when generating the pixels. Since the density is calculated and the anti-aliased figure is drawn by blending with the already drawn pixels, the anti-aliased figure can be drawn easily and at high speed. it can.
10 ベクトル図形描画装置、13 曲線分割部、14 輪郭描画部、15 輪郭バッファ、16 有効タイルフラグバッファ、17 補助バッファ、18 画素生成部、19 制御部。 DESCRIPTION OF SYMBOLS 10 Vector figure drawing apparatus, 13 Curve division | segmentation part, 14 Outline drawing part, 15 Outline buffer, 16 Effective tile flag buffer, 17 Auxiliary buffer, 18 Pixel generation part, 19 Control part.
Claims (6)
前記輪郭の曲線を複数の微小直線へと分割する曲線分割部と、
前記直線とスキャンラインとの交点の情報を求める輪郭描画部と、
前記輪郭描画部で求めた情報を保持する輪郭バッファと、
前記輪郭バッファに保持された情報を読み出して画素を生成する画素生成部と、
前記タイル領域の処理方向においてどのタイル領域が有効かを示すフラグを保持する有効タイルフラグバッファと、
前記曲線分割部と前記輪郭描画部と前記画素生成部が、前記タイル領域単位で処理を行うよう制御すると共に、前記有効タイルフラグバッファを参照して次にどのタイル領域について処理を行うかを判断する制御部とを備えたベクトル図形描画装置。 In a vector graphic drawing apparatus that draws a vector graphic whose contour is defined by a mathematical expression in a drawing area divided by a plurality of tile areas,
A curve dividing unit for dividing the contour curve into a plurality of minute straight lines;
An outline drawing unit for obtaining information of an intersection of the straight line and the scan line;
A contour buffer for holding information obtained by the contour drawing unit;
A pixel generation unit that reads out information held in the contour buffer and generates pixels;
An effective tile flag buffer that holds a flag indicating which tile area is valid in the processing direction of the tile area;
The curve dividing unit, the contour drawing unit, and the pixel generation unit are controlled to perform processing in units of tile regions, and determine which tile region is to be processed next with reference to the effective tile flag buffer. A vector graphic drawing apparatus comprising a control unit for performing
制御部は、次のタイル領域の処理を行う際に、前記有効タイルフラグバッファを参照して有効なタイル領域のみ処理を行うように制御することを特徴とする請求項1記載のベクトル図形描画装置。 The contour drawing unit determines which tile area needs to be processed for the tile area to be processed when processing the tile area at the processing start end in the processing direction of the tile area, and obtains the result as an effective tile flag buffer. To hold
2. The vector graphic drawing apparatus according to claim 1, wherein when the processing of the next tile area is performed, the control unit performs control so that only the effective tile area is processed with reference to the effective tile flag buffer. .
画素生成部は、画素生成処理時に、処理したタイル領域の処理方向先頭の画素における輪郭との交差回数を前記値として前記補助バッファへ格納し、次のタイル領域の処理時に前記補助バッファの値を輪郭との交差回数の初期値として利用することを特徴とする請求項1から請求項3のうちのいずれか1項記載のベクトル図形描画装置。 An auxiliary buffer that holds pixel values for one column of the tile area in a direction perpendicular to the processing direction of the tile area;
The pixel generation unit stores the number of intersections with the contour of the first pixel in the processing direction of the processed tile area in the auxiliary buffer during the pixel generation process as the value, and stores the value of the auxiliary buffer in the next tile area processing. The vector graphic drawing apparatus according to any one of claims 1 to 3, wherein the vector graphic drawing apparatus is used as an initial value of the number of times of intersection with a contour.
画素生成部は、画素を生成する際に、有効なサブピクセルの割合から描画する画素の濃度を算出し、すでに描画されている画素との間でブレンド処理を行うことによりアンチエイリアス処理を施した図形を描画することを特徴とする請求項1から請求項5のうちのいずれか1項記載のベクトル図形描画装置。 The contour buffer consists of subpixel resolution,
When generating a pixel, the pixel generation unit calculates the density of the pixel to be drawn from the ratio of effective sub-pixels, and performs anti-aliasing processing by blending with the pixels already drawn The vector graphic drawing apparatus according to claim 1, wherein the vector graphic drawing apparatus draws.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008322186A JP5172640B2 (en) | 2008-12-18 | 2008-12-18 | Vector drawing equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008322186A JP5172640B2 (en) | 2008-12-18 | 2008-12-18 | Vector drawing equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010146255A true JP2010146255A (en) | 2010-07-01 |
JP5172640B2 JP5172640B2 (en) | 2013-03-27 |
Family
ID=42566640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008322186A Active JP5172640B2 (en) | 2008-12-18 | 2008-12-18 | Vector drawing equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5172640B2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160019357A (en) * | 2014-08-11 | 2016-02-19 | 삼성전자주식회사 | Method and apparatus for performing tile-based path rendering |
JP2016201107A (en) * | 2015-04-14 | 2016-12-01 | 三星電子株式会社Samsung Electronics Co.,Ltd. | Method and apparatus for performing tile binning for path rendering |
WO2022201413A1 (en) * | 2021-03-25 | 2022-09-29 | 三菱電機株式会社 | Drawing processing device, drawing processing system, drawing processing method, and drawing processing program |
JPWO2022201412A1 (en) * | 2021-03-25 | 2022-09-29 | ||
US11694393B2 (en) | 2014-08-11 | 2023-07-04 | Samsung Electronics Co., Ltd. | Method and apparatus for performing tile-based path rendering |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3070677B1 (en) | 2015-03-20 | 2021-07-28 | Samsung Electronics Co., Ltd. | Method and apparatus for tile-based rendering |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0439782A (en) * | 1990-06-05 | 1992-02-10 | Yamaha Corp | Painting-out device for graphic |
JPH04175800A (en) * | 1990-11-09 | 1992-06-23 | Matsushita Electric Ind Co Ltd | Vector font drawing device |
JPH06161420A (en) * | 1992-11-18 | 1994-06-07 | Nec Off Syst Ltd | Character signal generating device |
JP2006221567A (en) * | 2005-02-14 | 2006-08-24 | Canon Inc | Image processor, image processing method, and program |
JP2007322810A (en) * | 2006-06-01 | 2007-12-13 | Alpha Blend:Kk | Font database generating program and font data structure |
-
2008
- 2008-12-18 JP JP2008322186A patent/JP5172640B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0439782A (en) * | 1990-06-05 | 1992-02-10 | Yamaha Corp | Painting-out device for graphic |
JPH04175800A (en) * | 1990-11-09 | 1992-06-23 | Matsushita Electric Ind Co Ltd | Vector font drawing device |
JPH06161420A (en) * | 1992-11-18 | 1994-06-07 | Nec Off Syst Ltd | Character signal generating device |
JP2006221567A (en) * | 2005-02-14 | 2006-08-24 | Canon Inc | Image processor, image processing method, and program |
JP2007322810A (en) * | 2006-06-01 | 2007-12-13 | Alpha Blend:Kk | Font database generating program and font data structure |
Non-Patent Citations (2)
Title |
---|
CSNH199900011020; 小林靖, 外1名: '"高速高品質アウトラインフォントラスタライザの開発"' 沖電気研究開発 第62巻, 第3号, 19950628, p.89-94, 沖電気工業株式会社 * |
JPN6012049423; 小林靖, 外1名: '"高速高品質アウトラインフォントラスタライザの開発"' 沖電気研究開発 第62巻, 第3号, 19950628, p.89-94, 沖電気工業株式会社 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160019357A (en) * | 2014-08-11 | 2016-02-19 | 삼성전자주식회사 | Method and apparatus for performing tile-based path rendering |
KR102423767B1 (en) * | 2014-08-11 | 2022-07-22 | 삼성전자주식회사 | Method and apparatus for performing tile-based path rendering |
US11694393B2 (en) | 2014-08-11 | 2023-07-04 | Samsung Electronics Co., Ltd. | Method and apparatus for performing tile-based path rendering |
JP2016201107A (en) * | 2015-04-14 | 2016-12-01 | 三星電子株式会社Samsung Electronics Co.,Ltd. | Method and apparatus for performing tile binning for path rendering |
WO2022201413A1 (en) * | 2021-03-25 | 2022-09-29 | 三菱電機株式会社 | Drawing processing device, drawing processing system, drawing processing method, and drawing processing program |
JPWO2022201412A1 (en) * | 2021-03-25 | 2022-09-29 | ||
WO2022201412A1 (en) * | 2021-03-25 | 2022-09-29 | 三菱電機株式会社 | Rendering processing device, rendering processing system, rendering processing method, and rendering processing program |
JP7444276B2 (en) | 2021-03-25 | 2024-03-06 | 三菱電機株式会社 | Drawing processing device, drawing processing system, drawing processing method, and drawing processing program |
JP7471512B2 (en) | 2021-03-25 | 2024-04-19 | 三菱電機株式会社 | Drawing processing device, drawing processing system, drawing processing method, and drawing processing program |
Also Published As
Publication number | Publication date |
---|---|
JP5172640B2 (en) | 2013-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4693660B2 (en) | Drawing apparatus, drawing method, and drawing program | |
JP4937359B2 (en) | Graphic drawing apparatus and graphic drawing method | |
JP5172640B2 (en) | Vector drawing equipment | |
JP2009301284A (en) | Drawing device and method | |
US20150325022A1 (en) | Technique for processing a character string for graphical representation on a man/machine interface | |
JP5823052B2 (en) | Graphics drawing device | |
JP3791259B2 (en) | Outline smoothing processing method | |
JP2006139727A (en) | Three-dimensional figure drawing processor, image display device, three-dimensional figure drawing processing method, control program for executing the method by computer, and computer readable recording medium recorded with the program | |
JP5159949B2 (en) | Vector drawing equipment | |
EP0062669A1 (en) | Graphic and textual image generator for a raster scan display. | |
JP2012108825A (en) | Information processing device, information processing method and program | |
JP2008299642A (en) | Pattern drawing device | |
JP3898426B2 (en) | Graphic drawing device | |
JP4325812B2 (en) | Vector image drawing circuit and vector image drawing method | |
JP4930860B2 (en) | Graphic drawing apparatus, antialiasing method and program | |
KR100705188B1 (en) | A character font display method | |
KR20000057716A (en) | Polygon drawing method and polygon drawing apparatus | |
JP3872056B2 (en) | Drawing method | |
JP3493745B2 (en) | Drawing device | |
JP5492911B2 (en) | Character creation method and character creation device | |
JP4320604B2 (en) | Image processing method and image processing apparatus | |
JP2011028641A (en) | Image processing device and image processing method | |
JP5207989B2 (en) | Graphic drawing apparatus and graphic drawing program | |
JP3129717B2 (en) | Image processing apparatus and image processing method | |
WO2009107168A1 (en) | Character plotting device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110912 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120911 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120925 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121106 |
|
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: 20121204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121226 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5172640 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |