JP5372226B2 - Outline font compression method - Google Patents

Outline font compression method Download PDF

Info

Publication number
JP5372226B2
JP5372226B2 JP2012174245A JP2012174245A JP5372226B2 JP 5372226 B2 JP5372226 B2 JP 5372226B2 JP 2012174245 A JP2012174245 A JP 2012174245A JP 2012174245 A JP2012174245 A JP 2012174245A JP 5372226 B2 JP5372226 B2 JP 5372226B2
Authority
JP
Japan
Prior art keywords
bezier curve
curve
size
straight line
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012174245A
Other languages
Japanese (ja)
Other versions
JP2013015842A (en
Inventor
浩平 寺薗
佳之 岡田
敏 岩田
正司 武市
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MORISAWA INC.
Fujitsu Ltd
Original Assignee
MORISAWA INC.
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MORISAWA INC., Fujitsu Ltd filed Critical MORISAWA INC.
Priority to JP2012174245A priority Critical patent/JP5372226B2/en
Publication of JP2013015842A publication Critical patent/JP2013015842A/en
Application granted granted Critical
Publication of JP5372226B2 publication Critical patent/JP5372226B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Document Processing Apparatus (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)

Description

LCD(Liquid Crystal Device:液晶表示装置)などの表示デバイスを持つ機器において文字表示を行う際、アウトラインフォントを用いることで1つのデータから品質の高い文字を自由なサイズで表示できる。   When displaying characters on a device having a display device such as an LCD (Liquid Crystal Device), high-quality characters can be displayed from a single data in a free size by using an outline font.

アウトラインフォントは輪郭線の計算や輪郭線内部の塗りつぶし計算が必要なことから従来計算処理能力の高いコンピュータでの使用が主であったが、近年携帯電話のような組み込み型機器においても処理能力の向上によりアウトラインフォントが使用されるようになってきた。   Since outline fonts require calculation of outlines and fill calculations inside outlines, they have been used mainly on computers with high calculation processing power. Due to improvements, outline fonts have been used.

しかし組み込み型機器に搭載されるメモリの容量は小さいことが多く、少ないメモリ内にできるだけ多くの機能を実装するため、格納するデータのサイズは小さくすることが要求されている。   However, the capacity of a memory mounted on an embedded device is often small, and in order to implement as many functions as possible in a small memory, it is required to reduce the size of data to be stored.

組み込み型機器が搭載する表示デバイスでは、必要とされる文字サイズに上限があることに配慮し、本発明は従来のアウトラインフォントデータのサイズを低減することを目指すものである。   Considering that there is an upper limit on the required character size in a display device installed in an embedded device, the present invention aims to reduce the size of conventional outline font data.

本発明により生成されたアウトラインフォントデータは、文字表示を行うさまざまな機器に搭載可能で利用範囲が広い。特に、従来、データサイズが大きいことから採用が困難とされてきた曲線を多用したタイプフェースのフォントに関して本発明は圧縮率が高いことから利用価値が高い。   Outline font data generated by the present invention can be installed in various devices that display characters and has a wide range of use. In particular, the present invention has a high utility value because the compression ratio is high with respect to typeface fonts that use a lot of curves that have been conventionally difficult to adopt due to the large data size.

従来、アウトラインフォントのデータのサイズを小さくする方法として、座標値や隣り合う座標との相対値をハフマン符号化などを用いてエントロピー圧縮する方法(特許文献1参照)や輪郭の書き順に並べられた直線や曲線を表すコードの連続性を元にコード化し圧縮する(特許文献2参照)などの可逆圧縮方法が知られている。   Conventionally, as a method of reducing the size of outline font data, a method of entropy compression using coordinate values and relative values of adjacent coordinates using Huffman coding (see Patent Document 1) or the order of outlines is arranged. There is known a lossless compression method such as encoding and compressing based on continuity of codes representing straight lines and curves (see Patent Document 2).

一方、本発明と同様に、近似を用いたサイズ低減方法として、解像度を低下させる方法、例えば10000×10000ピクセルでデザインされたアウトラインデータを、表示デバイス上でデザイン性を損なわない程度(例えば256×256ピクセル)の解像度まで低下させて表現することで各座標を表すために必要なビット数を低減し、その結果データサイズを小さくし、小さくしたサイズで適切な直線・曲線の数式を割り当てる方法(特許文献3参照)が知られている。また、この方法では10000×10000のピクセルで座標(3000,5000)から座標(3025,4990)までの直線は256×256ピクセルの解像度では座標(77,128)から座標(77,128)までの距離0の直線となり、省略が可能なためデータサイズを低減できる。   On the other hand, as in the present invention, as a size reduction method using approximation, a resolution reduction method, for example, outline data designed with 10000 × 10000 pixels is reduced to a level that does not impair designability on a display device (for example, 256 × A method that reduces the number of bits required to represent each coordinate by reducing the resolution to 256 pixels), resulting in a smaller data size, and assigning an appropriate line / curve formula with a smaller size ( Patent Document 3) is known. In this method, the straight line from the coordinates (3000,5000) to the coordinates (3025,4990) is 10000 × 10000 pixels and the distance is 0 from the coordinates (77,128) to the coordinates (77,128) at the resolution of 256 × 256 pixels. Thus, the data size can be reduced because it can be omitted.

特開平06−149215号公報Japanese Patent Laid-Open No. 06-149215 特開2001−044850号公報JP 2001-044850 A 特表2004−516496号公報Japanese translation of PCT publication No. 2004-51696

上記可逆圧縮方法では圧縮率に限界があるため元データのサイズが大きいものは圧縮後も大きいサイズになるという問題があった。   In the above lossless compression method, there is a problem that a compression rate is limited, so that a large original data size becomes a large size after compression.

また上記解像度を低下させる方法では表示デバイスに256階調の表示能力がある場合、アウトラインデータの解像度低下を256×256ピクセルまでであれば、アンチエイリアシング技術により元デザインとのずれをカバーできる。しかし実際のデバイス上では40×40ピクセル以上の文字を描画する必要が無い(例えば、一部の組み込み型機器における画面表示)場合でも、アウトラインデータの解像度を40×40ピクセルまで低減させるとアンチエイリアシング技術を用いても元デザインとのずれをカバーしきれず、意図しない表示結果となるため上記可逆圧縮方法と同様、圧縮率に限界があるといえる。   Further, in the method of reducing the resolution, if the display device has a display capability of 256 gradations and the resolution of the outline data is reduced to 256 × 256 pixels, the deviation from the original design can be covered by the anti-aliasing technology. However, even if it is not necessary to draw characters larger than 40x40 pixels on an actual device (for example, screen display in some embedded devices), reducing the resolution of outline data to 40x40 pixels will result in anti-aliasing. Even if the technology is used, the deviation from the original design cannot be covered, and an unintended display result is obtained, and it can be said that there is a limit to the compression rate as in the case of the lossless compression method.

上記のような問題を解決するために本発明は、アウトラインフォントデータを構成するベジェ曲線の一部に対し人間がデザインの違いを感じないレベルで近似を行ってアウトラインフォントデータのサイズを小さくするアウトラインフォント圧縮方法を提供することを目的とする。   In order to solve the above problems, the present invention provides an outline for reducing the size of outline font data by approximating a part of a Bezier curve constituting the outline font data at a level at which a human does not feel a difference in design. An object is to provide a font compression method.

上記課題を解決するために本発明は、サイズX正方の精度でデザインされた文字のアウトラインデータが存在し画面表示される文字のサイズがサイズY(Y<X)正方以下であると分かっている場合、アウトラインデータに含まれるベジェ曲線を表すデータのうち、ある曲線と直線との距離がある値L以下のものを直線で近似する第1の近似工程、前記第1の近似工程で曲線と直線の距離がL以上であるがその距離がL’(L’>L)以下の長さのベジェ曲線を2本の直線で近似する第2の近似工程、および、前記ベジェ曲線のカーブ度合いがあらかじめ定義した曲線パターンに近いときに、そのパターンで近似する第3の近似工程、のいずれか1以上を備えることを特徴とする。   In order to solve the above problems, the present invention has been found that there is outline data of characters designed with accuracy of size X square, and the size of characters displayed on the screen is smaller than size Y (Y <X) square. In this case, among the data representing the Bezier curve included in the outline data, a first approximation step for approximating a certain distance L or less between a certain curve and the straight line with a straight line, and the curve and the straight line in the first approximating step. A second approximation step of approximating a Bezier curve having a distance of L ′ (L ′> L) or less with two straight lines, and the degree of curve of the Bezier curve in advance. When it is close to the defined curve pattern, it comprises any one or more of a third approximation step that approximates with the pattern.

本発明によれば、アウトラインフォントデータを構成するベジェ曲線の一部に対し、従来の圧縮方法では圧縮率に限界がある場合でも、表示デバイスに出力される文字のサイズの上限が決定している場合、人間がデザインの違いを感じないレベルで近似を行ってアウトラインフォントデータのサイズを小さくするので、輪郭に曲線が多いデザインのフォントに対して特に高い圧縮効果を得ることができるという有利性がある。   According to the present invention, the upper limit of the size of characters output to a display device is determined for a part of the Bezier curve constituting the outline font data even when the compression rate is limited in the conventional compression method. In this case, since the outline font data size is reduced by performing approximation at a level where humans do not feel the difference in design, there is an advantage that a particularly high compression effect can be obtained for a font having a design with many contours. is there.

本発明のアウトラインフォント圧縮方法の構成を示す図である。It is a figure which shows the structure of the outline font compression method of this invention. 一般的なアウトラインフォントのデータ記述方法を示す図である。It is a figure which shows the data description method of a general outline font. ベジェ曲線の直線近似方法を説明するための図である。It is a figure for demonstrating the linear approximation method of a Bezier curve. ベジェ曲線の2直線近似方法を説明するための図である。It is a figure for demonstrating the 2 straight line approximation method of a Bezier curve. ベジェ曲線の曲線パターン近似方法を説明するための図である。It is a figure for demonstrating the curve pattern approximation method of a Bezier curve. 近似する曲線パターンをベジェ曲線とした場合の例を示す図である。It is a figure which shows the example at the time of making the curve pattern to approximate into a Bezier curve. 近似閾値を説明するための図であって、(a)空間周波数とコントラスト感受性の相関を示す図であり、(b)携帯電話のLCDでの空間周波数の求め方を説明する図である。It is a figure for demonstrating an approximate threshold, Comprising: (a) It is a figure which shows the correlation of spatial frequency and contrast sensitivity, (b) It is a figure explaining how to obtain | require the spatial frequency in LCD of a mobile telephone. パターン番号とパターン化したベジェ曲線との対応関係を表したテーブルの例である。It is an example of the table showing the correspondence between a pattern number and a patterned Bezier curve. 近似する曲線パターンをスプライン曲線とした場合の例を示す図である。It is a figure which shows the example at the time of making the curve pattern to approximate into a spline curve. 本発明の実施形態に係る変換処理動作を説明するフローチャートである。It is a flowchart explaining the conversion processing operation | movement which concerns on embodiment of this invention. 本発明の実施形態に係る変換処理動作を説明するフローチャートである。It is a flowchart explaining the conversion processing operation | movement which concerns on embodiment of this invention. 本発明の実施形態に係る変換処理動作を説明するフローチャートである。It is a flowchart explaining the conversion processing operation | movement which concerns on embodiment of this invention.

以下、本発明の実施の形態を、図面を参照しながら説明する。
[実施の形態]
図1は、本発明の実施形態に係るアウトラインフォント圧縮方法の概略構成を示すブロック図である。図1において本発明の実施形態に係るアウトラインフォント圧縮方法は、例えば256×256ピクセルでデザインされたアウトラインフォントデータを格納するアウトラインデータファイル11と、アウトラインデータファイル11から例えば256×256ピクセルのアウトラインフォントデータを読み出すアウトラインデータファイル読込部12と、読み出した例えば256×256ピクセルアウトラインフォントデータに対し座標解像度を低下処理する座標解像度低下部13と、座標解像度が低下処理されたアウトラインフォントデータに対し近似によって曲線のデータの一部を直線のデータに変換する近似線変換部14と、近似線変換が終了したすべてのアウトラインフォントデータに対しエントロピー圧縮を施すエントロピー圧縮部15と、エントロピー圧縮が済んだ圧縮アウトラインデータをファイル出力する圧縮アウトラインデータファイル出力部16と、出力された圧縮アウトラインデータを格納する圧縮アウトラインデータファイル17から構成される。上記構成のうち、近似によって曲線のデータの一部を直線のデータに変換する近似線変換部14を除くその他の構成は上述した可逆圧縮方法や解像度を低下させる方法において実質的に採用されていると考えられる。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[Embodiment]
FIG. 1 is a block diagram showing a schematic configuration of an outline font compression method according to an embodiment of the present invention. In FIG. 1, an outline font compression method according to an embodiment of the present invention includes an outline data file 11 storing outline font data designed with, for example, 256 × 256 pixels, and an outline font of, for example, 256 × 256 pixels from the outline data file 11. An outline data file reading unit 12 that reads data, a coordinate resolution reduction unit 13 that reduces the coordinate resolution of the read 256 × 256 pixel outline font data, and outline font data that has been subjected to the coordinate resolution reduction process by approximation. An approximate line conversion unit 14 that converts part of the curve data into straight line data, an entropy compression unit 15 that performs entropy compression on all outline font data that has undergone approximate line conversion, and an entropy pressure Compressed outline data file output unit 16 for file output compressed outline data that are done, and a compressed outline data file 17 for storing the output compressed outline data. Of the above-described configurations, the other configurations except for the approximate line conversion unit 14 that converts a part of curve data into straight line data by approximation are substantially adopted in the above-described lossless compression method and resolution reduction method. it is conceivable that.

図2は、一般的なアウトラインフォントのデータ記述方法を示す図である。一般にアウトラインフォントのデータは、データの性質などを記述したヘッダ部分と各文字の輪郭を記述する部分から構成される。本実施形態では図2に示すように文字の輪郭を記述するデータとして座標値と各座標を結ぶ線の種類を、閉曲線のある1点から順に並べて記述されたものとする。また、本実施形態では元のアウトラインデータが256×256ピクセルのサイズでデザインされており、表示デバイスでは最大40×40ピクセルのサイズまでしか描画しないものとする。   FIG. 2 is a diagram showing a general outline font data description method. In general, outline font data is composed of a header portion describing the nature of data and a portion describing the outline of each character. In this embodiment, as shown in FIG. 2, it is assumed that the types of lines connecting the coordinate values and the coordinates are described in order from one point with a closed curve as data describing the outline of the character. In this embodiment, the original outline data is designed with a size of 256 × 256 pixels, and the display device draws only up to a size of 40 × 40 pixels.

上記のような前提のもとに図1に示した処理を順に実行し、座標解像度低下部13によって座標解像度が低下処理されたアウトラインフォントデータに対し近似線変換部14により近似によって曲線のデータの一部を直線のデータに変換する処理を実行する。近似線変換部14でのデータの変換は、図2に示すような文字についてまず文字の輪郭データに対してベジェ曲線の部分を見つけ、近似が可能であるかを判断し、近似により変換が行われた場合はベジェ曲線の部分を近似後のデータに置き換えて出力する、という処理を実行するものである。そして本発明では、この変換処理の中において、ベジェ曲線に対する、直線近似、2直線近似、および、曲線パターン近似を含む。   The processing shown in FIG. 1 is executed in order based on the premise as described above, and the outline font data whose coordinate resolution has been reduced by the coordinate resolution reduction unit 13 is approximated by the approximate line conversion unit 14 to obtain the curve data. A process for converting a part of the data into straight line data is executed. Data conversion by the approximate line conversion unit 14 is performed by first finding a Bezier curve portion of the character outline data for the character as shown in FIG. 2, determining whether approximation is possible, and performing conversion by approximation. In such a case, the Bezier curve portion is replaced with the approximated data and output. In the present invention, the conversion processing includes linear approximation, linear approximation, and curve pattern approximation for the Bezier curve.

図3は、ベジェ曲線の直線近似方法を説明するための図である。図3においてアウトラインフォントの輪郭の一部を構成するベジェ曲線は点a0,a1,a2,a3の4点で表され、a0が開始点、a3が終了点、a1,a2が制御点となる。これを直線a0-a3で近似したいような場合、このベジェ曲線で直線a0-a3から最も離れた点pまでの距離Lが「近似閾値(後述する)」以下であった場合には、このベジェ曲線を1本の直線a0-a3で近似する。これにより、ベジェ曲線を表していた、[ベジェ曲線]+[a0のX座標値]+[a0のY座標値]+[a1のX座標値]+[a1のY座標値]+[a2のX座標値]+[a2のY座標値]+[a3のX座標値]+[a3のY座標値](図2参照)は、[直線]+[a0のX座標値]+[a0のY座標値]+[a3のX座標値]+[a3のY座標値]に置き換えられて近似線変換部14から出力される。これにより、アウトラインフォントデータのサイズを小さくすることができる。   FIG. 3 is a diagram for explaining a linear approximation method of a Bezier curve. In FIG. 3, a Bezier curve constituting a part of the outline of the outline font is represented by four points a0, a1, a2, and a3, where a0 is a start point, a3 is an end point, and a1 and a2 are control points. When it is desired to approximate this with a straight line a0-a3, when the distance L to the point p farthest from the straight line a0-a3 in this Bezier curve is equal to or less than an “approximation threshold (described later)”, this Bezier The curve is approximated by one straight line a0-a3. This represented the Bezier curve, [Bézier curve] + [a0 X coordinate value] + [a0 Y coordinate value] + [a1 X coordinate value] + [a1 Y coordinate value] + [a2 X coordinate value] + [Y2 coordinate value of a2] + [X coordinate value of a3] + [Y3 coordinate value of a3] (see FIG. 2) is [straight line] + [X coordinate value of a0] + [a0 value of a0 It is replaced with Y coordinate value] + [X coordinate value of a3] + [Y coordinate value of a3] and output from the approximate line conversion unit 14. As a result, the size of the outline font data can be reduced.

図4は、ベジェ曲線の2直線近似方法を説明するための図である。図4では、図3におけるようなベジェ曲線の直線近似ができなかった場合、ベジェ曲線をa0からpまでのベジェ曲線とpからa3までのベジェ曲線の2つに分け、それぞれのベジェ曲線が図3に示した上記の近似条件を満たす場合には、2本の直線a0-pとp-a3でベジェ曲線を表し、これをベジェ曲線の2直線近似として近似線変換部14から出力することで、図2と同様、アウトラインフォントデータのサイズを小さくすることができる。なお、これ以上ベジェ曲線を分割して直線近似をしても圧縮効果がなくなるのでこれ以上の分割は行わないものとする。   FIG. 4 is a diagram for explaining a two-line approximation method of a Bezier curve. In FIG. 4, when the Bezier curve approximation as shown in FIG. 3 cannot be performed, the Bezier curve is divided into two, ie, a Bezier curve from a0 to p and a Bezier curve from p to a3. When the above approximation condition shown in FIG. 3 is satisfied, a Bezier curve is represented by two straight lines a0-p and p-a3, and this is output from the approximate line conversion unit 14 as a two-line approximation of the Bezier curve. As in FIG. 2, the size of the outline font data can be reduced. Note that even if the Bezier curve is further divided and linear approximation is performed, the compression effect is lost, and therefore no further division is performed.

図5は、ベジェ曲線の曲線パターン近似方法を説明するための図である。図5において、アウトラインフォントの輪郭の一部を構成するベジェ曲線を予め定義されたパターン化された曲線(後述する)に近似したい場合、ベジェ曲線の開始点(x1,y1)終了点(x4,y4)とする直線の垂線方向における距離が最も離れる点pとの距離Lを「近似閾値(後述する)」と比較し、図5に示した距離Lが「近似閾値(後述する)」以下であった場合には、このベジェ曲線を予め定義されたパターン化された曲線で近似する。パターン化された曲線による近似では、開始点、終了点の2点の座標とパターン番号として5ビットのデータで表す。これによりベジェ曲線の曲線パターン近似方法でもアウトラインフォントデータのサイズを小さくすることができる。 FIG. 5 is a diagram for explaining a curve pattern approximation method of a Bezier curve. In FIG. 5, when it is desired to approximate a Bezier curve constituting a part of the outline of the outline font to a pre-defined pattern curve (described later), the Bezier curve start point (x 1 , y 1 ) end point ( x 4, y 4) and the distance L between the point p with distance most in the perpendicular direction of the straight line compared to the "approximation threshold (to be described later)", the distance L is "approximation threshold (described later shown in FIG. 5 ) ”, The Bezier curve is approximated by a pre-defined patterned curve. In approximation by a patterned curve, the coordinates of the two points, the start point and end point, and the pattern number are represented by 5-bit data. Accordingly, the size of the outline font data can be reduced even by the curve pattern approximation method of the Bezier curve.

図6は、近似する曲線パターンをベジェ曲線とした場合の例を示す図である。図6に示すようにパターン化する曲線をベジェ曲線とする場合は、2つの制御点のX座標をそれぞれ開始点(x1,y1)と終了点(x4,y4)を結ぶ線分の1/4の位置と3/4の位置とし、Y座標が-16から15までの32通りとしたパターンを定義する。定義した32通りのパターンはパターン番号と対応付けてテーブル(図8参照)に格納しておき利用する。なお、開始点(x1,y1)終了点(x4,y4)制御点(x2,y2),(x3,y3)のベジェ曲線をパターン化したベジェ曲線と近似する場合には、パターン化した曲線の開始点、終了点がベジェ曲線と同じになるように拡大、縮小、回転を施し、テーブルに格納されている32通りのパターンとそれぞれ比較する。 FIG. 6 is a diagram illustrating an example in the case where the curve pattern to be approximated is a Bezier curve. When the curve to be patterned is a Bezier curve as shown in FIG. 6, the X coordinate of the two control points is a line segment connecting the start point (x 1 , y 1 ) and the end point (x 4 , y 4 ), respectively. Define a pattern that has 1/4 position and 3/4 position and 32 Y coordinates from -16 to 15. The defined 32 patterns are stored in a table (see FIG. 8) in association with pattern numbers and used. When the Bezier curve at the start point (x 1 , y 1 ), end point (x 4 , y 4 ), control point (x 2 , y 2 ), (x 3 , y 3 ) is approximated with a patterned Bezier curve Is expanded, reduced, and rotated so that the start and end points of the patterned curve are the same as the Bezier curve, and compared with the 32 patterns stored in the table.

図7(a)、(b)は、上記した近似閾値を説明するための図である。256×256ピクセルでデザインされたアウトラインフォントデータを40×40ピクセルのサイズで表示する場合、輪郭線がその中間を通るピクセルは階調値で表すことで輪郭のギザギザをなくす手法がアンチエイリアシングであり、このアンチエイリアシング手法はよく知られている。例えば40×40ピクセルにおける1ピクセルの中心を通る輪郭直線の上半分が塗りつぶし領域である場合、このピクセルの階調値は256階調では128となる。しかし、人間が携帯電話のLCD上に描かれた文字の輪郭にあたるピクセルを見るとき、階調値がある程度変化しても違和感がない。この変化量の指針として、従来から「コントラスト感受性値」が用いられており、人間が区別できない階調値の差は「256階調÷コントラスト感受性値」と表せる。図7(b)に示すように、携帯電話のLCDが約170dpiで、人間の目から約30cm離れた位置から見られることから、視野角7度で120サイクル、つまり空間周波数が17(サイクル/度)になる。したがってコントラスト感受性は図7(a)に示すグラフより20程度であることが導き出され、人間の区別できない階調値誤差は12.8となる。256×256で表現される座標値の位置ずれが1の場合、40×40での階調値ずれは40である。従って256×256で表現される座標値の許容可能な位置ずれ=「近似閾値」は、12.8÷40=0.32である。なお、「コントラスト感受性値」や「空間周波数」について知りたければ文献「K.T.スペアー、S.W.レムクール著、“視覚の情報処理”、1986年、サイエンス社発行」を参照されたい。   FIGS. 7A and 7B are diagrams for explaining the approximate threshold described above. When outline font data designed with 256 x 256 pixels is displayed at a size of 40 x 40 pixels, antialiasing is a technique that eliminates jagged edges of the outline by representing the pixels that pass through the outline with gradation values. This anti-aliasing technique is well known. For example, when the upper half of a contour line passing through the center of one pixel in 40 × 40 pixels is a filled region, the gradation value of this pixel is 128 in 256 gradations. However, when a person looks at a pixel corresponding to the outline of a character drawn on the LCD of a mobile phone, there is no sense of incongruity even if the gradation value changes to some extent. Conventionally, “contrast sensitivity value” has been used as a guideline for the amount of change, and a difference between gradation values that cannot be distinguished by humans can be expressed as “256 gradations ÷ contrast sensitivity value”. As shown in FIG. 7 (b), the LCD of the mobile phone is about 170dpi and can be seen from a position about 30cm away from the human eye, so the viewing angle is 7 degrees and 120 cycles, that is, the spatial frequency is 17 (cycle / cycle). Degrees). Therefore, it is derived from the graph shown in FIG. 7A that the contrast sensitivity is about 20, and the gradation value error that cannot be distinguished by humans is 12.8. When the positional deviation of the coordinate value expressed by 256 × 256 is 1, the gradation value deviation at 40 × 40 is 40. Accordingly, the allowable displacement of the coordinate value expressed by 256 × 256 = “approximate threshold” is 12.8 ÷ 40 = 0.32. If you want to know about "contrast sensitivity value" and "spatial frequency", please refer to the document "K.T. Spare, S.W. Remcourt," Visual Information Processing ", 1986, published by Science Inc.".

