JP3108582B2 - Thicker text generator - Google Patents

Thicker text generator

Info

Publication number
JP3108582B2
JP3108582B2 JP06100476A JP10047694A JP3108582B2 JP 3108582 B2 JP3108582 B2 JP 3108582B2 JP 06100476 A JP06100476 A JP 06100476A JP 10047694 A JP10047694 A JP 10047694A JP 3108582 B2 JP3108582 B2 JP 3108582B2
Authority
JP
Japan
Prior art keywords
point
amount
moving
character
thick
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
JP06100476A
Other languages
Japanese (ja)
Other versions
JPH07146673A (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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP06100476A priority Critical patent/JP3108582B2/en
Publication of JPH07146673A publication Critical patent/JPH07146673A/en
Application granted granted Critical
Publication of JP3108582B2 publication Critical patent/JP3108582B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、太め細め文字の生成装
置に関し、より詳細には、ワードプロセッサやコンピュ
ータシステムなどに搭載されるアウトラインフォントの
異なった太さの文字生成装置に関するものである
BACKGROUND OF THE INVENTION This invention relates to apparatus for generating thick thin characters, and more particularly, to a character generation device of thickness having different outline font to be mounted on a word processor or a computer system.

【0002】[0002]

【従来の技術】従来の、太め細めの文字の生成装置にお
ける文字生成方法としては、以下の 1)(3)のも
のがある。
2. Description of the Related Art There are the following ( 1) to (3) as character generation methods in a conventional thick and thin character generation apparatus.

【0003】(1)文字のデザイナが1文字ずつ形状を
手作業またはコンピュータを使った手作業で文字の太さ
を変え、複数の太さの異なるデータを用意し、記憶して
おくもの。
(1) A character designer changes the thickness of a character by hand or by using a computer, one character at a time, and prepares and stores a plurality of data having different thicknesses.

【0004】(2)印字または表示の際に、文字を数ド
ットずつ横方向または斜め方向にずらしながら重ねてい
くことによって太めるもの。
(2) Thickness is achieved by overlapping characters while shifting them in a horizontal or oblique direction by several dots at the time of printing or displaying.

【0005】(3)アウトラインフォントをビットマッ
プフォントに展開し、黒画素に隣接する白画素を、あら
かじめ付加しておいた情報をもとに黒画素に変換し、太
めの文字を生成するもの(例えば、特開平3−2526
97号公報)。
(3) An outline font is developed into a bitmap font, and a white pixel adjacent to a black pixel is converted into a black pixel based on information added in advance to generate a thick character ( For example, Japanese Unexamined Patent Publication No. Hei.
No. 97).

【0006】[0006]

【発明が解決しようとする課題】前述のように、従来の
太め細め文字の生成装置においては、(1) デザイナによる方法では、文字数が多いため、膨
大な時間と人手がかかり、文字全体の統一性が損なわれ
やすい、(2) 文字をずらしながら重ねていく方法では、得られ
る文字の品質が著しく低下し、印字または表示に時間が
かかる、(3)太めの文字を生成するために、アウトラインフォ
ントを一 度ビットマップフォントに変換する方法では、
変換の手間がかか、あらかじめ情報を付加しておかな
ければならないため、時間と人手がかか、フォントデ
ータが大きくなる、という問題点があった。
As described above, in the conventional apparatus for generating thick and thin characters, (1) the method using the designer requires a large number of characters, which requires an enormous amount of time and labor to unify the entire characters. (2) In the method of overlapping characters while shifting them, the quality of the obtained characters is remarkably deteriorated, and printing or display takes time. (3) Outlines are generated to generate thick characters. Pho
In the method of converting into a time bitmap fonts cement,
Ri written labor conversions, because that must be added in advance information, Ri takes time and manpower, font data is large, there is a problem that.

【0007】本発明は、このような実情に鑑みてなされ
たもので、膨大な時間と人手をかけることなく、太め細
めの文字が簡単に得られるようにした太め細め文字の生
成装置を提供することを目的としている。
SUMMARY OF THE INVENTION The present invention has been made in view of such circumstances, and provides a thick and thin character generating apparatus capable of easily obtaining thick and thin characters without enormous time and labor. It is intended to be.

【0008】[0008]

【課題を解決するための手段】本発明は、上記目的を達
成するために成されたもので、文字の輪郭を構成する点
列で定義されたアウトラインフォントのデータを記憶し
た記憶手段と、前記記憶手段からアウトラインフォント
のデータを読み出す読出手段と、前記読出手段により読
み出されたデータの各点と該点の前後2点の二次元座標
値より移動方向を決定する移動方向決定手段と、太め細
め量を入力する太め細め量入力手段と、前記入力された
太め細め量をもとに前記移動方向に対する各点の移動量
を決定する変倍処理手段と、前記移動量に基づき各点を
移動させる移動処理手段と、を備えたアウトラインフォ
ントの異なった太さの文字生成装置において、前記移動
方向決定手段は、前記読出手段により読み出されたデー
タの各点と該点の前後2点の二次元座標値から該点の相
対座標値を前記各点ごとに求める手段と、この算出され
た相対座標を単位化する手段と、これら単位化された前
記各点と該点の前後2点の単位化座標から移動方向を決
定する手段とを有し、前記変倍処理手段は、前記太め細
め量入力手段から入力された太め細め量をもとに変倍率
を算出する手段と、前記移動方向に前記変倍率で定数倍
して各点の移動量を決定する手段とを有してなることを
特徴とするものである。
The present invention SUMMARY OF] has been made in order to achieve the above object, store data of the defined outline font in a sequence of points constituting the contour of the character
Storage means, and an outline font from the storage means.
Reading means for reading out the data of
Two-dimensional coordinates of each point of the found data and two points before and after the point
Moving direction determining means for determining the moving direction from the value;
Thick and thin amount input means for inputting the amount,
The amount of movement of each point in the moving direction based on the amount of thickening and thinning
Scaling processing means for determining
A movement processing unit for moving the, in the character generator of the outline font different thicknesses with, said movement
The direction determining means includes a data read by the reading means.
From the two-dimensional coordinate values of each point of the data and two points before and after the point,
Means for obtaining a coordinate value for each point,
Means to unitize relative coordinates
The moving direction is determined from each point and the unitized coordinates of the two points before and after the point.
Means for adjusting the magnification, wherein said scaling processing means comprises:
Magnification based on the thicker / smaller amount input from the amount input means
And a constant multiplying factor in the moving direction by the scaling factor.
Means for determining the amount of movement of each point .

【0009】[0009]

【作用】請求項1記載の発明では、移動方向決定手段に
て、記憶手段から読出手段により読み出されたデータの
各点と該点の前後2点の二次元座標値から該点の相対座
標値を前記各点ごとに求め、この相対座標を単位化し、
これら単位化された前記各点と該点の前後2点での単位
化座標から移動方向を決定し、変倍処理手段にて、太め
細め量入力手段で入力された太め細め量をもとに前記移
動方向に対する変倍率を算出して、前記移動方向に前記
変倍率で定数倍して各点の移動量を決定し、移動処理手
段にて、前記移動量に基づいて各点を移動させる。
According to the first aspect of the present invention, the relative direction of the point is determined from the two-dimensional coordinate values of each point of the data read from the storage means and the two points before and after the point by the moving direction determining means.
A standard value is obtained for each of the points, and the relative coordinates are unitized,
Units at each of these unitized points and two points before and after the points
Determine the moving direction from the converted coordinates, and use the scaling process
Based on the thickening amount input by the thinning amount input means,
Calculate the scaling ratio for the moving direction, and
Determine the amount of movement for each point by multiplying by a constant with the scaling factor, and
In the step, each point is moved based on the movement amount.

【0010】れにより、膨大な時間と人手をかけるこ
となく、太め細めの文字が簡単に得られる。
[0010] This ensures that, without putting an enormous amount of time and manpower, the character of thick thin can be easily obtained.

【0011】[0011]

【実施例】以下に、本発明の太め細め文字の生成装置に
関する実施例を図面を参照して説明する。 (第1の実施例) 図1は、本実施例における太め細め文字の生成装置の
を説明するための構成図である。図中、1はフォン
トデータ記憶部、2はフォントデータ読出部、3は直線
計算部、4は太め細め量入力部、5は平行移動部、6は
交点計算部、7は出力部である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS The following is an explanation of an apparatus for generating thick and thin characters according to the present invention.
Embodiments will be described with reference to the drawings. (First Embodiment) FIG. 1 is a block diagram showing a configuration of a thick and thin character generating apparatus according to this embodiment .
Ru configuration diagram der for explaining formation. In the figure, 1 is a font data storage unit, 2 is a font data reading unit, 3 linear calculator, 4 Thick narrowing amount input section, 5 translation unit, 6 intersection calculation unit, 7 is an output unit .

【0012】フォントデータ記憶部1は、アウトライン
フォントデータを記憶する。フォントデータ読出部2
は、前記フォントデータ記憶部1からデータを読み出
す。直線計算部3は、前記フォントデータ読出部2から
読み出されたデータの各点の連続する2点を通る直線を
求める。太め細め量入力部4は、前記直線を平行移動す
る量を入力する。平行移動部5は、前記量だけ直線を平
行移動する。交点計算部6は、前記平行移動した連続す
る2つの直線の交点を求める。出力部7は、前記交点を
アウトラインフォントデータとして出力する。
The font data storage unit 1 stores outline font data. Font data reading unit 2
Reads data from the font data storage unit 1. The straight line calculation unit 3 obtains a straight line passing through two consecutive points of each point of the data read from the font data reading unit 2. The thick / thin amount input unit 4 inputs the amount of parallel translation of the straight line. The translation unit 5 translates the straight line by the aforementioned amount. The intersection calculation unit 6 obtains the intersection of two consecutive straight lines that have been translated. The output unit 7 outputs the intersection as outline font data.

【0013】図2及び図3は、本実施例における図1に
示した太め細め文字の生成装置の動作を説明するための
フローチャートである。
FIGS. 2 and 3 show FIG. 1 in this embodiment.
It is a flowchart for demonstrating the operation | movement of the generator of the thick and thin character shown .

【0014】以下、各ステップに従って順に説明する。 step1:まず、太め細め量W(太め時:W>0、細め
時:W<0)を入力する。これは処理の最初に一度だけ
行なう。 step2:次に、1文字分のアウトラインフォントデータ
を読み込む。読み込んだデータは、たとえば、図4の文
字「B」の×印のように、文字の輪郭を構成する点列が
順に並んでいる。ここでは、文字の輪郭線の数は外側1
本と内側2本で、外側の輪郭は点P1,1〜P1,13のよう
に時計回りに並び、内側の輪郭線は点P2,1〜P2,7、点
3,1〜P3,7のように反時計回りに並んでいるとする。
また、輪郭線を構成している点のうち、現在処理を行な
っている点を処理対象点と呼ぶことにする。 step3:次に、輪郭線の本数をNとし、i(1<i≦
N)番目の輪郭線を構成している点の数をQ[i]にと
っておく。たとえば、図4の場合は、N=3、Q[1]
=13、Q[2]=7、Q[3]=7である。 step4:次に、輪郭線を区別する変数iと、i番目の輪
郭線を構成している点を区別する変数jに初期値0を代
入しておく。 step5:次に、変数iを1つ進める。 step6:次に、変数jを1つ進める。 step7:次に、処理対象点Pi,jとその1つ前の点Pi,
j-1を結ぶ直線LをWだけ平行移動し、直線L′を求め
る。平行移動する方向は点Pi,j-1からPi,jに向かうベ
クトルを反時計回りに90度回転した方向である。たと
えば、図5で処理対象点を点P1,3とすれば、点P1,3
1,2を結ぶ直線LをWだけ平行移動すると直線L′が
得られる。この時、平行移動の方向は、P1,2からP1,3
に向かうベクトルを反時計回りに90度回転した方向で
ある。 step8:次に、記step7と同様にして、処理対象点P
i,jとその1つ次の点Pi,j+1を結ぶ直線MをWだけ平行
移動し、直線M´を求める。平行移動する方向は、Pi,
jからPi, j+1 に向かうベクトルを反時計回りに90度回
転した方向である。たとえば、図5で処理対象点を点P
1,3とすれば、点P1,3とP1,4を結ぶ直線MをWだけ平
行移動すると直線M′が得られる。この時、平行移動の
方向は、P1,3からP1,4に向かうベクトルを反時計回り
に90度回転した方向である。 step9:次に、直線L′とM′の交点P′i,jを求め
る。たとえば、図5で交点は点P′1,3となる。 step10:次に、点P′1,3を点Pi,jの太め細め後の点
として出力する。 step11:次に、i番目の輪郭線上のすべての点を処理
したか否かを調べて、まだ処理していない点があれば、
上記step6からの処理を繰り返す。 step12:次に、文字内の輪郭線をすべて処理したか
かを調べて、まだ処理していない輪郭線があれば、上記
step5からの処理を繰り返す。 step13:次に、まだ文字が存在するか否かを判定し、
すべて文字を処理するまで上記step2からの処理を
り返す。
Hereinafter, the steps will be sequentially described. step1: First, a thickening / thinning amount W (thickening: W> 0, thinning: W <0) is input. This is done only once at the beginning of the process. step 2: Next, outline font data for one character is read. In the read data, for example, a dot sequence forming the outline of the character is arranged in order, such as the cross mark of the character “B” in FIG. Here, the number of character outlines is outside 1
In this and the two inner and the outer contour point P 1, 1 ~P 1, 13 aligned in clockwise as, the point P 2 inside the outline, 1 to P 2, 7, the point P 3, 1 It is assumed that they are arranged in a counterclockwise direction as shown by P 3 , 7 .
Also, of the points constituting the contour, the point currently being processed is referred to as a processing target point. step 3: Next, the number of contour lines is set to N, and i (1 <i ≦
The number of points constituting the (N) th contour is set as Q [i]. For example, in the case of FIG. 4 , N = 3, Q [1]
= 13, Q [2] = 7, and Q [3] = 7. step 4: Next, the initial value 0 is substituted into a variable i for distinguishing the contour and a variable j for distinguishing the points constituting the i-th contour. step5: Next, the variable i is advanced by one. step 6: Next, the variable j is advanced by one. step7: Next, the target point P i, j and the previous point that P i,
A straight line L connecting j-1 is translated by W to obtain a straight line L '. The direction of the parallel movement is a direction obtained by rotating the vector from the point P i , j-1 toward P i , j by 90 degrees counterclockwise. For example, assuming that the points to be processed are points P 1 and 3 in FIG. 5, a straight line L ′ is obtained by translating a straight line L connecting the points P 1 and 3 and P 1 and 2 by W. At this time, the direction of the parallel movement is from P 1 , 2 to P 1 , 3
Is a direction obtained by rotating the vector toward by 90 degrees counterclockwise. step8: Then, in the same manner as above Symbol step7, the target point P
A straight line M connecting i , j and its next point P i , j + 1 is translated by W to obtain a straight line M ′. The translation direction is P i ,
This is a direction in which a vector from j to P i , j + 1 is rotated counterclockwise by 90 degrees. For example, in FIG.
If 1, 3, straight M 'is obtained when the straight line M connecting points P 1, 3 and P 1, 4 W only translate. At this time, the direction of translation is a direction rotated 90 degrees vector from P 1, 3 to P 1, 4 counterclockwise. step 9: Next, an intersection P ′ i , j of the straight line L ′ and M ′ is obtained. For example, the intersection point in Fig. 5 is a point P '1, 3. Step 10: Next, the points P ′ 1 , 3 are output as points after the points P i , j are made thicker and thinner. step11: Next, it is checked whether or not all the points on the i-th contour line have been processed.
The processing from step 6 is repeated. step12: Next, whether or not all contour lines in the character have been processed
Or the examined, if there is a contour line that has not yet been processed, the
The processing from step 5 is repeated. step 13: Then, it is determined whether still or is present characters,
Until processing all the characters return Ri <br/> Repetitive a process from step2.

【0015】このようにして、点P1,1〜P1,13、点
2,1〜P2,7、P3,1〜P3,7の各点について処理を行な
と、図6に示したものは太め処理を行なったもので、
図7に示したものは細め処理を行なったものである。な
お、破線は元の太さの字形である。
As described above, if the processing is not performed for each of the points P 1 , 1 to P 1 , 13 , the points P 2 , 1 to P 2 , 7 , P 3 , 1 to P 3 , 7 , FIG. The one shown in the above is the result of thickening,
The one shown in FIG. 7 has been subjected to a narrowing process . Note that the broken line is a character having the original thickness.

【0016】この例では、処理対象点が輪郭線の最初の
点(j=1の場合)であるなら、直線Lは処理対象点
とその輪郭線の最後の点(Pi,Q[i])を結ぶ直線と
。たとえば、図4の場合は、i=1の輪郭線の時、処
理対象点がj=1の時は1つ前の点をj=13の点とし
て直線Lを求める。
[0016] In this example, if the point be processed is a first point of the contour line (in the case of j = 1), the straight line L is the last point in the point processing target and its contour (P i, Q [i straight line and I connecting])
You . For example, in the case of FIG. 4 , when the processing target point is j = 1 when the contour line is i = 1, the straight line L is obtained with the previous point being the point of j = 13.

【0017】また、処理対象点が輪郭線の最後の点(j
=Q[i]の場合)であるなら、直線Mは処理対象点
とその輪郭線の最初の点(Pi,1)を結ぶ直線となる
たとえば、図4の場合は、i=1の輪郭線の時、処理対
象点がj=13の時は1つ次の点をj=1の点として直
線Mを求める。
Also, the processing target point is the last point (j
If = is the case of Q [i]), the straight line M is a line connecting the first point point processed with the contour (P i, 1).
For example, in the case of FIG. 4 , when the contour is i = 1 and the processing target point is j = 13, the next point is set to j = 1 to obtain a straight line M.

【0018】また、この例では直線LとMを同じ値Wだ
け平行に移動したが、LとMの移動量を別々に決めても
良いし、各点ごとに決めても良い。
In this example, the straight lines L and M are moved in parallel by the same value W. However, the movement amounts of L and M may be determined separately, or may be determined for each point.

【0019】さらに、この例では、外側の輪郭線は時計
回りに、内側の輪郭線は反時計回りに並んでいるとした
が、それぞれ逆になっている場合には平行移動する方向
を逆にして、時計回りに90度回転した方向にすれば良
い。(第2の実施例) 図8は、本実施例における太め細め文字の生成装置の
を説明するための構成図である。図中で、11は中央
処理装置(以下CPU)である。12はリード・オンリ
・メモリ(以下ROM)であり、前記アウトラインフォ
ント、各種補助情報、及び制御プログラムを記憶保持し
ている。13はランダム・アクセス・メモリ(以下RA
M)であり作業用メモリを含む。14は移動方向決定部
であり、前記アウトラインフォントの処理対象点の移動
方向を決定する。15は変倍処理部であり、前記移動方
向決定部14で得られた移動方向の変倍率決定及び変倍
を行う。16は移動処理部であり、処理対象点の移動を
行う。17は出力部であり、処理済みの前記アウトライ
ンフォントを印字部等に出力する。18はCPUバスで
あり、各種データ等のやりとりがCPUバス18を介し
て行われる。
Further, in this example, the outer contour line is arranged clockwise, and the inner contour line is arranged counterclockwise. However, if they are reversed, the direction of parallel movement is reversed. Then, the direction may be rotated clockwise by 90 degrees. (Second Embodiment) FIG. 8 is a configuration of the apparatus for generating thick thin characters in this embodiment
Ru configuration diagram der for explaining formation. In the figure, reference numeral 11 denotes a central processing unit (hereinafter, CPU). Reference numeral 12 denotes a read-only memory (hereinafter referred to as a ROM), which stores the outline font, various auxiliary information, and a control program. 13 is a random access memory (hereinafter RA)
M) and includes a working memory. Reference numeral 14 denotes a moving direction determining unit that determines the moving direction of the outline font processing target point. Reference numeral 15 denotes a scaling processing unit, which determines and changes the magnification in the moving direction obtained by the moving direction determining unit 14. Reference numeral 16 denotes a movement processing unit that moves a processing target point. An output unit 17 outputs the processed outline font to a printing unit or the like. Reference numeral 18 denotes a CPU bus through which various data and the like are exchanged.

【0020】図9及び図10は、本実施例における図8
に示した太め細め文字の生成装置の動作を説明するため
のフローチャートである。S21〜26はROM2より
各データを読み出す処理、S27〜32は移動方向を決
定する処理、S33〜35は変倍率及び移動量を算出す
る処理、S36は点を移動する処理、S37〜39は処
理対象を移行する処理である。
FIGS. 9 and 10 show the structure of FIG.
3 is a flowchart for explaining the operation of the thick and thin character generating device shown in FIG. S21 to S26 are processes for reading each data from the ROM 2, S27 to 32 are processes for determining the moving direction, S33 to 35 are processes for calculating the magnification and the amount of movement, S36 are processes for moving points, and S37 to 39 are processes. This is the process of migrating the target.

【0021】また、一文字はCount個の点で構成される
ものとし、各点列は“Pk(xk、yk): k = 0、…、C
ount - 1”で表す。(xk、yk)は処理対象点Pkの2
次元座標である。wは太め細め量であり、その値は各書
体、各文字或いは各点単位のいずれで与えられてもよ
い。
One character is composed of Count points, and each point sequence is represented by “P k (x k , y k ): k = 0,..., C
ount-1 ". (x k , y k ) is 2 of the processing target point P k
It is a dimensional coordinate. w is a bold and thin amount, and the value may be given in each typeface, each character, or each point unit.

【0022】以下、各ステップに従って順に説明する。Hereinafter, the steps will be sequentially described.

【0023】k=0、つまり、点P0より、一文字分の処
理を開始する(S21)。まず、処理対象点Pk、その
直前の点Pk-1及び直後の点Pk+1を読み込む(S2
6)。ここで、S22及びS23は、k=0の時、k-1=C
ountとする処理であり、また、S24及びS25は、k
=Count-1の時、k+1=0とする処理である。
[0023] k = 0, in other words, from the point P 0, to start the processing of one character (S21). First, the processing target point P k , the immediately preceding point P k−1, and the immediately subsequent point P k + 1 are read (S2).
6). Here, in S22 and S23, when k = 0, k-1 = C
ount, and S24 and S25 are k
When = Count-1, k + 1 = 0.

【0024】上記処理にて、フォントデータPK
K-1、PK+1が読み込まれると、移動方向決定部14に
おいて、点Pk-1と点Pkの間の相対座標の単位化の処理
に入る(S27)。まず、点Pk-1を原点とした点Pk
相対座標(xk−xk-1,yk−yk-1) を算出する(S
28)。次に、この相対座標を単位化した単位化座標
(exk-1,eyk-1)を算出する(S29)。ここで、
単位化とは、その座標の原点からの向きを保持したま
ま、原点からの距離を1単位とする処理である。次に点
k+1と点Pkの間の相対座標単位化の処理に移行し(S
30→S31)、同様に単位化座標(exk+1,e
k+1)を得る(S28→S29)。次に移動方向を
(mx,my)=(exk-1+exk+1,eyk-1+e
k+1)として決定する(S32)。
In the above processing, the font data P K ,
When P K−1 and P K + 1 are read, the movement direction determination unit 14 enters a process of unitizing relative coordinates between the points P k−1 and P k (S27). First, to calculate the point P k-1 P k relative coordinate point as an origin (x k -x k-1, y k -y k-1) (S
28). Next, unitized coordinates (ex k−1 , ey k−1 ) obtained by unitizing the relative coordinates are calculated (S29). here,
The unitization is a process of setting the distance from the origin to one unit while maintaining the direction of the coordinates from the origin. Next, the processing shifts to a process of unitizing relative coordinates between the points P k + 1 and P k (S
30 → S31) Similarly, unitized coordinates (ex k + 1 , e)
y k + 1 ) is obtained (S28 → S29). Then the direction of movement (m x, m y) = (ex k-1 + ex k + 1, ey k-1 + e
y k + 1 ) (S32).

【0025】変倍処理部15において、まず、太め細め
量wを入力する(S33)。次に変倍率αkを決定する
(S34)。ここで、αkは式{w/(exk-1×ey
k+1−exk+1×eyk-1)}で算出する事により、点Qk
は、図11の直線Pk-1kとPkk+1に平行な直線AB
とCDの交点となる。次に、移動方向決定部14で決定
された移動方向に、変倍率αkで定数倍して移動量(△
x,△y)=(αk×mx,αk×my)を得る(S35)。
In the scaling section 15, first, a thickening / thinning amount w is input (S33). Next, the magnification α k is determined (S34). Here, α k is given by the formula {w / (ex k−1 × ey
k + 1 −ex k + 1 × ey k−1 )}, the point Q k
Is a straight line AB parallel to the straight lines P k-1 P k and P k P k + 1 in FIG.
And CD. Next, the moving amount determined by the moving direction determined by the moving direction determining unit 14 is multiplied by a constant with a scaling factor α k (△
x, △ y) = (α k × m x, α k × m y) obtaining (S35).

【0026】次に、移動処理部16において、移動量に
より処理対象点Pkを点Qk(xk+△x,yk+△y)に
移動させる(S36)。処理対象を次の点Pk+1に移行
し、一文字分の処理が終了するまで、処理を繰り返す
(S37〜S38)。
Next, the movement processing section 16 moves the processing target point P k to a point Q k (x k + △ x, y k + △ y) according to the movement amount (S36). The processing target is shifted to the next point P k + 1 , and the processing is repeated until the processing for one character is completed (S37 to S38).

【0027】図11に図示するように、移動方向
(mX,mY)は、単位ベクトルPK+1Kと単位ベクトル
K-1Kの合成ベクトルである。
[0027] As shown in FIG. 11, the moving direction (m X, m Y) is the resultant vector of the unit vector P K + 1 P K and the unit vector P K-1 P K.

【0028】[0028]

【発明の効果】以上の説明から明らかなように、本発
によると、アウトラインフォントの輪郭を構成する各点
について、読み出されたデータの各点と該点の前後2点
の二次元座標値から該点の相対座標値を各点ごとに求
め、この相対座標を単位化し、これら単位化された各点
と該点の前後2点での単位化座標から移動方向を決定
し、入力された太め細め量をもとに移動方向に対する変
倍率を算出して、この移動方向に変倍率で定数倍して各
点の移動量を決定して、この移動量に基づいて各点を移
動させることにより、高速に太め細め文字を生成するこ
とができる。
As apparent from the above description, according to the present onset bright, for each of the points composing the contour of the outline font, two points before and after each point and the point of the read data
The relative coordinate value of the point is calculated for each point from the two-dimensional coordinate value of
The relative coordinates are unitized, and each unitized point is
And the moving direction is determined from the unitized coordinates at two points before and after the point
Change in the direction of movement based on the
Calculate the magnification and multiply it by a constant in this moving direction with the magnification.
By determining the moving amount of the point and moving each point based on the moving amount , thick and thin characters can be generated at high speed.

【0029】これによって、膨大な時間と人手をかける
ことなく、太め細めの文字が簡単に 得られる
With this, a huge amount of time and labor is required
Thick and thin characters can be easily obtained without any problem .

【図面の簡単な説明】[Brief description of the drawings]

【図1】第1の実施例における太め細め文字の生成装置
の構成を説明するための構成図である。
FIG. 1 is an apparatus for generating thick and thin characters according to a first embodiment .
It is a configuration diagram for explaining a configuration.

【図2】図1の太め細め文字の生成装置の動作を説明す
るためのフローチャートである。
FIG. 2 is a flowchart for explaining the operation of the thick and thin character generating apparatus of FIG . 1 ;

【図3】図1の太め細め文字の生成装置の動作を説明す
るためのフローチャートの続きである。
FIG. 3 is a continuation of the flowchart for explaining the operation of the thick / thin character generating apparatus of FIG . 1 ;

【図4】ウトラインフォントの一般的な例を説明する
図である。
4 is a diagram illustrating a typical example of Out line font.

【図5】図1の太め細め文字の生成装置による文字の太
め細め処理を行なう時の実施例の説明するための図であ
る。
FIG. 5 is a diagram illustrating a character thickening process performed by the thick and thin character generating device of FIG . 1;
It is a figure for explaining an example at the time of performing narrowing processing .

【図6】文字の太め処理を実施した例を示す図である。FIG. 6 is a diagram illustrating an example in which a character thickening process is performed.

【図7】文字の細め処理を実施した例を示す図である。FIG. 7 is a diagram showing an example in which character thinning processing is performed.

【図8】第2の実施例における太め細め文字の生成装置
の構成を説明するための構成図である。
FIG. 8 is an apparatus for generating thick and thin characters according to the second embodiment;
It is a configuration diagram for explaining a configuration.

【図9】図8の太め細め文字の生成装置の動作を説明す
るためのフローチャートである。
FIG. 9 is a flowchart for explaining the operation of the thick and thin character generating apparatus of FIG . 8 ;

【図10】図8の太め細め文字の生成装置の動作を説明
するためのフローチャートの続きである。
FIG. 10 is a continuation of the flowchart for explaining the operation of the thick / thin character generating apparatus in FIG . 8 ;

【図11】図8の太め細め文字の生成装置による文字の
太め細め処理を行なう時の実施例の説明するための図で
ある。
FIG. 11 is a diagram illustrating a character generation process performed by the thick and thin character generation device of FIG . 8;
It is a figure for explaining an example at the time of performing thickening processing .

【符号の説明】[Explanation of symbols]

1 フォントデータ記憶部 2 フォントデータ読出部 3 直線計算部 4 太め細め量入力部 5 平行移動部 6 交点計算部 7 出力部 11 CPU 12 ROM 13 RAM 14 移動方向決定部 15 変倍処理部 16 移動処理部 17 出力部 18 CPUバス Reference Signs List 1 font data storage unit 2 font data readout unit 3 straight line calculation unit 4 thick and thin amount input unit 5 parallel movement unit 6 intersection calculation unit 7 output unit 11 CPU 12 ROM 13 RAM 14 movement direction determination unit 15 scaling processing unit 16 movement processing Unit 17 Output unit 18 CPU bus

───────────────────────────────────────────────────── フロントページの続き (72)発明者 紺矢 峰弘 大阪府大阪市阿倍野区長池町22番22号 シャープ株式会社内 (56)参考文献 特開 昭62−82484(JP,A) 特開 平4−174897(JP,A) 特開 平5−313629(JP,A) (58)調査した分野(Int.Cl.7,DB名) G09G 5/24 G06T 11/20 ──────────────────────────────────────────────────続 き Continuation of the front page (72) Inventor Minehiro Konya 22-22 Nagaikecho, Abeno-ku, Osaka-shi, Osaka Inside Sharp Corporation (56) References JP-A-62-82484 (JP, A) 4-174897 (JP, A) JP-A-5-313629 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) G09G 5/24 G06T 11/20

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 文字の輪郭を構成する点列で定義された
アウトラインフォントのデータを記憶した記憶手段と、 前記記憶手段からアウトラインフォントのデータを読み
出す読出手段と、 前記読出手段により読み出されたデータの各点と該点の
前後2点の二次元座標値より移動方向を決定する移動方
向決定手段と、 太め細め量を入力する太め細め量入力手段と、 前記入力された太め細め量をもとに前記移動方向に対す
る各点の移動量を決定する変倍処理手段と、 前記移動量に基づき各点を移動させる移動処理手段と、
を備えた アウトラインフォントの異なった太さの文字生
成装置において、前記移動方向決定手段は、前記読出手段により読み出さ
れたデータの各点と該点の前後2点の二次元座標値から
該点の相対座標値を前記各点ごとに求める手段と、この
算出された相対座標を単位化する手段と、これら単位化
された前記各点と該点の前後2点の単位化座標から移動
方向を決定する手段とを有し、 前記変倍処理手段は、前記太め細め量入力手段から入力
された太め細め量をもとに変倍率を算出する手段と、前
記移動方向に前記変倍率で定数倍して各点の移動量を決
定する手段とを有してなる ことを特徴とする太め細め文
字の生成装置。
1. A storage means for storing outline font data defined by a sequence of points constituting a character outline, and reading the outline font data from said storage means.
Reading means for outputting, and each point of the data read by the reading means,
A moving method that determines the moving direction from the two-dimensional coordinate values of two points before and after
Direction determining means, thickening amount input means for inputting the thickening amount, and the moving direction based on the input thickening amount.
Scaling processing means for determining the moving amount of each point to be moved, moving processing means for moving each point based on the moving amount,
In the character generating apparatus for outline fonts having different thicknesses, the moving direction determining means is read by the reading means.
From the two-dimensional coordinate values of each point of the data and the two points before and after the point
Means for determining the relative coordinate value of the point for each point;
Means for unitizing the calculated relative coordinates, and unitizing these
Move from the unitized coordinates of each point and two points before and after the point
Means for determining a direction, wherein the scaling processing means receives an input from the thick and thin amount input means.
Means for calculating a scaling factor based on the determined thicker and thinner amount;
In the moving direction, multiply the constant by the above scaling factor to determine the moving amount of each point.
Means for generating thick and thin characters.
JP06100476A 1993-10-01 1994-05-16 Thicker text generator Expired - Fee Related JP3108582B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06100476A JP3108582B2 (en) 1993-10-01 1994-05-16 Thicker text generator

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5-247057 1993-10-01
JP24705793 1993-10-01
JP06100476A JP3108582B2 (en) 1993-10-01 1994-05-16 Thicker text generator

Publications (2)

Publication Number Publication Date
JPH07146673A JPH07146673A (en) 1995-06-06
JP3108582B2 true JP3108582B2 (en) 2000-11-13

Family

ID=26441490

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06100476A Expired - Fee Related JP3108582B2 (en) 1993-10-01 1994-05-16 Thicker text generator

Country Status (1)

Country Link
JP (1) JP3108582B2 (en)

Also Published As

Publication number Publication date
JPH07146673A (en) 1995-06-06

Similar Documents

Publication Publication Date Title
US5870107A (en) Character and symbol pattern generator based on skeleton data including thickness calculation
JPH03127282A (en) Radon transforming method of digital image
KR920003479B1 (en) Method and apparatus for piecewise curve approximation
JP3108582B2 (en) Thicker text generator
US6005988A (en) Method and apparatus for rapid digital image resizing
JP2588257B2 (en) Contour approximation method
JP2674287B2 (en) Graphic microcomputer
JP2748787B2 (en) Curve generator
KR100227178B1 (en) Character generation device
JP3066060B2 (en) Polygonal approximation method for Besee curve section
JP3280160B2 (en) Document processing apparatus and document processing method
US5680153A (en) Image Processing apparatus
JP2806679B2 (en) Character generator
JP3283762B2 (en) Character pattern generator
JPH0315193B2 (en)
JP3029765B2 (en) Thicker text generator
JP2630843B2 (en) Straight line drawing method and apparatus
JPH06266339A (en) Character output device
JP3724868B2 (en) Image processing method
JP3114289B2 (en) Character pattern generator
JP3035141B2 (en) Character creation device and character creation method
JPH04188192A (en) Method and device for producing multigradation character
JPH10240869A (en) Device for preparing character recognition dictionary and method therefor
JP2940294B2 (en) Drafting equipment
JPH04295889A (en) Method and device for processing character

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080908

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080908

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090908

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees