JP2780384B2 - Contour editing device - Google Patents

Contour editing device

Info

Publication number
JP2780384B2
JP2780384B2 JP1258901A JP25890189A JP2780384B2 JP 2780384 B2 JP2780384 B2 JP 2780384B2 JP 1258901 A JP1258901 A JP 1258901A JP 25890189 A JP25890189 A JP 25890189A JP 2780384 B2 JP2780384 B2 JP 2780384B2
Authority
JP
Japan
Prior art keywords
font
value
point
closed curve
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 - Lifetime
Application number
JP1258901A
Other languages
Japanese (ja)
Other versions
JPH03218582A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP1258901A priority Critical patent/JP2780384B2/en
Publication of JPH03218582A publication Critical patent/JPH03218582A/en
Application granted granted Critical
Publication of JP2780384B2 publication Critical patent/JP2780384B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Dot-Matrix Printers And Others (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、2次元の図形の輪郭を閉曲線で表現して
成るアウトライン・フォントを処理する装置、特にアウ
トライン・フォントを編集する輪郭線編集装置に関す
る。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an apparatus for processing an outline font formed by expressing the outline of a two-dimensional graphic with a closed curve, and in particular, to an outline editing apparatus for editing an outline font. About.

[発明の概要] この発明は、輪郭線編集装置において、図形の輪郭を
構成する閉曲線上の2点を指定した際にこの2点が同一
閉曲線上に存在するか、異なる2つの閉曲線上に存在す
るかを判別し、2点が異なる2つの閉曲線上に存在する
場合にはこの2つの閉曲線を1つの閉曲線に結合する処
理を行い、また2点が同一輪郭線上に存在する場合には
この1つの閉曲線を2つの閉曲線に分割する処理を行う
ものである。
[Summary of the Invention] The present invention provides a contour line editing apparatus, in which two points on a closed curve constituting a contour of a figure are specified on the same closed curve or on two different closed curves. If two points are present on two different closed curves, a process is performed to combine the two closed curves into one closed curve. If two points are present on the same contour line, this process is performed. A process for dividing one closed curve into two closed curves is performed.

[従来の技術] 従来、文字フォント等の図形を表現する手法として、
図形の輪郭をベクトルデータで表現する方式、いわゆる
アウトライン・フォント方式が知られている。
[Prior art] Conventionally, as a method of expressing a figure such as a character font,
A method of expressing the outline of a figure by vector data, a so-called outline font method, is known.

第3図(A)は文字フォント「A」の図形を示し、こ
の図形は2つの閉曲線(輪郭線)、で表現されてい
る。また、第5図(A)はある文字フォントの一部を抜
き出した図形を示し、この図形は1つの閉曲線だけで
表現されている。
FIG. 3A shows a graphic of the character font "A", which is represented by two closed curves (contours). FIG. 5A shows a graphic obtained by extracting a part of a certain character font, and this graphic is represented by only one closed curve.

ところで、第3図(A)や第5図(A)に示すフォン
トを第3図(B)、第5図(B)に示すフォントに編集
すると、閉曲線、つまり輪郭線の数が増加または減少す
るようになる。
By the way, when the font shown in FIG. 3 (A) or FIG. 5 (A) is edited to the font shown in FIG. 3 (B) or FIG. 5 (B), the number of closed curves, that is, the number of contour lines increases or decreases. I will be.

このようなフォントの編集は、従来、挿入、削除、移
動等の手法によって行っていた。
Conventionally, such font editing has been performed by a method such as insertion, deletion, or movement.

[発明が解決しようとする課題] しかしながら、このような編集の仕方では編集作業が
極めて面倒なものとなり、編集作業を効率良く行うこと
ができないという欠点があった。
[Problems to be Solved by the Invention] However, such an editing method has a disadvantage that the editing operation is extremely troublesome, and the editing operation cannot be performed efficiently.

そこで、フォントの輪郭を構成する閉曲線の数が増加
したり減少するような編集を簡単な指示で行うことがで
きれば、編集作業を効率良く行い得ることは明らかであ
る。
Therefore, it is clear that the editing operation can be performed efficiently if the editing can be performed with simple instructions so that the number of closed curves constituting the outline of the font increases or decreases.

この発明の課題は、フォントの輪郭を構成する閉曲線
の数が増加したり減少するような編集を行う場合、任意
の閉曲線上の2点を指示するだけで編集できるようにす
ることである。
SUMMARY OF THE INVENTION It is an object of the present invention to provide an editing method in which the number of closed curves constituting the outline of a font is increased or decreased by simply designating two points on an arbitrary closed curve.

[課題を解決するための手段] この発明の手段は次の通りである。[Means for Solving the Problems] The means of the present invention are as follows.

指定手段1(第1図の機能ブロック図を参照、以下同
じ)は、2次元の図形の輪郭を閉曲線で表現して成るア
ウトライン・フォントを編集する為に、閉曲線上に存在
する2つの点を指定するポインティングデバイスとして
のマウスやクロスヘアーカーソルを用いたキーボード等
である。
The designating means 1 (refer to the functional block diagram of FIG. 1; the same applies hereinafter) is used to edit an outline font formed by expressing the outline of a two-dimensional graphic with a closed curve, and to edit two points existing on the closed curve. A mouse or a keyboard using a crosshair cursor as a pointing device to be designated is used.

判別手段2は指定手段1で指定された2つの点が夫々
異なる閉曲線上に存在するか同一閉曲線上に存在するか
を判別する。
The determining means 2 determines whether the two points specified by the specifying means 1 exist on different closed curves or on the same closed curve.

結合処理手段3は判別手段2で異なる閉曲線上に存在
すると判別された場合には異なる2つの閉曲線を1つの
閉曲線に結合する処理を行う。
When the determining means 2 determines that the two closed curves exist on different closed curves, the combining processing means 3 performs a process of combining the two different closed curves into one closed curve.

分割処理手段4は判別手段2で同一閉曲線上に存在す
ると判別された場合にはこの1つの閉曲線を2つの閉曲
線に分割する処理を行う。
When it is determined by the determination means 2 that they exist on the same closed curve, the division processing means 4 performs processing for dividing this one closed curve into two closed curves.

[作 用] この発明の手段の作用は次の通りである。[Operation] The operation of the means of the present invention is as follows.

以下、第3図、第5図の具体例を参照して説明する。 Hereinafter, description will be made with reference to specific examples of FIGS. 3 and 5.

いま、第3図(A)に示すフォントを同図(B)に示
すフォントに編集する場合には、即ち、2つの閉曲線
、から成るフォントを1つの閉曲線から成るフォ
ントに編集する場合には、図示の如く2点a、bを指定
手段1によって指定する。
Now, when editing the font shown in FIG. 3 (A) into the font shown in FIG. 3 (B), that is, when editing a font consisting of two closed curves into a font consisting of one closed curve, As shown in the figure, two points a and b are designated by the designation means 1.

この場合、指定された2点a、bは異なる2つの閉曲
線、上に存在する為、判別手段2によってそのこと
が判別される。すると、結合処理手段3はこの2つの閉
曲線を1つの閉曲線に結合する処理を行う。その結果、
第3図(A)に示す2点a、bを結ぶ線に沿って2つの
閉曲線が結合され、第3図(B)に示すように閉曲線
だけから成るフォントが得られる。
In this case, since the designated two points a and b exist on two different closed curves, the determination means 2 determines that. Then, the combining processing unit 3 performs a process of combining the two closed curves into one closed curve. as a result,
The two closed curves are joined along the line connecting the two points a and b shown in FIG. 3 (A), and a font consisting of only the closed curves is obtained as shown in FIG. 3 (B).

また、第5図(A)に示すフォントを同図(B)に示
すフォントに編集する場合には、即ち、1つの閉曲線
から成るフォントを2つの閉曲線、から成るフォン
トに編集する場合には、図示の如く2点a、bを指定手
段1によって指定する。
When the font shown in FIG. 5A is edited into the font shown in FIG. 5B, that is, when a font consisting of one closed curve is edited into a font consisting of two closed curves, As shown in the figure, two points a and b are designated by the designation means 1.

この場合、指定された2点a、bは1つの同一閉曲線
上に存在する為、判別手段2によってそのことが判別
される。すると、分割処理手段4はこの1つの閉曲線を
2つの閉曲線に分割する処理を行う。その結果、第5図
(A)に示す2点a、bを結ぶ線に沿って1つの閉曲線
が分割され、第5図(B)に示すように2つの閉曲線
、から成るフォントが得られる。
In this case, since the two designated points a and b exist on one and the same closed curve, the determination means 2 determines that. Then, the division processing means 4 performs a process of dividing this one closed curve into two closed curves. As a result, one closed curve is divided along the line connecting the two points a and b shown in FIG. 5A, and a font composed of two closed curves is obtained as shown in FIG. 5B.

したがって、フォントの輪郭を構成する閉曲線の数が
増加したり減少するような編集を行う場合、任意の閉曲
線上の2点を指示するだけで編集することができる。
Therefore, when editing such that the number of closed curves constituting the outline of the font increases or decreases, the editing can be performed only by designating two points on an arbitrary closed curve.

[実施例] 以下、第2図〜第19図を参照して一実施例を説明す
る。
Embodiment An embodiment will be described below with reference to FIGS. 2 to 19.

第2図は輪郭線編集装置の構成を示したブロック図で
ある。
FIG. 2 is a block diagram showing the configuration of the contour line editing device.

CPU11はプログラムメモリ12に格納されている編集プ
ログラムにしたがってこの輪郭線編集装置の動作を制御
するもので、キーボード13からフォントの編集指令がキ
ーボード制御部14を介して与えられると、CPU11はフォ
ントメモリ15に格納されているアウトライン・フォント
のデータをワークメモリ16やアドレス管理部17を用いて
編集する為の処理を行う。この場合、フォントメモリ15
に格納されているデータに基づいて作成されたフォント
が表示制御部18を介してCRT表示装置19に表示出力され
るので、座標入力部20からこのフォント上の2点を指示
すると、CPU11は上述の編集処理を行う。
The CPU 11 controls the operation of the contour line editing device in accordance with the editing program stored in the program memory 12.When a font editing command is given from the keyboard 13 via the keyboard control unit 14, the CPU 11 changes the font memory. A process for editing outline font data stored in 15 using the work memory 16 and the address management unit 17 is performed. In this case, font memory 15
Is displayed on the CRT display device 19 via the display control unit 18. When two points on the font are designated from the coordinate input unit 20, the CPU 11 Performs editing processing.

アドレス管理部17は各種のレジスタを有する構成で、
a点レジスタa、b点レジスタbは座標入力部20によっ
て指定された2点に対応するフォントメモリ15上のアド
レスを記憶し、開始点レジスタS1、終了点レジスタE1は
1つの閉曲線上の開始点S1、終了点E1に対応するフォン
トメモリ15上のアドレスを記憶し、更に開始点レジスタ
S2、終了点レジスタE2は他の閉曲線上の開始点S2、終了
点E2に対応するフォントメモリ15上のアドレスを記憶す
る。またアドレスレジスタiはフォントメモリ15の書き
込み/読み出しアドレスを記憶し、アドレスレジスタix
はワークメモリ16等の書き込み/読み出しアドレスを記
憶する。
The address management unit 17 has a configuration having various registers.
Point registers a and b store the addresses on the font memory 15 corresponding to the two points specified by the coordinate input unit 20, and the start point register S1 and the end point register E1 are the start points on one closed curve. Stores the address on the font memory 15 corresponding to S1, the end point E1, and furthermore, the start point register
The S2 and end point register E2 stores addresses on the font memory 15 corresponding to the start point S2 and the end point E2 on another closed curve. The address register i stores the write / read address of the font memory 15, and the address register ix
Stores a write / read address of the work memory 16 or the like.

第4図(A)、(B)は第3図(A)、(B)に示す
アウトライン・フォントの輪郭線を構成する各点を図示
したもので、図示された点と点の間が直線または曲線で
補間されて第3図(A)、(B)のアウトライン・フォ
ントが再現される。
4 (A) and 4 (B) show the points constituting the outline of the outline font shown in FIGS. 3 (A) and 3 (B), and a straight line between the points shown. Alternatively, the outline font shown in FIGS. 3A and 3B is reproduced by interpolation with a curve.

なお、本実施例においては、閉曲線を構成する各点の
並ぶ順序は、内側が黒ぬりされた部分の輪郭線(外輪
線)では時計回りに、内側が白の輪郭線(内輪線)では
反時計回りとなるように予め決められている。これは編
集処理を簡単にするためであり、必ずしもこの通りであ
る必要はない。なぜならば、編集指示された時点で指定
された点の属する輪郭線が外輪郭か内輪郭かを判断する
方法または各点のデータさえ存在すれば編集を開始する
前に輪郭線の回転方法を変更すればよいからである。
In this embodiment, the order in which the points constituting the closed curve are arranged is clockwise in the contour line (outer ring line) of the portion blackened inside, and counterclockwise in the contour line (inner ring line) with white inside. It is predetermined to be clockwise. This is to simplify the editing process, and does not necessarily have to be the same. This is because when the editing instruction is given, the method of determining whether the contour to which the specified point belongs is the outer contour or the inner contour, or if there is data for each point, change the method of rotating the contour before starting editing That is because it is good.

第7図(A)、(B)は第4図(A)、(B)に対応
する各点のデータを記憶するフォントメモリ15上のデー
タ形式であり、図中A(n)、X(n)、Y(n)は各
点の属性および各点の位置を示すX座標値、Y座標値を
表わしている。なお、属性A(n)の値が「1」の点は
閉曲線、、の開始点、「2」の点は終了点を示
し、「0」は開始点と終了点の間の点であることを示し
ている。また、属性A(n)の値が「−1」のときはフ
ォントデータの終了を示している。またX(n)、Y
(n)の値は各点の平面座標値である。
FIGS. 7A and 7B show data formats on the font memory 15 for storing data of respective points corresponding to FIGS. 4A and 4B, wherein A (n), X ( n) and Y (n) represent an attribute of each point and an X coordinate value and a Y coordinate value indicating the position of each point. The point where the value of the attribute A (n) is “1” indicates a closed curve, the start point of, the point of “2” indicates the end point, and “0” is a point between the start point and the end point. Is shown. When the value of the attribute A (n) is "-1", it indicates the end of the font data. X (n), Y
The value of (n) is a plane coordinate value of each point.

第6図(A)、(B)は第5図(A)、(B)に示す
アウトライン・フォントの輪郭線を構成する各点を図示
したもので、図示された点と点の間が直線または曲線で
補間されて第5図(A)、(B)のアウトライン・フォ
ントが再現される。なお、この場合においても閉曲線を
構成する各点の並ぶ順序は上述の如く外輪線、内輪線に
応じて異なる。
FIGS. 6 (A) and 6 (B) show points constituting the outline of the outline font shown in FIGS. 5 (A) and 5 (B), and a straight line is provided between the points shown. Alternatively, the outline font shown in FIGS. 5A and 5B is reproduced by interpolation with a curve. In this case as well, the order in which the points constituting the closed curve are arranged differs depending on the outer ring line and the inner ring line as described above.

なお、第4図(B)、第6図(B)において、点「1
2」と「12′」、「8」と「8′」または「4」と
「4′」、「8」と「8′」はフォントメモリ15上では
同一位置データであるが、編集後、それぞれの点を図示
の位置に移動させる処理は周知の技術により容易に実現
可能である。
4 (B) and FIG. 6 (B), the point "1"
"2" and "12 '", "8" and "8'" or "4" and "4 '", "8" and "8'" are the same position data in the font memory 15, but after editing, The process of moving each point to the illustrated position can be easily realized by a known technique.

第8図(A)、(B)は第6図(A)、(B)に対応
する各点のデータを記憶するフォントメモリ15上のデー
タ形式を示している。
FIGS. 8A and 8B show the data format on the font memory 15 for storing the data of each point corresponding to FIGS. 6A and 6B.

第9図はワークメモリ16の構成を示し、図中WA
(n)、WX(n)、WY(n)はフォントメモリ15から読
み出された各点の属性および各点の位置を示すX座標
値、Y座標値を表わしている。
FIG. 9 shows the configuration of the work memory 16, in which WA
(N), WX (n) and WY (n) represent the attribute of each point read from the font memory 15 and the X coordinate value and the Y coordinate value indicating the position of each point.

次に、本実施例の動作を第10図〜第19図に基づいて説
明する。
Next, the operation of this embodiment will be described with reference to FIGS.

第10図はこの輪郭線編集処理の全体動作を示したゼネ
ラルフローチャートである。
FIG. 10 is a general flowchart showing the entire operation of the contour line editing process.

いま、第3図(A)に示すフォントを同図(B)に示
すフォントに編集する場合(閉曲線の結合)、および第
5図(A)に示すフォントを同図(B)に示すフォント
に編集する場合(閉曲線の分割)を例に挙げて具体的に
説明するものとする。
Now, when the font shown in FIG. 3 (A) is edited into the font shown in FIG. 3 (B) (combination of closed curves), and the font shown in FIG. 5 (A) is changed to the font shown in FIG. The case of editing (dividing a closed curve) will be specifically described as an example.

この場合、第3図(A)および第5図(A)に示すよ
うに任意の輪郭線上の2点a、bを座標入力部20から指
定したのち、キーボード13から編集指令を与える。する
と、2点の安定状態に応じた編集処理が行われる。ここ
で、第3図(A)では2点が異なる2つの閉曲線上にあ
る為、この2つの閉曲線を1つの閉曲線に結合する処理
が行われ、また第5図(A)では2点が同一閉曲線上に
ある為、この閉曲線を2つの閉曲線に分割する処理が行
われる。これによって、第3図(B)、第5図(B)に
示すようにいずれの場合においても2点a、bを結ぶ線
に沿って字形の「黒」の部分を切り離した編集結果が得
られる。
In this case, as shown in FIGS. 3 (A) and 5 (A), two points a and b on an arbitrary contour are specified from the coordinate input unit 20, and then an editing command is given from the keyboard 13. Then, the editing process according to the stable state of the two points is performed. Here, since two points are on two different closed curves in FIG. 3 (A), a process of connecting the two closed curves to one closed curve is performed, and in FIG. 5 (A), the two points are the same. Since it is on a closed curve, a process of dividing the closed curve into two closed curves is performed. As a result, as shown in FIGS. 3 (B) and 5 (B), in any case, an edit result is obtained in which the character "black" is cut off along the line connecting the two points a and b. Can be

以下、第10図を参照して編集処理を詳述する。 Hereinafter, the editing process will be described in detail with reference to FIG.

即ち、編集指令に応答して第10図のフローチャートに
したがった動作が実行開始される。
That is, in response to the edit command, the operation according to the flowchart of FIG. 10 is started.

先ず、座標入力部20から入力指定された2点a、bに
対応するフォントメモリ15上のアドレスはアドレス管理
部17内のa点レジスタa、b点レジスタbにセットされ
ているので、それを読み出して大小の比較を行い(ステ
ップA1)、その結果、a<bでなければ後述する処理の
関係上a点レジスタaの値をb点レジスタbへまたb点
レジスタbの値をa点レジスタaへ転送しアドレスを相
互に交換しておく(ステップA2)。
First, since the addresses on the font memory 15 corresponding to the two points a and b input and specified from the coordinate input unit 20 are set in the a point registers a and b point registers b in the address management unit 17, If the value is not a <b, the value of the a-point register a is stored in the b-point register b, and the value of the b-point register b is stored in the a-point register unless a <b. a and the addresses are exchanged with each other (step A2).

そして、a点レジスタaの値がCPU11内のNレジスタ
に取り込まれ(ステップA3)、この値に基づいて第11図
のサブルーチンにしたがった閉曲線の検出処理が実行さ
れる(ステップA4)。その結果、a点がある閉曲線の開
始点Sと終了点Eとが求められ、アドレス管理部17内の
開始点レジスタS1、終了点レジスタE1にセットされる
(ステップA5)。
Then, the value of the point a register a is taken into the N register in the CPU 11 (step A3), and based on this value, a closed curve detection process is executed according to the subroutine of FIG. 11 (step A4). As a result, the start point S and the end point E of the closed curve having the point a are obtained, and are set in the start point register S1 and the end point register E1 in the address management unit 17 (step A5).

同様に、b点レジスタbの値がNレジスタに取り込ま
れ(ステップA6)、この値に基づいて第11図のサブルー
チンにしたがった閉曲線の検出処理が実行される(ステ
ップA7)。その結果、b点がある閉曲線の開始点Sと終
了点Eとが求められ、アドレス管理部17内の開始点レジ
スタS2、終了点レジスタE2にセットされる(ステップA
8)。
Similarly, the value of the point b register b is fetched into the N register (step A6), and based on this value, a closed curve detection process is executed according to the subroutine of FIG. 11 (step A7). As a result, the start point S and the end point E of the closed curve having the point b are obtained, and are set in the start point register S2 and the end point register E2 in the address management unit 17 (step A).
8).

そして、次のステップA9では開始点レジスタS1、S2内
の値が比較される。即ち、a点がある閉曲線の開始点と
b点がある閉曲線の開始点とが等しいか、つまりa点と
b点とが同一輪郭線上にあるか否かを調べ、その結果、
a点、b点共に同一閉曲線上にあれば、閉曲線の分割処
理(ステップA10)を行い、異なる2つの閉曲線上にあ
れば閉曲線の結合処理(ステップA11)を行う。
Then, in the next step A9, the values in the start point registers S1 and S2 are compared. That is, it is determined whether the start point of the closed curve having the point a is equal to the start point of the closed curve having the point b, that is, whether the points a and b are on the same contour line.
If the points a and b are on the same closed curve, the closed curve is divided (step A10), and if they are on two different closed curves, the closed curve is combined (step A11).

第11図は第10図のステップA4、A7で示した閉曲線検出
処理の内容を詳述するフローチャートである。
FIG. 11 is a flowchart detailing the details of the closed curve detection processing shown in steps A4 and A7 in FIG.

この検出処理はNレジスタにセットされたa点あるい
はb点の値に基づいてそれらが属する閉曲線の開始点S
と終了点Eをフォントメモリ15から検出する為の処理
で、ステップB1〜B4は開始点の検出処理、ステップB5〜
B8は終了点の検出処理を示している。
This detection processing is based on the value of the point a or the point b set in the N register and the starting point S of the closed curve to which they belong.
And the end point E from the font memory 15 in steps B1 to B4.
B8 indicates an end point detection process.

即ち、ステップB1〜B4ではNレジスタの値をアドレス
管理部17内のアドレスレジスタiにセットしたのち、ア
ドレスレジスタiの値を「1」ずつデクリメントしなが
らフォントメモリ15をアクセスし、このアドレスレジス
タiの値で指定されるフォントメモリ15の属性エリアA
(i)から属性データを読み出し、それが閉曲線の開始
点を示す「1」か否かをチェックする。その結果、A
(i)=1であれば、アドレスレジスタiの値が開始点
Sとなる。
That is, in steps B1 to B4, the value of the N register is set in the address register i in the address management unit 17, and then the font memory 15 is accessed while decrementing the value of the address register i by "1". Area A of the font memory 15 specified by the value of
The attribute data is read from (i), and it is checked whether it is "1" indicating the start point of the closed curve. As a result, A
If (i) = 1, the value of the address register i is the starting point S.

したがって、第7図(A)に示すデータ例の場合に、
例えばNレジスタの値が「n=8」とすると、この値か
ら「−1」ずつアドレスをデクリメントさせながらフォ
ントメモリ15をアクセスし、その結果、A(i)=1が
検出されると、アドレスレジスタiの値は「n=1」と
なり、この値が開始点となる。
Therefore, in the case of the data example shown in FIG.
For example, if the value of the N register is “n = 8”, the font memory 15 is accessed while decrementing the address by “−1” from this value. As a result, when A (i) = 1 is detected, The value of the register i is “n = 1”, and this value is the starting point.

同様に、ステップB5〜B8ではNレジスタの値をアドレ
スレジスタiにセットしたのちアドレスレジスタiの値
を「1」ずつインクリメントしながらフォントメモリ15
をアクセスし、このアドレスレジスタiの値で指定され
るフォントメモリ15の属性エリアA(i)から属性デー
タを読み出し、それが閉曲線の終了点を示す「2」か否
かをチェックし、その結果、A(i)=2であれば、ア
ドレスレジスタiの値が終了点Eとなる。
Similarly, in steps B5 to B8, the value of the N register is set in the address register i, and then the value of the address register i is incremented by "1", and the font memory 15 is incremented.
Is read from the attribute area A (i) of the font memory 15 designated by the value of the address register i, and it is checked whether or not it is "2" indicating the end point of the closed curve. , A (i) = 2, the value of the address register i is the end point E.

したがって、第7図(A)に示すデータ例の場合に、
例えばNレジスタの値が「n=8」とすると、「n=1
0」の値が終了点となる。
Therefore, in the case of the data example shown in FIG.
For example, if the value of the N register is “n = 8”, “n = 1
The value of "0" is the end point.

第12図は第10図のステップA10で示した閉曲線の分割
処理を詳述するフローチャートである。
FIG. 12 is a flowchart detailing the closed curve dividing process shown in step A10 of FIG.

なお、第13図は第12図に示す閉曲線分割処理の概念を
模示的に示す為の図である。即ち、第13図(A)におい
て指定された2点a、bを結ぶ線を境にその右側閉曲線
のフォントデータが第12図のステップC1〜C9で抽出され
てワークメモリ16に書き込まれ(第13図(B)参照)、
続けて左側の閉曲線のフォントデータが第12図のステッ
プC10〜C14で抽出されてワークメモリ16に書き込まれる
(第13図(C)参照)。つまり、1つの閉曲線が2点
a、bに沿って2つの閉曲線に分割されてワークメモリ
16に転送される。その後、第12図のステップC15により
第13図(A)に示すフォントメモリ15内の閉曲線のフォ
ントデータ(編集前のデータ)がワークメモリ16に書き
込まれた第13図(B)のフォントデータと第13図(C)
のフォントデータとによって置換される。これによりフ
ォントメモリ15内のデータが所望のフォントに編集され
る。
FIG. 13 is a diagram for schematically illustrating the concept of the closed curve division processing shown in FIG. That is, the font data of the closed curve on the right side of the line connecting the two points a and b specified in FIG. 13A is extracted in steps C1 to C9 in FIG. 12 and written into the work memory 16 (see FIG. (See Fig. 13 (B))
Subsequently, the font data of the closed curve on the left side is extracted in steps C10 to C14 in FIG. 12 and written into the work memory 16 (see FIG. 13C). That is, one closed curve is divided into two closed curves along two points a and b,
Transferred to 16. Then, the font data of FIG. 13B in which the closed curve font data (data before editing) in the font memory 15 shown in FIG. Fig. 13 (C)
Is replaced by the font data. Thus, the data in the font memory 15 is edited into a desired font.

以下、第12図のフローチャートにしたがって閉曲線分
割処理を更に詳述する。
Hereinafter, the closed curve division processing will be described in further detail according to the flowchart of FIG.

なお、本実施例において図中、WA(ix)、WX(ix)、
WY(ix)、X(S1)、Y(S1)、X(i)、Y(i)、
X(a)、Y(a)は次の如く定義されたものである。
即ち、WA(ix)、WX(ix)、WY(ix)はアドレスレジス
タixの値で指定されるワークメモリ16の属性エリア、X
座標エリア、Y座標エリアを表わす。また、X(S1)、
Y(S1)は開始点レジスタS1の値で指定されるフォント
メモリ15のX座標エリア、Y座標エリアを表わし、同様
にX(i)、Y(i)またはX(a)、Y(a)はアド
レスレジスタiの値またはa点レジスタaの値で指定さ
れるフォントメモリ15のX座標エリア、Y座標エリアを
表わしている。
In this embodiment, WA (ix), WX (ix),
WY (ix), X (S1), Y (S1), X (i), Y (i),
X (a) and Y (a) are defined as follows.
That is, WA (ix), WX (ix), and WY (ix) are the attribute area of the work memory 16 specified by the value of the address register ix, X
Represents a coordinate area and a Y coordinate area. Also, X (S1),
Y (S1) represents the X coordinate area and Y coordinate area of the font memory 15 specified by the value of the start point register S1, and similarly, X (i), Y (i) or X (a), Y (a) Represents an X coordinate area and a Y coordinate area of the font memory 15 specified by the value of the address register i or the value of the a point register a.

いま、第5図(A)のフォントを同図(B)のフォン
トに編集する場合を第6図、第8図を参照しながら説明
する。
Now, a case in which the font of FIG. 5A is edited to the font of FIG. 5B will be described with reference to FIGS.

この場合、1つの閉曲線上に2点a、bが指定され、
第6図(A)に示す如く、a点は「4」の位置、b点は
「8」の位置にある。
In this case, two points a and b are designated on one closed curve,
As shown in FIG. 6 (A), point a is at position "4" and point b is at position "8".

この状態において、先ず、ワークメモリ16を指定する
アドレスレジスタixに初期値「1」をセットする(ステ
ップC1)。これによってワークメモリ16のアドレス
「1」が指定され、その属性エリアWA(ix)には閉曲線
の開始点を示す「1」がセットされ、X座標エリアWX
(ix)にはフォントメモリ15のエリアX(S1)から読み
出されたX座標値がセットされ、更にY座標エリアWY
(ix)にはフォントメモリ15のエリアY(S1)から読み
出されたY座標値がセットされ、その後、アドレスレジ
スタixの値がインクリメントされる(ステップC2)。こ
の結果、第6図(A)に示す開始点「1」のフォントデ
ータ(x1、y1)がワークメモリ16に書き込まれる。
In this state, first, an initial value "1" is set in an address register ix specifying the work memory 16 (step C1). As a result, the address "1" of the work memory 16 is designated, "1" indicating the start point of the closed curve is set in the attribute area WA (ix), and the X coordinate area WX
In (ix), the X coordinate value read from the area X (S1) of the font memory 15 is set, and further, the Y coordinate area WY
In (ix), the Y coordinate value read from the area Y (S1) of the font memory 15 is set, and then the value of the address register ix is incremented (step C2). As a result, the font data (x 1 , y 1 ) at the start point “1” shown in FIG.

次に、開始点レジスタS1の値に「1」を加算し、その
値をアドレスレジスタiに転送する(ステップC3)。そ
して、アドレスレジスタi、ixの値を1つずつインクリ
メントしながらアドレスレジスタiの値がa点レジスタ
aの値に達するまでフォントメモリ15のX座標エリアX
(i)、Y座標エリアY(i)内のデータをワークメモ
リ16のX座標エリアWX(ix)、Y座標エリアWY(ix)に
書き込む処理を行う(ステップC4、C5)。この場合、ワ
ークメモリ16の各属性エリアWA(ix)には全て「0」の
データが書き込まれる。この結果、第6図(A)に示す
点「2」、「3」、「4」のフォントデータ(x2
y2)、(x3、y3)、(x4、y4)がワークメモリ16に順次
書き込まれる。
Next, "1" is added to the value of the start point register S1, and the value is transferred to the address register i (step C3). Then, while incrementing the values of the address registers i and ix by one, the X coordinate area X of the font memory 15 is maintained until the value of the address register i reaches the value of the point a register a.
(I) A process of writing data in the Y coordinate area Y (i) to the X coordinate area WX (ix) and the Y coordinate area WY (ix) of the work memory 16 is performed (steps C4 and C5). In this case, data of "0" is written in each attribute area WA (ix) of the work memory 16. As a result, the font data (x 2 , x 2 ) of points “2”, “3”, and “4” shown in FIG.
(y 2 ), (x 3 , y 3 ), (x 4 , y 4 ) are sequentially written to the work memory 16.

次に、b点レジスタbの値をアドレスレジスタiにセ
ットする(ステップC6)。この結果、アドレスレジスタ
iの値は「4」から「8」に変更される。そして、アド
レスレジスタi、ixの値をインクリメントしながらアド
レスレジスタiの値が終了点レジスタE1の値未満の間、
フォントメモリ15のX座標エリアX(i)、Y座標エリ
アY(i)内のデータをワークメモリ16のX座標エリア
WX(ix)、Y座標エリアWY(ix)に書き出す処理を行う
(ステップC7、C8)。この場合においてもワークメモリ
16の各属性エリアWA(ix)には全て「0」のデータが書
き込まれる。この結果、第6図(A)に示す点「8」、
「9」のフォントデータ(x8、y8)、(x9、y9)がワー
クメモリ16に順次書き込まれる。
Next, the value of the point b register b is set in the address register i (step C6). As a result, the value of the address register i is changed from "4" to "8". Then, while incrementing the values of the address registers i and ix, while the value of the address register i is less than the value of the end point register E1,
The data in the X coordinate area X (i) and the Y coordinate area Y (i) of the font memory 15 are stored in the X coordinate area of the work memory 16.
A process of writing to the WX (ix) and Y coordinate areas WY (ix) is performed (steps C7 and C8). Work memory also in this case
Data of "0" is written in each of the 16 attribute areas WA (ix). As a result, the point “8” shown in FIG.
The font data of “9” (x 8 , y 8 ) and (x 9 , y 9 ) are sequentially written to the work memory 16.

しかして、アドレスレジスタiの値が終了点レジスタ
E1の値に達すると、ステップC9に進み、ワークメモリ16
の属性エリアWA(ix)に閉曲線の終了点を示す「2」を
セットし、またフォントメモリ15のエリアX(i)、Y
(i)から読み出したデータ(x10、y10)をワークメモ
リ16のエリアWX(ix)、WY(ix)にセットし、その後、
アドレスレジスタixの値をインクリメントする。これに
よって、第6図(B)において点「1」、「2」、
「3」、「4′」、「8」、「9」、「10」で示される
閉曲線のフォントデータがフォントメモリ15から夫々読
み出され、ワークメモリ16に順次転送される。
Thus, the value of the address register i is
When the value of E1 is reached, the process proceeds to step C9, where the work memory 16
Is set in the attribute area WA (ix) of the font memory 15 to indicate the end point of the closed curve, and the area X (i), Y
Data read from (i) (x 10, y 10) the area of the work memory 16 WX (ix), set to WY (ix), then,
Increment the value of address register ix. As a result, the points "1", "2",
Closed curve font data indicated by "3", "4 '", "8", "9", and "10" are read from the font memory 15 and sequentially transferred to the work memory 16.

そして、ステップC10〜C14に進み、残りの輪郭線のフ
ォントデータをフォントメモリ15から夫々読み出してワ
ークメモリ16に順次転送する処理が行われる。
Then, the process proceeds to steps C10 to C14, in which a process of reading the font data of the remaining contour lines from the font memory 15 and sequentially transferring the font data to the work memory 16 is performed.

先ず、ワークメモリ16の属性エリアWA(ix)に開始点
を示す「1」をセットし、またa点レジスタaの値
「4」で示されるフォントメモリ15内のX座標エリアX
(a)からデータx4、Y座標エリアY(a)からデータ
y4を読み出し、ワークメモリ16内のエリアWX(ix)、WY
(ix)に書き出し、その後、アドレスレジスタixをイン
クリメントする(ステップC10)。そして、アドレスレ
ジスタiの値を更新するが、この場合、a点レジスタa
の値に「1」を加算することによってアドレスの更新が
行われる(ステップC11)。
First, "1" indicating the starting point is set in the attribute area WA (ix) of the work memory 16, and the X coordinate area X in the font memory 15 indicated by the value "4" of the point a register a is set.
Data x 4 from (a), data from Y coordinate area Y (a)
y 4 is read and the areas WX (ix) and WY in the work memory 16 are read.
(Ix), and then increment the address register ix (step C10). Then, the value of the address register i is updated.
The address is updated by adding "1" to the value (step C11).

そして、アドレスレジスタi、ixの値をインクリメン
トしてゆき、その値がb点レジスタbの値未満の間は、
フォントメモリ15のエリアX(i)、Y(i)内のデー
タ(x5、y5)、(x6、y6)、(x7、y7)をワークメモリ
16のエリアWX(ix)、WY(ix)に書き込む(ステップC1
2、C13)。この場合、ワークメモリ16のエリアWA(ix)
には全て「0」のデータがセットされる。その後、アド
レスレジスタiの値がb点レジスタbの値に達すると、
ステップC14に進み、ワークメモリ16の属性エリアWA(i
x)に終了点を示す「2」のデータをセットし、フォン
トメモリ15のエリアX(i)、Y(i)内のデータ
(x8、y8)をワークメモリ16のエリアWX(ix)、WY(i
x)に書き込む。
Then, the values of the address registers i and ix are incremented, and while the value is less than the value of the point b register b,
Area X of font memory 15 (i), Y (i ) in the data (x 5, y 5), (x 6, y 6), a work memory (x 7, y 7)
Write to 16 areas WX (ix) and WY (ix) (step C1
2, C13). In this case, the area WA (ix) of the work memory 16
Are set to data "0". Thereafter, when the value of the address register i reaches the value of the point b register b,
Proceeding to step C14, the attribute area WA (i
The data of “2” indicating the end point is set in x), and the data (x 8 , y 8 ) in the areas X (i) and Y (i) of the font memory 15 are stored in the area WX (ix) of the work memory 16. , WY (i
Write to x).

これによって、第6図(B)の点「4」、「5」、
「6」、「7」、「8」で示される閉曲線のフォントデ
ータがフォントメモリ15から読み出され、ワークメモリ
16に順次転送される。
As a result, the points “4”, “5”,
The font data of the closed curves indicated by “6”, “7”, and “8” are read from the font memory 15 and are stored in the work memory.
Transferred to 16 sequentially.

そして、ステップC15に進み、第16図のサブルーチン
にしたがってS1〜E1のデータを置換する処理を行う。
Then, the process proceeds to step C15 to perform a process of replacing the data of S1 to E1 according to the subroutine of FIG.

第16図はフォントメモリ15に格納されている編集前の
S1〜E1のデータ、つまり、編集指定された2点を含む閉
曲線上の開始点から終了点までのデータをワークメモリ
16内の編集後のデータと置換する処理を行うフローチャ
ートを示している。この場合、上記置換処理を行う前
に、ステップD1〜D4ではフォントメモリ15内に編集対象
の字形を構成する他の閉曲線のデータが格納されていれ
ば、つまり、フォントデータの終了までそれを全てワー
クメモリ16に書き込む為の処理を行う。
FIG. 16 shows the state before editing stored in the font memory 15.
The data from S1 to E1, that is, the data from the start point to the end point on the closed curve including the two points specified for editing in the work memory
16 shows a flowchart for performing a process of replacing the edited data in 16. In this case, before performing the above-described replacement processing, in steps D1 to D4, if data of another closed curve constituting the glyph to be edited is stored in the font memory 15, that is, all data until the end of the font data is stored. A process for writing to the work memory 16 is performed.

先ず、アドレスレジスタi、ixの値を更新するが、こ
の場合、アドレスレジスタixの値は「ix+1」に更新さ
れ、アドレスレジスタiの値は「E1+1」に更新される
(ステップD1)。この場合、アドレスレジスタiの値は
「n=11」となり、フォントメモリ15のエリアA
(i)、X(i)、Y(i)からデータ(−1、0、
0)が読み出され、ワークメモリ16の対応するエリアWA
(ix)、WX(ix)、WY(ix)に書き込まれる(ステップ
D2)。そして、フォントメモリ15の属性エリアA(i)
から読み出したデータが「−1」か、つまりフォントデ
ータの終了かを調べ(ステップD3)、終了でなければス
テップD4に進み、アドレスレジスタix、iの値をインク
リメントしたのちステップD2に戻り、以下フォントデー
タの終了が検出されるまで上述の動作が繰り返される
が、いまフォントデータの終了が検出されるので、ステ
ップD5に進む。
First, the values of the address registers i and ix are updated. In this case, the value of the address register ix is updated to “ix + 1” and the value of the address register i is updated to “E1 + 1” (step D1). In this case, the value of the address register i is “n = 11”, and the area A of the font memory 15 is
From (i), X (i) and Y (i), data (-1, 0,
0) is read out and the corresponding area WA of the work memory 16 is read.
(Ix), WX (ix), WY (ix) (step
D2). Then, the attribute area A (i) of the font memory 15
It is checked whether the data read from is "-1", that is, the end of the font data (step D3). If not, the process proceeds to step D4, where the values of the address registers ix and i are incremented, and the process returns to step D2. The above operation is repeated until the end of the font data is detected. However, since the end of the font data is now detected, the process proceeds to step D5.

ここではアドレスレジスタix、iに初期値をセットす
る。即ち、アドレスレジスタixに「1」、アドレスレジ
スタiに開始点レジスタS1の値をセットする。そして、
ワークメモリ16内のデータをフォントメモリ15に順次転
送し、フォントメモリ15内に格納されている編集前のフ
ォントデータを編集後のフォントデータに置き換える為
の処理を行う。即ち、ワークメモリ16のエリアWA(i
x)、WX(ix)、WY(ix)から読み出したデータをフォ
ントメモリ15の対応するエリアA(i)、X(i)、Y
(i)に書き込む処理(ステップD6)をステップD7でフ
ォントデータの終了が検出されるまでステップD8に進
み、アドレスレジスタix、iの値を1つずつインクリメ
ントしながら繰り返す。
Here, initial values are set in the address registers ix and i. That is, "1" is set in the address register ix, and the value of the start point register S1 is set in the address register i. And
The data in the work memory 16 is sequentially transferred to the font memory 15, and processing for replacing the font data before editing stored in the font memory 15 with the font data after editing is performed. That is, the area WA (i
x), WX (ix), and WY (ix) are read from the corresponding areas A (i), X (i), Y
The process of writing (i) (step D6) proceeds to step D8 until the end of the font data is detected in step D7, and is repeated while incrementing the values of the address registers ix and i by one.

この結果、フォントメモリ15内のフォントデータは上
述した閉曲線の分割処理によって第6図(A)に示すフ
ォントデータから第6図(B)に示すフォントデータに
編集される。したがって、第5図(A)に示すように1
つの閉曲線から成るフォントがa点とb点とを結ぶ線に
沿って切り離され、第6図(B)に示すように2つの閉
曲線から成るフォントに変更される。
As a result, the font data in the font memory 15 is edited from the font data shown in FIG. 6A to the font data shown in FIG. Therefore, as shown in FIG.
The font consisting of two closed curves is cut off along the line connecting the points a and b, and is changed to a font consisting of two closed curves as shown in FIG. 6 (B).

次に、第14図、第15図を参照して第10図のステップA1
1で示した閉曲線の結合処理を詳述する。なお、第14図
は閉曲線の結合処理を示したフローチャート、第15図は
この結合処理の概念を模示的に示した図である。即ち、
第15図(A)に示す如く、異なる2つの閉曲線上に1つ
ずつ点a、bが指定された場合、この2つの閉曲線を2
点a、bで結ぶことにより、第15図(B)に示すように
1つの閉曲線から成るフォントデータがワークメモリ16
に書き込まれる。このような閉曲線の結合処理は第14図
のステップE1〜E15によって実行される。
Next, referring to FIGS. 14 and 15, step A1 in FIG.
The process of combining the closed curves shown in 1 will be described in detail. FIG. 14 is a flowchart showing the process of joining closed curves, and FIG. 15 is a diagram schematically showing the concept of this joining process. That is,
As shown in FIG. 15 (A), when points a and b are specified one by one on two different closed curves, the two closed curves are
By connecting the points a and b, as shown in FIG.
Is written to. Such a closed curve joining process is executed by steps E1 to E15 in FIG.

以下、第14図のフローチャートにしたがって閉曲線の
結合処理を更に詳述する。
Hereinafter, the process of combining closed curves will be described in further detail with reference to the flowchart of FIG.

いま、第3図(A)に示すフォントを同図(B)のフ
ォントに編集する場合を第4図、第7図を参照しながら
説明する。
Now, a case where the font shown in FIG. 3A is edited into the font shown in FIG. 3B will be described with reference to FIGS.

この場合、外輪郭および内輪郭の2つの閉曲線を有
し、閉曲線にはb点、閉曲線にはa点が指定され、
第4図(A)に示す如くa点は「12」の位置、b点は
「8」の位置にある。この場合、a>bであるから第10
図のステップA2でa点レジスタaの値とb点レジスタb
の値とが相互に交換され、a点の値は「8」、b点の値
は「12」となる。
In this case, there are two closed curves, an outer contour and an inner contour, and a point b is designated for the closed curve and a point a is designated for the closed curve.
As shown in FIG. 4A, the point a is at the position "12" and the point b is at the position "8". In this case, since a> b, the tenth
At step A2 in the figure, the value of the a-point register a and the
Are exchanged with each other, and the value of the point a is “8” and the value of the point b is “12”.

しかして、ステップE1〜E5は第12図で示した閉曲線分
割処理のステップC1〜C5と同様の処理で、これによりフ
ォントメモリ15からは開始点レジスタS1の値「1」から
a点レジスタaの値「8」までのXY座標値(x1、y1)〜
(x8、y8)がワークメモリ16に順次書き込まれる。
Steps E1 to E5 are the same as steps C1 to C5 of the closed curve division processing shown in FIG. 12, whereby the font memory 15 outputs the value "1" of the start point register S1 to the value of the a point register a. XY coordinate value of up to the value "8" (x 1, y 1) ~
(X 8 , y 8 ) are sequentially written to the work memory 16.

そして、ステップE6に進み、アドレスレジスタiの値
「8」をb点レジスタbの値「12」に変更したのち、ア
ドレスレジスタiの値が終了点レジスタE2の値「13」に
達するまでフォントメモリ15から読み出したデータ(x
12、y12)、(x13、y13)をワークメモリ16に順次書き
込む(ステップE7、E8)。この結果、ワークメモリ16に
は第4図(B)に示す点「1」〜「8」のフォントデー
タに続けて点「12」、「13」のフォントデータが書き込
まれる。なお、この場合、ワークメモリ16の属性エリア
WA(ix)には1つの閉曲線があることを示す為に「0」
のデータがセットされる。
Then, the process proceeds to step E6, in which the value "8" of the address register i is changed to the value "12" of the b-point register b, and then the font memory is updated until the value of the address register i reaches the value "13" of the end point register E2. Data read from 15 (x
12, y 12), sequentially written in the work memory 16 (x 13, y 13) (step E7, E8). As a result, the font data of points "12" and "13" are written into the work memory 16 following the font data of points "1" to "8" shown in FIG. In this case, the attribute area of the work memory 16
"0" to indicate that WA (ix) has one closed curve
Is set.

次に、アドレスレジスタiの値「13」が開始点レジス
タS2の値「11」に変更される(ステップE9)。そして、
アドレスレジスタiの値がb点レジスタbの値「12」に
達するまでフォントメモリ15から読み出したデータ(x
11、y11)、(x12、y12)をワークメモリ16に順次書き
込む(ステップE10、E11)。この場合においてもワーク
メモリ16の属性エリアWA(ix)には「0」のデータがセ
ットされる。
Next, the value “13” of the address register i is changed to the value “11” of the start point register S2 (step E9). And
Data (x) read from the font memory 15 until the value of the address register i reaches the value “12” of the point b register b
11, y 11), sequentially written in the work memory 16 (x 12, y 12) (step E10, E11). In this case as well, data “0” is set in the attribute area WA (ix) of the work memory 16.

続いて、アドレスレジスタiの値「12」がa点レジス
タaの値「8」に変更される(ステップE12)。そし
て、アドレスレジスタiの値が終了点レジスタE1の値
「10」未満となるまでの間、フォントメモリ15から読み
出したデータ(x8、y8)、(x9、y9)をワークメモリ16
に書き込む(ステップE13、E14)。
Subsequently, the value “12” of the address register i is changed to the value “8” of the point a register a (step E12). The data (x 8 , y 8 ) and (x 9 , y 9 ) read from the font memory 15 are stored in the work memory 16 until the value of the address register i becomes less than the value “10” of the end point register E 1.
(Steps E13 and E14).

しかして、アドレスレジスタiの値が終了点レジスタ
E1の値「10」となると、ステップE15に進み、ワークメ
モリ16の属性エリアWA(ix)に閉曲線の終了を示す
「2」のデータをセットすると共に、フォントメモリ15
から読み出されたデータ(x10、y10)をワークメモリ16
のエリアWA(ix)、WY(ix)に書き込む。
Thus, the value of the address register i is
When the value of E1 becomes "10", the process proceeds to step E15, where the data of "2" indicating the end of the closed curve is set in the attribute area WA (ix) of the work memory 16, and the font memory 15
Data read from the (x 10, y 10) of the work memory 16
Write to areas WA (ix) and WY (ix).

この結果、ワークメモリ16には、第4図(B)に示す
点「1」〜「8」、「12」、「13」、「11」、「12」、
「8」、「9」、「10」のフォントデータが順次書き込
まれ、1つの閉曲線を表わすデータとなる。
As a result, the points “1” to “8”, “12”, “13”, “11”, “12”,
Font data “8”, “9”, and “10” are sequentially written, and become data representing one closed curve.

そして、ステップE16に進み、第17図のサブルーチン
にしたがってS2〜E2を削除する処理を行ったのち、上述
した第16図のサブルーチンにしたがってS1〜E1を置換す
る処理を行い(ステップE17)、編集完了となる。
Then, the process proceeds to step E16 to perform a process of deleting S2 to E2 according to the subroutine of FIG. 17, and then perform a process of replacing S1 to E1 according to the subroutine of FIG. 16 described above (step E17). Completed.

第17図は第14図で示したS2〜E2の削除処理を詳述する
為のフローチャートである。なお、この削除処理は開始
点レジスタS2の値で示されるフォントメモリ15内のデー
タから終了点レジスタE2の値で示されるフォントメモリ
15内のデータを削除する為の処理である。
FIG. 17 is a flowchart for explaining in detail the deletion processing of S2 to E2 shown in FIG. Note that this deletion processing is performed from the data in the font memory 15 indicated by the value of the start point register S2 to the font memory indicated by the value of the end point register E2.
This is a process for deleting the data in 15.

先ず、アドレスレジスタix、iの初期値としてアドレ
スレジスタixには開始点レジスタS2の値(n=11)をセ
ットし、またアドレスレジスタiには終了点レジスタE2
の内容(n=13)に「1」を加算した値(n=14)をセ
ットしておく(ステップF1)。次に、フォントメモリ15
からエリアA(i)、X(i)、Y(i)内のデータを
読み出してフォントメモリ15のエリアA(ix)、X(i
x)、Y(ix)に書き込む(ステップF2)。そして、属
性エリアA(i)の内容がフォントの終了を示す「−
1」か否かを調べ(ステップF3)、フォントの終了が検
出されるまでステップF4に進み、アドレスレジスタix、
iの値に「1」を加算するインクリメント処理を行った
のちステップF2に戻り、以下、同様の動作が繰り返され
る。
First, the value (n = 11) of the start point register S2 is set in the address register ix as an initial value of the address registers ix and i, and the end point register E2 is set in the address register i.
A value (n = 14) obtained by adding "1" to the content (n = 13) is set (step F1). Next, font memory 15
The data in the areas A (i), X (i) and Y (i) are read out from the
x) and Y (ix) are written (step F2). Then, the content of the attribute area A (i) indicates the end of the font “−”.
1 (step F3), and proceeds to step F4 until the end of the font is detected.
After performing an increment process of adding “1” to the value of i, the process returns to step F2, and the same operation is repeated thereafter.

この結果、フォントメモリ15はアドレスレジスタiの
値にしたがってその読み出しアドレスが指定され、また
アドレスレジスタixの値にしたがってその書き込みアド
レスが指定される為、フォントメモリ15内の「n=14」
以降に続くフォントデータがフォントメモリ15の「n=
11」から順次上書きされる。したがって、編集前におい
てフォントメモリ15内の「n=11」から「n=13」まで
のデータ(S2〜E2までのデータ)はフォントメモリ15か
ら削除される。
As a result, the read address of the font memory 15 is specified according to the value of the address register i, and the write address thereof is specified according to the value of the address register ix.
Subsequent font data is “n =
11 ”is overwritten sequentially. Therefore, data from “n = 11” to “n = 13” (data from S2 to E2) in the font memory 15 is deleted from the font memory 15 before editing.

その後、第16図のサブルーチンにしたがってS1〜E1の
置換処理が行われたのち、編集完了となる。
Then, after the replacement processing of S1 to E1 is performed according to the subroutine of FIG. 16, the editing is completed.

なお、第18図、第19図は別のアウトライン・フォント
の例である。上述した場合と同様に各図(A)のa点と
b点を指定して編集指令を与えると、同図(B)の編集
結果が得られる。これはa点とbとで結ぶ線で字形の黒
の部分をつなぐ編集結果となる。なお、図中、、
、、、は閉曲線を示している。
FIGS. 18 and 19 are examples of another outline font. As in the case described above, when an edit command is given by designating the points a and b in each figure (A), the editing result shown in the figure (B) is obtained. This is an editing result in which the black portion of the character shape is connected by a line connecting point a and b. In the figure,
,... Indicate closed curves.

したがって、本実施例においては、2点a、bを指定
するだけで字形の黒の部分を切り離したり、つないだり
する編集を容易に行うことが可能となる。
Therefore, in the present embodiment, it is possible to easily perform editing in which the black portions of the character shape are separated or connected only by designating the two points a and b.

[発明の効果] この発明は、任意の閉曲線上の2点を指示する同一指
示方法で2つの閉曲線を1つに結合したり、1つの閉曲
線を2つに分割したりするような編集、つまりフォント
の輪郭を構成する閉曲線の数を増加させたり、減少させ
たりするような編集を容易に行うことが可能となる。換
言すれば、字形の黒の部分を切り離したり、つないだり
する編集を2点指示という簡単な方法で容易に実現可能
となる。
[Effects of the Invention] The present invention is directed to editing such that two closed curves are combined into one or one closed curve is divided into two by the same designation method for designating two points on an arbitrary closed curve, that is, Editing such as increasing or decreasing the number of closed curves forming the outline of the font can be easily performed. In other words, the editing for cutting off or connecting the black portion of the character can be easily realized by a simple method of specifying two points.

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

第1図はこの発明の機能ブロック図、第2図〜第19図は
実施例を示し、第2図は輪郭線編集処理の構成を示した
ブロック図、第3図(A)、(B)はアウトライン・フ
ォントの例を示した図、第4図(A)、(B)は第3図
(A)、(B)のアウトライン・フォントを構成する輪
郭線の各点を示した図、第5図(A)、(B)は他のア
ウトライン・フォントの例を示した図、第6図(A)、
(B)は第5図(A)、(B)のアウトライン・フォン
トを構成する輪郭線の各点を示した図、第7図(A)、
(B)は第4図(A)、(B)の各点に対応するフォン
トメモリ15上のデータ形式を示した図、第8図(A)、
(B)は第6図(A)、(B)の各点に対応するフォン
トメモリ15上のデータ形式を示した図、第9図はワーク
メモリの構成を示した図、第10図はフォント編集処理の
全体動作を示したゼネラルフローチャート、第11図は第
10図に示す閉曲線の検出処理を示したフローチャート、
第12図は第10図で示した閉曲線の分割処理を示したフロ
ーチャート、第13図はこの分割処理の概念図、第14図は
第10図で示した閉曲線の結合処理を示したフローチャー
ト、第15図はこの結合処理の概念図、第16図は第12図お
よび第14図で示したS1〜E1の置換処理を示したフローチ
ャート、第17図は第14図で示したS2〜E2の削除処理を示
したフローチャート、第18図(A)、(B)、第19図
(A)、(B)は他のアウトライン・フォントを示した
図である。 11……CPU、12……プログラムメモリ、13……キーボー
ド、15……フォントメモリ、16……ワークメモリ、17…
…アドレス管理部、20……座標入力部、a……a点レジ
スタ、b……b点レジスタ。
FIG. 1 is a functional block diagram of the present invention, FIGS. 2 to 19 show an embodiment, FIG. 2 is a block diagram showing a configuration of an outline editing process, and FIGS. 3 (A) and 3 (B). FIGS. 4A and 4B are diagrams showing examples of outline fonts, and FIGS. 4A and 4B are diagrams showing each point of an outline constituting the outline font in FIGS. 3A and 3B. 5 (A) and 5 (B) show examples of other outline fonts, FIG. 6 (A),
(B) is a diagram showing each point of the outline constituting the outline font of FIGS. 5 (A) and (B), FIG. 7 (A),
(B) is a diagram showing the data format on the font memory 15 corresponding to each point in FIGS. 4 (A) and (B).
(B) is a diagram showing the data format on the font memory 15 corresponding to each point in FIGS. 6 (A) and (B), FIG. 9 is a diagram showing the structure of the work memory, and FIG. FIG. 11 is a general flowchart showing the overall operation of the editing process.
Flow chart showing the detection processing of the closed curve shown in FIG. 10,
FIG. 12 is a flowchart showing the process of dividing the closed curve shown in FIG. 10, FIG. 13 is a conceptual diagram of this dividing process, FIG. 14 is a flowchart showing the process of combining the closed curves shown in FIG. FIG. 15 is a conceptual diagram of this combining process, FIG. 16 is a flowchart showing the replacement process of S1 to E1 shown in FIGS. 12 and 14, and FIG. 17 is a deletion of S2 to E2 shown in FIG. FIGS. 18 (A) and (B), and FIGS. 19 (A) and (B) are flowcharts showing the processing, showing other outline fonts. 11 ... CPU, 12 ... Program memory, 13 ... Keyboard, 15 ... Font memory, 16 ... Work memory, 17 ...
... Address management unit, 20... Coordinate input unit, a... A point register, b.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】2次元の図形の輪郭を閉曲線で表現して成
るアウトライン・フォントを処理する装置において、 アウトライン・フォントを編集する為に閉曲線上に存在
する2つの点を指定する指定手段と、 この指定手段で指定された2つの点が夫々異なる閉曲線
上に存在するか同一閉曲線上に存在するかを判別する判
別手段と、 この判別手段で異なる閉曲線上に存在すると判別された
場合にはこの異なる2つの閉曲線を1つの閉曲線に結合
する処理を行う結合処理手段と、 前記判別手段で同一閉曲線上に存在すると判別された場
合にはこの1つの閉曲線を2つの閉曲線に分割する処理
を行う分割処理手段と、 を具備して成る輪郭線編集装置。
1. An apparatus for processing an outline font in which a contour of a two-dimensional figure is represented by a closed curve, a designating means for designating two points existing on the closed curve to edit the outline font, Discriminating means for discriminating whether the two points specified by the specifying means are present on different closed curves or on the same closed curve; and when the discriminating means determines that the two points are present on different closed curves, A combination processing unit that performs a process of combining two different closed curves into one closed curve; and a division that performs a process of dividing the one closed curve into two closed curves when the determination unit determines that the two exist on the same closed curve. A contour line editing apparatus comprising: processing means.
JP1258901A 1989-10-05 1989-10-05 Contour editing device Expired - Lifetime JP2780384B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1258901A JP2780384B2 (en) 1989-10-05 1989-10-05 Contour editing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1258901A JP2780384B2 (en) 1989-10-05 1989-10-05 Contour editing device

Publications (2)

Publication Number Publication Date
JPH03218582A JPH03218582A (en) 1991-09-26
JP2780384B2 true JP2780384B2 (en) 1998-07-30

Family

ID=17326610

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1258901A Expired - Lifetime JP2780384B2 (en) 1989-10-05 1989-10-05 Contour editing device

Country Status (1)

Country Link
JP (1) JP2780384B2 (en)

Also Published As

Publication number Publication date
JPH03218582A (en) 1991-09-26

Similar Documents

Publication Publication Date Title
JPH0719294B2 (en) How to create a graph using a computer
JP2780384B2 (en) Contour editing device
JP3524987B2 (en) Display screen creation device
KR970011905B1 (en) Diagram drawing apparatus
JP3008257B2 (en) Command specification device
JP3658027B2 (en) Graphic editing apparatus and graphic editing method
JP3305395B2 (en) Figure division device
JP2718782B2 (en) Figure creation device
JPH07271998A (en) Method and device for three-dimensional display
JP2572441B2 (en) Form-specific figure creation device
JP3265762B2 (en) Image processing device
JP2996647B2 (en) Figure group editing method
JPH02151972A (en) Document retrieving system
JPH0765186A (en) Graphic editing device
JPH0816834B2 (en) Curve generation method
JPH0375942A (en) Editing history control system for file
JPH05341974A (en) System for evaluating change of state transition information
JPH10149357A (en) Undo processor and undo processing method
JPH05101044A (en) Document processor
JPS6169094A (en) Graphic processing method and apparatus
JPH0676032A (en) Method and device for picture editing
JPH0660157A (en) Drawing processing system
JPH08123982A (en) Analytic data input and output device
JPH01255887A (en) Character and graphic editing device
JPH01155481A (en) Three-dimensional shape display device