図8は、パターン番号とパターン化したベジェ曲線との対応関係を表したテーブルの例である。パターン化したベジェ曲線は、上述したように2つの制御点のX座標をそれぞれ開始点(x1,y1)と終了点(x4,y4)を結ぶ線分の1/4の位置と3/4の位置とし、Y座標が-16から15までの32通りとしたパターンを定義されているので、それに対応してパターン番号が付されている。なおベジェ曲線は後述する式3のように表される。 FIG. 8 is an example of a table showing the correspondence between pattern numbers and patterned Bezier curves. As described above, the patterned Bezier curve is the position of 1/4 of the line segment connecting the start point (x 1 , y 1 ) and the end point (x 4 , y 4 ) with the X coordinate of the two control points. Since the pattern is defined as having 3/4 positions and 32 Y coordinates from -16 to 15, pattern numbers are assigned accordingly. The Bezier curve is expressed as Equation 3 described later.

図9は、近似する曲線パターンをスプライン曲線とした場合の例を示す図である。図9に示すようにスプライン曲線近似は、1つの制御点のX座標をそれぞれ開始点(x1,y1)と終了点(x4,y4)を結ぶ線分の1/2の位置とし、Y座標が-16から15までの32通りとしたパターンを定義する。定義した32通りのパターンはパターン番号と対応付けてテーブル(図示せず)に格納しておき利用する。 FIG. 9 is a diagram illustrating an example in which the approximate curve pattern is a spline curve. As shown in FIG. 9, in spline curve approximation, the X coordinate of one control point is set to the half of the line segment connecting the start point (x 1 , y 1 ) and the end point (x 4 , y 4 ). , Define 32 patterns with Y coordinates from -16 to 15. The 32 patterns defined are stored in a table (not shown) in association with the pattern number for use.

図10Aないし図10Cは、本発明の実施形態に係る変換処理動作を説明するフローチャートである。図10Aないし図10Cのフローチャートに基づいて変換処理動作を説明すると、ステップS1においてアウトラインデータの先頭から座標値(X, Y)を読み出す。ステップS2では、ステップS1で読み込んだ座標値を開始点(x1, y1)とする。ついでステップS3では、アウトラインデータから線の種類を読み出す。ステップS4では、ステップS3で読み出した線の種類がベジェ曲線であればステップS5へ進み、そうでなければアウトラインデータから終了点の座標を読み出した後ステップS36へ進む。 10A to 10C are flowcharts for explaining the conversion processing operation according to the embodiment of the present invention. The conversion processing operation will be described based on the flowcharts of FIGS. 10A to 10C. In step S1, the coordinate value (X, Y) is read from the head of the outline data. In step S2, the coordinate value read in step S1 is set as the start point (x 1 , y 1 ). In step S3, the line type is read from the outline data. In step S4, if the line type read in step S3 is a Bezier curve, the process proceeds to step S5. Otherwise, the coordinates of the end point are read from the outline data, and then the process proceeds to step S36.

ステップS5では、アウトラインデータから座標値(X, Y)を読み出す。ステップS6では、ステップS5で読み出した座標値をベジェ曲線の制御点1(x2, y2)とする。ステップS7では、アウトラインデータから座標値(X, Y)を読み出す。ステップS8では、ステップS7で読み出した座標値をベジェ曲線の制御点2(x3, y3)とする。ステップS9では、アウトラインデータから座標値(X, Y)を読み出す。ステップS10では、ステップS9で読み出した座標値をベジェ曲線の終了点(x4,y4)とする。 In step S5, the coordinate value (X, Y) is read from the outline data. In step S6, the coordinate value read in step S5 is set as a Bezier curve control point 1 (x 2 , y 2 ). In step S7, coordinate values (X, Y) are read from the outline data. In step S8, the coordinate value read in step S7 is set as the control point 2 (x 3 , y 3 ) of the Bezier curve. In step S9, coordinate values (X, Y) are read from the outline data. In step S10, the coordinate value read in step S9 is set as the end point (x 4 , y 4 ) of the Bezier curve.

ステップS11では、開始点、制御点1、制御点2、終了点の4点からベジェ曲線の (1)を導出する。   In step S11, (1) of the Bezier curve is derived from the four points of the start point, the control point 1, the control point 2, and the end point.

Figure 0005372226
Figure 0005372226

ステップS12では、ベジェ曲線の開始点と終了点を結ぶ直線Sの式(2)を導出する。   In step S12, the equation (2) of the straight line S connecting the start point and end point of the Bezier curve is derived.

Figure 0005372226
Figure 0005372226

ステップS13では、直線Sの垂線方向において直線Sとベジェ曲線が最も離れた距離にあるベジェ曲線上の点Pを式(1)、式(2)から計算する。ステップS14では、式(2)とステップS13で求めた点Pの座標値から、直線Sと点Pの距離Lを計算する。ステップS15では、距離Lを表示デバイス上で描画される最大サイズでの距離lに換算する。ステップS16では、距離l = 階調誤差値lが人間の目で区別できる階調誤差の限界値M以下のときステップS17へ進み、そうでなければステップS18へ進む。ステップS17では、ベジェ曲線は直線Sで近似されるため、線種「ベジェ曲線」座標値「制御点1」「制御点2」という元のアウトラインデータを、線種「直線」に置き換えて出力しステップS33へ進む。   In step S13, a point P on the Bezier curve that is the farthest distance between the straight line S and the Bezier curve in the perpendicular direction of the straight line S is calculated from the equations (1) and (2). In step S14, the distance L between the straight line S and the point P is calculated from the equation (2) and the coordinate value of the point P obtained in step S13. In step S15, the distance L is converted into a distance l at the maximum size drawn on the display device. In step S16, when the distance l = the gradation error value l is equal to or less than the limit value M of the gradation error that can be distinguished by the human eye, the process proceeds to step S17, and if not, the process proceeds to step S18. In step S17, since the Bezier curve is approximated by a straight line S, the original outline data of the line type “Bézier curve” coordinate values “control point 1” and “control point 2” is replaced with the line type “straight line” and output. Proceed to step S33.

ステップS17では、ベジェ曲線は直線Sで近似されるため、線種「ベジェ曲線」座標値「制御点1」「制御点2」という元のアウトラインデータを、線種「直線」に置き換えて出力しステップS33へ進む。ステップS18では、パターン曲線の開始点を開始点(x1, y1)に、終了点を(x4, y4)に置いた時のベジェ曲線で近似する場合の式(3)、あるいはスプライン曲線で近似する場合の式(4)を導出する。 In step S17, since the Bezier curve is approximated by a straight line S, the original outline data of the line type “Bézier curve” coordinate values “control point 1” and “control point 2” is replaced with the line type “straight line” and output. Proceed to step S33. In step S18, the expression (3) for approximating with the Bezier curve when the start point of the pattern curve is placed at the start point (x 1 , y 1 ) and the end point at (x 4 , y 4 ), or a spline Formula (4) in the case of approximating with a curve is derived.

Figure 0005372226
Figure 0005372226

上記式(3)において、2つの制御点のX座標をそれぞれ開始点(x1,y1)と終了点(x4,y4)を結ぶ線分の1/4の位置と3/4の位置とし、Y座標が-16から15までについてqをパターン番号と見てその番号に対応するパターン化したベジェ曲線を求めると図8に示したテーブルが得られる。 In the above equation (3), the X coordinates of the two control points are respectively the 1/4 position and 3/4 of the line segment connecting the start point (x 1 , y 1 ) and the end point (x 4 , y 4 ). When a position is set, and a Y coordinate is −16 to 15 and q is regarded as a pattern number, a patterned Bezier curve corresponding to the number is obtained, the table shown in FIG. 8 is obtained.

Figure 0005372226
Figure 0005372226

ステップS19では、パターン番号qに0を代入する。ステップS20では、直線Sの垂線方向において、ベジェ曲線と近似曲線が最も離れている場合の距離Lを、パターン番号qに対応するベジェ曲線の式(3)と式(1)から計算する。ステップS21では、パターン番号qの値を1増加させる。ステップS22では、パターン番号qの値が32のときステップS23へ進み、そうでなければステップS20へ進む。ステップS23では、ステップS19〜S22のループの中でLが最も小さい値であった場合のパターン番号をQとする。ステップS24では、パターンQでの距離Lを表示デバイス上で描画される最大サイズでの距離lに換算する。ステップS25では、距離l = 階調誤差値lが人間の目で区別できる階調誤差の限界値M以下のときステップS26へ進み、そうでなければステップS27へ進む。   In step S19, 0 is substituted for pattern number q. In step S20, the distance L when the Bezier curve and the approximate curve are farthest in the perpendicular direction of the straight line S is calculated from the Bezier curve equations (3) and (1) corresponding to the pattern number q. In step S21, the value of pattern number q is increased by 1. In step S22, when the value of the pattern number q is 32, the process proceeds to step S23, and if not, the process proceeds to step S20. In step S23, Q is the pattern number when L is the smallest value in the loop of steps S19 to S22. In step S24, the distance L in the pattern Q is converted into the distance l in the maximum size drawn on the display device. In step S25, when the distance l = the gradation error value l is equal to or less than the limit value M of the gradation error that can be distinguished by human eyes, the process proceeds to step S26. Otherwise, the process proceeds to step S27.

ステップS26では、ベジェ曲線はパターン化された近似曲線で近似されるため、線種「ベジェ曲線」座標値「制御点1」「制御点2」という元のアウトラインデータを、線種「パターン曲線」と「パターン番号Q」に置き換えて出力しステップS37へ進む。ステップS27では、開始点(x1, y1)と点P(xp, yp)を結ぶ直線S1の式(5)を導出する。 In step S26, since the Bezier curve is approximated by a patterned approximate curve, the original outline data of the line type “Bézier curve” coordinate values “control point 1” and “control point 2” is used as the line type “pattern curve”. And "pattern number Q" is output and the process proceeds to step S37. In step S27, the equation (5) of the straight line S 1 connecting the start point (x 1 , y 1 ) and the point P (x p , y p ) is derived.

Figure 0005372226
Figure 0005372226

ステップS28では、直線S1の垂線方向において、開始点(x1, y1)から点P(xp, yp)までを結ぶベジェ曲線と直線S1とが最も離れる場合の距離L1を式(1)、式(5)から計算する。ステップS29では、ステップS28で求めた距離L1を表示デバイス上で描画される最大サイズでの距離l1に換算する。ステップS30では、距離l1 = 階調誤差値l1が人間の目で区別できる階調誤差の限界値M以下のときステップS31へ進み、そうでなければステップS36へ進む。 At step S28, in the perpendicular direction of the straight line S 1, the distance L 1 of the case where the start point (x 1, y 1) the point from P (x p, y p) is the Bezier curve and a straight line S 1 connecting to farthest Calculate from Equation (1) and Equation (5). In step S29, it converted to a distance l 1 at a maximum size drawn a distance L 1 calculated in step S28 on the display device. In step S30, when the distance l 1 = the gradation error value l 1 is equal to or less than the limit value M of the gradation error that can be distinguished by the human eye, the process proceeds to step S31. Otherwise, the process proceeds to step S36.

ステップS31では、点P(xp, yp)と終了点(x4, y4)を結ぶ直線S2の式(6)を導出する。 In step S31, it derives the point P (x p, y p) and the end point (x 4, y 4) wherein the straight line S 2 connecting (6).

Figure 0005372226
Figure 0005372226

ステップS32では、直線S2の垂線方向において、点P(xp, yp) から終了点(x4, y4)までを結ぶベジェ曲線と直線S2とが最も離れる場合の距離L2を式(1)、式(6)から計算する。ステップS33では、ステップS32で求めた距離L2を表示デバイス上で描画される最大サイズでの距離l2に換算する。ステップS34では、距離l2= 階調誤差値l2が人間の目で区別できる階調誤差の限界値M以下のときステップS35へ進み、そうでなければステップS36へ進む。 In step S32, in the perpendicular direction of the straight line S 2, the point P (x p, y p) end point from the (x 4, y 4) the distance L 2 in the case of the Bezier curve and the line S 2 is farthest connecting to Calculate from Equation (1) and Equation (6). In step S33, it converted into the distance l 2 at a maximum size drawn a distance L 2 obtained in step S32 on the display device. In step S34, when the distance l 2 = the gradation error value l 2 is equal to or less than the gradation error limit value M that can be distinguished by the human eye, the process proceeds to step S35, and if not, the process proceeds to step S36.

ステップS35では、ベジェ曲線は2本の直線で近似されるため、線種「ベジェ曲線」座標値「制御点1」「制御点2」という元のアウトラインデータを、線種「直線」、座標値「点P(xp, yp)」、線種「直線」に置き換えて出力しステップS37へ進む。ステップS36では、ベジェ曲線の変換処理は起こらないため元のデータのまま出力する。ステップS37では、終了点の座標値(x4, y4)を次の線の開始点(x1, y1)として代入する。ステップS38では、輪郭線を書き終え、閉曲線が完成していれば終了し、そうでなければステップS3へ戻る。 In step S35, since the Bezier curve is approximated by two straight lines, the original outline data of the line type “Bezier curve” coordinate values “control point 1” and “control point 2” is converted into the line type “straight line” and the coordinate values. The output is replaced with “point P (x p , y p )” and the line type “straight line”, and the process proceeds to step S37. In step S36, since the Bezier curve conversion process does not occur, the original data is output as it is. In step S37, the coordinate value (x 4 , y 4 ) of the end point is substituted as the start point (x 1 , y 1 ) of the next line. In step S38, the contour line has been written. If the closed curve is completed, the process ends. If not, the process returns to step S3.

このフローをすべての文字において行うことでアウトラインフォントファイル全体を圧縮することが可能となる。上記したフローでは本発明に係る第1ないし第3の近似工程すべてを用いて近似処理を実行する例について説明したが、このフローを基に本発明に係る第1ないし第3の近似工程のいずれか1以上の近似処理を実行するように変更することもできる。   By performing this flow for all characters, the entire outline font file can be compressed. In the above-described flow, the example in which the approximation process is executed using all the first to third approximation steps according to the present invention has been described. However, any one of the first to third approximation steps according to the present invention is described based on this flow. It is also possible to change to execute one or more approximation processes.

この処理を行った後、すべての座標値と座標を結ぶ線の種類についてそれぞれの出現頻度の統計を取り、ハフマン符号化など既存のエントロピー圧縮処理を行う。   After this processing is performed, statistics on the appearance frequencies of all coordinate values and the types of lines connecting the coordinates are obtained, and existing entropy compression processing such as Huffman coding is performed.

以上説明したことを概観すれば本発明は以下のような構成を備えるものである。
(付記1)サイズX正方の精度でデザインされた文字のアウトラインデータが存在し画面表示される文字のサイズがサイズY(Y<X)正方以下であると分かっている場合、
アウトラインデータに含まれるベジェ曲線を表すデータのうち、
ある曲線と直線との距離がある値L以下のものを直線で近似する第1の近似工程、
前記第1の近似工程で曲線と直線の距離がL以上であるがその距離がL’(L’>L)以下の長さのベジェ曲線を2本の直線で近似する第2の近似工程、および、
前記ベジェ曲線のカーブ度合いがあらかじめ定義した曲線パターンに近いときに、そのパターンで近似する第3の近似工程、のいずれか1以上を備えることを特徴とするアウトラインフォント圧縮方法。
In summary, the present invention has the following configuration.
(Supplementary note 1) When there is outline data of a character designed with accuracy of size X square and the size of the character displayed on the screen is known to be less than or equal to size Y (Y <X) square,
Of the data representing the Bezier curve included in the outline data,
A first approximating step of approximating a straight line with a distance between a certain curve and a straight line that is less than a certain value L;
A second approximating step of approximating a Bezier curve having a length equal to or less than L ′ (L ′> L) but a length of the distance between the curve and the straight line by two straight lines in the first approximating step; and,
An outline font compression method comprising: one or more of a third approximation step for approximating a curve degree of the Bezier curve close to a predefined curve pattern.

(付記2)前記第1の近似工程は、
サイズX正方の精度でデザインされた文字をサイズY正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズY正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
ベジェ曲線の開始点と終了点を結ぶ直線としてその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データをベジェ曲線の開始点と終了点を結ぶ直線データに変換する付記1記載のアウトラインフォント圧縮方法。
(Appendix 2) The first approximating step is:
When a character designed with size X square accuracy is displayed on the screen with size Y square, it is assumed that the contour part of the character is expressed by an anti-aliasing method,
The character is represented by a size Y square, and the gradation value of the contour pixel when a part of the contour of the character is drawn as a Bezier curve according to the original outline data,
When the contour line is drawn as a straight line connecting the start and end points of the Bezier curve,
When it is less than the difference between the gradation values that are considered indistinguishable when viewed with the human eye,
The outline font compression method according to appendix 1, wherein the Bezier curve data is converted into straight line data connecting a start point and an end point of a Bezier curve.

(付記3)前記第2の近似工程は、
サイズX正方の精度でデザインされた文字をサイズY正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズY正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
ベジェ曲線の開始点と終了点を結ぶ直線とベジェ曲線との距離が最も離れた点をAとした時、ベジェ曲線の開始点とAを結ぶ直線とAとベジェ曲線の終了点を結ぶ直線の2本の直線としてその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データを2本の直線データに変換する付記1記載のアウトラインフォント圧縮方法。
(Appendix 3) The second approximation step is
When a character designed with size X square accuracy is displayed on the screen with size Y square, it is assumed that the contour part of the character is expressed by an anti-aliasing method,
The character is represented by a size Y square, and the gradation value of the contour pixel when a part of the contour of the character is drawn as a Bezier curve according to the original outline data,
When A is the point where the distance between the Bezier curve start point and end point and the Bezier curve is the farthest, the straight line connecting the Bezier curve start point and A and the straight line connecting A and the Bezier curve end point are When the contour line is drawn as two straight lines, the difference from the gradation value of the contour pixel is
When it is less than the difference between the gradation values that are considered indistinguishable when viewed with the human eye,
The outline font compression method according to attachment 1, wherein the Bezier curve data is converted into two pieces of straight line data.

(付記4)前記第3の近似工程は、
ベジェ曲線の開始点と終了点を結ぶ直線とベジェ曲線との距離が最も離れた点の法線が前記直線の中点を通り、その曲率としてN通りのパターンを持つベジェ曲線をあらかじめパターン番号と対応を付けで定義しておくテーブルを有し、
サイズX正方の精度でデザインされた文字をサイズY正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズY正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
前記テーブルに定義されたN通りのパターン曲線の1つでその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データを前記パターン曲線に対応するパターン番号に変換する付記1記載のアウトラインフォント圧縮方法。
(Appendix 4) The third approximation step is
The normal line of the point where the distance between the straight line connecting the start point and the end point of the Bezier curve and the Bezier curve is farthest passes through the midpoint of the straight line, and the Bezier curve having N patterns as the curvature is previously set as the pattern number. It has a table to define with correspondence,
When a character designed with size X square accuracy is displayed on the screen with size Y square, it is assumed that the contour part of the character is expressed by an anti-aliasing method,
The character is represented by a size Y square, and the gradation value of the contour pixel when a part of the contour of the character is drawn as a Bezier curve according to the original outline data,
The difference from the gradation value of the contour pixel when the contour line is drawn with one of the N pattern curves defined in the table,
When it is less than the difference between the gradation values that are considered indistinguishable when viewed with the human eye,
The outline font compression method according to appendix 1, wherein the Bezier curve data is converted into a pattern number corresponding to the pattern curve.

(付記5)近似前の輪郭ピクセルの階調値と近似後の輪郭ピクセルの階調値との差は、
人間の目で区別できない最大の階調値誤差がサイズX正方の精度での距離に換算した上でベジェ曲線と近似線の距離が前記距離を越えないことを条件として該当する前記第1ないし第3の近似工程のいずれかで近似する付記2ないし4のいずれかに記載のアウトラインフォント圧縮方法。
(Supplementary Note 5) The difference between the gradation value of the contour pixel before approximation and the gradation value of the contour pixel after approximation is
The above first to second conditions are met on condition that the distance between the Bezier curve and the approximate line does not exceed the distance after the maximum gradation value error that cannot be distinguished by the human eye is converted into a distance of size X square accuracy. 5. The outline font compression method according to any one of appendices 2 to 4, which is approximated in any of the three approximation steps.

(付記6)ベジェ曲線の一部を前記第1ないし第3の近似工程のいずれかを用いて直線または曲線に変換した後、さらに変換後の開始点・終了点及びベジェ曲線の制御点を表す座標値を纏めてエントロピー符号化により圧縮する付記1記載のアウトラインフォント圧縮方法。   (Supplementary Note 6) After a part of the Bezier curve is converted into a straight line or a curve using any of the first to third approximation steps, the converted start and end points and the Bezier curve control points are represented. The outline font compression method according to appendix 1, wherein the coordinate values are collectively compressed by entropy coding.

(付記7)前記第3の近似工程において、
あらかじめ定義しておく曲線が、制御点が開始点と終了点を結ぶ直線の中点を通る垂線上にあり、その曲率としてN通りのパターンを持つスプライン曲線である付記4記載のアウトラインフォント圧縮方法。
(Appendix 7) In the third approximation step,
The outline font compression method according to appendix 4, wherein the curve defined in advance is a spline curve in which the control point is on a perpendicular passing through the midpoint of the straight line connecting the start point and the end point, and the curvature thereof is N patterns. .

本発明は、上記3つの近似工程を有効に用いることでベジェ曲線を少ないデータ量で表すことが可能となるため、特に曲線部分の多いデザインのフォントに対して大幅なデータの低減を可能となるので組み込み型機器が搭載する表示デバイスに有効である。   In the present invention, the Bezier curve can be expressed with a small amount of data by effectively using the above three approximation steps, and therefore, the data can be greatly reduced particularly for a font having a design with many curve portions. Therefore, it is effective for display devices installed in embedded devices.

11 アウトラインデータファイル
12 アウトラインデータファイル読込部
13 座標解像度低下部
14 近似線変換部
15 エントロピー圧縮部
16 圧縮アウトラインデータファイル出力部
17 圧縮アウトラインデータファイル
11 Outline Data File 12 Outline Data File Reading Unit 13 Coordinate Resolution Reduction Unit 14 Approximate Line Conversion Unit 15 Entropy Compression Unit 16 Compressed Outline Data File Output Unit 17 Compressed Outline Data File

Claims (3)

サイズX正方の精度でデザインされた文字のアウトラインデータが存在し画面表示される文字のサイズがサイズY(Y<X)正方以下であると分かっている場合、
アウトラインデータに含まれるベジェ曲線を表すデータのうち、該ベジェ曲線を表すデータに含まれるある曲線と、該ベジェ曲線の開始点と終了点を結ぶ直線との距離がある値L以下のものを直線で近似する第1の近似工程、
前記第1の近似工程で曲線と直線の距離がLより大きいがその距離がL’(L’>L)以下の長さのベジェ曲線を、該ベジェ曲線の開始点と該ベジェ曲線を2つに分割する分割点とを結ぶ直線と、該分割点と該ベジェ曲線の終了点とを結ぶ直線の2本の直線で近似する第2の近似工程、および、
前記ベジェ曲線のカーブ度合いがあらかじめ定義した曲線パターンに近いときに、そのパターンで近似する第3の近似工程、のいずれか1以上を備え、
前記第2の近似工程は、
サイズX正方の精度でデザインされた文字をサイズY正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズY正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
ベジェ曲線の開始点と終了点を結ぶ直線とベジェ曲線との距離が最も離れた点を分割点とした時、ベジェ曲線の開始点と分割点を結ぶ直線と分割点とベジェ曲線の終了点を結ぶ直線の2本の直線としてその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データを2本の直線データに変換することを特徴とするアウトラインフォント圧縮方法。
If there is outline data of characters designed with size X square accuracy and the size of the characters displayed on the screen is known to be less than size Y (Y <X) square,
Among the data representing the Bezier curve included in the outline data, a straight line that has a distance of a certain value L or less between a certain curve included in the data representing the Bezier curve and a straight line connecting the start point and the end point of the Bezier curve A first approximation step approximated by
In the first approximating step, a Bezier curve whose distance between the curve and the straight line is larger than L but whose distance is L ′ (L ′> L) or less, and the start point of the Bezier curve and two Bezier curves are used. A second approximation step of approximating with two straight lines connecting a dividing point to be divided into two and a straight line connecting the dividing point and the end point of the Bezier curve;
When the degree of curve of the Bezier curve is close to a predefined curve pattern, it comprises any one or more of a third approximation step for approximating with the pattern,
The second approximation step includes
When a character designed with size X square accuracy is displayed on the screen with size Y square, it is assumed that the contour part of the character is expressed by an anti-aliasing method,
The character is represented by a size Y square, and the gradation value of the contour pixel when a part of the contour of the character is drawn as a Bezier curve according to the original outline data,
When the point where the distance between the start point and the end point of the Bezier curve and the Bezier curve is the farthest is the dividing point, the straight line connecting the start point and the dividing point of the Bezier curve, the dividing point, and the end point of the Bezier curve The difference from the gradation value of the contour pixel when the contour line is drawn as two straight lines to be connected,
When it is less than the difference between the gradation values that are considered indistinguishable when viewed with the human eye,
An outline font compression method characterized by converting Bezier curve data into two straight line data.
サイズX正方の精度でデザインされた文字のアウトラインデータが存在し画面表示される文字のサイズがサイズY(Y<X)正方以下であると分かっている場合、
アウトラインデータに含まれるベジェ曲線を表すデータのうち、該ベジェ曲線を表すデータに含まれるある曲線と、該ベジェ曲線の開始点と終了点を結ぶ直線との距離がある値L以下のものを直線で近似する第1の近似工程、
前記第1の近似工程で曲線と直線の距離がLより大きいがその距離がL’(L’>L)以下の長さのベジェ曲線を、該ベジェ曲線の開始点と該ベジェ曲線を2つに分割する分割点とを結ぶ直線と、該分割点と該ベジェ曲線の終了点とを結ぶ直線の2本の直線で近似する第2の近似工程、および、
前記ベジェ曲線のカーブ度合いがあらかじめ定義した曲線パターンに近いときに、そのパターンで近似する第3の近似工程、のいずれか1以上を備え、
前記第3の近似工程は、
ベジェ曲線の開始点と終了点を結ぶ直線とベジェ曲線との距離が最も離れた点の法線が前記直線の中点を通り、その曲率としてN通りのパターンを持つベジェ曲線をあらかじめパターン番号と対応を付けで定義しておくテーブルを有し、
サイズX正方の精度でデザインされた文字をサイズY正方で画面表示した場合に、文字の輪郭部分をアンチエイリアシング手法で表現することを前提とし、
文字をサイズY正方で表し、文字の輪郭線の一部を元のアウトラインデータ通りベジェ曲線として描画した場合の輪郭ピクセルの階調値と、
前記テーブルに定義されたN通りのパターン曲線の1つでその輪郭線を描画した場合の輪郭ピクセルの階調値との差が、
人間の目で見た場合に区別がつかないとされている階調値の差以下である際、
ベジェ曲線データを前記パターン曲線に対応するパターン番号に変換することを特徴とするアウトラインフォント圧縮方法。
If there is outline data of characters designed with size X square accuracy and the size of the characters displayed on the screen is known to be less than size Y (Y <X) square,
Among the data representing the Bezier curve included in the outline data, a straight line that has a distance of a certain value L or less between a certain curve included in the data representing the Bezier curve and a straight line connecting the start point and the end point of the Bezier curve A first approximation step approximated by
In the first approximating step, a Bezier curve whose distance between the curve and the straight line is larger than L but whose distance is L ′ (L ′> L) or less, and the start point of the Bezier curve and two Bezier curves are used. A second approximation step of approximating with two straight lines connecting a dividing point to be divided into two and a straight line connecting the dividing point and the end point of the Bezier curve;
When the degree of curve of the Bezier curve is close to a predefined curve pattern, it comprises any one or more of a third approximation step for approximating with the pattern,
The third approximation step includes
The normal line of the point where the distance between the straight line connecting the start point and the end point of the Bezier curve and the Bezier curve is farthest passes through the midpoint of the straight line, and the Bezier curve having N patterns as the curvature is previously set as the pattern number. It has a table to define with correspondence,
When a character designed with size X square accuracy is displayed on the screen with size Y square, it is assumed that the contour part of the character is expressed by an anti-aliasing method,
The character is represented by a size Y square, and the gradation value of the contour pixel when a part of the contour of the character is drawn as a Bezier curve according to the original outline data,
The difference from the gradation value of the contour pixel when the contour line is drawn with one of the N pattern curves defined in the table,
When it is less than the difference between the gradation values that are considered indistinguishable when viewed with the human eye,
An outline font compression method, wherein Bezier curve data is converted into a pattern number corresponding to the pattern curve.
近似前の輪郭ピクセルの階調値と近似後の輪郭ピクセルの階調値との差は、
人間の目で区別できない最大の階調値誤差がサイズX正方の精度での距離に換算した上でベジェ曲線と近似線の距離が前記距離を越えないことを条件として該当する前記第1ないし第3の近似工程のいずれかで近似する請求項1または2のいずれか1項に記載のアウトラインフォント圧縮方法。
The difference between the tone value of the contour pixel before approximation and the tone value of the contour pixel after approximation is
The above first to second conditions are met on condition that the distance between the Bezier curve and the approximate line does not exceed the distance after the maximum gradation value error that cannot be distinguished by the human eye is converted into a distance of size X square accuracy. The outline font compression method according to claim 1, wherein the outline font compression method is approximated in any one of the three approximation steps.
JP2012174245A 2012-08-06 2012-08-06 Outline font compression method Expired - Fee Related JP5372226B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012174245A JP5372226B2 (en) 2012-08-06 2012-08-06 Outline font compression method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012174245A JP5372226B2 (en) 2012-08-06 2012-08-06 Outline font compression method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005285457A Division JP5106768B2 (en) 2005-09-29 2005-09-29 Outline font compression method

Publications (2)

Publication Number Publication Date
JP2013015842A JP2013015842A (en) 2013-01-24
JP5372226B2 true JP5372226B2 (en) 2013-12-18

Family

ID=47688527

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012174245A Expired - Fee Related JP5372226B2 (en) 2012-08-06 2012-08-06 Outline font compression method

Country Status (1)

Country Link
JP (1) JP5372226B2 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0634257B2 (en) * 1985-09-06 1994-05-02 アルプス電気株式会社 Automatic vectorization processing method for character images
JP2844639B2 (en) * 1989-03-02 1999-01-06 セイコーエプソン株式会社 Character pattern signal generator
JPH08305335A (en) * 1995-04-28 1996-11-22 Fuji Xerox Co Ltd Character processor
JPH11242472A (en) * 1998-02-25 1999-09-07 Oki Data Corp Outline font developing device
JP2001109454A (en) * 1999-10-12 2001-04-20 Fuji Xerox Co Ltd Character processing device
JP2002116751A (en) * 2000-10-05 2002-04-19 Oki Data Corp Character data conversion method
JP5106768B2 (en) * 2005-09-29 2012-12-26 富士通株式会社 Outline font compression method

Also Published As

Publication number Publication date
JP2013015842A (en) 2013-01-24

Similar Documents

Publication Publication Date Title
JP5106768B2 (en) Outline font compression method
KR100748802B1 (en) A method for rendering an image, a system and a computer program storage medium for processing graphic objects for rendering an image
US6781600B2 (en) Shape processor
JP4762901B2 (en) How to render an area of a composite glyph
JP2006521629A (en) Method and apparatus for anti-aliasing a region of a two-dimensional distance field representing an object
US20120075310A1 (en) Arc spline gpu rasterization for cubic bezier drawing
JP4869920B2 (en) Method and apparatus for determining anti-aliasing strength of pixel components from a two-dimensional distance field representing an object
WO2009121722A1 (en) Method of and arrangement for rendering a path
CN101510421B (en) Method and apparatus for regulating dot-character size, and embedded system
KR20060045418A (en) Character image generating apparatus, character image generating method, display control apparatus, display control method and computer-readable recording medium for recording character image generation program or display control program there on
KR100813380B1 (en) Character image generating system, storage medium storing character image generating program and method
US7956861B2 (en) Method for checkerboard-based vector to raster conversion
JP2006521628A (en) Method for generating a two-dimensional distance field in a cell associated with a corner of a two-dimensional object
JP2006521626A (en) Method for generating a two-dimensional distance field from a pen stroke
JP2006521624A (en) Converting a 2D object to a 2D distance field
JP2006521627A (en) How to animate an object as a frame sequence according to a video script
JP5372226B2 (en) Outline font compression method
JP6297169B2 (en) Drawing apparatus and drawing method
JP5159949B2 (en) Vector drawing equipment
JP2012108825A (en) Information processing device, information processing method and program
US20220138901A1 (en) Image display method, image processing method, image processing device, display system and computer-readable storage medium
US11417058B2 (en) Anti-aliasing two-dimensional vector graphics using a multi-vertex buffer
JP2006521625A (en) A method for converting a two-dimensional distance field into a set of boundary descriptors
JP2013539880A (en) Rasterization method and rasterization device
JP3603593B2 (en) Image processing method and apparatus

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130829

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: 20130910

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130917

R150 Certificate of patent or registration of utility model

Ref document number: 5372226

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees