DE4340599C2 - Gerät und Verfahren zur Konturerzeugung - Google Patents
Gerät und Verfahren zur KonturerzeugungInfo
- Publication number
- DE4340599C2 DE4340599C2 DE4340599A DE4340599A DE4340599C2 DE 4340599 C2 DE4340599 C2 DE 4340599C2 DE 4340599 A DE4340599 A DE 4340599A DE 4340599 A DE4340599 A DE 4340599A DE 4340599 C2 DE4340599 C2 DE 4340599C2
- Authority
- DE
- Germany
- Prior art keywords
- contour
- information
- weight
- movement
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/002—Generic data access
- G06K2215/0028—Generic data access characterised by the format per se
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K2215/00—Arrangements for producing a permanent visual presentation of the output data
- G06K2215/0002—Handling the output data
- G06K2215/002—Generic data access
- G06K2215/0028—Generic data access characterised by the format per se
- G06K2215/0034—Outline coding
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Analysis (AREA)
- Dot-Matrix Printers And Others (AREA)
Description
Die Erfindung betrifft ein Gerät und ein Verfahren zur Kon
turerzeugung.
Allgemein ist ein Konturschriftbild aus Daten von Konturen
eines Zeichens zusammengesetzt, die durch gerade Linien
und Kurven dargestellt sind. Als Kurven werden üblicherweise
eine kubische Bezier-Kurve, eine Spline-Kurve oder ein
Kreisbogen benutzt.
Diese Konturdaten stellen die Daten für ein Schriftbild mit
einer bestimmten Dicke dar, die nachfolgend als "Gewichtung" oder "Gewicht"
bezeichnet wird. Ein mageres Schriftzeichen mit geringer
Gewichtung ist durch Konturdaten für ein schwaches Schriftbild
dargestellt, während eine fette Schrift mit hoher Gewichtung
durch Konturdaten für ein fettes Schriftbild dargestellt
ist. In dieser Beschreibung ist, "Gewichtung" ein numerischer
Wert, der die Dicke des Zeichens darstellt, "Dicke" ein
Ausdruck, der die Dicke der Kontur darstellt, und "Kontur"
hat die Bedeutung einer Umrißlinie.
Die Literaturstelle "Computer Grafik" von W. D. Fellner, BI-
Wissenschaftsverlag, Mannheim, Wien, Zürich, 1988, Seiten 143
bis 152, lehrt, Zeichen mit einer vorbestimmten Dicke bzw.
Gewichtung auszubilden. Dabei werden Zeichen ausgefüllt, die
anhand deren Konturlinien bestimmt sind.
Zur Anzeige oder zum Druck von Zeichen oder dergleichen ent
sprechend Schriftbildern mit mehreren Gewichtungen anders als
bei der
vorstehend genannten Literaturstelle besteht infolgedessen ein
Problem darin, daß für jegliche Gewichtung Konturschrifttypen
mit einer Vielzahl von Gewichtungen vorgesehen werden müssen.
Ein zur Lösung dieses Problems vorgeschlagenes System
ermöglicht es, aus einer fetten Konturschrift und einer
mageren Konturschrift eine dazwischenliegende Konturschrift
zu erzeugen. Es können jedoch keine Konturschriften mit
irgendeiner gewünschten Gewichtung erzeugt werden.
Da somit gewöhnliche Konturdaten kein Informationen
bezüglich der Bewegung eines jeweiligen Kontur- oder Paßpunktes für die
Berücksichtung einer jeweiligen Gewichtung enthalten, kann
nicht für irgendeine Gewichtung die Lage eines jeweiligen
Konturpunktes erfaßt werden.
Der Erfindung liegt daher die Aufgabe zugrunde, ein Gerät und
ein Verfahren zur Konturerzeugung zu schaffen, die Zeichen
mit einer Vielzahl von Gewichtungen mittels eines einzigen
Konturdatenworts erzeugen können.
Diese Aufgabe wird erfindungsgemäß durch ein Konturerzeu
gungsgerät nach Anspruch 1 und ein Konturerzeugungsverfahren
nach Anspruch 12 gelöst.
Eine erste Information, die Positionen von Konturpunkten zur
Konturerzeugung eines Musters mit einer vorbestimmten Gewich
tung anzeigt, und eine zweite Information sind in einer Spei
chereinrichtung gespeichert. Die zweite Information ist für
jeden Konturpunkt individuell vorgesehen, um Positionen von
Konturpunkten zu bestimmen, die eine Kontur des Musters mit
einer zu der vorbestimmten Gewichtung unterschiedlichen Ge
wichtung erzeugen. Gewichtungsinformationen, die die Gewich
tung des zu erzeugenden Musters anzeigen, werden mittels
einer Eingabeeinrichtung eingegeben. Weiterhin wird auf
Grundlage der ersten und zweiten Information die Position je
des Konturpunktes zur Erzeugung der Kontur des Musters mit
einer Gewichtung bestimmt, die durch die Gewichtungsinforma
tion angezeigt wird. Schließlich wird eine Musterkontur unter
Verwendung der bestimmten Konturpunkte erzeugt.
Es werden also Zeichen mit einer Vielzahl von Gewichtungen
mittels eines einzigen Konturdatenwortes dadurch erzeugt, daß
jeder Punkt auf einer Kontur mit einer Bewegungsinformation
für die Bewegung von Konturpunkten versehen ist, wobei die
Gewichtung als Parameter dient.
In den Unteransprüchen 2 bis 11 und 13 bis 23 sind vorteil
hafte Ausgestaltungen der Erfindung gekennzeichnet.
Die Erfindung wird nachstehend anhand von
Ausführungsbeispielen unter Bezugnahme auf die Zeichnung
näher erläutert.
Fig. 1 ist eine Blockdarstellung, die die
allgemeine Steuerung einer Konturformungseinrichtung gemäß
einem Ausführungsbeispiel zeigt.
Fig. 2 ist eine Blockdarstellung, die die
allgemeine Steuerung in dem Fall zeigt, daß die
Konturformungseinrichtung gemäß dem Ausführungsbeispiel in
einen Laserstrahldrucker eingebaut ist.
Fig. 3 zeigt ein Beispiel für ein
Schriftbilddatenformat.
Fig. 4 ist eine Darstellung eines Zustands, bei
dem die Schriftbilddaten nach Fig. 3 mit einem Gewicht 10
ausgegeben werden.
Fig. 5 ist eine Darstellung von Beispielen, bei
denen eine einen Paßpunkt-Bewegungsvektor darstellende
Funktion geändert wird.
Fig. 6 ist eine Tabelle, die einen Teil der
Zusammenstellung von Konturdaten für das Kanji-Zeichen nach
Fig. 3 darstellt.
Fig. 7 ist ein Ablaufdiagramm einer Steuerung
zur Konturenformung gemäß dem ersten Ausführungsbeispiel.
Fig. 8A und 8B veranschaulichen die Art und
Weise, wie eine einen Paßpunkt-Bewegungsvektor darstellende
Primärfunktion erhalten wird.
Fig. 9 ist eine Darstellung eines Beispiels, bei
dem aus Konturdaten für zwei Gewichte ein Paßpunkt-
Bewegungsvektor erhalten wird.
Fig. 10 ist eine Darstellung eines Beispiels für
einen durch eine Kurve dargestellten Paßpunkt-
Bewegungsvektor.
Fig. 11 ist eine Tabelle, die die
Zusammensetzung von Konturdaten bei einem zweiten
Ausführungsbeispiel zeigt.
Fig. 12 ist ein Ablaufdiagramm einer Prozedur
für das Berechnen und Ausgeben von Zeichenkonturdaten für
ein gewünschtes Gewicht aus Konturdaten mit dem Format nach
Fig. 11.
Fig. 13 zeigt die Art und Weise, wie aus
Konturdaten mit drei oder mehr Gewichten ein nichtlinearer
Vektor ermittelt wird.
Fig. 14 bis 16 sind jeweils ein Ablaufdiagramm,
das einen Prozeß zum Ermitteln eines Paßpunkt-
Bewegungsvektors für jeweilige Paßpunkte in einer
Konturformungseinrichtung gemäß einem dritten
Ausführungsbeispiel der Erfindung zeigt.
Fig. 17 bis 19 sind jeweils ein Ablaufdiagramm,
das einen Prozeß zum Ermitteln eines Paßpunkt-
Bewegungsvektors für einen jeweiligen Paßpunkt in einer
Konturformungseinrichtung gemäß einem vierten
Ausführungsbeispiel veranschaulicht.
Fig. 20 ist eine Tabelle, die die
Zusammenstellung von Daten in einer
Horizontalbewegungstabelle zeigt.
Fig. 21 ist eine Tabelle, die die
Zusammenstellung von Daten in einer Vertikalbewegungstabelle
zeigt.
Fig. 22 ist ein Ablaufdiagramm, die einen Prozeß
zum Aufsuchen eines Paßpunktes veranschaulicht, der mit
einem betrachteten Paßpunkt ein Paar bildet.
Fig. 23 ist eine Darstellung zum Beschreiben
eine Prozesses für das Aufsuchen eines Paßpunktes, der mit
einem betrachteten Paßpunkt ein Paar bildet.
Fig. 24 ist eine Tabelle, die die
Zusammenstellung Von Konturdaten bei einem fünften
Ausführungsbeispiel der Erfindung zeigt.
Fig. 25 ist ein Ablaufdiagramm, das einen Prozeß
für das Transformieren von X- und Y-Koordinaten eines
Paßpunktes gemäß dem fünften Ausführungsbeispiel zeigt.
Fig. 26 ist eine Blockdarstellung der
allgemeinen Gestaltung einer Konturformungseinrichtung gemäß
einem sechsten Ausführungsbeispiel der Erfindung.
Fig. 27 zeigt die Datenstruktur von Konturdaten
bei einer Festplatte.
Fig. 28 ist ein Ablaufdiagramm, das einen Prozeß
zur Datenausgabe bei dem sechsten Ausführungsbeispiel zeigt.
Fig. 29 ist ein Ablaufdiagramm, das einen Prozeß
zum Speichern von Konturdaten bei dem sechsten
Ausführungsbeispiel zeigt.
Die Fig. 1 ist eine Blockdarstellung, die allgemein die
Gestaltung der Steuerung bei einer Konturformungseinrichtung
gemäß diesem Ausführungsbeispiel veranschaulicht.
Die Einrichtung enthält eine Eingabeeinheit 11, die
Codeinformationen, welche ein auszugebendes Bildmuster
bestimmen, und Gewichtsinformationen für das Bestimmen des
"Gewichtes" des Bildmusters aufnimmt. Bei diesem
Ausführungsbeispiel wird ein Schriftzeichen als ein Beispiel
für ein auszugebendes Bildmuster behandelt und ein das
Bildmuster bestimmender Code wird als Zeichencode
bezeichnet. Die Eingabeeinheit 11 ist an einen Computer 12
mit einer Zentraleinheit CPU für das Berechnen von
Konturdaten für ein Zeichen aus dem Zeichencode und der
Gewichtsinformation angeschlossen, die von der
Eingabeeinheit 11 aufgenommen werden. Der Computer 12 ist an
eine Speichereinheit 13 mit einem Festspeicher ROM 14 und
einem Schreib/Lesespeicher RAM 15 angeschlossen. Der
Festspeicher 14 speichert grundlegende Zeichendaten und
dergleichen, während der Schreib/Lesespeicher 15 als
Arbeitsspeicher für die von dem Computer 12 ausgeführten
Berechnungen dient. Außerdem werden in dem Schreib/
Lesespeicher 15 vorübergehend Zeichenkonturdaten
gespeichert, die erhalten werden, wenn durch den Computer 12
die Grund-Zeichendaten aus dem Festspeicher 14 verarbeitet
werden. Der Computer 12 ist ferner mit einer Ausgabeeinheit
16 verbunden, die die als Ergebnis der Verarbeitung durch
den Computer 12 erhaltenen Zeichenkonturdaten ausgibt. Der
Festspeicher 14 speichert Programme für das Ausführen Von
durch Verschiedene Ablaufdiagramme dargestellten,
nachfolgend beschriebenen Steuerungen.
Die Fig. 2 zeigt ein Beispiel für die Anwendung der
Konturformungseinrichtung gemäß diesem Ausführungsbeispiel.
Die Fig. 2 ist eine Blockdarstellung, die allgemein die
Steuerung in einem Fall veranschaulicht, bei dem diese
Konturformungseinrichtung in einen Laserstrahldrucker
eingebaut ist. Mit 21 ist eine Aufnahmeeinheit für das
Aufnehmen Von Druckdaten aus einem Verarbeitungscomputer
bezeichnet. Mit 22 ist eine Bilderzeugungseinheit
bezeichnet, die Schaltungen wie eine Zentraleinheit CPU,
einen Festspeicher ROM und einen Schreib/Lesespeicher RAM
enthält. Mit 23 ist eine Konturformungseinrichtung gemäß
diesem Ausführungsbeispiel bezeichnet. Der Computer bzw. die
Zentraleinheit 12, der Festspeicher 14 und der Schreib/
Lesespeicher 15 nach Fig. 1 sind in der
Bilderzeugungseinheit 22 enthalten. Diese Einrichtung wird
durch den Computer 12 gesteuert. Das Programm für diese
Steuerung ist in dem Festspeicher 14 gespeichert. Mit 24 ist
ein Ausgabepuffer für das vorübergehende Speichern des durch
die Bilderzeugungseinheit 22 geformten Bildes im Format
eines Bitplanes bezeichnet. Mit 25 ist eine Druckereinheit
bezeichnet, die aufgrund der in dem Ausgabepuffer 24
gespeicherten Daten Impulse für die Ansteuerung eines Lasers
erzeugt, um dadurch auf einem Papier mit Toner ein Bild zu
erzeugen.
Die Aufnahmeeinheit 21 nimmt aus dem nicht gezeigten
Verarbeitungscomputer Druckdaten auf, die Zeichencodes und
Gewichtinformationen enthalten. Die Schriftzeichen-
Konturformungseinrichtung 23 und die Bilderzeugungseinheit
22 bewegen zum Erzeugen einer Kontur mit einem durch die
Gewichtinformation bestimmten Gewicht einen jeden Paßpunkt
eines durch einen Zeichencode bestimmten Zeichens und
erzeugen unter Anwendung der bewegten Paßpunkte in dem
Ausgabepuffer 24 ein Bildmuster. Auf diese Weise wird ein
Zeichenbildmuster erzielt, dessen Dicke durch die
Gewichtsinformation bestimmt ist.
Die Fig. 3 zeigt ein Beispiel für das Format von in der
Konturformungseinrichtung gemäß diesem Ausführungsbeispiel
benutzten Schriftzeichendaten. Die Daten sind diejenigen für
den Kanji-Buchstaben in Groteskausführung. Der durch
die ausgezogenen Linien in Fig. 3 dargestellte Teil stellt
die Konturdaten bei dem Schriftzeichengewicht 1 dar. Die
durch die gestrichelten Linien (Pfeile) dargestellten
Vektoren sind Vektoren, die die Bewegungsbahn eines
jeweiligen Paßpunktes bei einer Änderung des Gewichtes
darstellen. Jeder Paßpunkt-Bewegungsvektor ist derart, daß
X- und Y-Koordinaten als eine Funktion des Gewichtes
dargestellt sind.
Die Fig. 4 ist eine Darstellung der Konturdaten des Grotesk-
Kanji-Schriftzeichens nach Fig. 3 bei dem Gewicht 10. Bei
diesem Ausführungsbeispiel stellt ein Gewicht 1 die
schwächste Konturlinie dar, während das Gewicht 10 die
fetteste Konturlinie darstellt.
Der Endpunkt eines jeden Paßpunkt-Bewegungsvektors nach Fig.
3 zeigt die Lage des jeweiligen Paßpunktes bei dem Gewicht
10. Demgemäß wird das Zeichenbildmuster mit dem Gewicht 10
gemäß Fig. 4 dadurch erhalten, daß die durch die Endpunkte
dieser Paßpunkt-Bewegungsvektoren dargestellten Paßpunkte
herangezogen werden.
Gemäß Fig. 3 enthalten die Konturdaten bei diesem
Ausführungsbeispiel Koordinatendaten, die die Kontur des
Schriftzeichens darstellen, und die Paßpunkt-
Bewegungsvektoren betreffende, nachfolgend als Vektordaten
bezeichnete Daten, die die Bahn der mit einer Änderung des
Gewichtes verbundenen Bewegung der Konturkoordinaten
darstellen. Gemäß der Darstellung in Fig. 3 bestehen die
Vektordaten für jeweilige Paßpunkte des abgebildeten Kanji-
Zeichens aus Daten für Paßpunkte ohne Vektoren, z. B.
Paßpunkte a, b, c und d, und Daten, bei denen X- und Y-
Koordinaten jeweils primäre Funktionen mit dem Gewicht als
Parameter darstellen, z. B. für die Paßpunkte e, f und g.
Die Fig. 6 ist eine Tabelle, die einen Teil der
zusammengestellten Konturdaten für das Kanji-Zeichen nach
Fig. 3 zeigt. In Fig. 6 sind die Daten für die Paßpunkte a
bis g nach Fig. 3 dargestellt. Hierbei stellen eine Kennung
1 den Anfang und das Ende einer Konturlinie, eine Kennung 2
die Eigenschaft der Konturenlinie, z. B. STR-LINE eine
Gerade, eine Kennung 3 den Grad einer Funktion eines
Paßpunkt-Bewegungsvektors in der X-Richtung und eine Kennung
4 den Grad einer Funktion des Paßpunkt-Bewegungsvektors in
der Y-Richtung dar. Wenn die Kennung 3 "0" ist, zeigt dies
an, daß sich der Koordinatenwert des Bewegungsvektors in der
X-Richtung nicht ändert. Wenn die Kennung 3 "1" ist, zeigt
dies an, daß sich der Koordinatenwert des Bewegungsvektors
in der X-Richtung als eine Primärfunktion, d. h., linear mit
einer Änderung des Gewichtes ändert. Auf gleiche Weise zeigt
die Kennung 4 "0" an, daß sich der Koordinatenwert des
Bewegungsvektors in der Y-Richtung nicht ändert. Wenn die
Kennung 4 "1" ist, zeigt dies an, daß sich der
Koordinatenwert des Bewegungsvektors in der Y-Richtung als
primäre Funktion einer Änderung des Gewichtes, d. h., linear
ändert.
In Fig. 6 stellen die Koordinate X und die Koordinate Y die
Koordinaten eines jeweiligen Paßpunktes bei dem Gewicht 1
dar. Ferner stellen eine X-Vektorkomponente VEC-X und eine
Y-Vektorkomponente VEC-Y jeweils die Bewegungsstrecke von
den Koordinaten der Paßpunkte bei dem Gewicht 1 weg zu den
Orten der jeweiligen Paßpunkte bei dem Gewicht 10 dar.
Die Fig. 7 ist ein Ablaufdiagramm, das einen Prozeß zum
Steuern der Konturformung gemäß dem ersten
Ausführungsbeispiel veranschaulicht. Zuerst werden bei einem
Schritt S701 ein Zeichencode für ein auszugebendes Zeichen
und bei einem Schritt S702 eine Gewichtsinformation
aufgenommen. Der Zeichencode und die Gewichtsinformation
werden in die Eingabeeinheit nach Fig. 1 eingegeben. Gemäß
dem bei dem Schritt S701 aufgenommenen Zeichencode werden
bei einem Schritt S703 aus dem Festspeicher 14 die Grund-
Konturdaten ausgelesen. Als nächstes wird bei einem Schritt
S704 die Anzahl Nmax der Paßpunkte mit aus dem Festspeicher
ausgelesenen Konturdaten eingesetzt. Es folgt ein Schritt
S705, bei der als Zählervariable n "1" eingesetzt wird. Nmax
und n werden in den Schreib/Lesespeicher 15 nach Fig. 1
eingespeichert.
Bei einem Schritt S706 wird ermittelt, ob n den Wert Nmax
überschritten hat. Das Programm schreitet zu einem Schritt
S712 weiter, wenn n größer als Nmax ist, bzw. zu einem
Schritt S707, wenn dies nicht der Fall ist. Der Prozeß in
Schritten S707 bis 710 ist ein Prozeß bezüglich eines n-ten
Datenelementes der Konturdaten gemäß Fig. 6. Bei dem Schritt
S707 wird ermittelt, ob das n-te Element der Paßpunktdaten
einen Paßpunkt-Bewegungsvektor in X-Richtung enthält. Wenn
die Kennung 3 nicht "0" ist, enthalten die Daten einen
Paßpunkt-Bewegungsvektor. Das Programm schreitet zu dem
Schritt S708 weiter, wenn die Daten einen Bewegungsvektor
enthalten, bzw. zu dem Schritt S709, wenn die Daten keinen
Bewegungsvektor enthalten. Bei dem Schritt S708 wird aus der
Gewichtsinformation und den Vektordaten für den
Bewegungsvektor die X-Koordinate des Paßpunktes berechnet,
was nachfolgend unter Bezugnahme auf die Fig. 8A beschrieben
wird. Bei dem Schritt S709 wird ermittelt, ob das n-te
Element der Paßpunktdaten einen Bewegungsvektor in der Y-
Richtung enthält. Wenn die Kennung 4 nicht "0" ist,
enthalten die Daten einen Paßpunkt-Bewegungsvektor. Das
Programm schreitet zu dem Schritt S710 weiter, wenn die
Daten einen Bewegungsvektor enthalten, bzw. zu dem Schritt
S711, wenn die Daten keinen Bewegungsvektor enthalten. Bei
dem Schritt S710 wird aus der Gewichtsinformation und den
Vektordaten für den Bewegungsvektor die Y-Koordinate des
Paßpunktes berechnet, was nachfolgend unter Bezugnahme auf
die Fig. 8B beschrieben wird. Bei dem Schritt S711 wird die
Zählervariable n aufgestuft, wonach das Programm zu dem
Schritt S706 zurückkehrt, so daß der Prozeß bezüglich des
nächsten Paßpunktes ausgeführt wird. Bei dem Schritt S712
werden die transformierten Daten aus der Ausgabeeinheit 16
abgegeben, wonach die Verarbeitung endet.
Die Fig. 8A und 8B sind Ablaufdiagramme, die ein Verfahren
zum Ermitteln einer einen Paßpunkt-Bewegungsvektor
darstellenden primären Funktion veranschaulichen. Bei diesem
Beispiel wird eine primäre Funktion durch die Koordinaten X
und Y eines Paßpunktes bei dem Gewicht 1 und die durch die
X-Vektorkomponente und die Y-Vektorkomponente angezeigten
Koordinaten der Komponenten eines Paßpunkt-Bewegungsvektors
dargestellt, wie es durch Zusammensetzung der Konturdaten
nach Fig. 6 gezeigt ist. Selbstverständlich werden aus dem
Ausmaß der Bewegung eines jeweiligen Paßpunktes die
Koordinaten des Endpunktes erhalten. Da im einzelnen der
Ausgangspunkt und der Wert einer jeden Komponente des
Paßpunkt-Bewegungsvektors bekannt sind, können leicht
Konstanten A und B bestimmt werden und es kann damit eine
primäre Funktion erhalten werden. Nach dieser primären
Funktion können Konturdaten für Zeichen mit irgendeinem
Gewicht ermittelt werden.
Bei einem Schritt S801 nach Fig. 8A werden als X1 der X-
Koordinatenwert des Paßpunktes (die den X-Koordinatenwert
für das Gewicht 1 anzeigende Koordinate X der Konturdaten
nach Fig. 6) und als W1 das Gewicht 1 eingesetzt. Bei einem
Schritt S802 wird der Komponentenwert des Vektors in X-
Richtung als X10 angesetzt, während als W10 das Gewicht 10
angesetzt wird. Die bei den Schritten S801 und S802
eingestellten Daten werden bei dem Schritt S803 dazu
herangezogen, einen X-Koordinatenwert für irgendein Gewicht
W zu ermitteln. Auf gleichartige Weise kann in Schritten
S804 bis S806 nach Fig. 8B ein Y-Koordinatenwert für
irgendein Gewicht W ermittelt werden.
Die Fig. 9 zeigt ein Beispiel, bei dem ein Paßpunkt-
Bewegungsvektor für einen jeden Paßpunkt automatisch
berechnet wird. Bei diesem Beispiel wird der Bewegungsvektor
aus den Konturdaten für zwei Gewichte erhalten. Gemäß diesem
Beispiel wird ein Paßpunkt-Bewegungsvektor aus den
Ortskoordinaten von Paßpunkten des Buchstabens "A" bei den
Gewichten 1 und 10 ermittelt. Im einzelnen wird ein Vektor
dadurch ermittelt, daß ein jeweiliger Paßpunkt für das
Gewicht 1 als Ausgangspunkt und ein jeweiliger Paßpunkt für
das Gewicht 10 als Endpunkt angesetzt werden. Wenn diese
Werte entsprechend der Datenzusammenstellung nach Fig. 6
beschrieben sind, sind die Koordinaten X und Y die
Koordinaten eines jeweiligen Paßpunktes bei dem Gewicht 1
und die Koordinaten X und Y des Endpunktes eines jeweiligen
Paßpunkt-Bewegungsvektors sind die Differenz zwischen den
Koordinaten X und Y für das Gewicht 10 und den Koordinaten X
und Y für das Gewicht 1, nämlich die X-Vektorkomponente und
die Y-Vektorkomponente.
Der Paßpunkt-Bewegungsvektor für einen jeweiligen Paßpunkt
kann natürlich auch nach einem anderen Verfahren ermittelt
werden. Ferner ist es auch möglich, daß ein Zeichner einen
Paßpunkt-Bewegungsvektor revidiert. Wenn die ermittelten
Bewegungsvektoren identisch sind, hat selbstverständlich das
Verfahren zum Ermitteln des Vektors keine Auswirkung auf das
Erzeugen der Zeichenkonturdaten für ein anderes Gewicht.
Es ist anzumerken, daß in Abhängigkeit von dem Paßpunkt
Fälle auftreten, bei denen keine X-Vektorkomponente und/oder
keine Y-Vektorkomponente vorliegt. Durch die Kennungen 3 und
4 wird jeweils erkannt, ob die X-Vektorkomponente bzw. die
Y-Vektorkomponente vorliegt oder nicht. Infolgedessen kann
ein Anteil ohne Vektordaten in einem geringeren Speicherraum
abgespeichert werden, um Speicherkapazität zu sparen.
Gemäß dem vorstehend beschriebenen ersten
Ausführungsbeispiel ist somit für einen jeglichen Punkt auf
einer Zeichenkonturlinie ein Paßpunkt-Bewegungsvektor
Vorgesehen, um das Gewicht verändern zu können. Als Ergebnis
werden folgende Auswirkungen erzielt:
- 1. Eine Änderung des Gewichts kann zu irgendeiner Dicke in Echtzeit berechnet werden.
- 2. Im Vergleich zu einem Fall, bei dem eine Interpolation mit Konturlinien mit zwei verschiedenen Gewichten ausgeführt wird, kann die Datenmenge um eine Menge Verringert werden, die der Anzahl der bestehenden Paßpunkte ohne Bewegungsvektoren entspricht.
- 3. Im Vergleich zu einem Fall, bei dem eine Interpolation mit Konturlinien mit zwei verschiedenen Gewichten ausgeführt wird, ist es nicht erforderlich, Berechnungen bezüglich Paßpunkten ohne Bewegungsvektoren auszuführen, so daß dadurch die Transformationsgeschwindigkeit erhöht ist.
- 4. Da die Konturdaten mit einem Vektor versehen sind, ist die Datenverwaltung erleichtert.
Bei dem ersten Ausführungsbeispiel ist ein Fall beschrieben,
bei dem der Bewegungsvektor eines jeweiligen Paßpunktes
durch einen primären Ausdruck dargestellt ist. Wenn jedoch
eine Figur komplizierter wird, treten Vektordaten auf, die
durch eine Vielfalt von Funktionen dargestellt sind. In
Abhängigkeit von den Paßpunkten umfassen die die Vektordaten
darstellenden Funktionen primäre bzw. lineare Funktionen,
quadratische Funktionen, Polynom-Funktionen,
trigonometrische Funktionen und Funktionen, welche sich mit
dem Gewicht als Grenzwert ändern. Da zumeist jeder Paßpunkt-
Bewegungsvektor durch ein Polynom dargestellt ist, ist es
erforderlich, die Vektordaten für einen jeden Paßpunkt
zusammen mit Informationen für das Ableiten der
Koeffizienten des Polynoms zu speichern.
Demzufolge wird als zweites Ausführungsbeispiel eine
Konturformungseinrichtung beschrieben, bei der ein Paßpunkt-
Bewegungsvektor die Form einer Kurve zweiten oder höheren
Grades hat.
Die Fig. 10 zeigt ein Beispiel für einen durch eine Kurve
dargestellten Paßpunkt-Bewegungsvektor. Dies ist ein
Beispiel, bei dem bei der Konturformungseinrichtung nach
Fig. 1 ein Paßpunkt-Bewegungsvektor bei einem jeweiligen
Paßpunkt für ein geändertes Gewicht die Form einer primären
Geraden oder einer Kurve zweiten Grades (quadratischen
Kurve) oder höheren Grades hat. D. h., die Bahn der dem
Gewicht entsprechenden Bewegung eines jeden Paßpunktes ist
durch eine Gerade oder durch eine Kurve dargestellt.
Beispielsweise ist das Kanji-Schriftzeichen "-" der
Groteskschrift derart beschaffen, daß sich jeder Paßpunkt in
der X-Richtung erweitert, sobald das Gewicht größer wird
(das Schriftzeichen fetter wird), obgleich das Ausmaß der
Bewegung des jeweiligen Paßpunktes in keinem festen
Verhältnis zu der Bewegung in der Y-Richtung steht. In
diesem Fall wird eine näher an der ursprünglichen Bahn
liegende Bahn durch das Darstellen der Bahn durch eine Kurve
zweiten oder höheren Grades ausgedrückt.
Die Fig. 11 ist eine Tabelle, die die Zusammensetzung der
Konturdaten bei dem zweiten Ausführungsbeispiel zeigt.
Hierbei stellen eine Kennung 1 den Anfang oder das Ende
einer Konturlinie, eine Kennung 2 die Eigenschaft einer
Konturlinie, eine Kennung 3 den Grad einer Funktion der Bahn
der Paßpunktbewegung in X-Richtung und eine Kennung 4 den
Grad einer Funktion der Bahn der Paßpunktbewegung in Y-
Richtung dar. Als Kennung 2 bedeuten STR-LINE, ST-C, INT-C
und EN-C jeweils "Gerade", "Kurvenanfang",
"Kurvenzwischenpunkt" und "Kurvenende". Wenn die Kennung 3
"0" ist, zeigt dies an, daß sich der Koordinatenwert in der
X-Richtung bei einer Änderung des Gewichtes nicht ändert.
Wenn die Kennung 3 "1" ist, zeigt dies an, daß sich der
Koordinatenwert in der X-Richtung als primäre Funktion, d. h.
linear mit einer Änderung des Gewichtes ändert. Wenn die
Kennung 3 "2" ist, zeigt dies an, daß sich der
Koordinatenwert in der X-Richtung nach einer quadratischen
Funktion, nämlich krummlinig in bezug auf eine Änderung des
Gewichtes ändert. Auf ähnliche Weise kann dann, wenn die
Kennung 3 "3" oder größer ist, die Bewegung durch eine
kompliziertere Kurve ausgedrückt werden. Die Kennung 4 hat
in bezug auf die Y-Richtung die gleiche Bedeutung wie die
Kennung 3. Bezüglich eines jeden Paßpunktes sind die
Koordinaten eines dem Grad des Paßpunktes entsprechenden
Punktes in der Reihenfolge des entsprechenden Gewichtes
angeordnet. D. h., als Punkte, die eine im ersten Grad
ausgedrückte Bahn beschreiben, sind außer den Koordinaten
des Paßpunktes die Koordinaten eines Punktes gespeichert. Im
Falle des zweiten Grades sind außer den Koordinaten des
Paßpunktes die Koordinaten zweier Punkte gespeichert.
Abhängig von dem Grad des Bewegungsvektors eines jeweiligen
Paßpunktes sind X-Vektorkomponenten 1, 2, .... bzw. VEC-X1,
2, .... gespeichert. Diese werden dazu herangezogen, eine
Rechengleichung für den Vektor an einem jeweiligen Paßpunkt
zu ermitteln.
Bei diesem Ausführungsbeispiel ist das Ausmaß der Bewegung
eines Paßpunktes bei dem Gewicht 10 als X-Vektorkomponente 1
(VEC-X1) und Y-Vektorkomponente 1 (VEC-Y1) gespeichert.
Ferner sind das Ausmaß der Bewegung eines Paßpunktes bei dem
Gewicht 5 als X-Vektorkomponente 2 bzw. VEC-X2 und Y-
Vektorkomponente 2 bzw. VEC-Y2 und das Ausmaß der Bewegung
eines Paßpunktes bei dem Gewicht 3 als X-Vektorkomponente 3
bzw. VEC-X3 und Y-Vektorkomponente 3 bzw. VEC-Y3
gespeichert.
Die Fig. 12 ist ein Ablaufdiagramm eines Prozesses, bei dem
aus den Konturdaten mit dem Format nach Fig. 11
Schriftzeichen-Konturdaten für ein gewünschtes Gewicht
berechnet und ausgegeben werden. Eine bei einem Schritt
S1207 genannte Betriebsart "Skizze" stellt eine
Ausgabebetriebsart dar, bei der die Geschwindigkeit Vorrang
gegenüber der Zeichenqualität hat. Zum Annähern der
Bewegungsbahnen aller Paßpunkte durch einen linearen
Ausdruck bei der Betriebsart "Skizze" wird die Berechnung
unter der Annahme ausgeführt, daß ein einem gewünschten
Gewicht entsprechender Paßpunkt auf einer geraden Linie
liegt, die einem Punkt auf einer Konturlinie für das
geringste Gewicht (1) mit einem Punkt auf einer Konturlinie
für das höchste Gewicht (10) verbindet. Falls die
Betriebsart nicht die Betriebsart "Skizze" ist, wird zum
Ermitteln der Koordinaten der Paßpunkte eine Berechnung in
einem Grad gemäß den Konturdaten ausgeführt.
Es wäre anzumerken, daß das Umschalten auf die Betriebsart
"Skizze" durch Bestimmen der Ausgabebetriebsart durch einen
die Druckdaten übertragenden Verarbeitungscomputer oder
durch das Bestimmen des Umschaltens mit einem Steuerschalter
an der Eingabeeinheit 11 vorgenommen werden kann. Ferner
kann bezüglich des Wählens der Ausgabebetriebsart das
Umschalten beispielsweise in Abhängigkeit von der
erforderlichen Ausgabequalität vorgenommen werden. Wenn
geringe Qualität gefordert ist, wird die Betriebsart
"Skizze" gewählt. Darüberhinaus kann in Abhängigkeit von der
zum Erzeugen der Konturdaten geforderten Geschwindigkeit
umgeschaltet werden. In diesem Fall wird auf die Betriebsart
"Skizze" umgeschaltet, wenn ein schnelles Erzeugen verlangt
ist.
Als erstes nimmt bei Schritten S1201 und S1202 nach Fig. 12
die Eingabeeinheit 11 den Zeichencode für das auszugebende
Zeichen und die Gewichtsinformation auf, welche das Gewicht
des Zeichens bestimmt. Bei einem Schritt S1203 werden
entsprechend dem bei dem Schritt S1201 aufgenommenen
Zeichencode aus dem Festspeicher 14 die Grund-Konturdaten
ausgelesen. Als nächstes wird bei einem Schritt S1204 als
Nmax die Anzahl von Paßpunkten mit aus dem Festspeicher
ausgelesenen Konturdaten eingesetzt. Es folgt ein Schritt
S1205, bei dem als Zählervariable n "1" eingesetzt wird. Bei
einem Schritt S1206 wird ermittelt, ob n größer als Nmax
geworden ist. Das Programm schreitet zu einem Schritt S1218
weiter, wenn n größer als Nmax ist, bzw. andernfalls zu dem
Schritt S1207. Bei dem Schritt S1207 wird ermittelt, ob die
Ausgabebetriebsart der Bilderzeugungseinheit die Betriebsart
"Skizze" ist. Wenn die Ausgabebetriebsart nicht die
Betriebsart "Skizze" ist, wird der Prozeß von einem Schritt
S1208 an ausgeführt, während der Prozeß von einem Schritt
S1213 an ausgeführt wird, wenn die Ausgabebetriebsart die
Betriebsart "Skizze" ist.
Wenn die Ausgabebetriebsart nicht die Betriebsart "Skizze"
ist, wird bei dem Schritt S1208 ermittelt, ob der n-te
Paßpunkt einen Bewegungsvektor in X-Richtung hat. Wenn die
Kennung 3 nicht "0" ist, hat der Paßpunkt einen
Bewegungsvektor. Das Programm schreitet zu einem Schritt
S1209 weiter, wenn die Daten einen Bewegungsvektor
enthalten, bzw. zu einem Schritt S1210, wenn kein
Bewegungsvektor in X-Richtung vorliegt. Bei dem Schritt
S1209 wird aus der Gewichtsinformation und den Vektordaten
für den Bewegungsvektor die X-Koordinate des Paßpunktes
berechnet. Die Gleichung für das Berechnen der Bewegungsbahn
eines Paßpunktes wird dabei durch den als Kennung 3
gespeicherten Grad der Kurvenfunktion und die X-
Vektorkomponenten 1, 2, .... bestimmt. Wenn beispielsweise
der Grad einer Kurve "2" ist, werden die X-Vektorkomponenten
1 und 2 herangezogen. Auf gleichartige Weise wird bei dem
Schritt S1210 und einem Schritt S1211 die Y-Koordinate des
Paßpunktes ermittelt. Nachdem bei einem Schritt S1212 die
Variable n aufgestuft wurde, kehrt das Programm zu dem
Schritt S1206 zurück, so daß der vorstehend beschriebene
Prozeß für den nächsten Paßpunkt wiederholt wird. Wenn diese
Verarbeitung für alle Paßpunkte abgeschlossen ist, schreitet
das Programm von dem Schritt S1206 zu dem Schritt S1218
weiter, bei dem die Daten aus der Ausgabeeinheit 16
ausgegeben werden. Damit ist die Verarbeitung beendet.
Falls die Ausgabebetriebsart die Betriebsart "Skizze" ist,
schreitet das Programm von dem Schritt S1207 zu einem
Schritt S1213 weiter.
Bei diesem Schritt wird ermittelt, ob für den n-ten Paßpunkt
ein Bewegungsvektor in X-Richtung vorliegt. Wenn die Daten
einen Bewegungsvektor enthalten, schreitet das Programm zu
einem Schritt S1214 weiter. Dies wird durch die Ermittlung
bestimmt, ob die Kennung 3 "0" ist oder nicht. Bei dem
Schritt S1214 wird aus den X-Koordinaten der Paßpunkte für
die Gewichte 1 und 10 die Gleichung für das Berechnen des
Bewegungsvektors als lineare Gleichung bestimmt und zum
Ermitteln der X-Koordinate des Paßpunktes mit dem
gewünschten Gewicht herangezogen. Die X-Koordinatenwerte für
die Gewichte 1 und 10 werden aus den X-Koordinaten und den
X-Vektorkomponenten 1 der Konturdaten nach Fig. 11
ermittelt. In Schritten S1215 und S1216 werden durch einen
zu dem vorstehend beschriebenen Prozeß bei den Schritt S1213
und S1214 gleichartigen Prozeß auch die Y-Koordinaten
ermittelt. Danach wird bei einem Schritt S1217 die Variable
n aufgestuft und das Programm kehrt zu dem Schritt S1206
zurück.
Die Fig. 13 veranschaulicht die Art und Weise, wie aus
Konturdaten für drei oder mehr Gewichte ein nichtlinearer
Vektor berechnet wird. Dies stellt ein Beispiel dar, bei dem
der Vektor eines jeweiligen Paßpunktes auf automatische
Weise durch Berechnung ermittelt wird. Bei diesem Beispiel
wird ein Paßpunkt-Bewegungsvektor, der durch einen
quadratischen Ausdruck dargestellt ist, aus Gewichten 1, 5
und 10 des Kanji-Zeichens "-" ermittelt. D. h., es wird ein
Bewegungsvektor gemäß einer quadratischen Funktion
ermittelt, gemäß der der Vektor an einem Paßpunkt für das
Gewicht 1 beginnt, einen Punkt für das Gewicht 5 durchläuft
und an einem Paßpunkt für das Gewicht 10 endet. In diesem
Fall stellen die Koordinaten X und Y die Koordinaten des
Paßpunktes für das Gewicht 1 dar, während die X- und Y-
Vektorkomponenten die Koordinaten des Paßpunktes für das
Gewicht 10 anzeigen, nämlich tatsächlich die Lage in bezug
auf diejenige bei dem Gewicht 1. Ferner zeigen die X- und Y-
Vektorkomponenten 2 das Ausmaß der Bewegung des Paßpunktes
für das Gewicht 5 an. Die X- und Y-Vektorkomponenten 3
zeigen das Ausmaß der Bewegung des Paßpunktes für das
Gewicht 3 an.
In Abhängigkeit von der Speicherkapazität und der
Leistungsfähigkeit der Zentraleinheit bzw. des Computers
kann gewählt werden, ob Daten für eine lineare Funktion oder
Daten für eine quadratische Funktion bzw. eine Funktion
höherer Ordnung herangezogen werden. Dabei ist es einfach,
die Daten für eine quadratische Funktion oder eine Funktion
höherer Ordnung zu Daten für eine lineare Funktion zu
transformieren. Im Falle einer Annäherung eines Paßpunkt-
Bewegungsvektors durch eine lineare Funktion entstehen
jedoch Fälle, bei denen dies zu einer gewissen Verringerung
der Zeichenqualität im Vergleich zu dem Fall führt, daß zum
Bestimmen eines Bewegungsvektors ein quadratischer Ausdruck
herangezogen wird.
Bei dem vorstehend beschriebenen zweiten Ausführungsbeispiel
sind als Ausgabebetriebsarten zwei Betriebsarten, nämlich
die Betriebsart "Skizze" und die normale Betriebsart
vorgesehen. Dies stellt jedoch keine Einschränkung der
Erfindung dar. Beispielsweise können dreierlei
Ausgabebetriebsarten vorgesehen werden wie die gewöhnliche
Betriebsart, eine erste Skizzenbetriebsart und eine zweite
Skizzenbetriebsart. Bei der ersten Skizzenbetriebsart werden
als Funktionen für die Bewegungsbahnen aller Paßpunkte
quadratische Funktionen oder Funktionen niedrigeren Grades
angesetzt. Bei der zweiten Skizzenbetriebsart werden als
Funktionen für die Bewegungsbahnen aller Paßpunkte lineare
Funktionen bzw. Funktionen niedrigerer Ordnung angesetzt.
Diese Gestaltungen können gleichfalls leicht gemäß der
Beschreibung dieses Ausführungsbeispiels realisiert werden.
Da der Grad einer Funktion für eine Bewegungsbahn in
Abhängigkeit von dem Paßpunkt unterschiedlich ist, ist auch
die Anzahl der Elemente der Vektordaten verschieden. Der
Grad der Vektordaten in X- und Y-Richtung wird jeweils durch
die Kennungen 3 und 4 bestimmt. Infolgedessen kann ein Teil,
für den keine Vektordaten vorliegen, in einem geringeren
Speicherraum gespeichert werden, um in Abhängigkeit von dem
Grad der Vektordaten Speicherkapazität einzusparen.
Somit ist gemäß dem vorstehend beschriebenen zweiten
Ausführungsbeispiel für einen jeden Punkt auf einer
Zeichenkonturlinie ein Vektor vorgesehen, um das Gewicht
verändern zu können. Als Ergebnis werden folgende
Auswirkungen erzielt:
- 1. Das Gewicht kann mit einer höheren Güte geändert werden.
- 2. Ein Abschnitt, der durch eine gerade Linie dargestellt werden kann, wird durch eine Gerade dargestellt, wodurch es möglich wird, die Daten ohne allzu große Erhöhung der Datenmenge zu speichern.
- 3. Es kann gewählt werden, ob ein Schriftzeichen durch Kurven hoher Qualität oder durch gerade Linien mit hoher Geschwindigkeit entwickelt wird.
- 4. Im Falle einer Vielzahl Von Datenelementen ist die Datenverwaltung einfacher.
Als drittes Ausführungsbeispiel der Erfindung wird eine
Konturformungseinrichtung beschrieben, in welcher ein
Paßpunkt-Bewegungsvektor aus einem einzigen Paßpunkt
ermittelt wird und dieser Bewegungsvektor zum Ermitteln der
Koordinaten eines Paßpunktes für ein jeweiliges Gewicht
herangezogen wird. Die Gestaltung der
Konturformungseinrichtung gemäß dem dritten
Ausführungsbeispiel ist zu derjenigen bei dem ersten
Ausführungsbeispiel gleichartig und muß nicht erneut
beschrieben werden.
Die Fig. 14, 15 und 16 sind Ablaufdiagramme, die einen
Prozeß zum Ermitteln eines Bewegungsvektors für einen
jeweiligen Paßpunkt veranschaulichen. Da ein Paßpunkt-
Bewegungsvektor aus einem Zeichen mit nur einem Gewicht
ermittelt werden kann, ist im Vergleich zu dem Fall, daß
gemäß Fig. 9 ein Vektor aus Zeichen mit zwei oder mehr
Gewichten ermittelt wird, die Menge an Konturdaten
verringert und die Datenverwaltung vereinfacht.
Bei dem Prozeß gemäß dem in Fig. 14 gezeigten Ablaufdiagramm
werden für eine mit einer Änderung des Gewichtes
zusammenhängende horizontale Bewegung eines jeweiligen
Paßpunktes aus der Lage des Paßpunktes für das Gewicht 1
heraus drei Arten unterschieden, nämlich keine
Horizontalbewegung, eine eingeschränkte horizontale Bewegung
und eine horizontale Bewegung ohne Einschränkung. Die Art
der Bewegung kann aus der Lagebeziehung zwischen ein Paar
bildenden KOnturlinienvektoren und einer anderen Konturlinie
oder Zeichenrahmenlinie (Hauptrahmenlinie) hergeleitet
werden. Wenn sich beispielsweise ein Paßpunkt horizontal in
einer zu einem Konturlinienvektor eines Paares
entgegengesetzten Richtung um eine Strecke bewegt, die
gleich der Differenz zwischen einer normalen
Horizontallinienbreite bei dem Gewicht 10 und einer normalen
Horizontallinienbreite bei dem Gewicht 1 ist, kann dieser
Paßpunkt eine andere Konturlinie berühren oder überqueren
oder nicht oder aus dem Hauptrahmen des Zeichens
heraustreten oder nicht. Daher wird die Möglichkeit der
Bewegung als Kennung angesetzt. Eine gleichartige Bestimmung
wird hinsichtlich der vertikalen Richtung Vorgenommen. Es
ist anzumerken, daß die ein Paar bildenden
Konturlinienvektoren nachfolgend unter Bezugnahme auf die
Fig. 22 und 23 beschrieben werden.
Bei diesem Ausführungsbeispiel werden bei einem Schritt
S1401 die normale Horizontallinienbreite und die normale
Vertikallinienbreite bei dem Gewicht 1 und dem Gewicht 10
eingegeben. Es ist vorausgesetzt, daß diese normalen
Linienbreiten in Abhängigkeit von dem jeweiligen Schriftbild
von vorneherein in dem Festspeicher 14 gespeichert sind. Als
nächstes werden bei einem Schritt S1402 als Nmax die gesamte
Anzahl von Paßpunkten und als den Zählwert der Paßpunkte
anzeigende Zählervariable n "1" eingesetzt. Die Gesamtanzahl
Nmax der Paßpunkte und die Zählervariable n werden wie bei
dem ersten Ausführungsbeispiel in den Schreib/Lesespeicher
15 eingespeichert. Bei einem Schritt S1403 wird ermittelt,
ob n größer als Nmax ist. Das Programm schreitet zu einem
Schritt S1501 (Fig. 15) weiter, wenn n größer ist, und zu
einem Schritt S1404, wenn n gleich oder kleiner als Nmax
ist. Bei dem Schritt S1404 wird der n-te Paßpunkt abgerufen.
Bei einem Schritt S1405 wird ermittelt, ob sich der erfaßte
n-te Paßpunkt in der horizontalen Richtung bewegen kann. Das
Programm schreitet zu einem Schritt S1408 weiter, wenn die
Bewegung nicht möglich ist, oder zu einem Schritt S1406,
wenn die Bewegung möglich ist. Bei dem Schritt S1406 wird
ermittelt, ob die Bewegung in der horizontalen Richtung
eingeschränkt ist oder nicht. Das Programm schreitet zu
einem Schritt S1409 weiter, wenn die Bewegung eingeschränkt
ist, bzw. zu einem Schritt S1407, wenn die Bewegung nicht
eingeschränkt ist. Da bei dem Schritt S1407 keine
Einschränkung der horizontalen Bewegung des Paßpunktes
besteht, wird eine Kennung gesetzt, die anzeigt, daß die
horizontale Bewegung des Paßpunktes groß ist. Wenn bei dem
Schritt S1405 ermittelt wird, daß die horizontale Bewegung
nicht möglich ist, wird bei dem Schritt S1408 eine Kennung
gesetzt, die anzeigt, daß die horizontale Bewegung unmöglich
ist. Wenn bei dem Schritt S1406 ermittelt wird, daß die
horizontale Bewegung eingeschränkt ist, wird bei dem Schritt
S1409 eine Kennung gesetzt, die anzeigt, daß die Strecke der
horizontalen Bewegung des Paßpunktes klein ist.
Als nächstes wird von einem Schritt S1410 an das Ausmaß der
Bewegung in der vertikalen Richtung geprüft. Bei dem Schritt
S1410 wird ermittelt, ob sich der erfaßte n-te Paßpunkt in
der vertikalen Richtung bewegen kann. Das Programm schreitet
zu einem Schritt S1413 weiter, wenn die Bewegung nicht
möglich ist, bzw. zu einem Schritt S1411, wenn die Bewegung
möglich ist. Bei dem Schritt S1411 wird ermittelt, ob die
Bewegung in der vertikalen Richtung eingeschränkt ist oder
nicht. Das Programm schreitet zu einem Schritt S1414 weiter,
wenn die Bewegung eingeschränkt ist, oder zu einem Schritt
S1412, wenn die Bewegung nicht eingeschränkt ist. Da bei dem
Schritt S1412 keine Einschränkung der vertikalen Bewegung
des Paßpunktes vorliegt, wird eine Kennung gesetzt, die
anzeigt, daß das Ausmaß der vertikalen Bewegung des
Paßpunktes groß ist. Falls bei dem Schritt S1410 ermittelt
wird, daß die vertikale Bewegung nicht möglich ist, wird bei
dem Schritt S1413 eine Kennung gesetzt, die anzeigt, daß die
vertikale Bewegung nicht möglich ist. Falls bei dem Schritt
S1411 ermittelt wird, daß die vertikale Bewegung
eingeschränkt ist, wird bei dem Schritt S1414 eine Kennung
gesetzt, die anzeigt, daß das Ausmaß der vertikalen Bewegung
des Paßpunktes gering ist.
Bei einem Schritt S1415 wird die Paßpunkte-Zählervariable n
aufgestuft, wonach das Programm zu dem Schritt S1403
zurückkehrt. Daher schreitet dann, wenn für alle Paßpunkte
die Kennungen zur Anzeige der Bewegungsgröße gesetzt sind,
das Programm von dem Schritt S1403 zu dem Schritt S1501
weiter.
Das Ausmaß der Bewegung eines jeweiligen Paßpunktes wird aus
den auf diese Weise erhaltenen Kennungen ermittelt, die die
Klassifizierung der Bewegungsgrößen aller Paßpunkte
darstellen. Die Fig. 15 veranschaulicht den Prozeß zum
Ermitteln des Bewegungsausmaßes. Bei der Berechnung der
Bewegungsgröße wird ein Vektor in der Weise berechnet, daß
die in Übereinstimmung mit dem ein Paar von Paßpunkten
bildenden Paßpunkt erforderliche Dicke erzielt wird. Zu
diesem Zweck wird zusammen mit einer Kennung für einen
Punkt, dessen Bewegungsausmaß berechnet wird, und einer
Kennung für den Paßpunkt des Paares eine Subroutine für das
Berechnen des Bewegungsausmaßes abgerufen.
Es wird nun das Ablaufdiagramm in Fig. 15 beschrieben. Bei
dem Schritt S1501 wird als Nmax die Gesamtanzahl der
Paßpunkte eingesetzt und die Paßpunkt-Zählervariable n wird
auf "1" eingestellt. Bei einem Schritt S1502 wird ermittelt,
ob n größer als Nmax ist. Wenn n größer ist, endet der
Prozeß. Wenn n gleich oder kleiner Nmax ist, schreitet das
Programm zu einem Schritt S1503 weiter.
Bei diesem Schritt wird der n-te Paßpunkt abgerufen, wonach
bei einem Schritt S1504 der mit dem n-ten Paßpunkt ein Paar
bildende Paßpunkt abgerufen wird. Der das Paar bildende
Paßpunkt ist ein Paßpunkt, welcher bezüglich des n-ten
Paßpunktes die Breite in vertikaler oder horizontaler
Richtung bestimmt. Für einen Paßpunkt werden zwei Paßpunkte
abgerufen, nämlich ein Paßpunkt, der ein Paar in der
horizontalen Richtung bildet, und ein Paßpunkt, der ein Paar
in der vertikalen Richtung bildet, und es werden die die
jeweiligen Bewegungsgrößen darstellenden Kennungen
abgefragt. Bei einem Schritt S1505 werden die
Bewegungsgrößen eines Paßpunktes in der horizontalen und der
vertikalen Richtung für den Fall einer Änderung von dem
Gewicht 1 auf das Gewicht 10 ermittelt. Daher werden diese
Größen bei einem Schritt S1506 als X-Vektorkomponente und Y-
Vektorkomponente für den jeweiligen Paßpunkt angesetzt. Das
Verfahren zum Ermitteln der Lage eines Paßpunktes für ein
jeweiliges Gewicht unter Heranziehen der X-Vektorkomponente
und der Y-Vektorkomponente ist das gleiche wie bei dem
ersten Ausführungsbeispiel und muß daher nicht erneut
beschrieben werden.
Die Fig. 16 zeigt eine Subroutine für das Berechnen der
Bewegungsgröße. Die Fig. 16 ist ein Ablaufdiagramm, das die
Einzelheiten der Verarbeitung bei dem Schritt S1505 nach
Fig. 15 darstellt. Es ist anzumerken, daß die Bewegungsgröße
im voraus durch die Kennungen für die große oder geringe
horizontale Bewegung oder die große oder geringe vertikale
Bewegung bestimmt ist. Das Ausmaß der Bewegung wird aus den
Kennungen für das Paar der Paßpunkte und aus den normalen
Liniendicken berechnet. Beispielsweise wird im Falle eines
großen Bewegungsausmaßes bei der Bewegungsgröße die
Differenz in bezug auf die normale Horizontallinienbreite
angewandt. Im Falle eines geringen Bewegungsausmaßes wird
die Hälfte dieser Größe als Bewegungsgröße angesetzt.
Zuerst wird bei einem Schritt S1601 nach Fig. 16 das Ausmaß
der horizontalen Bewegung des Paßpunktes durch eine Kennung
bestimmt, welche die Bewegungsgröße darstellt und gemäß dem
Ablaufdiagramm in Fig. 14 gesetzt ist. Ferner wird das
Ausmaß der horizontalen Bewegung eines bei dem Schritt S1503
abgefragten Paßpunktes, der das Paar in der horizontalen
Richtung bildet, entsprechend einer die Bewegungsgröße
darstellenden Kennung bestimmt. Bei einem Schritt S1602 wird
entsprechend einer die Bewegungsgröße darstellenden, gemäß
dem Ablaufdiagramm in Fig. 14 gesetzten Kennung das Ausmaß
der vertikalen Bewegung des Paßpunktes bestimmt. Ferner wird
entsprechend einer die Bewegungsgröße darstellende Kennung
das Ausmaß der vertikalen Bewegung des bei dem Schritt S1503
abgefragten Paßpunktes bestimmt, der das Paar in der
horizontalen Richtung bildet.
Daraufhin folgt ein Schritt S1603, bei dem das Ausmaß der
horizontalen Bewegung des betrachteten Paßpunktes, das
Ausmaß der horizontalen Bewegung des mit diesem Paßpunkt das
Paar in der horizontalen Richtung bildenden Paßpunktes und
die normale Horizontallinienbreite bei dem Gewicht 1 addiert
und als W eingesetzt. Gleichermaßen werden bei einem Schritt
S1604 das Ausmaß der vertikalen Bewegung des betrachteten
Paßpunktes, das Ausmaß der vertikalen Bewegung des mit
diesem Paßpunkt dar Paar in der vertikalen Richtung
bildenden Paßpunktes und die normale Vertikallinienbreite
bei dem Gewicht 1 addiert und als H eingesetzt.
Der bei dem Schritt S1603 erhaltene Wert W wird bei einem
Schritt S1605 mit der normalen Horizontallinienbreite bei
dem Gewicht 10 verglichen. Wenn W größer ist, bedeutet dies,
daß die Horizontallinienbreite zu groß ist. Daher wird bei
einem Schritt S1606 das Ausmaß der Bewegung korrigiert. Im
einzelnen wird das bei dem Schritt S1601 bestimmte Ausmaß
der horizontalen Bewegung des Paßpunktes mit
[(normale Horizontallinienbreite für das Gewicht 10) -
(normale Horizontallinienbreite für das Gewicht 1)]/-
[W - (normale Horizontallinienbreite für das Gewicht 1)]
multipliziert, wodurch die Horizontallinienbreite für das
Gewicht 10 derart korrigiert wird, daß sie nicht die normale
Horizontallinienbreite übersteigt. Wenn bei dem Schritt
S1605 ermittelt wird, daß W gleich der oder kleiner als die
normale Horizontallinienbreite für das Gewicht 10 ist, wird
das bei dem Schritt S1601 bestimmte Ausmaß der horizontalen
Bewegung unverändert eingesetzt.
Hinsichtlich der vertikalen Richtung werden bei Schritten
S1607 und S1608 Prozesse ausgeführt, die den vorangehend
beschriebenen Prozessen bei den Schritten S1605 und S1606
gleichartig sind. Auf diese Weise wird das Ausmaß der
Bewegung (oder die Lage) eines jeweiligen Paßpunktes für das
Gewicht 10 berechnet. Daher kann durch Ansetzen dieser
Bewegungsgröße nach einem Verfahren wie bei dem ersten
Ausführungsbeispiel ein Paßpunkt-Bewegungsvektor ermittelt
werden.
Für das Herausgreifen eines ein Paar von Paßpunkten
bildenden Paßpunktes bei dem Schritt S1504 nach Fig. 15 gibt
es verschiedenerlei Verfahren. Ein Beispiel für ein solches
Verfahren wird unter Bezugnahme auf die Fig. 22 und 23
beschrieben. Die Fig. 22 ist ein Ablaufdiagramm, das einen
Prozeß zum Herausgreifen eines Paßpunktes ist, welcher mit
einem betrachteten Paßpunkt ein Paar bildet, während die
Fig. 23 eine Darstellung für das Beschreiben eines Vorgangs
für das Herausgreifen eines Paßpunktes ist, welcher mit
einem betrachteten Paßpunkt ein Paar bildet.
Zuerst wird bei einem Schritt S2201 ein Konturlinienvektor
herausgegriffen, dessen Anfangspunkt der betrachtete
Paßpunkt ist. Auf ähnliche Weise wird bei einem Schritt
S2202 ein Konturlinienvektor herausgegriffen, dessen
Endpunkt der betrachtete Paßpunkt ist. Dementsprechend wird
der Konturlinienvektor derart gelegt, daß die Innenseite der
Konturlinie immer an der linken Seite in bezug auf die
Richtung des Vektors liegt. Bei den vorstehend beschriebenen
Schritten S2201 und S2202 werden beispielsweise ein
Konturlinienvektor 2300b, dessen Anfangspunkt ein Paßpunkt
2300 nach Fig. 23 ist, und ein Konturlinienvektor 2300a
herausgegriffen, dessen Endpunkt der Paßpunkt 2300 ist.
Als nächstes wird bei einem Schritt S2203 eine Abtastung
horizontal an der linken Seite der Richtung der
herausgegriffenen Konturlinienvektors vorgenommen und es
wird ein ein Paar bildender Konturlinienvektor
herausgegriffen. Dies wird unter Bezugnahme auf die Fig. 23
beschrieben. Wenn von dem Konturlinienvektor 2300b weg
beispielsweise auf einer Abtastlinie 2300c ein
Konturlinienvektor erfaßt wird, wird als Vektor des Paares
ein Konturlinienvektor 2305b herausgegriffen. Wenn ferner
entlang einer Abtastlinie 2300d ein Konturlinienvektor
erfaßt wird, wird ein Konturlinienvektor 2302b
herausgegriffen.
Bei einem Schritt S2204 wird ermittelt, ob mehrere Vektoren
für das Paar herausgegriffen sind oder nicht. Das Programm
schreitet zu einem Schritt S2206 weiter, wenn nur ein Vektor
erfaßt wird, oder zu einem Schritt S2205, wenn mehrere
Vektoren erfaßt werden. Bei dem Schritt S2205 wird für den
den betrachteten Paßpunkt enthaltenden Konturlinienvektor
als Paar derjenige Vektor herausgegriffen, der in der
horizontalen Richtung am nächsten liegt. D. h., gemäß Fig. 23
liegt der Konturlinienvektor 2302b näher als der
Konturlinienvektor 2305b, so daß daher der erstere als
Vektor des Paares herangezogen wird.
Von den beiden Endpunkten des auf diese Weise
herausgegriffenen Konturlinienvektors wird als das Paar
bildender Paßpunkt derjenige verwendet, der dem betrachteten
Paßpunkt am nächsten kommt. D. h., gemäß Fig. 23 ist von den
beiden Endpunkten des Konturlinienvektors 2302b der zu dem
Paßpunkt 2300 in kürzestem Abstand liegende Endpunkt ein
Paßpunkt 2301. Daher wird dieser Punkt als Paßpunkt
angesetzt, der das Paar in der horizontalen Richtung bildet.
Die Verarbeitung bei Schritten S2207 bis S2210 ergibt eine
Abtastung in der vertikalen Richtung zum Ermitteln
desjenigen Paßpunktes, der ein Paar in der vertikalen
Richtung bildet. Diese Verarbeitung ist zu derjenigen für
die horizontale Richtung gemäß den vorangehenden
Ausführungen gleichartig und muß daher nicht nochmals
beschrieben werden. Der Paßpunkt 2301 nach Fig. 23 wird als
derjenige Paßpunkt ermittelt, der mit dem Paßpunkt 2300 das
Paar in der vertikalen Richtung bildet. Wenn diese
Verarbeitung beispielsweise in bezug auf einen Paßpunkt 2302
ausgeführt wird, ist ersichtlich, daß als der ein Paar in
der horizontalen Richtung bildende Paßpunkt ein Paßpunkt
2303 herausgegriffen wird und als der ein Paar in der
vertikalen Richtung bildende Paßpunkt ein Paßpunkt 2304
erfaßt wird.
Bei dem vorstehend beschriebenen dritten Ausführungsbeispiel
ist es möglich, automatisch aus einem Gewicht einen Vektor
für das Bewegen eines Paßpunktes entsprechend dem Gewicht in
bezug auf jeden Punkt auf einer Zeichenkonturlinie zu
berechnen. Dies ergibt die folgenden Auswirkungen:
- 1. Da ein Vektor für das Erzeugen eines anderen Gewichtes aus einem Gewicht berechnet werden kann, ist der Prozeß für das Entwerfen der Zeichenbildmuster verkürzt.
- 2. Im Vergleich zu dem Fall, daß ein Vektor aus mehreren Elementen der Konturinformationen berechnet wird, ist die Datenverwaltung vereinfacht.
Bei dem vierten Ausführungsbeispiel wird ein Paßpunkt-
Bewegungsvektor auf gleiche Weise wie bei dem dritten
Ausführungsbeispiel aus einem Paßpunkt für ein Gewicht
ermittelt. Bei der nachstehend beschriebenen
Konturformungseinrichtung ist jedoch das Bewegungsausmaß,
das durch eine Kombination einer Kennung für die
Bewegungsgröße eines bestimmten Paßpunktes mit einer Kennung
für eine Bewegungsgröße eines mit dem bestimmten Paßpunkt
ein Paar bildenden Paßpunktes bestimmt ist, von vorneherein
in Form einer Tabelle vorgesehen. Die Gestaltung der
Bilderzeugungseinrichtung gemäß dem vierten
Ausführungsbeispiel ist derjenigen bei dem ersten
Ausführungsbeispiel gleichartig und muß nicht nochmals
beschrieben werden.
Die Fig. 17 bis 19 sind Ablaufdiagramme, die ein Verfahren
zum automatischen Ermitteln von Daten, die bei der
Einrichtung gemäß dem ersten Ausführungsbeispiel angewandt
werden, aus der Lage eines Paßpunktes veranschaulichen.
Durch das Bilden von Bewegungsgrößen in Form einer Tabelle
kann im Vergleich zu dem Verfahren bei dem dritten
Ausführungsbeispiel das Ausmaß an Berechnung verringert
werden und es ist auch einfacher, durch eine feinere
Unterteilung der Tabelle die Qualität zu verbessern.
Gemäß dem Ablaufdiagramm in Fig. 17 ist eine horizontale
Bewegung von der Stelle eines Punktes auf einer
Zeichenkonturlinie weg in dreierlei Arten unterteilt,
nämlich zu einer nicht möglichen horizontalen Bewegung, zu
einer horizontalen Bewegung mit Einschränkungen und zu einer
uneingeschränkten horizontalen Bewegung. Die Art der
Bewegung kann aus der Lagebeziehung zwischen Paaren von
Konturlinienvektoren und einer anderen Konturlinie oder der
Hauptrahmenlinie hergeleitet werden. D. h., wenn sich ein
Paßpunkt horizontal in einer Gegenrichtung zu einem
Konturlinienvektor eines Paares um eine Strecke bewegt, die
gleich der Differenz zwischen einer normalen
Horizontallinienbreite bei dem Gewicht 10 und einer normalen
Horizontallinienbreite bei dem Gewicht 1 ist, kann dieser
Paßpunkt eine andere Konturlinie berühren oder überqueren
oder aus dem Hauptrahmen des Schriftzeichens heraustreten
oder nicht. Daher wird die Möglichkeit der Bewegung als
Kennung angesetzt. Eine gleichartige Bestimmung erfolgt in
bezug auf die vertikale Richtung.
Zur feineren Unterteilung der Möglichkeit der Bewegung
erfolgt die Klassifizierung in Abhängigkeit davon, ob die
Bewegung nicht möglich ist (der Paßpunkt eine andere
Konturlinie überschneidet oder aus dem Hauptrahmen
heraustritt), wenn sich der Paßpunkt um einen bestimmten
Prozentsatz der Differenz zwischen den normalen
Horizontallinienbreiten für die Gewichte 1 und 10 bewegt.
Schritte S1701 bis S1715 in dem Ablaufdiagramm in Fig. 17
sind den Schritten S1401 bis S1415 in dem Ablaufdiagramm in
Fig. 14 gleichartig und müssen nicht nochmals beschrieben
werden. Aus den gemäß dem Ablaufdiagramm in Fig. 17
ermittelten Kennungen für das Bewegungsausmaß aller
Paßpunkte wird die tatsächliche Bewegungsgröße ermittelt.
Die Fig. 18 veranschaulicht ein Verfahren zum Ermitteln
dieser Bewegungsgröße. Bei der Berechnung der Bewegungsgröße
wird das Ausmaß der Bewegung aus einer Tabelle aufgrund
einer Kombination aus der Kennung für das Bewegungsausmaß
eines Paßpunktes und der Kennung für das Ausmaß der Bewegung
eines ein Paar bildenden Paßpunktes abgerufen.
Gemäß Fig. 18 sind Schritte von S1801 bis S1807 mit Ausnahme
eines Schrittes S1805 die gleichen wie die Schritte S1501
bis S1507 nach Fig. 15 mit Ausnahme des Schrittes S1505. Der
Schritt S1805 ist ein Prozeß für das Abrufen des absoluten
Wertes der Bewegungsgröße aus einer Tabelle für die
horizontale Bewegung und einer Tabelle für die vertikale
Bewegung. Die Einzelheiten sind in Fig. 19 dargestellt.
Die Fig. 19 zeigt eine Subroutine für das Berechnen der
Bewegungsgröße. Die Tabelle für die horizontale Bewegung und
die Tabelle für die vertikale Bewegung können hierbei in
Abhängigkeit von der Schriftart und dem Schriftzeichen
vertauscht werden. Es sind feinere Einstellungen von
Vektoren möglich.
Gemäß Fig. 19 werden bei einem Schritt S1901 eine Kennung,
die das Ausmaß der Bewegung eines betrachteten Paßpunktes
darstellt, und eine Kennung aufgenommen, die das Ausmaß der
Bewegung eines Paßpunktes darstellt, der mit dem
betrachteten Paßpunkt ein Paar bildet. Als nächstes wird bei
einem Schritt S1902 die Kennung, die das Ausmaß der Bewegung
eines jeden Paßpunktes darstellt, dazu herangezogen, eine
Tabelle für die horizontale Bewegung in der in Fig. 20
gezeigten Ausführung abzusuchen und den Absolutwert des
Ausmaßes der Bewegung in der horizontalen Richtung
abzurufen. Es wird die Richtung einer Bewegung in einer von
dem das Paar bildenden Paßpunkt wegführenden Richtung
bestimmt. Darauf folgt ein Schritt S1903, bei dem wie bei
dem Schritt S1901 eine Kennung, die das Ausmaß der Bewegung
eines betrachteten Paßpunktes darstellt, und eine Kennung
abgefragt, die das Ausmaß der Bewegung eines Paßpunktes
darstellt, der mit dem betrachteten Paßpunkt ein Paar in der
vertikalen Richtung bildet. Als nächstes wird bei einem
Schritt S1904 die das Ausmaß der Bewegung eines jeweiligen
Paßpunktes darstellende Kennung dazu herangezogen, eine
Tabelle der in Fig. 21 gezeigten Art für die vertikale
Bewegung abzusuchen, wobei der Absolutwert der Größe der
Bewegung in der vertikalen Richtung abgerufen wird. Die
Richtung der Bewegung in einer von dem das Paar bildenden
Paßpunkt weg führenden Richtung wird bestimmt.
Auf diese Weise wird das Ausmaß der Bewegung eines
Paßpunktes für das Gewicht 10 ermittelt. Dieses wird daher
zum Berechnen eines Paßpunkt-Bewegungsvektors herangezogen,
so daß das Ausmaß der Bewegung des Paßpunktes entsprechend
einem jeweiligen Gewicht berechnet werden kann.
Die Fig. 20 und 21 zeigen Tabellen für das Abfragen der
Bewegungsgrößen nach Fig. 19. Die Fig. 20 ist eine Tabelle
für das Ausmaß der horizontalen Bewegung, während die Fig.
21 eine Tabelle für das Ausmaß der vertikalen Bewegung ist.
Die Tabellen werden gemäß der Kombination aus der Kennung
für das Bewegungsausmaß eines Paßpunktes der Kennung für das
Bewegungsausmaß des das Paar bildenden Paßpunktes abgefragt
und es wird die entsprechende Bewegungsgröße abgerufen,
welche dann zur Vektorerzeugung herangezogen wird.
Bei dem vorstehend beschriebenen vierten Ausführungsbeispiel
wird unter Verwendung einer Tabelle für einen jeden Punkt
auf einer Zeichenkonturlinie für ein einziges Gewicht ein
Paßpunkt-Bewegungsvektor für ein geändertes anderes Gewicht
bestimmt. Dies ergibt die folgenden Auswirkungen:
- 1. Da aus einem Gewicht der Vektor für ein anderes Gewicht berechnet werden kann, ist der Prozeß für das Gestalten von Schriftzeichenbildern verkürzt.
- 2. Im Vergleich zu dem Fall, daß ein Vektor aus mehreren Elementen von Konturinformationen berechnet wird, ist die Datenverwaltung einfacher.
- 3. Durch das Aufstellen einer Vielzahl von Tabellen ist es möglich, einen Paßpunkt-Bewegungsvektor zum Entwickeln der Schriftzeichen einer Vielzahl von Schriftarten in höherer Qualität zu erzeugen.
- 4. Durch feinere Festlegung der Bewertungsbedingungen ist es möglich, einen Vektor zu erzeugen, mit dem ein Schriftzeichen zu einer höheren Qualität entwickelt werden kann.
Bei dem vorstehend beschriebenen dritten und vierten
Ausführungsbeispiel können die Bewegungsgrößen der Paßpunkte
für alle Schriftzeichen im voraus berechnet werden, wenn
genügend Speicherkapazität zur Verfügung steht. Durch das
Speichern dieser Bewegungsgrößen in dem in Fig. 6
dargestellten Format kann die Geschwindigkeit der
Verarbeitung erhöht werden, was nachfolgend bei dem sechsten
Ausführungsbeispiel beschrieben wird.
Bei dem dritten und vierten Ausführungsbeispiel werden die
Bewegungsbahnen bis zu dem Gewicht 10 aus dem jeweiligen
Paßpunkt der Konturdaten für das Gewicht 1 ermittelt. Die
Erfindung ist jedoch nicht hierauf beschränkt.
Beispielsweise kann eine Gestaltung angewandt werden, bei
der die Bewegungsbahn für das Gewicht 1 aus jedem Paßpunkt
bei den Konturdaten für das Gewicht 10 mit großer
Linienbreite ermittelt wird. Darüberhinaus kann durch
Anwenden des dritten und vierten Ausführungsbeispiels die
Bewegungsbahn eines Paßpunktes aus irgendwelchen Konturdaten
für die Gewichte 2 bis 9 ermittelt werden. Falls
beispielsweise die Konturlinie für das Gewicht 3
herangezogen wird, kann durch einen Prozeß, der dem bei dem
vorangehenden Ausführungsbeispiel gleichartig ist, aus der
normalen Horizontallinienbreite und der normalen
Vertikallinienbreite für das Gewicht 3 sowie der normalen
Horizontallinienbreite und der normalen Vertikallinienbreite
für das Gewicht 10 ein Bewegungsvektor ermittelt werden.
Ferner sind zwar wie bei dem dritten und dem vierten
Ausführungsbeispiel angesetzten normalen
Horizontallinienbreiten und normalen Vertikallinienbreiten
für die Gewichte 1 und 10 für jegliche Schriftart
vorgegeben, jedoch kann eine Gestaltung angewandt werden,
bei der diese Breiten für jedes Bildmuster angegeben sind.
Ferner ist in der Tabelle für die horizontale Bewegung (Fig.
20) und in der Tabelle für die vertikale Bewegung (Fig. 21),
die bei dem vorangehend beschriebenen vierten
Ausführungsbeispiel verwendet werden, das Ausmaß der
Bewegung durch die Kombination von Kennungen für drei Arten
von Bewegung bestimmt. Die Erfindung ist jedoch nicht
hierauf eingeschränkt. Vielmehr kann eine Gestaltung
angewandt werden, bei der die Unterteilung des Ausmaßes der
Bewegung feiner ist und bei der eine Kombination aus
Kennungen für vier oder mehr Arten von Bewegungsgrößen
herangezogen wird. Im Gegensatz dazu kann auch eine
Anordnung gewählt werden, bei der die Unterteilung der
Bewegungsgröße gröber ist und eine Kombination von Kennungen
für zweierlei Bewegungsgrößen herangezogen wird. Ferner kann
durch das Aufstellen von vielerlei Arten von Tabellen für
die horizontale und die vertikale Bewegung mit
unterschiedlicher Feinheit der Unterteilung der
Bewegungsgrößen die Feinheit der Unterteilung entsprechend
der Geschwindigkeit der Erzeugung und der geforderten
Qualität bei dem Erzeugen der Konturdaten abgeändert werden.
In diesem Fall wird zwar die Qualität bei der
Konturenformung verbessert, wenn das Ausmaß der Bewegung
feiner unterteilt ist, aber dabei die Verarbeitungszeit
verlängert.
Bei jedem der vorangehend beschriebenen Ausführungsbeispiele
ist ein Paßpunkt-Bewegungsvektor durch eine einzige Funktion
dargestellt und die Lage eines jeden Paßpunktes für ein
jeweiliges Gewicht ist festgelegt. Bei diesem fünften
Ausführungsbeispiel wird ein Fall beschrieben, bei dem sich
die Funktion des Bewegungsvektors eines Paßpunktes mit einem
bestimmten Gewicht als Grenzwert ändert.
Die Fig. 5 zeigt Beispiele, bei denen sich eine einen
Paßpunkt-Bewegungsvektor darstellende Funktion ändert. Bei
einem der Beispiele ändert sich an einem betrachteten Punkt
die Funktion der X-Koordinate mit dem Gewicht 4 als
Grenzwert. Im einzelnen ändert sich für das Gewicht 4 oder
darüber die X-Koordinate nicht mehr. Die Y-Koordinate ändert
sich entsprechend einer Funktion zweiten oder höheren
Grades.
Die Fig. 24 zeigt eine Tabelle von Konturdaten bei dem
fünften Ausführungsbeispiel der Erfindung. In Fig. 24 sind
die Kennungen 1 bis 4, die Koordinaten X und Y und die
jeweiligen X- und Y-Vektorkomponenten die gleichen wie
diejenigen gemäß Fig. 11 bei dem zweiten
Ausführungsbeispiel, so daß diese Daten nicht wieder
beschrieben werden müssen. Eine Kennung 5 stellt einen
Gewichtswert dar, an welchem sich die Funktion für einen
Bewegungsvektor eines Paßpunktes in X-Richtung ändert. Eine
Kennung 6 stellt einen Gewichtswert dar, bei dem sich die
Funktion eines Bewegungsvektors eines Paßpunktes in Y-
Richtung ändert. Beispielsweise ist als Kennung 5 an dem
betrachteten Punkt "4" gespeichert. Falls sich die Funktion
des Bewegungsvektors nicht ändert, ist "0" gespeichert.
Falls die Kennung 5 oder 6 von "0" verschieden ist, ändert
sich der durch das jeweilige Element der Koordinatendaten in
der nächsten Spalte angezeigte Inhalt. Falls beispielsweise
"4" als Kennung 5 gespeichert ist, ist als X-Koordinate der
für das Gewicht 4 geltende Wert gespeichert. Die Daten, die
in dem Fall herangezogen werden, daß der Gewichtswert 4 oder
größer ist, sind als Kennung 3 und als X-Koordinate
gespeichert.
Im einzelnen sind dann, wenn sich die Funktion des
Bewegungsvektors eines Paßpunktes mit einem bestimmten
Gewichtswert als Grenzwert ändert, die Konturdaten auf einer
Vielzahl von Spalten gespeichert. Beispielsweise sind die
Vektordaten für die Gewichte 1 bis 4 in der ersten Spalte
und die Vektordaten für die Gewichte 4 bis 10 in der zweiten
Spalte gespeichert. Falls ferner sich eine Funktion bei
mehreren Gewichtswerten ändert, genügt es, die Daten
dementsprechend in einer dritten und einer Vierten Spalte zu
speichern. Bei dem Beispiel nach Fig. 24 ändert sich an
einem Paßpunkt a die Funktion des Bewegungsvektors in der X-
Richtung bei dem Gewicht 4. Bei den Gewichten über 4 ist die
Kennung in der zweiten Spalte "0", so daß sich daher die X-
Koordinate nicht mehr ändert. Andererseits ist der
Bewegungsvektor an dem Paßpunkt a in der Y-Richtung
unverändert (die Kennung 6 ist nicht "0"). Bei diesem
Beispiel kann eine derartige Anordnung gewählt werden, daß
in den Spalten von der zweiten Spalte an nur die
erforderlichen Daten gespeichert werden.
An einem Paßpunkt b ändert sich die Funktion des
Bewegungsvektors in der X-Richtung bei dem Gewicht 5,
während sich die Funktion des Bewegungsvektors in der Y-
Richtung bei den Gewichten 3 und 7 ändert. Die Funktion des
Bewegungsvektors in der Y-Richtung wird bei den Gewichten 1
bis 3 zu einer quadratischen Funktion und bei den Gewichten
4 bis 7 zu einer linearen primären Funktion bzw. Geraden.
Bei den Gewichten 8 bis 10 liegen keinerlei Änderungen vor.
Die Fig. 25 ist ein Ablaufdiagramm, das einen Prozeß zur
Transformation von X- und Y-Koordinaten eines Paßpunktes
gemäß dem fünften Ausführungsbeispiel veranschaulicht. Es
ist anzumerken, daß der Prozeß für die Ausgabe der
Schriftzeichen-Konturdaten bei dem fünften
Ausführungsbeispiel im wesentlichen der gleiche wie
derjenige gemäß dem Ablaufdiagramm in Fig. 12 bei dem
zweiten Ausführungsbeispiel ist und nur der Prozeß zur
Koordinatentransformation verschieden ist. Infolgedessen
zeigt das Ablaufdiagramm in Fig. 25 nur denjenigen
Abschnitt, der den Schritten S1208 bis S1211 nach Fig. 12
entspricht. Ferner sind die Gewichtswerte der jeweiligen X-
und Y-Vektorkomponenten im voraus gesondert in bezug auf
diejenigen gespeichert, für die sich die Funktion ändert.
Bei einem Schritt S2401 wird ermittelt, ob die Kennung 5 "0"
ist. Wenn diese Kennung "0" ist, ändert sich die Funktion
nicht und daher schreitet das Programm zu einem Schritt
S2402 weiter, bei dem die Daten abgerufen werden, die in der
ersten Spalte für den betreffenden Paßpunkt gespeichert
sind. Falls die Kennung 5 nicht "0" ist, schreitet das
Programm zu einem Schritt S2403 weiter. Bei diesem Schritt
wird von der ersten Spalte und den nachfolgenden Spalten die
durch den Wert der Kennung 5 bestimmte Spalte herangezogen
und es werden die in der betreffenden Spalte gespeicherten
Daten abgerufen. Die Transformation der X-Koordinate wird
unter Ansetzen der auf diese Weise bei dem Schritt S2402
oder S2403 abgerufenen Daten ausgeführt. Im einzelnen wird
bei einem Schritt S2404 die Kennung 3 geprüft und es wird
ermittelt, ob der X-Vektor besteht. Falls der X-Vektor
besteht, schreitet das Programm zu einem Schritt S2405
weiter, bei dem aus der Gewichtsinformation und den
Vektordaten für den Paßpunkt-Bewegungsvektor die X-
Koordinate des Paßpunktes berechnet wird. Die die Bahn der
Bewegung des Paßpunktes darstellende Gleichung wird dabei
gemäß dem als Kennung 3 gespeicherten Grad der
Krümmungsfunktion und den X-Vektorkomponenten 1, 2, ...
bestimmt.
Schritte S2406 bis S2410 stellen den Prozeß bezüglich der Y-
Koordinate dar. Diese Schritte sind den vorangehend
beschriebenen Schritten S2401 bis S2405 gleichartig und
werden daher nicht nochmals beschrieben.
Auf diese Weise ist es mit der Schriftzeichen-
Konturformungseinrichtung gemäß diesem Ausführungsbeispiel
möglich, einem Fall gerecht zu werden, bei dem sich die
Funktion des Bewegungsvektors eines Paßpunktes mit einem
Gewichtswert als Grenzwert ändert.
Das sechste Ausführungsbeispiel der Erfindung betrifft eine
Konturdatenspeichereinrichtung für das Erzeugen von
Bewegungsinformationen für einen jeweiligen Paßpunkt, die es
ermöglicht, aus Paßpunktdaten für ein Gewicht Schriftzeichen
mit mehreren Gewichten zu erzeugen und zusammen mit
Lageinformationen für einen jeden Paßpunkt der Konturdaten
die Bewegungsinformationen für den jeweiligen Paßpunkt zu
speichern.
In der Konturdatenspeichereinrichtung gemäß dem sechsten
Ausführungsbeispiel werden in einem Speicher gespeicherte
Konturdaten mit Lageinformationen und Gewichtsinformationen
für einen jeweiligen Paßpunkt ausgelesen. Beispielsweise
kann durch das Auslesen von Konturdaten für die Gewichte 1
und 10 die Bahn der Bewegung eines jeweiligen Paßpunktes von
dem Gewicht 1 zum Gewicht 10 als primäre bzw. lineare
Funktion erhalten werden, bei der gemäß Fig. 9 das Gewicht
ein Parameter ist. Die Informationen für das Erzeugen der
auf diese Weise erhaltenen linearen Funktion sind in einem
Speicher beispielsweise in dem Format nach Fig. 6 zusammen
mit den Lageinformationen für einen jeden Paßpunkt
gespeichert.
Die Fig. 26 ist eine Blockdarstellung, die schematisch die
Steuerung einer Konturformungseinrichtung gemäß dem sechsten
Ausführungsbeispiel der Erfindung zeigt. Die mit den in Fig.
1 gezeigten Blöcken identischen Blöcke sind mit den gleichen
Bezugszeichen bezeichnet und werden nicht nochmalig
beschrieben. Mit 14' ist ein Festspeicher ROM bezeichnet, in
welchem Konturdaten für ein bestimmtes Gewicht gespeichert
sind. Die Konturdaten sind allgemeine Konturdaten und
enthalten keine Bewegungsinformationen für andere Gewichte.
Mit 17 ist eine Festplatte für das Speichern von Konturdaten
bezeichnet, die einen Paßpunkt-Bewegungsvektor enthalten,
der gemäß den in dem Festspeicher 14' gespeicherten
Konturdaten erzeugt wird. D. h., die
Konturdatenspeichereinrichtung gemäß dem sechsten
Ausführungsbeispiel berechnet aus den in dem Festspeicher
14' gespeicherten allgemeinen Konturdaten
Bewegungsvektordaten für einen Paßpunkt und speichert die
Konturdaten zusammen mit diesen Bewegungsvektordaten in die
Festplatte 17 ein.
Die Fig. 27 zeigt die Datenstruktur der Konturdaten in der
Festplatte 17. Mit 1701 ist ein Kopfteil bezeichnet, welche
die Schriftartbezeichnung, die Zeichenanordnung (Art des
Codesatzes), den Codebereich, das Gewicht und die Variation
der Konturdaten enthält. Die Schriftartbezeichnung gibt die
Kategorie der Schriftart an (gotisch, Ming usw.). Die
Zeichenanordnung gibt an, ob die Anordnung einem System wie
ASCII, JIS0208 und dergleichen entspricht. Falls sie
beispielsweise dem System ASCII entspricht, ist sie durch
einen Code wie 0x42 dargestellt; falls sie dem System
JIS0208 entspricht, ist sie durch einen Code wie 0xC2
dargestellt. Der Codebereich ist ein Bereich, der durch die
Anfangsnummer (des Anfangscodes) und die Endnummer (des
Endcodes) der dem Zeichen zugeordneten Codedaten dargestellt
ist. Beispielsweise ist jedem Kanji-Schriftzeichen nach dem
ersten JIS-System als Code eine Nummer in einem Bereich von
(sedezimal) 3021 bis (sedezimal) 4F7E zugeordnet. Demgemäß
ist der Kopfcode 3021 und der Endcode 4F7E. Das Gewicht ist
ein numerischer Wert, der die Dicke des Schriftzeichens
darstellt. Die Variation stellt die Form des Schriftzeichens
dar, wie die komprimierte Form, die verbreiterte Form, die
Schrägschriftform und dergleichen.
Mit 1702 ist ein Zeigerbereich für das Speichern eines
Zeigers bezeichnet, der die Speicherstelle eines jeden
Elementes der Zeichenkonturdaten angibt. Der Zeiger gibt die
Anzahl von Bytes einer Versetzung von dem Anfang des
Kopfteils bis zu der Adresse an, an der die Konturdaten für
das jeweilige Zeichen gespeichert wurden. Die Anzahl der
Zeiger ist gleich der Anzahl der gespeicherten
Schriftzeichen. Beispielsweise ist im Falle eines Kanji-
Schriftzeichens nach dem ersten JIS-System die Anzahl von
Zeigern für (4F - 30 + 1) × (7E - 21 + 1) = 3008 ausreichend (wobei
gemäß dem JIS-System als die beiden wertniedrigen
Digitalstellen einer Codenummer die Werte von 7E bis 21
verwendet werden). Dementsprechend ist ein Zeiger zu dem
Anfangscode ein Versetzungswert für das Bestimmen einer
Adresse, an der die Konturdaten für das Kanji-Schriftzeichen
mit der Codenummer 3021 gespeichert wurden. Auf ähnliche
Weise ist ein Zeiger zum Endcode ein Versetzungswert zum
Bestimmen einer Adresse, an der die Konturdaten für das
Kanji-Schriftzeichen mit der Codenummer 4F7E gespeichert
wurden.
Mit 1703 ist ein Bereich zum Speichern der
Zeichenkonturdaten bezeichnet. Die darin gespeicherten
Zeichenkonturdaten sind aus den in dem Festspeicher 14'
gespeicherten Konturdaten erzeugte Konturdaten, die
Informationen über einen Paßpunkt-Bewegungsvektor enthalten.
Der Inhalt dieser Daten wurde bei dem ersten bis fünften
Ausführungsbeispiel beschrieben und wird hier nicht nochmals
erläutert.
Die vorstehend genannten Konturdaten werden in der
Festplatte 17 als Datei verwaltet. In der Festplatte 17
werden als Datei durch verschiedenerlei Verarbeitungen
erzeugte Daten gespeichert (Schriftstückdateien gemäß
Verarbeitung von Schriftstücken und dergleichen). Ob eine
Datei eine Konturdatendatei ist oder nicht, wird durch eine
Dateinamenerweiterung oder-Information in einem auf der
Festplatte 17 gespeicherten Verzeichnis erfaßt und erkannt.
Bei einer großen Anzahl von Schriftzeichen ist es möglich,
eine Schriftart auf mehrere Dateien aufzuteilen. Dabei
beurteilt die Zentraleinheit 12 aufgrund der in dem Kopfteil
1701 gespeicherten Informationen (der Bezeichnung der
Schriftart, der Zeichenanordnung, des Codebereichs, des
Gewichtes und der Variation), welche Datei welchem Code für
welche Schriftart entspricht.
Die Fig. 28 ist ein Ablaufdiagramm, das einen
Datenausgabeprozeß gemäß dem sechsten Ausführungsbeispiel
veranschaulicht. Bei einem Schritt S2801 werden die
Informationen für das Bestimmen der Datei mit den
Schriftzeichen-Konturdaten eingegeben (die
Schriftartbezeichnung, die Zeichenanordnung, das Gewicht und
die Variation). Als nächstes werden bei einem Schritt S2802
die bei dem Schritt S2801 eingegebenen Informationen mit dem
Kopfteil 1701 der jeweiligen Schriftzeichenkonturdaten-Datei
verglichen, wobei die zu verwendende Datei bestimmt wird und
ausgelesen wird. Danach werden bei einem Schritt S2803 gemäß
dem bei dem Schritt S2801 eingegebenen Zeichencode die dem
betreffenden Zeichencode entsprechenden Zeichenkonturdaten
ausgelesen. Es folgt ein Schritt S2804, bei dem die
Zentraleinheit 12 die Bewegungsvektordaten die Lage des
Paßpunktes des Schriftzeichens entsprechend dem bestimmten
Gewicht ansetzt. Der Prozeß der Berechnung der Lage des
Paßpunktes wurde bei dem ersten bis fünften
Ausführungsbeispiel beschrieben und wird hier nicht
nochmalig erläutert. Die auf diese Weise ermittelten
Zeichenkonturdaten werden bei einem Schritt S2805 aus der
Ausgabeeinheit 16 ausgegeben.
Als nächstes wird ein Prozeß beschrieben, in welchem aus den
nachstehend als ursprüngliche Konturdaten bezeichneten
Konturdaten ohne Informationen bezüglich eines Paßpunkt-
Bewegungsvektors, nämlich ohne Bewegungsinformationen die
Konturdaten mit den Bewegungsinformationen erzeugt werden
und die erzeugten Konturdaten in die Festplatte 17
eingespeichert werden. Die Fig. 29 ist ein Ablaufdiagramm,
das den Prozeß zum Erzeugen und Speichern der Korrekturdaten
bei dem sechsten Ausführungsbeispiel veranschaulicht.
Bei einem Schritt S2901 werden die Kopfinformationen für die
in eine zu erzeugende Schriftzeichenkonturdatei
einzuspeichernden Konturdaten bestimmt. Die
Kopfinformationen sind die in dem Kopfteil 1701 nach Fig. 27
gespeicherten Informationen. Als nächstes wird bei einem
Schritt S2902 gemäß den eingestellten Kopfinformationen eine
Datei ausgegeben, der Kopfteil 1701 erzeugt und der
Zeigerbereich 1702 gesichert. Hierbei ist die Größe des
Zeigerbereichs 1702 durch die aus dem Codebereich in den
Kopfinformationen berechnete Anzahl von Schriftzeichen
bestimmt. Bei einem Schritt S2903 wird als Variable N die
Anzahl der Schriftzeichen eingesetzt und als Zählstand C "1"
eingesetzt. Die Variable N und der Zählstand C sind in dem
Schreib/Lesespeicher 15 festgelegte Bereiche.
Bei einem Schritt S2904 wird festgestellt, ob der Zählstand
C größer als die Variable N ist. Wenn C größer als N ist,
wird dieser Prozeß beendet. Wenn andererseits C nicht größer
als N ist, schreitet das Programm zu einem Schritt S2905
weiter, bei dem aus dem Festspeicher 14' die ursprünglichen
Konturdaten und deren Gewicht ausgelesen werden. Falls die
ursprünglichen Konturdaten für mehrere Gewichte
bereitgestellt wurden, werden alle diese Daten ausgelesen.
Darauf folgt ein Schritt S2906, bei dem entsprechend der
Anzahl der Elemente der ausgelesenen Konturdaten Paßpunkt-
Bewegungsvektordaten erzeugt werden. Falls beispielsweise
bei dem Schritt S2905 ursprüngliche Konturdaten für die
Gewichte 1 und 10 ausgelesen wurden, werden für einen
Paßpunkt zwei Koordinaten erhalten. Aufgrund dieser
Koordinaten werden Vektordaten für eine primäre bzw. lineare
Funktion ermittelt, bei der das Gewicht des jeweiligen
Paßpunktes ein Parameter ist. Wenn ursprüngliche
Paßpunktdaten für drei verschiedene Punkte ausgelesen
wurden, kann auf gleichartige Weise ein Paßpunkt-
Bewegungsvektor durch eine quadratische Funktion ausgedrückt
werden, in welcher das Gewicht ein Parameter ist. Aus diesem
Paßpunkt-Bewegungsvektor wird die als Korrekturdaten der in
Fig. 11 dargestellten Art zu speichernde Bewegungsgröße
eines Paßpunktes für ein Gewicht berechnet und es werden die
Daten wie die X-Vektorkomponente 1 ermittelt. Das Verfahren
zum Berechnen eines solchen als Konturdaten zu speichernden
Paßpunkt-Bewegungsvektors ist aus der Beschreibung des
ersten und zweiten Ausführungsbeispiels ersichtlich und muß
nicht nochmals beschrieben werden. Falls ferner nur
Konturdaten für ein Gewicht vorliegen, wird gemäß der
Beschreibung des dritten und vierten Ausführungsbeispiels
ein Paßpunkt-Bewegungsvektor unter Anwendung einer
Bewegungskennung ermittelt. Auf diese Weise werden die den
Paßpunkt-Bewegungsvektor betreffenden Daten erzeugt.
Es ist anzumerken, daß im Falle der Anwendung des Verfahrens
gemäß dem dritten und vierten Ausführungsbeispiel in dem
Festspeicher 14' und der Festplatte 17 im voraus eine
normale Horizontallinienbreite, eine normale
Vertikallinienbreite, eine Tabelle der Horizontalbewegungs
größen und eine Tabelle der Vertikalbewegungsgrößen
gespeichert werden.
Bei einem Schritt S2907 werden die Daten als
Zeichenkonturdaten einschließlich der bei dem Schritt S2906
erzeugten Daten für den Paßpunkt-Bewegungsvektor eingesetzt
und die Datei wird zu dem Speicherbereich 1703 für die
Zeichenkonturdaten ausgegeben. Die Stelle, an der diese
Zeichenkonturdaten gespeichert wurden, wird in dem
Zeigerbereich 1702 als Versetzungswert gegenüber dem Kopf
der Datei gespeichert. Der Zeiger des
Speicherbestimmungsorts des Versetzungswertes ist durch den
Wert des Zählstandes C bestimmt. Bei einem Schritt S2908
wird der Zählwert C aufgestuft, wonach das Programm zu dem
Schritt S2904 zurückkehrt, wodurch der vorstehend
beschriebene Prozeß wiederholt wird.
Als Konturdatenwert kann der Grad der bei dem Schritt S2906
erzeugten Funktion gespeichert werden. Obgleich ferner die
bei dem Schritt S2905 ausgelesene Anzahl von Paßpunkten die
Anzahl ist, die als ursprünglicher Konturdatenwert
gespeichert wurde, können statt dessen von vorneherein
mittels einer Tastatur zweierlei und dreierlei Anzahlen von
auszulesenden Paßpunkten eingestellt werden. Dadurch kann
der Grad der Konturdaten auf geeignete Weise entsprechend
der Leistungsfähigkeit der Zentraleinheit und der
Speicherkapazität begrenzt werden.
Falls ferner ein ausgelesener Paßpunkt bei jedem Gewicht die
gleiche Lage hat, bewegt sich ein solcher Paßpunkt nicht
durch eine Änderung des Gewichts. Dies bedeutet, daß keine
Bewegungsinformation vorliegt. In diesem Fall kann durch
eine Kennung der Umstand ausgedrückt werden, daß keine
Bewegungsinformation vorliegt (siehe Fig. 6 und 11).
Auf diese Weise werden gemäß den vorangehenden Ausführungen
Paßpunktdaten mit Paßpunkt-Bewegungsvektordaten für mehrere
Gewichte in der Festplatte 17 gespeichert. Infolgedessen
werden mit der Kontorformungseinrichtung gemäß dem sechsten
Ausführungsbeispiel aus den zugeführten ursprünglichen
Konturdaten Paßpunkt-Bewegungsvektorinformationen erzeugt
und diese Informationen können in der. Festplatte als
Konturdaten mit Bewegungsinformationen für die
Berücksichtigung des Gewichts gespeichert werden. Daher muß
der Speicher für die ursprünglichen Konturdaten keine große
Kapazität haben.
Mit der Konturformungseinrichtung gemäß einem jeden
vorangehend beschriebenen Ausführungsbeispiel ist es
möglich, einen jeden Punkt auf einer Zeichenkontur mit einer
Vektorinformation zu versehen, um das Gewicht ändern zu
können. Dies ergibt folgende Vorteile:
- 1. Aus einer Art von Konturdaten kann in Echtzeit die einem gewünschten Gewichtswert entsprechende Dicke eines Schriftzeichens berechnet werden (erstes bis fünftes Ausführungsbeispiel).
- 2. Es ist möglich, mit einer geringen Speicherkapazität Informationen für die Gewichtsänderung zu bilden (erstes bis fünftes Ausführungsbeispiel).
- 3. Die Konturen von Schriftzeichen mit unterschiedlichen Gewichten können mit hoher Geschwindigkeit berechnet werden (erstes bis fünftes Ausführungsbeispiel).
- 4. Die Datenverwaltung für das Zuordnen eines Vektors zu Konturdaten ist einfach (erstes bis fünftes Ausführungsbeispiel).
- 5. Es kann leicht und in hoher Qualität das Erzeugen und Abrufen von den Konturdaten zugeordneten Vektordaten vorgenommen werden (zweites bis sechstes Ausführungsbeispiel).
- 6. Es ist keine besondere Gestaltung für das Zuordnen eines Vektors zu Konturdaten erforderlich und es ist leicht, mit herkömmlichen Daten allgemeine Anwendbarkeit zu erzielen. Ferner kann auf einfache Weise eine breite Anwendbarkeit von Modulen für das Erzeugen einer Bitschema-Schrift aus einer Konturenschrift erzielt werden (drittes und viertes Ausführungsbeispiel).
- 7. Da die Kompliziertheit von Berechnungen entsprechend der Qualität geändert werden kann, ist die Erfindung leicht bei vielerlei Einrichtungen anwendbar (zweites und viertes Ausführungsbeispiel).
- 8. Die Datenmenge kann entsprechend der Speicherkapazität geändert werden und es ist damit möglich, Speicherraumbedarf einzusparen (sechstes Ausführungsbeispiel).
- 9. Der Datenumfang kann entsprechend der Zentraleinheit bzw. dem Computer geändert werden, so daß eine Anpassung an ein bestimmtes System ermöglicht ist (zweites, viertes und sechstes Ausführungsbeispiel).
- 10. Die Konturdaten können unabhängig von dem Verfahren zum Erzeugen von Vektoren für eine Gewichtsänderung nach dem gleichen Entwicklungsverfahren erzeugt werden (erstes bis sechstes Ausführungsbeispiel).
Erfindungsgemäß können mit dem Verfahren und der Einrichtung
zum Formen von Konturlinien gemäß der vorangehenden
Beschreibung mit einer Art von Konturdaten Schriftzeichen
mit einer Vielzahl von Gewichten erzeugt werden.
Ferner werden erfindungsgemäß mit dem Verfahren und der
Einrichtung zum Speichern von Konturdaten
Bewegungsinformationen für jeden Paßpunkt erzeugt, die es
ermöglichen, Schriftzeichen mit einer Vielzahl von Gewichten
zu erzeugen, und die Bewegungsinformationen zusammen mit
Lageinformationen für jeden Paßpunkt der Konturdaten
gespeichert.
Weiterhin kann die Erfindung bei einem System angewandt
werden, das entweder eine Vielzahl von Einheiten oder eine
einzige Einheit umfaßt. Selbstverständlich kann die
Erfindung auch in dem Fall angewandt werden, daß Programme
zum Ausführen der Prozesse des beschriebenen
erfindungsgemäßen Systems zugeführt werden.
Eine Einrichtung zum Formen von Schriftzeichenkonturen ist
dazu ausgelegt, einen jeden Punkt auf einer Konturlinie mit
einer Vektorinformation für die Bewegung dieses Paßpunktes
zu versehen, wobei das Gewicht einen Parameter darstellt.
Damit ist es möglich, mit einem einzigen Element von
Konturdaten Schriftzeichen mit einer Vielzahl von Gewichten
zu erzeugen. Zum Beispiel werden in einem Speicher X- und Y-
Koordinaten für einen Paßpunkt, dessen Dicke das Gewicht 1
hat, und Bewegungsinformationen für das Ermitteln einer
Funktion gespeichert, die den dem Gewicht entsprechenden
Bewegungsvektor eines Paßpunktes bei der Konturenformung
darstellt. Die Bewegungsinformation ist beispielsweise ein
als X-Vektorkomponente und Y-Vektorkomponente bezeichnetes
Ausmaß der Bewegung eines jeweiligen Paßpunktes für das
Gewicht 10 in X-Richtung und Y-Richtung. Wenn ein
Zeichencode und ein Gewicht bestimmt sind, werden die X- und
Y-Koordinaten und die Bewegungsinformationen für einen jeden
Paßpunkt des gewählten Zeichens ausgelesen. Durch die X- und
Y-Koordinaten und die Bewegungsinformation wird für
jeglichen Paßpunkt eine Funktion zum Darstellen eines
Bewegungsvektors mit dem Gewicht als Parameter bestimmt.
Durch die Funktion werden die dem gewählten Gewicht
entsprechenden X- und Y-Koordinaten des Paßpunktes
ermittelt, gemäß denen die Kontur geformt wird, wodurch ein
einem gewählten Gewicht entsprechendes Konturbildmuster
erzielt wird.
Claims (23)
1. Konturerzeugungsgerät mit
einer Speichereinrichtung zum Speichern von erster Informa tion, die Positionen von Konturpunkten zur Konturerzeugung eines Musters mit einer vorbestimmten Gewichtung anzeigt, und zweiter Information, die für jeden Konturpunkt individuell vorgesehen ist, um Positionen von Konturpunkten zu bestimmen, die eine Kontur des Musters mit einer zu der vorbestimmten Gewichtung unterschiedlichen Gewichtung erzeugen,
einer Eingabeeinrichtung zum Eingeben von Gewichtungsinforma tionen, die die Gewichtung des zu erzeugenden Musters an zeigt,
einer Bestimmungseinrichtung zum Bestimmen der Position von jedem der Konturpunkte zum Erzeugen einer Kontur des Musters mit einer Gewichtung, -die durch die Gewichtungsinformation angezeigt wird, auf der Basis der ersten und zweiten Informa tion, und
einer Erzeugungseinrichtung zum Erzeugen einer Kontur des Mu sters unter Verwendung der durch die Bestimmungseinrichtung bestimmten Konturpunkte.
einer Speichereinrichtung zum Speichern von erster Informa tion, die Positionen von Konturpunkten zur Konturerzeugung eines Musters mit einer vorbestimmten Gewichtung anzeigt, und zweiter Information, die für jeden Konturpunkt individuell vorgesehen ist, um Positionen von Konturpunkten zu bestimmen, die eine Kontur des Musters mit einer zu der vorbestimmten Gewichtung unterschiedlichen Gewichtung erzeugen,
einer Eingabeeinrichtung zum Eingeben von Gewichtungsinforma tionen, die die Gewichtung des zu erzeugenden Musters an zeigt,
einer Bestimmungseinrichtung zum Bestimmen der Position von jedem der Konturpunkte zum Erzeugen einer Kontur des Musters mit einer Gewichtung, -die durch die Gewichtungsinformation angezeigt wird, auf der Basis der ersten und zweiten Informa tion, und
einer Erzeugungseinrichtung zum Erzeugen einer Kontur des Mu sters unter Verwendung der durch die Bestimmungseinrichtung bestimmten Konturpunkte.
2. Konturerzeugungsgerät nach Anspruch 1, mit einer Entschei
dungseinrichtung, zum Entscheiden, ob jeder der Konturpunkte
die zweite Information aufweist oder nicht, wobei die Bestim
mungseinrichtung die Positionen der Konturpunkte, die die
zweite Information aufweisen, ändert, um die Positionen von
Konturpunkten zum Erzeugen der Kontur des Musters mit der
durch die Gewichtungsinformation angezeigten Gewichtung zu
bestimmen.
3. Konturerzeugungsgerät nach Anspruch 1, mit einer Ausgabe
einrichtung zum Ausgeben eines auf der durch die Erzeugungs
einrichtung erzeugten Kontur basierenden Musters.
4. Konturerzeugungsgerät nach Anspruch 3, wobei die Ausgabe
einrichtung einen Drucker umfaßt.
5. Konturerzeugungsgerät nach Anspruch 1, wobei die zweite
Information Positionen von Konturpunkten relativ zu den durch
die erste Information angezeigten Positionen anzeigt, wobei
die Relativpositionen einer Änderung der Konturpunkte auf
grund des Unterschieds der Gewichtung zu der vorbestimmten
Gewichtung entsprechen.
6. Konturerzeugungsgerät nach Anspruch 1, wobei die Bestim
mungseinrichtung Positionen von Konturpunkten unter Verwen
dung der ersten Information, der zweiten Information und ei
ner vorbestimmten Funktion bestimmt.
7. Konturerzeugungsgerät nach Anspruch 6, wobei die vorbe
stimmte Funktion basierend auf der Gewichtungsinformation ge
ändert wird.
8. Konturerzeugungsgerät nach Anspruch 1, wobei die zweite
Information Positionen von Konturpunkten entsprechend einer
Vielzahl von Gewichtungsarten anzeigt.
9. Konturerzeugungsgerät nach Anspruch 1, wobei die zweite
Information das Bewegungsausmaß von jedem der Konturpunkte
anzeigt.
10. Konturerzeugungsgerät nach Anspruch 9, wobei das Bewe
gungsausmaß eines Konturpunktes dahingehend eingeschränkt
ist, ob eine den Konturpunkt beinhaltende Kontur eine andere
Kontur schneidet oder nicht.
11. Konturerzeugungsgerät nach Anspruch 9, wobei das Bewe
gungsausmaß eines Konturpunktes dahingehend beschränkt ist,
ob die Konturpunkte aus einem Rahmen des Musterkörpers her
ausfallen oder nicht.
12. Konturerzeugungsverfahren unter Verwendung eines Spei
chers, der erste Information, die Positionen von Konturpunk
ten zum Erzeugen einer Kontur eines Musters mit vorbestimmter
Gewichtung anzeigt, und zweite Information, die für jeden
Konturpunkt individuell vorgesehen ist, um Positionen von
Konturpunkten zum Erzeugen einer Kontur des Musters mit einer
Gewichtung zu bestimmen, die unterschiedlich zu der vorbe
stimmten Gewichtung ist, speichert, mit:
einem Eingabeschritt zum Eingeben von Gewichtungsinformation, die die Gewichtung des zu erzeugenden Musters anzeigt,
einem Bestimmungsschritt zum Bestimmen der Position von jedem der Konturpunkte zum Erzeugen einer Kontur des Musters mit
einer Gewichtung, die durch die Gewichtungsinformation ange zeigt ist, auf der Basis der ersten und zweiten Information, und
einem Erzeugungsschritt zum Erzeugen einer Kontur des Musters unter Verwendung der durch die Bestimmungseinrichtung be stimmten Konturpunkte.
einem Eingabeschritt zum Eingeben von Gewichtungsinformation, die die Gewichtung des zu erzeugenden Musters anzeigt,
einem Bestimmungsschritt zum Bestimmen der Position von jedem der Konturpunkte zum Erzeugen einer Kontur des Musters mit
einer Gewichtung, die durch die Gewichtungsinformation ange zeigt ist, auf der Basis der ersten und zweiten Information, und
einem Erzeugungsschritt zum Erzeugen einer Kontur des Musters unter Verwendung der durch die Bestimmungseinrichtung be stimmten Konturpunkte.
13. Verfahren nach Anspruch 12, mit einem Entscheidungs
schritt zum Entscheiden, ob jeder der Konturpunkte die zweite
Information aufweist oder nicht, wobei der Entscheidungs
schritt die Positionen von Konturpunkten, die die zweite In
formation aufweisen, ändert, um Positionen von Konturpunkten
zum Erzeugen einer Kontur des Musters mit einer durch die Ge
wichtungsinformation angezeigten Gewichtung zu bestimmen.
14. Verfahren nach Anspruch 12, mit einem Ausgabeschritt zum
Ausgeben eines Musters basierend auf den durch die in dem Er
zeugungsschritt erzeugten Konturpunkten.
15. Verfahren nach Anspruch 14, wobei der Ausgabeschritt das
Muster an einen Drucker ausgibt.
16. Verfahren nach Anspruch 12, wobei die zweite Information
Positionen von Konturpunkten relativ zu den durch die erste
Information angezeigten Positionen anzeigt, wobei die Rela
tivpositionen einer Änderung der Konturpunkte aufgrund des
Unterschieds der Gewichtung zu der vorbestimmten Gewichtung
entsprechen.
17. Verfahren nach Anspruch 12, wobei der Bestimmungsschritt
die Positionen von Konturpunkten unter Verwendung der ersten
Information, der zweiten Information einer vorbestimmten
Funktion bestimmt.
18. Verfahren nach Anspruch 17, wobei die vorbestimmte Funk
tion auf Basis der Gewichtungsinformation geändert wird.
19. Verfahren nach Anspruch 12, wobei die zweite Information
Positionen von Konturpunkten entsprechend einer Vielzahl von
Gewichtungsarten anzeigt.
20. Verfahren nach Anspruch 12, wobei die zweite Information
das Bewegungsausmaß von jedem der Konturpunkte anzeigt.
21. Verfahren nach Anspruch 20, wobei das Bewegungsausmaß ei
nes Konturpunkts dahingehend eingeschränkt ist, ob eine Kon
tur die den Konturpunkt aufweist, eine andere Kontur schnei
det oder nicht.
22. Verfahren nach Anspruch 20, wobei das Bewegungsausmaß ei
nes Konturpunkts dahingehend eingeschränkt ist, ob die Kon
turpunkte aus einem Rahmen des Musterkörpers herausfallen
oder nicht.
23. Verfahren nach Anspruch 12, wobei der Speicher ein Nur-
Lese-Speicher ist.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4320670A JP2922738B2 (ja) | 1992-11-30 | 1992-11-30 | 輪郭形成方法及び装置 |
JP05001686A JP3106023B2 (ja) | 1993-01-08 | 1993-01-08 | 輪郭形成装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4340599A1 DE4340599A1 (de) | 1994-06-01 |
DE4340599C2 true DE4340599C2 (de) | 1998-06-04 |
Family
ID=26334959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4340599A Expired - Fee Related DE4340599C2 (de) | 1992-11-30 | 1993-11-29 | Gerät und Verfahren zur Konturerzeugung |
Country Status (4)
Country | Link |
---|---|
US (1) | US6944823B2 (de) |
CN (1) | CN1052320C (de) |
DE (1) | DE4340599C2 (de) |
TW (1) | TW262547B (de) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7797631B2 (en) * | 2002-09-18 | 2010-09-14 | Canon Kabushiki Kaisha | Document printing control apparatus and method |
JP4198098B2 (ja) * | 2004-07-23 | 2008-12-17 | シャープ株式会社 | 表示装置、プログラムおよび記録媒体 |
US7710422B2 (en) * | 2004-07-26 | 2010-05-04 | Microsoft Corporation | Font representations |
JP4873554B2 (ja) * | 2006-12-25 | 2012-02-08 | 株式会社リコー | 画像配信装置および画像配信方法 |
CN106468960A (zh) * | 2016-09-07 | 2017-03-01 | 北京新美互通科技有限公司 | 一种输入法候选项排序的方法和系统 |
US10339680B2 (en) * | 2017-10-06 | 2019-07-02 | Adobe Inc. | Graphics control data for performing skeleton-based modifications of a typeface design |
US11488053B2 (en) | 2017-10-06 | 2022-11-01 | Adobe Inc. | Automatically controlling modifications to typeface designs with machine-learning models |
US10983679B2 (en) | 2017-10-06 | 2021-04-20 | Adobe Inc. | Selectively enabling trackpad functionality in graphical interfaces |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57169791A (en) | 1981-04-10 | 1982-10-19 | Shaken Kk | Method of memorizing character and figure and phototypesetter |
JPS61246877A (ja) | 1985-04-25 | 1986-11-04 | Canon Inc | 図形変換装置 |
CN1006663B (zh) * | 1985-11-15 | 1990-01-31 | 夏普公司 | 多字体生成装置 |
US5398311A (en) * | 1987-02-25 | 1995-03-14 | Canon Kabushiki Kaisha | Character processing apparatus and method for processing character data as an array of coordinate points of contour lines |
US4897638A (en) * | 1987-02-27 | 1990-01-30 | Hitachi, Ltd. | Method for generating character patterns with controlled size and thickness |
US5562350A (en) * | 1988-04-18 | 1996-10-08 | Canon Kabushiki Kaisha | Output apparatus that selects a vector font based on character size |
JPH01272460A (ja) | 1988-04-26 | 1989-10-31 | Nippon Joho Kagaku Kk | 文字の発生方法及び装置 |
JP2844639B2 (ja) * | 1989-03-02 | 1999-01-06 | セイコーエプソン株式会社 | 文字パターン信号発生装置 |
JP2836086B2 (ja) * | 1989-03-10 | 1998-12-14 | セイコーエプソン株式会社 | 文字パターンデータ発生装置 |
JPH02250189A (ja) | 1989-03-24 | 1990-10-05 | Nippon Joho Kagaku Kk | 文字発生方法および装置 |
JP2850979B2 (ja) * | 1989-04-21 | 1999-01-27 | キヤノン株式会社 | 文字処理装置および方法 |
US5159668A (en) * | 1989-05-08 | 1992-10-27 | Apple Computer, Inc. | Method and apparatus for manipulating outlines in improving digital typeface on raster output devices |
US5155805A (en) * | 1989-05-08 | 1992-10-13 | Apple Computer, Inc. | Method and apparatus for moving control points in displaying digital typeface on raster output devices |
JP2755789B2 (ja) * | 1990-06-11 | 1998-05-25 | キヤノン株式会社 | 文字フオントメモリと、該文字フオントメモリを用いた文字パターン発生装置 |
JPH0493992A (ja) | 1990-08-06 | 1992-03-26 | Fuji Xerox Co Ltd | 文字・図形描画装置 |
JP2985275B2 (ja) | 1990-10-25 | 1999-11-29 | セイコーエプソン株式会社 | アウトラインフォントの文字発生方式 |
US5276790A (en) * | 1991-07-12 | 1994-01-04 | Destiny Technology Corporation | Fast vertical scan-conversion and filling method and apparatus for outline font character generation in dot matrix devices |
US5355449A (en) * | 1991-09-30 | 1994-10-11 | Destiny Technology Corporation | Method and apparatus for outline font character generation in dot matrix devices |
US5280576A (en) * | 1991-12-24 | 1994-01-18 | Xerox Corporation | Method of adjusting the weight of a character of an outline font |
US5365589A (en) | 1992-02-07 | 1994-11-15 | Gutowitz Howard A | Method and apparatus for encryption, decryption and authentication using dynamical systems |
-
1993
- 1993-11-22 TW TW082109818A patent/TW262547B/zh active
- 1993-11-29 DE DE4340599A patent/DE4340599C2/de not_active Expired - Fee Related
- 1993-11-30 CN CN93121111A patent/CN1052320C/zh not_active Expired - Fee Related
-
1996
- 1996-08-26 US US08/703,399 patent/US6944823B2/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
W.D. Fellner: "Computer Grafik", BI-Wissen- schaftsverlag, Mannheim, Wien, Zürich, 1988, S.143-152 * |
Also Published As
Publication number | Publication date |
---|---|
US20040205486A1 (en) | 2004-10-14 |
DE4340599A1 (de) | 1994-06-01 |
TW262547B (de) | 1995-11-11 |
US6944823B2 (en) | 2005-09-13 |
CN1090660A (zh) | 1994-08-10 |
CN1052320C (zh) | 2000-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3806223C2 (de) | Verfahren zur Erzeugung von Zeichenmustern | |
DE60036894T2 (de) | Erzeugung einer Glyphe | |
DE69428265T2 (de) | Verfahren und system zur erzeugung, spezifizierung und generierung von parametrischen schriftarten | |
DE69524143T2 (de) | Verfahren und Vorrichtung zur Vermeidung von Datenunterversorgung in einen Seitendrucker | |
DE69221414T2 (de) | Intelligenter Schriftartdarstellungskoprozessor | |
DE69130382T2 (de) | Zeichenverarbeitungsverfahren | |
DE3587690T2 (de) | Verfahren um Schrifttypen mit Skalaänderungen herzustellen. | |
DE69131901T2 (de) | Ein verfahren um dokumente zu formatieren mit flexibelen entwurfsmodellen die kontrollierte kalibrierung und schrifttypenauswahl ermöglichen | |
DE69425037T2 (de) | Verfahren und Vorrichtung zur Generierung von Schriftzeichen | |
DE3935574C2 (de) | Verfahren zum Minimieren der beim Skalieren eines digitalen Schriftbildes auftretenden visuellen Beeinträchtigung | |
DE69629173T2 (de) | Automatisches Plazieren eines graphischen Musters | |
DE69423306T2 (de) | Vorrichtung und Verfahren zur Auswahl eines Schriftensatzes | |
DE3485893T2 (de) | Verfahren und einrichtung zum automatischen erhalten von zeichenzwischenraeumen waehrend der satzaufbereitung. | |
DE19713654B4 (de) | Progressiv darstellbare Umrissschrift und Verfahren zum Erzeugen, Übertragen und Darstellen derselben | |
DE19512185B4 (de) | Verfahren und Vorrichtung zum Erzeugen von Fontdaten | |
DE69222255T2 (de) | Verarbeitungsverfahren für Zeichen oder graphische Daten | |
DE4340599C2 (de) | Gerät und Verfahren zur Konturerzeugung | |
DE69033757T2 (de) | Gerät und Verfahren zum bearbeiten von Zeichen | |
DE68926263T2 (de) | Abschneidungsverfahren und -verarbeitungsgerät | |
DE69207184T2 (de) | Vorrichtung und verfahren zum automatisierten seitenlayout von text undgraphischen elementen | |
DE4124554C2 (de) | Datenumwandlungseinrichtung und Zeichenausgabeeinrichtung | |
DE3923914C2 (de) | Verfahren zum Extrahieren von Merkmalsgrößen eines Zeichens | |
DE69032082T2 (de) | Bilddatenstromumsetzung in Ausgangsdaten zur Bilddruckstellung oder -anzeige | |
DE69021797T2 (de) | Verfahren zum Umsetzung von Bildinformation in Vektorform in ein Rastermuster und Gerät zur Bilderzeugung. | |
DE4105089A1 (de) | Stickereidatenverarbeitungseinrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8125 | Change of the main classification |
Ipc: G06F 15/62 |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |