DE2953600C2 - Setzgerät zur automatischen Generierung von Schriftzeichen - Google Patents

Setzgerät zur automatischen Generierung von Schriftzeichen

Info

Publication number
DE2953600C2
DE2953600C2 DE2953600A DE2953600A DE2953600C2 DE 2953600 C2 DE2953600 C2 DE 2953600C2 DE 2953600 A DE2953600 A DE 2953600A DE 2953600 A DE2953600 A DE 2953600A DE 2953600 C2 DE2953600 C2 DE 2953600C2
Authority
DE
Germany
Prior art keywords
character
vector
digital
data
characters
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
Application number
DE2953600A
Other languages
English (en)
Inventor
Walter I. Cold Spring N.Y. Hansen
Derek J. Buckinghamshire Kyte
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Linotype Co Ltd
Original Assignee
Eltra Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Eltra Corp filed Critical Eltra Corp
Application granted granted Critical
Publication of DE2953600C2 publication Critical patent/DE2953600C2/de
Expired legal-status Critical Current

Links

Classifications

    • B—PERFORMING OPERATIONS; TRANSPORTING
    • B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41B—MACHINES OR ACCESSORIES FOR MAKING, SETTING, OR DISTRIBUTING TYPE; TYPE; PHOTOGRAPHIC OR PHOTOELECTRIC COMPOSING DEVICES
    • B41B19/00—Photoelectronic composing machines
    • B41B19/01—Photoelectronic composing machines having electron-beam tubes producing an image of at least one character which is photographed
    • B—PERFORMING OPERATIONS; TRANSPORTING
    • B41—PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41B—MACHINES OR ACCESSORIES FOR MAKING, SETTING, OR DISTRIBUTING TYPE; TYPE; PHOTOGRAPHIC OR PHOTOELECTRIC COMPOSING DEVICES
    • B41B27/00—Control, indicating, or safety devices or systems for composing machines of various kinds or types

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Dot-Matrix Printers And Others (AREA)
  • Digital Computer Display Output (AREA)
  • Laser Beam Printer (AREA)

Description

1. Beginn zweier neuer Schriftzeichenumrisse, und
2. Ende zweier Schriftzeichenumrisse
19. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel zum Modifizieren eines gespeicherten Vektors durch eine das Schriftzeichen darstellende Digitalzahl, die einen Steuerkode definiert, der den Vektor durch Addition eines vorgegebenen Werts zu einer der ersten oder der zweiten Digitalzanl ohne Addition zur anderer, der ersten oder zweiten Digitalzah! modifiziert
20. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel zur Verschiebung des Anfangs eines Vektors mit einer das Schriftzeichen darstellenden Digitalzahl, die einen Steuerkode definiert, welcher spezifiziert, daß der Anfang des Vektors vom Ende des vorausgehenden Vektors entlang einer der ersten und zweiten Koordinaten um einen gegebenen Wert verschoben ist
21. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel zur Angabe des Quadranten, in dem ein Vektor auftritt, mit einer das Schriftzeichen darstellenden Digitalzahl, die einen Steuerkode definiert, weleher spezifiziert, daß mindestens ein folgender Vektor in einem anderen Quadranten auftritt.
22. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel zum Aneinanderreihen der Digitalzahlen in vorgeschriebener Ordnung, so daß die Digitalzahlen auf Grund ihrer Ordnung mit ihren entsprechenden Umrissen assoziiert werden.
23. Setzgerät nach Anspruch 22, gekennzeichnet durch Mittel zur Anordnung der die erste und zweite Koordinate eines Ausgangspunktes definierenden Digitalzahlen vor den Digitalzahlen, die die sich von diesem Ausgangspunkt erstreckenden Vektoren definieren.
24. Setzgerät nach Anspruch 22, gekennzeichnet durch Mittel zur Anordnung der die erste und zweite Koordinate des Ausgangspunkts definierenden Digitalzahlen in der Reihenfolge von niedrigen nach hohen Werten der ersten und der zweiten Koordinate.
25. Setzgerät nach Anspruch 22, gekennzeichnet durch Mittel zur Anordnung der die Vielzahl von Vektoren definierenden Digitalzahlen in der Reihenfolge der Zunahme einer der ersten oder zweiten Koordinate des Endes eines jeden Vektors.
26. Setzgerät nach Anspruch 22, gekennzeichnet durch Mittel zu derartiger Anordnung der die Vielzahl von Vektoren definierenden Digitalzahlen, daß die Vektoren einer gesamten Zeichenfolge aufeinanderfolgend definiert werden, bevor die Vektoren einer anderen Zeichenfolge definiert werden.
27. Setzgerät nach Anspruch 1, gekennzeichnet durch eine in Sektoren unterteilte Magnetscheibe als Speichermed'um, auf der ein die Anfangsspur und die Sektoradresse einer oder mehrerer Schriften spezifizierender Schriftindex (Schriftverzeichnis) auf einer spezifizierten Spur und einem Sek' „r ausgezeichnet ist und auf der die mindestens einen Schriftzeichensatz definierenden Daten in einer verbundenen Zeichenfolge mit Kettungsadresse am Ende eines jeden die Adresse der nächstenfolgenden Spur u.id des Sektors, in der die Schriftdaten weitergehen, definierenden Sektors angeordnet sind.
Die Erfindung bezieht sich auf ein Setzgerät zur automatischen Generierung von Schriftzeichen nach dem Oberbegriff des Anspruchs 1.
In einem bekannten Setzgerät, welches unter anderen die gattungsgemäßen Merkmale aufweist, ist ein Zeichengenerator zur Darstellung codierter Schriftzeichen vorgesehen, mit dem die Schriftzeichen auf der Basis eines normierten Quadrates (Normalraster) entsprechend den Koordinaten eines Ausgangspunktes der Außenlinien des ^eichcns als Digitalzahlen codiert werden und weiter gemäß veränderlichen Parametern dieser Außenlinier', wi<; Steigungen und Krümmungen als Digitalzahlen definiert sind (DE-AS 24 22 464). Hierzu werden BeK'hie für eine Krümmungsänderung verwendet. Dk Erzeugung einer geraden ansteigenden oder abfallenden Linic, die auf einem Steigungsänderungsbefehl basierenden Berechnungen beruht, erfordert aber eine hohe Speicherkapazität für eine große Anzahl Steigungsinformationen, insbesondere wenn gerade, geneigte Strecken als ^diriftzeichenumrißlinienabschnitte ohne Stufen in einer hohen typographischen Qualität zu generieren >>ind. ötrswegen kann zur Bildung einer Außenlinie mit gerader Steigung ein spezieller Befehl
vorgesehen werden, der inkremental Änderungen von V-Koordinatenwerten beinhaltet. Dieser spezielle Befehl gibt an, wie. ausgehend von einem Ausgangspunkt, der Y-Koordinatenwert für jedes konstante X-Koordinateninkrement zu verändern ist. Zu jedem speziellen Befehl gehört deswegen die Angabe einer Anzahl von -Y-Inkrcmenten und damit von Berechnungszyklen, für die eine Veränderung der V-Koordinate oder der Steigung oder der Krümmung auszurechnen ist. Dieser Zeichengenerator bedingt somit eine hohe Speicherkapazität zur Speicherung von Steigungsinformationen für typographisch hochwertige Schriftzeichengenerierung sowie zur Speicherung der Anzahl von Berechnungsschritten, für welche die speziellen Befehle gelten sollen. Außerdem sind verhältnismäßig aufwendige Berechnungen für die Einheitsinkremente (X-Inkremente) durchzuführen.
ίο Mit einem zum Stand der Technik gehörenden Vektordarstellungsgerät sollen keine Umrißlinien von Schriftzeichen angenähert, sondern nur die Vektoren auf einer Kathodenstrahlröhre ausgehend von je einem durch Zahlenwerte definierten Ausgangspunkt durch ΔΧ- und JK-Ablenkdate für den Elektronenstrahl ausgebildet werden, die Binärzahlen sind (G B-PS 13 93 653). Es sollen analoge Ablenkspannungen für den Kathodenstrahl so ansteigen, daß auf der Kathodenstrahlröhre ein Vektor annähernd konstanter Helligkeit unabhängig von der
is Vekioriänge erscheint.
Eine Rechner- und Steuereinrichtung eines bekannten Setzgerätes ist zur Verarbeitung digitaler Zahlenwerte eingerichtet, welche den Ort der Kreuzung einer Umrißlinie eines Schriftzeichens mit einem Rasterstreifen darstellen (DE-OS 14 99 405). Zur Definition dieser Kreuzungsorte ist jedoch ein großer Datenvorrat zu speichern und zu verarbeiten.
Zur Herabsetzung der zur Speicherung und Reproduktion von Schriftzeichen benötigten Daten sind verschiedenartige Maßnahmen bekannt:
So ist ein Kathodenstrahlrohr-Setzgerät bekannt, bei dem die zur Darstellung eines Schriftzeichens erforderliche Anzahl von Bits komprimiert wird durch identifizierung der Ausgangs- und Endpunkte der Liniensegmente (dunkle Teile) eines Schriftzeichens in jeder Reihe oder Spalte des Rasters mit Hilfe eines Digitalkodes (US-PS
33 05 841).
Bei einem verbesserten System (US-PS 34 71 848) werden die Ausgangs- und Endpunkte eines Liniensegments innerhalb einer Reihe oder einer Spalte des Rasters als inkrementale Zunahme oder Abnahme vom Ausgangs- bzw. Endpunkt auf einem Liniensegment in der vorausgehenden Reihe oder Spalte kodiert. Die Datenreduzierung wird dadurch erreicht, daß die zur Definition der zusätzlichen Adressen eines Liniensegments
erforderlichen Zahlen kleiner sind als die zur Definition der absoluten Adressen erforderlichen Zahlen.
Zum Stand der Technik gehören eine Anzahl weiterer Verfahren zur Datenherabsetzung digital kodierter Schriftzeichen (US-PS 33 05 841 und 34 71 848):
1. Die Einführung eines Kode, der die Anzahl der freien Reihen oder Spalten auf der einen oder der anderen (oder beiden) Seiten des Schriftzeichens anzeigt
2. Die Einführung eines Linienwiederholungs-Kode, welcher Anzeigt, daß das Liniensegment oder die Segmente in einer Reihe oder einer Spalte auf der gleichen Position sind wie das Segment der vorausgehenden Reihe oder Spalte.
3. Die Einführung eines Kode, welcher anzeigt daß ein Anfang oder ein Ende einer Liniensegmentadresse mit einer vorgeschriebenen Anzahl zu wiederholen ist.
Trotz dieser verschiedenen bekannten Techniken zur Datenverringerung waren digitale Schriftzeichenspeicher aufwendiger als die in Kathodenstrahlrohr-Setzgeräten verwendeten Fotovorlagen. Dies beruht u. a. darauf, daß Digitalmaschinen zwar die Größe der reproduzierten Schriftzeichen durch Verändern des Abstands der Striche auf der Ausgaberöhre bestimmen, es aber Grenzen gibt, wie weit auf diese Weise vergrößert werden kann. Es sind daher mehrere verschiedene Schriftzeichenvorlagen erforderlich.
Es ist eine Schriftzeichen-Kodier- und Dekodiereinrichtung für ein Kathodenstrahlrohr-Setzgerät bekannt, die den oben erwähnten Nachteil besitzt (US-PS 40 29 947). Erreicht wird dies durch Kodierung des normalisierten Schriftzeichenumrisses mit einer Reihe aufeinanderfolgender Neigungen und Krümmungen von einem ursprünglichen Anfangspunkt oder -punkten für das Schriftzeichen. Zu diesem Zweck steht eine große Anzahl von Neigungen und Krümmungen zur Auswahl durch den Kodierer zur Verfügung, wobei jede dieser Neigungen und Krümmungen durch ihre eigene binäre Kondenummer identifiziert wird.
Eine weitere bekannte Anordnung zur Darstellung von Schriftzeichen, die die Schriftzeichen als normalisierte Schriftzeichenumrisse behandelt, speichert die absoluten Koordinaten einer Anzahl von Punkten auf dem Umriß des Schriftzeichens (Seybold Report, Band 1, Nr. 12 und 13 [14. und 28. Februar 1972]). Dabei werden Zwischenpunkte auf dem Umriß zwischen gespeicherten Punkten als gerade Linien angenommen.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Setzgerät der eingangs genannten Gattung so weiterzubilden, daß die für die Speicherung typographisch hochwertiger Schriftzeichen mit Digitalzahlen erforderliche Speicherkapazität möglichst gering ist Nach Maßgabe der gespeicherten Digitalzahlen soll eine Kathodenstrahlröhre oder ein Lichtpunktabtaster wenig aufwendig steuerbar sein, um diese Schriftzeichen zu reproduzieren.
Diese Aufgabe wird für ein Setzgerät mit den in dem kennzeichnenden Teil des Anspruchs 1 angegebenen Merkmalen gelöst
Das erfindungsgemäße Setzgerät ist zur Speicherung und Verarbeitung von Daten eingerichtet, in denen der Vektor mit für den Schriftzeichenumrißlinienabschnitt signifikanter Erstreckung in ΛΓ-Richtung und V-Richtung enthalten ist Durch diese Daten werden alle Informationen kompakt zusammengefaßt, die zwischen den Vektorendpunkten zur Reproduktion der Umrißlinie benötigt werden, und zwar auch für gekrümmte Umrißlinien. Eine sonst erforderliche Anzahl von X-Inkrementen, über die sich eine konstante Steigung erstrecken soll.
ist also hier in den beiden Digitalzahlen, welche die Vektordaten darstellen, enthalten. Es entfallen die Angabe der Anzahl von Linien oder zusätzliche Berechnungsschritte. Erfindungsgemäß werden die Lagen der Vektoren in der Umrißlinie aus der abspeicherbaren Folge der Digitalzahien, die die Vektoren einschließlich deren Gesamtlänge bestimmen, abgeleitet. Zusätzliche, die Lage der Vektoren markierende Daten brauchen also nicht abgespeichert zu werden.
In dem erfindungsgemäßen Setzgerät können die gespeicherten Daten in der Steuereinrichtung leicht in Schriftzeichen-Umschaltwerte eines bewegten Lichtpunktes umgesetzt werden, um durch den bewegten Lichtpunkt Schriftzeichen hoher typographischer Qualität zu setzen.
Die Daten zur Kodierung der Schriftzeichen können automatisch von einer groben Punktmatrix-Information oder einem beliebigen anderen digitalisierten Kode auf relativ einfache Art erhalten werden. Dabei werden die geradlinigen Vektoren so gewählt, daß zunächst aufeinanderfolgende Koordinatenpunkte auf jedem Umriß bestimmt werden, für die der Umriß weniger als eine vorgeschriebene Entfernung von einer geraden Linie zwischen diesen Punkten abweicht. Sind diese Umrißpunkte bestimmt, dann werden die Werte der ersten und zweiten Koordinate jedes aufeinanderfolgenden Punktes von den Werten der ersten und zweiten Koordinate des vorausgehenden Punkts abgezogen, damit die Koordinatenzunahmen von Punkt zu Punkt bestimmt werden können. Diese Zunahmen werden dann als die ersten und zweiten 4-Bit-Digitalzahlen gespeichert, die jeden Vektor definieren.
Weitere vorteilhafte Merkmale ergeben sich aus den Unteransprüchen.
Im einzelnen beinhaltet Anspruch 2 Merkmale der Einrichtung zur Verarbeitung der gespeicherten Daten, die wirkungsmäßig zwischen dem Schriftspeicher und den Mitteln zur Umwandlung einer Datenfolge in Schnitzelchenumschaltwerte angeordnet sind.
Anspruch 3 beinhaltet im wesentlichen die weitere zweckmäßige Gestaltung der Mittel zur Umwandlung der Datenfolge in Schriftzeichenumschaltwerte.
Anspruch 4 betrifft im wesentlichen die Mittel zur Berechnung der Interceptwerte, d. h. ebenfalls Schriftzeichenumschaltwerte aus den erfindungsgemäß gebildeten und gespeicherten Vektoren.
Die in dem kennzeichnenden Teil des Anspruchs 4 angegebenen Umwandlungsmittel der Punktgröße sind im Zusammenhang mit den Mitteln zur Umwandlung der Folge von Daten aufeinanderfolgender Vektoren in Schriftzeichenumschaltwerte vorgesehen und sind somit eine Weiterbildung der erfindungsgemäßen Verarbeitung der Folge der Daten, die aufeinanderfolgenden Vektoren entsprechen.
In vorteilhafter Weise kann erfindungsgemäß ein einziger Datensatz normalisierter Schriftzeichen zur Generierung von Schriftzeichen-Abbildungen in unterschiedlichen Punktgrößen verwendet werden. Erforderlich ist lediglich, die Schnittpunkte zwischen jedem horizontalen oder vertikalen Strich und den Schriftzeichenumrissen zu errechnen, um zu bestimmen, wann die Kathodenstrahlröhre oder der Laserstrahl an- oder ausgeschaltet werden muß. Die durch die kodierten Daten definierten geradlinigen Vektoren ermöglichen es, diesen Steuervorgang mit einem Mindestaufwand und bei hoher Geschwindigkeit durchzuführen.
Anspruch 6 beinhaltet eine Weiterbildung der erfindungsgemäßen Mittel zur Umwandlung der Folge von Daten, die aufeinanderfolgenden Vektoren entsprechen, in Schriftzeichenumschaltwerte.
Die Weiterbildung nach Anspruch 7 betrifft die erfindungsgemäßen Umwandlungsmittel, mit denen die Datenfolge entsprechend aufeinanderfolgenden Vektoren verarbeitet wird.
Anspruch 8 betrifft die Weiterbildung des erfindungsgemäßen Schriftspeichers zur Speicherung einer weiteren Digitalzahl, welche bei der Verarbeitung dieser Zahl eine typographisch erwünschte Variation der Digitalzahl und der daraus gebildeten Schriftzeichenumschaltwerte ergibt
Die in Anspruch 9 angegebene Magnetscheibe hat sich als Speichermedium zur Realisierung des erfindungsgemäßen Schriftspeichers als besonders geeignet erwiesen.
Insbesondere sind nach bevorzugten Merkmalen der Erfindung gemäß Ansprüchen 10 bis 14 die erste und die zweite Digitalzahl, die jeden Vektor definieren, in der Größe begrenzt. Bei einer mäßigen Auflösung von beispielsweise 432 Einheiten im Geviert können es 4-Bit-Ziffern sein, so daß ein Vektor durch ein Byte (acht Bits) dargestellt ist. Eine Analyse hat gezeigt, daß bei weitem die meisten Vektoren, die zur Definition eines Schriftzeichens erforderlich sind, innerhalb von 15 Einheiten in den Richtungen der ersten und der zweiten Koordinate auf dem Raster liegen. Das Vektorkodierschema schließt in sich inkrementale Abstände in der ersten und in der zweiten Koordinatenrichtung von der Spitze des vorausgehenden Vektors ein. Diese inkrementalen Abstände können mit geringerer Information definiert werden als die absoluten Koordinaten einer Vektorspitze. Zusätzlich werden der Ausgangspunkt und die Vektordaten in einer vorgeschriebenen Folge dargestellt, die von sich aus die Daten mit spezifischen Schriftzeichen-Umrissen zuordnet. Als Ergebnis dieser drei Faktoren ist das vorliegende Kodierschema gegenüber den früheren Arten zur Digitalisierung von Schriftzeichen hinsichtlich der Anzahl der erforderlichen Daten zur Definition eines Schriftzeichens und der Komplexität und der Schnelligkeit der hardware, die zur Verarbeitung dieser Daten erforderlich ist, vergleichsweise günstig.
Anspruch 27 beinhaltet die Verkettung der Daten, die zu jedem einzelnen Schriftzeichen eines Schriftzeichensatzes erfindungsgemäß gespeichert sind, außerdem die Organisation der Magnetscheibe als Speichermedium, um diese Folge der Daten zu speichern.
Die Erfindung wird im folgenden an Hand einer Zeichnung näher beschrieben:
F i g. 1 zeigt ein normalisiertes X— V-Raster, bei dem geradlinige Vektoren zwischen einzelnen Schnittpunkten eingesetzt wurden.
F i g. 2 stellt eine Versuchsmatrix dar, die bei der automatischen Auswahl der Vektoren zur erfindungsgemäßen Darstellung eines Buchstabenumrisses verwendet wird.
F i g. 3 ist ein Flußdiagramm, das die bei der automatischen Auswahl von Vektoren zur Darstellung eines Buchstabenumrisses durchzuführenden Schritte aufzeigt '.
F i g. 4A—4E zeigen ein bevorzugtes Format digitaler Daten für das erfindungsgemäße Schriftzeichen-Kodie-
rungsschema.
F i g. 5 ist ein normalisiertes X— V-Raster eines dargestellten Schriftzeichens, das durch Ausgangspunkte und Vektoren nach der auf der linken Seite von F i g. 3 gezeigten Anordnung definiert wird.
F i g. 6 zeigt die tatsächliche Kodierung für das in F i g. 5 dargestellte Schriftzeichen unter Verwe...iung des in F i g. 4 veranschaulichten Datenformats.
Fig. 7A—7D zeigen ein weiteres bevorzugtes Digitaldatenformat für das erfindungsgemäße Schriftzeichen-Kodierschema.
F i g. 8 zeigt ein repräsentatives Schriftzeichen auf einem normalisierten X— V-Raster, wobei die Schriftzeichenumrisse durch Ausgangspunkte und Vektoren nach der auf der rechten Seite von F i g. 1 gezeigten Anordnung definiert werden.
F i g. 9 zeigt die tatsächliche Kodierung für das in F i g. 8 dargestellte Schriftzeichen unter Verwendung des in F i g. 5 veranschaulichten Datenformats.
Fig. 10 ist eine Draufsicht auf eine in Sektoren eingeteilte Floppy-disk-Scheib·^ :i; angedeuteten Sektoren und Spuren.
Fi g. 11 ist ein Diagramm, welches die Anordnung der Daten für Schrift und Schriftzeichen auf der Floppydisk-Scheibe darstellt.
Fig. 12 ist ein Diagramm, das die Schriftzeichen-Nachschlag- und Dicktendatei von Fig. 11 ausführlicher darstellt.
F i g. 13 zeigt ein durch vertikale Striche auf dem Schirm einer Kathodenstrahlröhre erzeugtes großes »Q«.
Fig. 14A zeigt ein Schriftzeichen, dessen Umgrenzung durch geradlinige Vektoren gebildet ist. zwischen denen vertikale Abtastlinien eingeschlossen sind.
Fig. 14B zeigt, wie das Schriftzeichen nach Fig. 14A mit einer bestimmten Schriftbreite abgebildet wird durch die vertikalen Abtastlinien.
Fig. 15A zeigt ein Schriftzeichen, desen Umgrenzung durch geradlinige Vektoren gcL:iaet ivi. zwischen denen vertikale Abtastlinien eingeschlossen sind.
Fig. 15B zeigt, wie das Schriftzeichen nach Fig. 15A mit einer bestimmten — anderen — Schriftbreite durch die vertikalen Abtastlinien abgebildet wird.
F i g. 16 zeigt, wie Strichendpunkte durch Interpolation aus kodierten Schriftzeichendaten bestimmt werden.
Fig. 17 zeigt, wie Strichendpunkte (Umschaltwerte) durch Mittelwertbestimmung aus kodierten Schriftzeichendaten bestimmt werden.
F i g. 18 ist ein Blockdiagramm eines Kathodenstrahlrohr-Setzgerätes.
F i g. 19A und 19B sind Block- bzw. Signaldiagramme, die die Struktur und die Wirkungsweise des Schriftzeichengeneratorelements von F i g. 18 darstellen.
F i g. 20 zeigt das Kodeumwandlerelement von F i g. 19 mit seinen verschiedenen Ein- und Ausgängen.
F i g. 21 ist ein Blockdiagramm der Elemente des in den F i g. 19 und 20 dargestellten Kodeumwandlers.
F i g. 22 ist ein Blockdiagramm des Hauptsteuerelements des in F i g. 21 gezeigten Kodeumwandlers.
F i g. 23 ist ein geometrisches Diagramm, das den durch den Kodeumwandler durchgeführten Vektorberechnungsprozeß veranschaulicht.
Fig.24 ist ein Flußdiagramm, das die Wirkungsweise des Maßstabselements (Festwertmultiplizierers) des Kodeumwandlers veranschaulicht.
F i g. 25 ist ein geometrisches Diagramm, das den durch den Kodeumwandier durchgeführten interpolationsprozeß veranschaulicht.
F i g. 26 ist ein Blockdiagramm des Adressierteils des Direktzugriffspeichers (RAM) des Kodeumwandlers.
F i g. 27 ist ein Blockdiagramm des Maßstabselements des Kodeumwandlers.
Fig. 28 ist ein weiteres Flußdiagramm, das die Wirkungsweise des Maßstabselements des Kodeumwandlers veranschaulicht.
F i g. 29 ist ein geometrisches Diagramm, das den durch den Kodeumwandler durchgeführten Prozeß zur M ittelwertbestimmung veranschaulicht
F i g. 1 veranschaulicht das erfindungsgemäße Kodierschema. Nach diesem Schema wird die Anzahl der so erfaßten Koordinatenpunkte entlang den Umrissen des Schriftzeichens weit herabgesetzt. Es wird angenommen, daß diese Punkte durch gerade Linien verbünden werden. Statt die absoluter. Koordinaten, dieser gewählten Punkte weiden, um die Schriftzeichen-Umrisse genau zu definieren, die geraden Linien als Vektoren durch die Anzahl der Koordinateneinheiten von dem einen Ende des Vektors zum anderen dargestellt. Die Vektoren werden in einer Reihenfolge der Spitze bis zum Ende angeordnet, so daß ein neuer Vektor beginnt, wenn ein vorausgehender aufhört. Eine Reihe oder eine Folge solcher Vektoren, die einen Umriß eines Schriftzeichens bilden, geht von einem ursprünglichen Ausgangspunkt aus, der in absoluten Koordinaten gegeben ist.
Wie in der linken Hälfte von F i g. 1 gezeigt ist, verlaufen die Vektoren beispielsweise von links nach rechts unter der Annahme, daß, wenn zwei Vektoren von derselben X-Koordinate ausgehen, der untere Vektor zuerst aufgeführt ist Ebenso werden, wenn ein oder mehrere Paare von Ausgangspunkten angegeben sind, das untere Paar und der untere Ausgangspunkt zuerst aufgeführt
In F i g. 1 werden die Ausgangspunkte Xj, Y\ und Xi, Yi zunächst in dieser Reihenfolge gegeben. Sodann werden die Vektoren, die von diesen Ausgangspunkten hervorgehen, in der Reihenfolge 1,2,3,4 aufgeführt Die Zahlen, die diese Vektoren definieren, sind in Tabelle I angegeben:
Tabelle I
Vektor-Zahl X-Abstand K-Abstand
\S 12-7
; 22 6
y, 3 4 -6
4 4 7
Wenn die Vektoren 3 und 4 abgelaufen sind, müssen zwei neue Ausgangspunkte X3, Yi und ΛΓ4, V4 definiert \ werden, bevor mit neuen Vektoren fortgefahren werden kann. Da die Schriftzeichendaten von links nach rechts
y- verlaufen, würde man sonst annehmen, daß keine Vektoren oder Ausgangspunkte mit X-Koordinaten-Werten im X-Koordinatenbereich der nächsten zwei Vektoren vorhanden sind.
;.-'.. Nachdem die Ausgangspunkte Λ^, Vj und X*, V4 gegeben sind, werden die Vektoren in der Reihenfolge 5,6,7,
;': 8 in der Maßgabe von unten nach oben aufgeführt. Weitere Vektoren werden dann in der Reihenfolge links nach
>- rechts, von unten nach oben aufgeführt, d. h. in der Reihenfolge, in der sie »ablaufen« während man entlang der
X-Achse nach rechts wandert.
[ Normalerweise treten die Ausgangspunkte in Paaren auf; es ist jedoch auch möglich, daß zwei Vektoren von
t dem gleichen Ausgangspunkt ausgehen, wie dies durch die Vektoren 9 und 10 dargestellt ist. In diesem Fall ist es
zweckmäßig, den gleichen Ausgangspunkt als Paar von Ausgangspunkten mit identischen Werten anzunehmen, 1 so daß der Vektor 9 von dem Koordinatenpunkt Xs, Y5 und der Vektor 10 vom Punkt Xe, Ys ausgeht.
[.: Die rechte Seite der Fig. 1 veranschaulicht das gleiche Kodierschema unter einer anderen Annahme. In
jT diesem Fall werden die Vektoren eines Schriftzeichens in der gesamten Folge ausgehend von den ursprüngh-
j'i ehe absoluten Koordinaten des obersten Punktes einer Vektorfolge von oben nach unten aufgeführt. Bei zwei
ί; > Ausgangspunkten mit dem gleichen V-Koordinatenwert ist es gleichgültig, welcher Punkt zuerst aufgeführt
P wird.
& Bei dem auf der rechten Seite der F i g. 1 gezeigten Umriß ist die Reihenfolge der Daten wie folgt: Ausgangs-
Iv punkt Χη, Yi und seine Vektoren 11,12,13 und so weiter bis zum Ende der Folge; Ausgangspunkt X8, V8 und so
'■;'· weiter bis zum Ende der Folge; Ausgangspunkt X9, Y9; Vektoren 17 und 18; Ausgangspunkt Xi0, Y)0; Vektor 19
und so weiter.
r Schließlich wird, wie im Falle des Ausgangspunktes X5, V5 und X6, Yt ein einzelner Punkt als ein »Paar« von
t Ausgangspunkten Xn, Vn und X!2, Y\2 definiert. Zunächst wird der Punkt Xu, Vu mit seinem Vektor 20
■V; aufgeführt; sodann wird der Ausgangspunkt Xn, Y,3 aufgeführt, dem Vektor 21 und die weiteren Vektoren der
f; Folge folgen. Der Ektor 20 endet am Endpunkt 22. Die Vektorfolge, die mit dem Vektor 21 beginnt, endet am
ί Endpunkt 23. Und die Vektorfolge, die mit dem Vektor 11 beginnt, endet am Endpunkt 24.
Die Umsetzung der Schriftzeichen-Umrißdaten in Ausgangspunkt- und Vektordaten kann wenig aufwendig mit geradlinigen Algorithmen erfolgen.
i Fig.2 und 3 veranschaulichen eine typische Bildung eines solchen Algorithmus, der zur Bestimmung der
f - Länge eines Vektors verwendet werden kann.
F i g. 2 zeigt eine 15x15-Probematrix im oberen rechten Quadranten von einem Punkt (0,0), der ein Ursprung- !icher Ausgangspunkt oder die Spitze eines vorausgehenden Vektors sein kann. Bei dem Quadrant der Probematrix wird angenommen, daß ein Links-Rechts-Vektor definiert werden soll, der sich aufwärts erstreckt (positive Werte von Y).
;; Die Größe der Probemairix entspricht auch der maximal zulässigen Länge eines Vektors (in diesem Fall
\\ jeweils 15 Einheiten in der X- bzw. Y-Richtung). Werden die Vektoren so gewählt, daß sie eine größere oder eine
§:· klei tiere Maximallänge aufweisen, dann wird die Matrix entsprechend angepaßt.
\, I" diesem Beispiel stellen die Punkte 30 den tatsächlichen digitalisierten Umriß des Schriftzeichens dar. Die
Linie 32 stellt einen vorgeschlagenen Vektor dar, der ausprobiert werden muß, um zu bestimmen, ob er ausreichend nahe an den entferntesten Punkt des Umrisses heranreicht, um den Umriß darzustellen. Die Koordinaten X. ^definieren den augenblicklichen Probepunkt für die Spitze des Vektors 32.
Die Koordinaten aller Punkte 30 des Umrisses werden mit x0, yo\ xu yw -·· *i5. y\s, entsprechend ihrer Reihenfolge entlang der X-Achse der Matrix bezeichnet
Wie in F i g. 3 gezeigt, ist der erste Punkt auf dem Umriß, der ausprobiert werden soll, der Punkt auf der Matrix mit der größten Vorwärtskomponente (in diesem Fall X-Komponente) von dem Punkt (0,0). In F i g. 2 ist der erste Probepunkt Xr, Υτ(15$)- Dervierte Probepunkt, wo Xt, YtKoordinaten (12,9) sind, wird nach dem Ausfall des Passens der drei vorausgehenden Probepunkte getestet: (15,9), (14,9) und (13,9). Zweck ist es, den längsten Vektor herauszufinden, der den Paß-Test besteht Es wird jeder Punkt 30 des Umrisses von niedrigerem Wert (mit Koordinaten x, y) ausgehend geprüft um zu bestimmen, ob ein senkrechter Abstand δ zwischen diesem Punkt und dem Vektor, der vom Ausgangspunkt (0,0) bis Xt, Krgezogen ist eine vorbestimmte Paßkonstante K überschreitet Zunächst werden die Koordinaten x, y des Punktes 30 unmittelbar vor dem Probepunkt X7-, Yt ausgewählt und der Versuch wird durchgeführt Ist der Abstand δ geringer als die Konstante K, -dann wird der Umriß-Punkt 30 mit dem nächstniedrigsten Wert von X gewählt, und der Test wird wiederholt Obertrifft der Abstand δ die Konstante K, dann wird der Testpunkt Xt, Yt aufgegeben, und der nächstniedrige Wert von Xt wird gewählt
Wird ein Probepunkt gefunden, für den alle Umrißpunkte 30 mit niedrigeren X-Koordinaten den Test bestehen, oder ist die X-Koordinate Xt des Probepunktes auf eins herabgesetzt dann werden die Koordinaten Xt, Ytzur Definition des Vektors benutzt Der Vektor wird dann durch die Differenz zwischen den Koordinaten der Spitze des letzten vorausgehenden Vektors (Koordinate (0,0) in der Probematrix) und den Koordinaten der
gewählten Probepunkte Xt. Wdargestellt. Das heißt, dx, dy wird gleich AV, Wgesetzl.
Der senkrechte Pr^beabstand δ wird für jeden Punkt durch einfache Geometrie unter Verwendung von X1, YT bestimmt. Da eine 15 χ 15-Matrix eine begrenzte Anzahl von XT. >V Punkten enthält, ist es zweckmäßig, alle möglichen Lösungen für δ in Tabellen einzufügen, so daß sie rasch in den Tabellen aufgefunden und aus dem Speicher entnommen werden können.
Die voreingestellte Paßkonstante kann beliebig klein gewählt werden, so daß die Vektoren so eng wie gewünscht an den tatsächlichen Schriftzeichen-Umriß herankommen. In einer bevorzugten Ausführungsform wird die Konstante K von der Steigung des Probevektors abhängig gemacht, so daß nahezu horizontale Steigungen mehr vom Umriß abweichen können.
y
Ist -^- > 1, dann ist K = 0,5; und ist
-^- < 1, dann ist*:= 1,0.
Xt
Der in F i g. 3 gezeigte Algorithmus ist extrem einfach ur-J kann mit einem Rechner ausgeführt werden, in dem die vertikalen oder horizontalen Umrißpunkte des Schriftzeichens gespeichert sind.
F i g. 2 zeigt eine Probematrix, in der die maximal zulässigen Werte von X und Y15 Einheiten betragen. Ein Vektor, der irgendwo innerhalb dieser Matrix endet, kann durch zwei 4-Bit-Binärzahlen, dx und dy, definiert werden. Bei einem Raster mit mäßig hoher Auflösung fällt bei weitem die Mehrzahl der zur Definition eines Schriftzeichens erforderlichen Vektoren in eine solche 15 χ 15-Matrix, so daß es zweckmäßig ist und zu einer Datenkomprimierung führt, wenn 8 Datenbits (ein Byte) verw endet werden, um jeden Vektor zu definieren.
Erfindungsgemäß wird die Anzahl der Bits, die einen Vektor definieren, zur Minimierung des Gesamtdaten-Vorrats in einem Schriftzeichensatz für eine gegebene Auflösung gewählt. Die maximale Vektorlänge wird so ausgewählt:
1. Zunächst wird die maximale Punktgröße der vom Setzgerät zu generierenden Schriftzeichen festgelegt.
2. Sodann wird eine Auflösung gewählt, die die Reproduktion der feinen Merkmale in den größten Schriftzeichen erlaubt.
3. Dann wird die voreingestellte Paß-Konstante K gewählt, so daß die Vektoren den gekrümmten Umrissen des Schriftzeichens mit ausreichender Genauigkeit folgen und daß sie, wenn die Schriftzeichen in der größten Punktgröße reproduziert werden, keine Folge von flachen Stellen auf den gekrümmten Flächen aufweisen.
4. Sodann ist es möglich, eine statistische Verteilung der Vektoren variierender Länge für alle Schriftzeichen
in einer Schriftart zu erzeugen.
5. Aus dieser Vektorlängenverteilung wird eine maximale Vektorlänge gewählt, die die Gesamtdatenmenge minimiert. Ist die Gesamtvektorlänge zu kurz (d. h. 3 χ 3, was mit insgesamt 4 Bits definiert werden kann), dann erfordert die Definition eines Schriftzeichens eine übermäßige Anzahl von Vektoren und die Datenred Vtion wird minimal. Ebenso ist, wenn die maximale Vektorlänge zu groß (z. B. 255 χ 255, was durch 16 Bits definiert werden kann) ist, die zur Definition kurzer Vektoren erforderliche Datenmenge unnötig groß, was zu einer minimalen Datenreduzierung führt.
Fig. 4 veranschaulicht ein bevorzugtes Format zur Definition eines Schriftzeichens mit Links-Rechts-Vektoren (F i g. 1, linke Seite). Diese Vektoren sind in einem Quadranten durch die X— Y-Koordinaten des Vektorendes im Verhältnis zum Ursprung des Quadranten spezifiziert. Da die Umrisse von links nach rechts über das Schriftzeichen gezogen werden, werden nur die zwei rechten Quadranten verwendet. Steuerkodes gestatten eine Selektion des Quadranten, den Beginn und den Abschluß einer Krümmung. Ausgangspunkte werden lediglich durch ihre V-Werte definiert, weil die X-Lage durch das Kodieren mit einbezogen ist.
Ein Datenblock, der das Schriftzeichen definiert, beginnt mit einem Yorsaizwort A (bestehend aus 8-Bit-Bytes), das die X-Koordinate der linken Begrenzung des Schriftzeichens angibt. Darauf folgt ein Ausgangspunkt-Wort B, das die V-Koordinate des niedrigsten Ausgangspunkts in der ersten X- Rasterlinie des Schriftzeichens angibt. Auf das Wort B folgt in Vektorbyte, das die Werte dx und dy eines Vektors von diesem Ausgangspunkt gibt, und dann ein weiteres Ausgangspunkt-Wort D, das den nächsten niedrigsten Punkt definiert. Ein weiteres Ausgangspunkt-Wort E definiert den höchsten Punkt in der ersten X-Rasterünie, und ein Vektorbyte Fdefiniert einen Vektor von diesem Ausgangspunkt. Gibt es irgendwelche Ausgangspunkte innerhalb von fünfzehn X-Einheiten von der ersten Rasterlinie, so können diese in ihrer entsprechenden V-Wert-Folge durchsetzt werden. Der Schriftzeichendatenblock enthält weiterhin Vektorbytes, Steuerbytes und Ausgangswörter C und endet in einem Endglockbyte H, das das Ende des Blockes anzeigt.
Die F i g. 4B, 4C, 4D und 4E zeigen die Formate für das Vorsatzwort, das Ausgangspunktwort, das Vektorbyte bzw. Steuerbyte. Diese Formate werden mit dem unbedeutendsten Bit auf der rechten Seite gezogen. Die Bedeutung der Symbole innerhalb dieser Wörter und Bytes sind wie folgt:
Vorsatzwörter:
ΧχΧι XnXiX^X-iXiXx Xo
— Linksseitiger Begrenzungsabstand
T — Testbit, kann zur Feststellung von Fehlern verwendet werden.
C — Kcttungsbit, zeigt an, ob dieses Wort dem letzten Schriftzeichenblock vorgesetzt ist.
K — Kernbit, bestimmt die Richtung auf der linken Seite (vom letzten Schriftzeichen weg oder auf dieses zu).
— Die Anzahl der Ausgangswörter auf der ersten Rasterlinie des Schriftzeichens. Ausgangspunkt-Wort:
V9 V8 V7 V6 V5 Y4 V3V2 V, Vu
— Der vertikale Abstand zwischen der Schriftzeichengrundlinie und dem Ausgangspunkt (positiv oder negativ).
S — Undefiniert
D — Tief-Bit (Down bit), bestimmt, in welchem der zwei rechten Quadranten eine folgende Vektorver-Schiebung eintreten wird.
— Die Anzahl von Rasterlinien zwischen dem Auftreten der Steuercode »Beginn einer neuen Linie« und den tatsächlichen Ausgangspunkten selbst.
Vektorbyte:
V3V2ViV0
— Dieser Wert definiert die vertikale Versetzung zwischen dem Beginn und dem Ende eines Vektors. XX
— Dies ist die horizontale Versetzung zwischen dem Beginn und dem Ende eines Vektors. Steuerbyte: ·
— Diese Bits definieren auf Null gesetzt ein Steuerbyte.
Af3M2M1M0
— Diese vier Bits bilden eine Binärzahl (0 bis 15), die eine Steuerfunktion bezeichnet.
Steuerfunktionen:
Steuerfunktionen sind im gesamten Schriftzeichenblock erforderlich und werden im Steuerbyte mit seinen vier signifikanten auf Null gesetzten Bits angegeben. Dies gestattet es, daß sechzehn verschiedene Funktionen durch den numerischen Wert der restlichen vier Bits definiert werden.
0 — Füllwort
1 und 2 — Undefiniert
3 — Beginne zwei Umrisse ohne Zwischenumrisse
4 — Beginne zwei Umrisse unter bereits bestehenden
5 — Beginne vier Umrisse ohne Zwischenumrisse
6 — Beginne vier Umrisse unter bereits bestehenden
7 — Ersetze einen bestehenden Umriß gegen einen neuen Wert, ohne die numerische Ordnung
der Werte oberhalb der Gitterlinie zu verändern (d. h. beende einen und beginne einen Umriß)
8 — Undefiniert
9 - Endblock 10 und 11 — Undefiniert
12 — Beende zwei Umrisse
13 — Beende vier Umrisse
14 — Andere die Richtung. Folgende Vektoren treten in anderen Quadranten auf
15 — Verschiebung um 16 Einheiten in vertikaler Richtung ohne horizontale Bewegung.
Fig.5 und 6 veranschaulichen, wie ein Schriftzeichen unter Verwendung des in Fig.4 gezeigten Formats kodiert werden kann. In F i g. 5 ist ein einfaches Schriftzeichen gezeichnet, das eine Anzahl von Ausgangspunkten, Endpunkten und dazwischenliegenden Vektoren enthält. Die tatsächliche Kodierung für dieses Schriftzeichen ist in Fig.6, linke Spalte, gezeigt. Die Mittelspalte von Fig.6 erklärt diese Kodierung, und die rechte Spalte zeigt die Folge, in der die Daten in das Setzgerät eingebracht und durch dieses verwendet werden.
F i g. 7 veranschaulicht ein bevorzugtes Format zur Definition eines Schriftzeichens mit von oben nach unten gehenden Vektoren (F i g. 1, rechte Seite). Diese Vektoren sind in einem Quadranten durch die X, V-Koordinaten des Endes des Vektors bezüglich des Ursprungs des Quadranten spezifiziert. Da die Umrisse des Schriftzeichens von oben nach unten gezeichnet werden, werden nur die zwei unteren Quadranten benutzt. Wie bei dem Format von F i g. 4 gestatten Steuerkodes eine Quadrantenauswahl und Krümmungsbeginn und -Vervollständigung. Bei diesem Format ist die Rasterlinie V = 0 am oberen Teil des Schriftzeichens; die folgenden horizontalen Rasterlinien erhalten rasterabwärts die folgenden V-Zahlen.
Ein das Schriftzeichen definierender Datenblock beginnt mit einem V-Datenwort, das die höchste V-Ausgangskoordinate des Schriftzeichens angibt. Dann folgt ein X-Datenwort, das die Ä"-Ausgangskoordinate eines βο Umrisses definiert, die Vektoren und die Steuerung für diesen Umriß.
Alle folge iden Umrisse werden in einer solchen Folge angeordnet, daß die Werte des Ausgangspunkts i'in der Ordnung zunehmender Werte liegen, d. h. der V-Wert für den nächsten Umriß ist gleich oder größer als der V-Wert für den vorausgehenden Umriß. Es werden also ganze Folgen oder Vektorsequenzen definiert und pf
vervollständigt, bevor die nächste Folge definiert wird. Haben zwei Ausgangspunkte den gleichen V-Wert, so 65 ψ
kann jeder Punkt zuerst mit seiner gesamten Vektorfolge aufgeführt werden. I»
Die F i g. 7B, 7C und 7D zeigen die Formate für das V-Datenwort, das A"-Datenwort bzw. das Vektor- oder (Ά
Steuerwort. Diese Formale sind mit dem niedrigstwertigen Bit auf der rechten Seite gezeichnet. Die Wertigkeit §
der Symbole innerhalb dieser Wörter und Bytes ist wie folgt:
V-Datenwort
Y — Diese Angabe definiert die vertikale Lage des Ausgangspunkts.
K — Undefiniert
X- Datenwort
XN — Diese Angabe definiert die horizontale Lage eines Ausgangspunkts. Der linke Randabstand (LSB) wird mit 0 definiert
± — Dieses Vorzeichenbit definiert die Verschiebung von XN relativ zu LSB.
ίο L — Das L-Bit definiert die Richtung des dx des ersten Vektors.
F — Das F-Bk oder »Flare Bit« definiert, welche Vektorneigung durch den Dekodierer bei der Extrapolation des Umrisses eines Schriftzeichens im Rasterbereich unmittelbar über der Linie VW verwendet wird.
E — Das f-Bit oder Extrapolationsbit definiert, ob Extrapolation in dem Bereich über der Rasterlinie YN verwendet wird oder nicht.
B — Das ß-Bit ist das Begrenzungs-Ein/Aus-Bit und definiert, ob der Umriß die linke (Ein) oder die
rechte (Aus) Begrenzung ist
Vektor-/Steuer-Wort
dydx — Für alle Werte von dy größer als 0 definiert dieses Byte die Neigung des Vektors des Schriftzeichenumrisses vom Ausgangspunkt (YN, XN) oder vom letzten Vektorendpunkt Alle Vektoren
werden serienmäßig in der gleichen Reihenfolge angeordnet wie sie auf dem Umriß des Schriftzeichens auftreten. Der Anfangsvektor liegt in dem MSB, der zweite in den LSB des Wortes.
Steuerfunktionen:
Für alle Werte von dy = 0 definiert dieses Byte einen Steuerkode. Die Steuerung hängt von dem Wert dx, wie im folgenden angegeben, ab:
0 — Ende des Umrisses. Liegt es in den MSB, dann müssen die LSB mit N ullen aufgefüllt werden.
1 — Umkehrung der Λ-Richtung für den nächsten Vektor.
2 — Bestimmt, daß für den durch die vorausgegangenen V- und X-Datenwörter definierten Ausgangspunkt keine Verschiebungsvektoren anwendbar sind. Diese Steuerung ist immer in den
MSB angeordnet, wobei die LSB mit Nullen aufgefüllt sind, um einen Steuerkode »Ende des Umrisses« zu erzeugen.
3 — Bestimmt einen Vektor mit einer horizontalen Verschiebung von 0 Einheiten (einen vertikalen Vektor) und eine vertikale Verschiebung von mehr als 30 Einheiten. Das nächste Datenbyte definiert einen binären Wert der vertikalen Verschiebung. Das Datenbyte weist einen sich ergebenden Bereich einer vertikalen Verschiebung von 0 bis einschließlich 255 auf, darf jedoch nicht zwischen 0 und 30 einschließlich verwendet werden.
4 — Definiert einen Vektor mit einer horizontalen Verschiebung von 1 Einheit und einer vertika
len Verschiebung von 30 Einheiten.
5 — Definiert einen Vektor mit einer horizontalen Verschiebung von 1 Einheit und einer vertika
len Verschiebung von 60 Einheiten.
6 — Definiert einen Vektor mit einer horizontalen Verschiebung von 1 Einheil und einer vertika
len Verschiebung von 120 Einheiten.
7 — Definiert eine Reihe von Vektoren, die einem konkaven Umriß folgen.
8 — Das gleiche wie für Funktion 7, jedoch für einen konvexen Umriß.
9 — Das gleiche wie für Funktion 7, jedoch für einen geradlinigen Umriß.
10 — Definiert, ob der Umriß gering oder hochgradig konkav oder konvex ist (dieses Bit wird nur
abgetastet, wenn die Bits 7 oder 8 konkav oder konvex angeben).
11 — Definiert einen Vektor mit einer vertikalen Verschiebung von 1 Einheit oder einer horizontalen Verschiebung von mehr als 255 Einheiten. Das nächste Datenbyte definiert den Binärwert einer horizontalen Verschiebung von mehr als 255 Einheiten.
12—14 - Undefiniert.
15 — Definiert einen Vektor mit einer horizontalen Verschiebung von 1 Einheit und einer horizontalen Verschiebung von mehr als 15 Einheiten. Das nächste Datenbyte definiert den Binärwert der horizontalen Verschiebung.
Die F i g. 8 und 9 verpnschaulichen, wie ein Schriftzeichen mit dem erfindungsgemäßen Kodierverfahren unter
Verwendung des in F i g. 7 gezeigten Formats kodiert werden kann. In F i g. 8 enthält das Schriftzeichen »A« eine Anzahl von Ausgangspunkten, Endpunkten und dazwischenliegenden Vektoren. Die tatsächliche Kodierung für
b0 dieses Schriftzeichen ist in Fig.9, linke Spalte, dargestellt. Die rechte Spalte von Fig.9 erklärt die kodierten Daten.
Die in F i g. 10 gezeigte Magnetscheibe weist feste Sektoren auf, an denen 32 kleine in regelmäßigem Abstand
um die Mittelöffnung angeordnete fotoelektrisch abtastbare Löcher markiert sind. Ein 33. Loch in der Miue zwischen zwei der gleichmäßig angeordneten Löcher bestimmt den Ausgangspunkt. Die Scheibe ist außerdem konzentrisch in 77 kreisförmige Bahnen unterteilt. Eine Adresse bzw. Stelle auf der Scheibe kann also durch Bahn und Sektor bestimmt werden.
Fi g. 11 zeigt, wie ein oder mehrere Sätze von kodierte Schriftzeichen auf der Magnetscheibe aufgezeichnet werden können. Zwei spezielle Sektoren auf der Scheibe auf einer besonderen Bahn werden dem Plattenspei-
cheretikett und dem Schrifiindex (Schriftverzeichnis) zugeordnet Die kodierte Schriftzeicheninformation kann gespeichert werden, indem bei jeder beliebigen anderen Adresse auf der Scheibe begonnen werden kann.
Das Plattenspeicheretikett beschreibt den Inhalt der Scheibe in konventionellen arabischen Ziffern, kodiert in Binärziffern. Der Schriftindex gibt die Anfangsadresse jeder auf der Magnetscheibe aufgezeichneten Schriftart.
Die Schriftartinformation besteht aus einer Schriftzeichen-Nachschlag- und Dicktendatei, gefolgt von Datenblocks, welche alle in der Schriftan vorhandenen Schriftzeichen definieren. Die Schriftzeichendatenblocks können das in F i g. 4A oder 7 A gezeigte Format haben.
Eine Nachschlag- und Dicktendatei ist in F i g. 12 dargestellt Die Datei enthält die auf einzelne Schriftzeichen anwendbaren Daten, die für ein Satzsystem erforderlich sind.
Werden drei Bytes verwendet, um die Daten für jedes Schriftzeichen zu definieren, dann können bis zu 83 Schriftzeichen in einem Sektor beschrieben werden. Jede Schriftzeichen-Dicktengruppe von drei Bytes enthält eine Schriftzeichen-Nummer bzw. die Schriftzeicheneinheit-Dickte bzw. Kennzeichenbits (»flag bits«). Die Schriftzeichennummer hängt mit der Form des Schriftzeichens entsprechend einer Eingabe-Tastatur zusammen. Die Kennzeichenbits B, C D sind Bits, die besondere Eigenschaften des Schriftzeichens definieren, z. B. ein Grundakzent, eine auf mittlerer Höhe angeglichener Akzent odef ein hochgesetztes Schriftzeichen (Hochzahl).
Die Schriftzeichen-Nachschlag- und Dicktendatei schließt mit einer Kettungsadresse, die die Adresse des nächsten Sektors der Schriftzeichendicktendatei oder des ersten Sektors der kodierten Schriftzeichendaten enthält
!if Fig. 13 zeigt die Art von Daten, um ein gemäß Fig. 1 — 12 kodiertes Schriftzeichen mittels eines Schriftzei-
I? chengenerators mit einer Kathodenstrahlröhre, einem Laserstrahl oder einem anderen Lichtpunktabtaster mit
|i Strichen darzustellen. Insbesondere erfordert der Schriftzeichengenerator Daten in Form von Umschaltwerten
|ΐ auf jeder Abtastlinie. Im Falle vertikaler Abtastlinien, wie in Fig. 13 dargestellt, sind dies die gezeichneten
jgj Y-Werte der EJn'Ays-Umschalt-Punkte auf jeder Abtastlinie. Die Werte werden auf die Schriftzeichengrundli-
Il nie bezogen, wobei die positiver, Werte von Yüber die negativen Werte unter der Grundlinie angeordnet sind.
Ii Der oberste Wert des höchsten abgebildeten Segments in einer Abtastlinie wird markiert so daß der Schriftzei-
chengenerator sofort weiterfahren und in die nächste Linie abtasten kann.
In Fig. 1 wird in der ersten (äußerst linken) Abtastlinie 40 der Abtaststrahl vertikal aufwärts geführt und % verläuft mit konstanter Geschwindigkeit von der Grundlinie. Der Strahl bleibt abgeschaltet, bis er eine Entfer-
-' nung YO von der Grundlinie erreicht hat. An diesem Punkt wird der Strahl eingeschaltet und bleibt an, bis er
!■; eine Entfernung Y1 von der Grundlinie erreicht i-at. Die Abtastung kann dann mit abgeschaltetem Strahl
j!. fortgeführt werden, bis sie den oberen Teil der Rastermatrix erreicht. Vorzugsweise wird der Strahl jedoch
j:? sofort unter Y2 oder zur Grundlinie zurückgeführt und beginnt mit der zweiten Abtastlinie 42. Diese Rückfüh-
i·. rung wird durch Zuordnung und »Zeilenende«-Kennzeichnung zu den Daten Y1 ausgelöst.
j Die vom Schriftzeichengenerator geforderte Datenfolge ist also YO, YX, Y2,Y3, YA,Y5, Κ6,_Κ7, YS, Y9,
[y Y10, YU, V12, K13, Y14, YXS usw, wobei die Zeilenende-Kennzeichnung in dieser Folge durch die Kursiv-
·*;■ schrift Unterstreichung gegeben ist. Da die Daten gespeichert sind und dem Setzgerät in Ausgangspunkt- und
ι Vektorumriß-Fcrmat zugeführt werden, erfordert das Setzgerät einen Kodeumwandler, um dieses Vektorfor-
■ mat in das in F i g. 13 gezeigte Umschaltformat umzuwandeln. Bei der im folgenden beschriebenen Ausführungsform kann der Kodeumwandler das in den F i g. 6 bis 8 gezeigte Format in ein vertikal abgetastetes Einzelschrift- ;, zeichen-Umschaltformat übersetzen.
hl Bei der Durchführung der Übersetzung vom Vektorformat in das Umschaltformat sollte der Kodeumwandler
£''. vorzugsweise in der Lage sein, Normalisierung, Interpolation und Durchschnittsermittlung durchzuführen.
;: Diese drei Wirkungsweisen sind in den F i g. 14 bis 17 dargestellt.
f; Unter der Annahme, daß die Ausgangslösung (Abtastliniendichte) des Schriftzeichengenerators feststeht,
^: müssen die Schriftzeichen horizontal normalisiert werden, indem die Anzahl der zur Definition eines Schriftzei-
\γ chcns erforderlichen Abtastlinien angepaßt wird. Die F i g. 14 und 15 veranschaulichen dieses Prinzip, wobei die R' Dickte des Schriftzeichens durch gleichmäßiges Verteilen der erforderlichen Anzahl von Abtastlinien über das
k, Schriftzeichen variiert wird.
K Vertikale Normalisierung kann durch einen Vertikalablenkverstärker oder durch Vervielfachung der Um-
[f schaltwerte KO, Vl, K2... durch einen digitalen Normierungsfaktor erreicht werden.
; Für Schriftzeichen größerer Punktgröße kann es notwendig sein zu interpolieren, um den Umschaltungspunkt
; auf bestimmten Abtastlinien zu finden. Bevorzugt wird eine direkte Interpolation zur Heraufsetzung der digitali-
p sierten Auflösung verwendet.
f? Der Kodeumwandler führt weitere gleichmäßig beabstandete vertikale Linien zwischen jedes Paar Digitali-
S; sierungslinien ein und verwendet direkte Interpolation, um die Umschaltwerte, wie in Fig. 16 gezeigt, abzu-
!*■ schätzen.
»'; In dieser Abbildung sind die durchgehenden Linien die ursprüngliche Digitalisierungsauflösung und die
|| unterbrochenen Linien die zusätzlichen interpolierten Stellungen. Eine »0« steht für einen aus einer Vektordeko- '■;i dierung erhaltenen Digitalisierungspunkt, ein »X« bedeutet einen interpolierten Punkt. Wären alle zusätzlichen Fl Linien Ausgang bei der konstanten Ausgangsauflösung, dann würde das Schriftzeichen viermal größer als die
ursprüngliche Größe erscheinen (beispielsweise 128 gegenüber 32). Es ist daher möglich, Linien über den Schriftzeichen periodisch auszulassen, damit jede gewünschte Schriftzeichendickte unter dieser Größe erzeugt werden kann.
Unter einem bestimmten Schriftgrad kann eine Mittelwertbildung zur Herabsetzung der Daten verwendet werden. Hierzu kann der Kodeumwandler Umschaltwerte erzeugen, die den arithmetischen Durchschnitt der Digitalisierungswerte zwischen Ausgangsabtastlinien, wie in F i g. 17 gezeigt, darstellen.
Das Setzgerät gemäß Fig. 18 wird durch eine Zentralprozessoreinheit 50 direkt über eine Datensammelleitung 54 gesteuert. Der Betrieb wird durch ein Programm bestimmt, das in einem Hauptspeicher 56 an einer
Hauptsammelleitung 52 gespeichert ist.
Die Betriebsanweisungen für die Maschine werden von einem Lochstreifenleser, einer Bedienungseinrichtung an der Frontplatte 60 oder einer on-line-Schnittstelle 62 erhalten. Alle diese Elemente sind an die Datensammelleitung 52 geschaltet ebenso wie die Magnetscheiben-Lese/Schreibeinheit 64, die die digitalisierten Schriften liefert.
Eine Hilfssammelleitungsschnittstelle und ein Hilfssammelleitungspuffer 66 steuern die der Hilfssammelleitung 54 zugeordneten Komponenten. Die Schnittstelle und die Steuereinheit 66 wird wiederum durch die Zentralprozessoreinheit 50 über die Hauptsammelleitung 52 gesteuert.
Die der Hilfssammelleitung 54 zugeordneten Komponenten sind für die Generierung der Schriftzeichen verantwortlich. Der Kodeumwandler 70 entnimmt zusammengefaßte Schriftsatzdaten von einem RAM- oder PROM-Schriftspeicher 72 und wandelt sie in ein ausgedehntes Umschaltwertformat um. Ein Schriftzeichengenerator 74 empfängt diese Daten und erzeugt ein Strahlschaltsignal auf der Leitung 84 sowie Analogspannungen, die X- und y-Ablenkungen auf einer Kathodenstrahlröhre darstellen. Diese Analogspannungen werden durch einen Videoablenkverstärker 76 verstärkt. Die Schriftzeichen werden schließlich auf einer Kathodenstrahlröhre 78 mit Ablenkspulen 80 erzeugt. Der Strahl der Kathodenstrahlröhre wird in den entsprechenden Momenten während des Abtastens durch das auf der Leitung 84 vom Schriftzeichengenerator 74 erhaltene Signal ein- und ausgeschaltet.
Der Computer 50 steuert die Funktionen der verschiedenen Elemente des Geräts. Zunächst wird die Auswahl
der Schriftart, der Punktgröße, der Schriftzeichen und der Stellungen der Schriftzeichen durch den Lochstreifenleser 58 gelesen und im Hauptspeicher 56 gespeichert. Hie kodierten Daten, die die einzelnen Schriftzeichen der gewählten Schriftart definieren, werden sodann durch die Lese/Schreibeinheit 64 von einer Magnetscheibe abgelesen und im Direktzugriffspeicher RAM 72 gespeichert.
Auf Anweisung des Computers 50 empfängt der Kodeumwandler 70 kodierte Daten für ein einzelnes Schriftzeichen aus dem RAM 72 und errechnet die Strahlschaltpunkte für jede aufeinanderfolgende Rasterzeile. Der Kodeumwandler verfolgt und aktualisiert auch die X- und y-Rasterkoordinaten. Zur Unterstützung der Berechnung der Strahlschaltpunkte dient ein programmierbarer Nur-Lese-Speicher innerhalb des Umwandlers als Nachschlagtabelle für die Steigung eines jeden definierten Vektors.
Das Schriftzeichenabbildungssystem mit den Elementen 74 bis 90 bildet die aufeinanderfolgenden Schriftzeichenzeilen auf lichtempfindlichen Film ab. Auf Anweisung des Computers 50 transportiert das System nach Vervollständigung einer jeden Zeile den Film weiter.
Die Schriftzeichengenerierung geschieht wie folgt: Der Ausgangspunkt und die Vektordaten, die sich auf den Teil des Schriftzeichens beziehen, der auf einer vertikalen Abtastzeile abgebildet werden soll, werden im RAM 72 adressiert (aufgerufen) und in dem Kodeumwandler-Eingangspuffer festgehalten. Während jede einzelne Abtastlinie abgebildet wird, werden die folgenden Daten, die Ausgangspunkte und Vektoren für die nächstfolgenden Zeilen definieren, abgerufen. Während sich die Vektoren in der Ä"-Richtung über eine Anzahl vertikaler Abtastzeilen ausdehnen können und dies normalerweise auch tun, wird ein neuer Vektor nur dann aufgerufen wenn der (oder die) zuvor gespeicherten Vektoren) zur Definition der nächsten Abtastzeile nicht ausreichen.
Die Berechnung der Kathodenstrahlröhren-Strahlschaltpunkte für die nächste Abtastzeile folgt dann unter Verwendung der in dem Vektorneigungsspeicher PROM gespeicherten Neigungen. Wie in Fi g. 19A dargestellt werden die V-Umschaltstellungen in einem Registerstapel 91 gespeichert. Die V-Umschaltwerte für jede Abtastzeile werden sodann in aufeinanderfolgende V-Register im Stapel eingegeben. Der höchste Y-Wert in der Abtastlinie wird mit einem ENDSC-Bh gekennzeichnet damit angedeutet ist, daß die Abtastung zurückgesetzt werden kann. Der Ausgang des niedrigsten K-Registers im Stapel wird durch einen Digital-Analog-Umwandler 92 im Schriftzeichengenerator 74 in einen Analogwert umgewandelt. Der Schriftzeichengenerator weist außerdem einen Sägezahngenerator 93 auf. Ein Vergleicher 94, der so geschaltet ist, daß er den Zustand eines Flip-Flop-Kippschalters 95 ändert, schaltet den Strahl der Kathodenstrahlröhre ein bzw. aus, wenn der Ausgang des Sägezahngenerators einen Analogwert erreicht, der gleich dem D-A-Ausgang ist. und veranlaßt den Stape! 91, den nächst höheren V-Abfangwert abzurufen. Ist das ENDSC-Bn vorhanden, wenn eine Strahlumschaltung eintritt, so daß ein Signal auf der Leitung 96 liegt, dann wird der Sägezahngenerator 93 zurückgesetzt, so daß ei so eine Y-Ablenkspannung erzeugt die etwas geringer ist als die des nächstfolgenden V-Abfangwerts. Das vermeidet überschüssigen Rücklauf und erhöht die Setzgeschwindigkeit.
Der Sägezahngenerator 93 verringert seine Ausgangsspannung rasch und mit konstanter Geschwindigkeit wenn an seinem Rücklauf-Eingang ein Signal vorhanden ist Dieses Rücklaufsignal bleibt eingeschaltet, bis dei Ausgang des Sägezahngenerators unter den niedrigsten V-Umschaltwert für die nächste Abtastzeile gefallen ist Das Rücklaufsignal wird durch eine logische Schaltung mit einer UND-Torschaltung 97, einem Umwandler 9i und einem Flip-Flop 99 erzeugt die einen Eingang vom Vergleicher 94 und dem £WD5C-Signal auf der Leitung 96 erhalten.
Der Betrieb der Rücklauf-Logikschaltung ist in Fig. 19B veranschaulicht Diese Figur zeigt die Y-Ablenkspannung der Kathodenstrahlröhre, die durch den Sägezahngenerator 93 für mehrere Striche des in Fig. Ij gezeigten »Q« erzeugt wird. Zu Beginn des ersten Strichs 43 werden die V-Abfangwerte V6 und Yl in da! niedrigste bzw. nächstniedrigste ^-Register im FIFO-Stapel 91 eingeführt. Da der Ausgang des Sägezahngene rators an einem Punkt etwas unterhalb der Y6 äquivalenten Analogspannung beginnt erzeugt der Vergleiche! 94 keinen Ausgang. Erreicht jedoch die y-Ablenkspannung die K6-Werte, dann erzeugt der Vergleicher 94 eir Signal, das den Kippschalter 95 von ein in aus schaltet und den nächsten Y-Wert, Y7, im FIFO-Stapel 91 abruft Die y-Ablenkspannung steigt kontinuierlich an, bis sie eine Spannung äquivalent Yl erreicht
Da der nächste V-Wert YS erheblich niedriger ist als die y-Ablenkspannung, erzeugt der Vergleicher 9A weiterhin ein Signal, bis der Sägezahngeneratorausgang herabgesetzt ist Da ein ENDSC-Bh mit Yl verbunder ist ist ein Signal auf der Leitung 96 vorhanden. Der Ausgang des Vergleichers 94 und das Signal auf der Leitung
96 triggern die UND-Torschaltung 97 und setzen das Flip-Flop 99 zur Erzeugung eines Rücklaufsignals. Ist der Ausgang des Sägezahngenerators 93 unter den Y-Wert gefallen, dann fällt der Ausgang des Vergleichers 94 ab und setzt das Flip-Flop 99 über den Umwandler 98. Dies schaltet das Rücklaufsignal ab und ermöglicht es dem Sägezahngenerator, den Strich 44 heraufzufahren. Die V-Ablenkspannung erreicht daraufhin sofort den V8-Wert, wodurch der Vergleicher 94 wiederum ein Ausgangssignal erzeugt, das den Strahl von aus in ein schaltet. Der Strahl wird wiederum ausgeschaltet, wenn die K-Ablenkspannung Y9 erreicht, wird eingeschaltet, wenn sie Y10 erreicht und wiederum ausgeschaltet, wenn sie YH erreicht. Da ein ENDSC-ßh mit VIl verbunden ist, wird der Rücklaufprozeß wiederholt, damit der Strich 45 begonnen werden kann.
F i g. 20 gibt die verschiedenen Eingänge und Ausgänge des Kodeumwandlers 70. Die Signale zur und von der Hilfssammelleitung 54 sind links, die Signale zum und vom Schriftzeichengenerator 74 sind rechts dargestellt. Diese Signale werden wie folgt definiert:
— 16-Bit-Datenwort. das das abzubildende Schriftzeichen definiert, parallel vom RAM 72 empfangen.
XBMS
— 3 Steuereingänge, deren Zustände durch den Computer 50 bestimmt werden, veranlassen und steuern die Abläufe im (Codeumwandler.
— Ein Signalsteuereingang, der vom Computer 50 ausgeht, wird verwendet, um den !Codeumwandler unabhängig von den Zuständen der anderen Signale zurückzusetzen.
CYCREQ/CYCACK
— Dateneingang geschieht nach Empfang eines A"M5S-Signals. Der !Codeumwandler übernimmt dann die Steuerung des Austausches von Synchronisationsimpulsen und liefert ein Singal auf CYCREQ, sobald es ein Datenwort benötigt. Das Wort wird festgehalten, wenn das Datenwort einem Signal auf CYCACK entspricht, und das CYCREQ-S\gna\ wird fallengelassen.
— Hat der !Codeumwandler die Verarbeitung eines Schriftzeichens abgeschlossen, dann nimmt er einen Leerlaufzustand an, bis der Schriftzeichengenerator ein FM/TV-Signal aussendet. Der !Codeumwandler liefert dann das Signal auf EOC, bis das -YSA/S-Signal, das den Dateneingang anzeigt, entfernt ist.
SDATA
— 11-Bit-Datenwörter, die Umschaltwerte darstellen, werden dem Schriftzeichengenerator in serieller Form zugeleitet
— Der !Codeumwandler erzeugt ein 5-MHz-Taktsignal, das dem Schriftzeichengenerator zur Synchronisierung der Bits im Ausgangsdatenwort (SDATA) zu%e\e\ie\ wird.
— Bezog sich das Ausgangsdatenwort auf die höchste Umrißkurve des Schriftzeichens an diesem Punkt, so wird dem Schriftzeichengenerator 74 auf dieser Leitung ein Signal zugeleitet, um die Abtastung (Strich) zu beenden.
DATRQ/DATAV
— Der Schriftzeichengenerator fordert Daten an, indem er ein Signal auf DA TRQ abgibt. Der Kodeumwandler antwortet mit einem Signal auf DATAV, wenn das Ausgangsdatenwort verfügbar ist. Die Datenbits werden dann auf SDATA über die folgenden 11 Taktzyklen übertragen, und das Signal auf DATA V wird fallengelassen.
STEPDN/STEPUP
— Der leere Raum an der Vorderkante eines Schriftzeichens wird durch den !Codeumwandler normiert. Die Breite des Raums wird dem Schriftzeichengenerator als eine Reihe von Impulsen übertragen. Jeder Impuls entspricht einer Bewegung einer Zeilenabtastung (Strich). Die Seitenbegrenzung kann vom vorausgehenden Schriftzeichen weg oder auf dieses zu bewegt werden. Die Breite des Raums und die Richtung werden in den Schriftzeichendaten spezifiziert. Impulse erscheinen auf STEPUP zur Vergrößerung der Seitenbegrenzung und STEFDN für ein Schriftzeichen mit Vorsprüngen. Die impulse treten zu Beginn der Verarbeitung des Schriftzeichens auf, bevor dem Schriftzeichengenerator irgendwelche Datenwörter zugeführt wurden.
EMPTY
— Der Schriftzeichengenerator liefert ein EMPTY-Signal, wenn sein Ausgangspuffer leer ist. Dieses wird durch den !Codeumwandler verwendet, um festzustellen, wenn ein Schriftzeichen vollständig gezeichnet ist
Fig.21 ist ein Blockdiagramm, das die Elemente des Kodeumwandlers darstellt. Das Element 100, das als Hauptsteuerungseinrichtung bezeichnet ist, ist in F i g. 22 getrennt dargestellt. Die Hauptsteuerungseinrichtung 100 erhält 16 Eingänge von einem Steuerdekodierer 302 und vier ABMS(Signale 0.1,2) und AÄSrentsprechende Eingänge. Der Dekodierer 102 erzeugt die 7 Steuereingänge von 8 Signalen, die Ausgangswörter und Steuerbytes darstellen und von einem Eingangspuffer 104 erhalten werden. Die Daten werden von den 16 XDB- Leitungen in den Eingangspuffer geklinkt
Die in Fig.22 dargestellte Hauptsteuerungseinrichtung erzeugt 46 Ausgangssignale zur Steuerung des Betriebs des Kodeumwandlers.
Diese Signale werden den verschiedenen logischen Elementen des Umwandlers so zugeführt, daß die Signale in einer vorgeschriebenen Folge eingebracht und festgehalten werden. Die Hauptsteuerungseinrichtung besteht aus einem Zustands-PROM 106, der den nächsten Zustand des Kodeumwandlers aus dem augenblicklichen Zustand und den Bedingungen auf 16 Steuereingängen bestimmt Der Zustands-PROM wird durch 4 Signale von
einem Multiplexer 108 und 5 Signale von einer Verriegelung 110 adressiert. Der Ausgang des Zustands-PROM wird der Verriegelung 110 zugeführt, die wiederum mit einem Zustandsdecodierer 112 und einem Pseudo-Zustands-PROM 114 verbunden ist.
Der Pseudo-Zustands-PROM 114 kann seinen Ausgangszustand während eines Verarbeitungszykius modifizieren, wenn der augenblickliche Zustand und seine Steuereingänge dies fordern. Zusätzlich zu dem Zustandsausgang von der Verriegelung 110 erhält der Pseudo-Zustands-PROM die 4 Steuersignale grundsätzlich vom Dekodierer 102. Von den 8 Ausgängen des Pseudo-Zustands-PROMs 114 werden 5 durch einen Pseudo-Zustandsdekodierer dekodiert um 24 Steuerausgänge zu erzeugen.
ίο Vektorverarbeitung
Für die Vektorverarbeitung sind fünf Parameter gespeichert. Dies sind:
1. Interceptwert (11 Bits): Der Interceptwert, der im Interceptspeicher 120 gespeichert ist, ist der V-Wert aufeinanderfolgender Vektorenden um einen Umriß. Das heißt:
V0 = //VAusgangspunkt(^XN,^VNistderA/-te Vektor)
Κ, = V0 ± ΔΥ0 Y2 = V, ± ΔΥ>
Yn = Yn-x ± 4Yn-\
2. X-Werte (4-Bits): Der dX-Wtn, der im ^X-Speicher 122 gespeichert ist, ist der horizontale Abstand vr ■■ rechten Ende des laufenden Vektors. Für aufeinanderfolgende Berechnungen der Rasterzeilen gilt also:
ΔΧ — JX/v(neuer Vektor beginnt hier)
ΔΧ = AX-\ } Posten vermindert
ΔΧ = 1 (Ende des Vektors).
3. JV-Wert (5 Bits): Der Δ Y-Wert, der im JV-Speichei 124 gespeichert ist, ist der annähernde vertikale Abstand vom rechten Ende des laufenden Sektors. Die vier wichtigsten Bits werden als Eingangs-J WWert und das wichtigste Bit wird durch eine Nachschlagtabelle zur Heraufsetzung der Genauigkeit eingebracht.
4. Zeichenbit (1 Bit): Das Zeichenbit, das im Steuerbitspeicher 126 gespeichert ist, ist 0 für einen Vektor in einem (beispielsweise dem oberen) Quadranten und eins für einen Vektor im anderen (beispielsweise unteren) Quadranten.
5. Gültiges Bit (1 Bit): Das gültige Bit, das im Steuerbitspeicher 126 gespeichert ist, ist 0 für einen Umschaltwert, der ein neuer Ausgangspunkt- V-Wert ohne eine Vektormodifizierung ist, und eins für einen modifizierten Umschaltwert, der zur Berechnung eines Ausgangswerts verwendet werden kann.
Mit Ausnahme der A-, B- und C-Leitungsschleifen, die den Abfangspeicher 120, einen Akkumulator 128 und einen Korrekturspeicher umfassen, wird das Zeichen ignoriert und es werden nur positive Werte berücksichtigt. Das Zeichenbit wird, wenn erforderlich, am Akkumulator eingebracht.
Die Berechnung beginnt, wenn der Ausgangspunkt- V-Wert in den Abfangspeicher 120 eingebracht ist und der
So JX-Speicher 122 die Verschiebung am Beginn des ersten Vektors hält und das gültige Bit auf Null gesetzt ist. Während jede Rasteriinie verarbeitet wird, wird der λ'-Speicher vermindert: wenn er »i« erreicht, signalisiert ei nach einem Vektorbyte. Der Abfangspeicher 120 wird mit dem V-Wert aktualisiert, und ΔΧ und ΔΥ werden gespeichert. Das gültige Bit wird auf 1 gesetzt, wodurch die Daten für den Ausgang verfügbar werden. Dieser Berechnungsprozeß ist in Fig.23 veranschaulicht Auf den folgenden Rasterlinien wird der ^iX-Speicher vermindert und ΔΥwird um den Ausgang eines Vektorneigung-PROMs 129 verringert. Der PROM wird durch ΔΧ undΔΥadressiert und gibt einen normalisierten ΔΥ-Wert, Oy, ab. Oy wird durch einen Interpolations-PROM 132 invertiert der in dieser Betriebsart nur als Komplementpuffer wirkt Dieser Ausgang wird dann durch einen Addierer 134 Λ V addiert und wieder in den Δ V-Speicher 124 eingegeben.
Alle Kodeumwandlerspeicher sind aus 16 Direktzugriffspeichern zusammengesetzt Die Direktzugriffspeieher werden parallel von einem 4 Bit mal 16 großen FIFO-Register adressiert. Dieses Register enthält die Direktzugriffspeicher-Adressen für die laufenden Umrisse in der Reihenfolge zunehmender Interceptwerte. Der FIFO arbeitet normalerweise so, daß seine Ausgänge mit seinen Eingängen verbunden sind, so daß die Adressen zirkulieren. Für jeden Vektorverarbeitungsschritt wird eine Adresse in das Ausgangsregister des FIFO taktweise eingegeben, und die vorausgehende Adresse wird dem FIFO-Eingang zugeführt
Neue Adressen bei Ausgangspunkten können vom neuen Adressenzähler in die Schleife eingebracht und dem FIFO-Stapel zugefügt werden. An Endumrißpunkten wird die Adresse nicht in den FIFO zurückgeführt und so vom Stapel gelöscht
Ursprünglich wird der neue 4-Bit-Adressenzähler auf eine Maximalzählung von 15 eingestellt und bei jedem
Auftreten eines Ausgangspunkts vermindert. Bei jeder Stelle im Direktzugriffspeicher, die Umrißinformation enthält, ist das Nicht-frei-Bit auf eins eingestellt. Das Nicht-frei-Bit (1 Bit), das im Steuerbitspeicher 126 gespeichert ist, ist O für eine leere Stelle im Direktzugriffspeicher und eins für eine besetzte Stelle. Ein Steuercode- »Umrißende« verursacht, daß das Nicht-frei-Bit auf 0 zurückgesetzt wird.
Treten in einem Schriftzeichen 16 Umrisse auf, dann muß der neue Adressenzähler auf Null vermindert werden. Jedem weiteren Ausgangspunkt muß mindestens eine gleiche Anzahl von Umrißtnd-Codes vorausge- ; hen, da nicht mehr als 16 Umrisse gleichzeitig durch den !Codeumwandler verarbeitet werden können. Bei
Eingang eines solchen Code «Umrißanfang« adressiert die Hauptsteuerung sequentiell die Stellen im Direktzugriffspeicher, indem der neue Adressenzähler vermindert wird, bis eine Adresse gefunden ist, bei der das Nichtfrei-Bit auf 0 gesetzt ist. Diese Adresse wird dann in den FIFO-Stapel eingebracht und für den neuen Umriß verwendet.
Der FIFO kann folglich einen .Stapel variabler Länge mit nicht-sequentiellen Werten enthalten, die den Adressen der laufenden Umrisse im Direktzugriffspeicher entsprechen. Die Reihenfolge, in der Ausgangspunkt- ! codes und Vektorcodes in den Schriftzeichendaten auftreten, stellt sicher, daß die Adressen in den Stapel
- eingebracht werden und so den Direktzugriffspeicherr. in der richtigen Reihenfolge eingegeben werden, daß
zunehmende Umschaltwerte am Ausgang erzeugt werden.
Dieses Direktzugriffspeicher-Adressiersystem bidet ein rasches und flexibles Verfahren zur zyklischen Verar- ! beitting einer variablen Anzahl von Umrissen, wobei eine korrekte Reihenfolge ohne zusätzliche Information
aufrechterhalten wird.
20 Maßstabänderung (Normalisierung)
r'■■■. Wert, der die Zeichenvorratsbreite in Punkten darstellt, wird in einen Normierer 136 gebracht, bevor die Vektorverarbeitung eingeleitet wird. Aufgabe des Normierers ist die horizontale Maßstabänderung des Schriftzeichens durch Bestimmung des Punktes, an dem V-Werte dem Ausgangspuffer 138 zur seriellen Übertragung , zum Schriftzeichengenerator transportiert werden müssen. Der Normierer 136 informiert die Hauptsteuerung
100, ob die nächsten Rasterzeilen zu berechnen sind oder die laufenden V-Werte ausgegeben werden sollen. • Sollen V-Werte in den Ausgangspuffer gesetzt werden, dann liefert er entweder die Interpolationsadresse oder
den Durchschnittskalenfaktor.
Der Normierer arbeitet mit wesentlich höherer Auflösung als der Rest des Kodeumwandlers, damit eine hohe Genauigkeit gerantiert wird.
Ist die Vektorauflösung X Linien/Geviert, dann arbeitet der Normierer mit 16 X Linien/Geviert. Die Erzeugung eines Schriftzeichens bei einer bestimmten Ausgangsgröße mit einer fixierten Ausgangsstrichauflösung kann IV Linien/Geviert erfordern. So approximiert der Normierer den Bruch \SX/W, der der Anzahl der Normierer-Linien zwischen jeder erforderlichen Ausgangszeile entspricht. Dies wird durch wiederholtes abwechselndes Selektieren der ganzen Zahl unterhalb 16X/Wund der ganzen Zahl oberhalb \f>X/W für verschiedene Zeiten erreicht. Ein Vier-Phasenzyklus wird bei jeder zweimal auftretenden ganzen Zahl und bei unterschiedlicher Anzahl von Wiederholungen in jeder Phase verwendet. Werden die Anzahlen der Wiederholungen durdi die Zahlen N0. N,, N2 und N3 und die ganze Zahl unter \6X/W durch M dargestellt, dann kann die Annäherung wie folgt dargestellt werden:
16Λ" (N0XM)+ (Ni x(M+\) + (N2 χ M) + (N3 χ (M+]))
W N1 + N2 + N3 + Na
Ein besonderer Fall tritt ein, wenn \6X/Wselbst eine ganze Zahl ist; dann wird nur eine einzige Zahl benutzt, und die Anzahl der Wiederholungen ist belanglos.
Der Normierer ist in F i g. 27 dargestellt Das Satzbreiteregister enthält den konstanten Wert der durch den Computer gelieferten Breite. Dieser wird zur Adressierung zweier PROM-Nachschlagtabellen benutzt. Eine enthält die Anzahl der Linien (M) zwischen jeder Ausgangslinie, die die ganzen Zahlen unterhalb und oberhalb
■ des erforderlichen Bruchs sind. Das weniger bedeutende der zwei Bits, das die Phasenzahl (P) definiert, wird in '·:·■ der Adresse verwendet, 'Jm zwischen den zwei ganzen Zahlen für jeden Satzbreitenwert zu wählen. Die andere Tabelle enthält die Anzahl der Wiederholungen (N). Diese wird zusätzlich durch die beiden Bits der Phasenzahl
■ adressiert, so daß verschiedene Anzahlen von Wiederholungen in allen vier Phasen möglich sind.
f: Der Ausgang von der Linienzahl-Tabelle wird durch einen Addierer geschickt und getrennt, wobei die 4
;; unbedeutendsten Bits in der Restverriegelung bleiben und die vier wichtigsten Bits in den Linienzähler einge-
■; bracht werden. Der Wert (L) im Linienzähler entspricht der Linienzahl bei der Vektorauflösung zwischen jedem
b> aufeinanderfolgenden Ausgang, da das Abstreifen der vier unbedeutendsten Bits effektiv durch 16 teilt. Der
« Ausgang von der Tabelle der Zahl der Wiederholungen wird dem Wiederholungs-Zähler zugeführt wenn seine
Ü Zählung (R) Null erreicht Der in der Tabeüe gespeicherte Wert ist also eins weniger als die Anzahl der
|- erforderlichen Wiederholungen.
Us Der Betrieb des Normierers ist durch das Flußdiagramm in F i g. 28 dargestellt Der Normierer wird zu Beginn
[5 eines jeden Schriftzeichens ausgelöst und dann in einzelne Zyklen getriggert und zwar auf Anforderung von der
ι % Hauptsteuerungseinrichtung, welche ihrerseits das Steuersignal »Ausgabe-Linie« abtastet.
U Die Verwendung des Normierers innerhalb der Kodeumwandlungs-Verarbeitungsvorgänge ist durch das
J^ Flußdiagramm von F i g. 24 dargestellt Der Normierer wird am Ende der Verarbeitung einer jeden Rasterlinie
j| des Schriftzeichens und nach Absendung der Werte für jede Ausgangsabtastung zyklisch wiederholt Der
t.f abgetastete Zustand des Ausgabe-Linie-Signals bestimmt, welche Linie gebildet wird. Es folgt, daß jeder Zyklus
I* eines Normierers nach einer Rasterlinienberechnung den Linienzähler vermindert und jeder Zyklus eines
Normierers nach einem Ausgabevorgang den Linienzähler auflädt Bei kleinen Punktgrößen wird die »Nein«-Schleife häufiger benutzt da mehrere Rasteriinien zwischen den Ausgabelinien auftreten. Bei großen Punktgrößen jedoch wird die »Ja«-Schleife häufiger verwendet, da mehrere Ausgabelinien zwischen den Rasteriinien auftreten.
Die Interpolationsadresse wird einfach durch die zwei bedeutsamsten Bits der Restverriegelung geliefert Dies deutet an, welche der Interpolationsleitungen erforderlich ist
Der durchschnittliche Maßstabsfaktor bestimmt das den rfy-Werten beim Aufbau des Korrekturausdrucks gegebene »Gewicht«. Das Wichten hängt von der Gesamtzahl der Werte ab, deren Durchschnitt zu ermitteln ist, und welches spezielle oy innerhalb des Gesamtwerts verarbeitet wird. Bei kleinen Ausgangsgrößen, bei denen ίο Durchschnittsermittlung verwendet wird, ist eine sehr hohe Genauigkeit unnötig. So werden nur zwei Bits verwendet um die Gesamtzahl der Werte zu definieren (wobei der Linienzähler-Eingang das am wenigsten bedeutsame Bit ignoriert), und der Ausgang des Linienzählers bestimmt welches spezielle Oy verarbeitet wird. Eine PROM-Nachschlagtabelle wird durch diese sechs Leitungen adressiert, und 1 von 8 Skalenfaktoren wird ausgewählt
Interpolierter Ausgang
Bei Punktgrößen, bei denen Interpolation verwendet wird, gibt der Kodeumwandler Werte aus, die aus direkter Interpolation zwischen den Rasteriinien errechnet sind. Dieser Interpolationsprozeß ist in Fig.25 dargestellt.
Der Interceptspeicher 120 hält den absoluten V-Wert des Endes des laufenden Vektors. Ein <4V-Speicher 124 hält die Differenz zwischen dem Abfangwert und dem V-Wert bei der letzten Rasterlinie. Der Normierer 136 liefert eine Interpolationsadresse an den Interpolations-PROM 132, di" mit oy auch vom Vektorsteigungs-PROM 129 geliefert wird. Der Ausgang des Interpolations-PROM 132, dyu ist ein Teil des für die Interpolationsstelle erforderlichen oy. Dies wird durch den Addierer 134 von ΔΥsubtrahiert und erscheint auf der D-Leitung. Es wird dem Akkumulator 128 über die Λ-Leitung zugeleitet, und die ß-Leitung trägt den Ausgang des Abfangspeichers 120. Die C-Leitung überträgt den korrekten Ausgangswert zum Ausgangspuffer 138.
Der Ausgangspuffer hält den errechneten Wert, bis der Schriftzeichengenerator anzeigt, daß er fertig ist, es zu empfangen. Die Serienübertragung wird dann durchgeführt und die nächste Ausgangsberechnung kann beginhen. Ist der übertragene Wert der für den höchsten laufenden Umriß, dann kennzeichnet der Kodeumwandler den Schriftzeichengenerator nach der Übertragung auf der ENDSC-Steuerleitung.
Durchschnitts Ausgang
Bei kleinen Punktgrößen, bei denen mehr als drei Rasterlinien zwischen jeder Ausgabelinie liegen, kann ein Dürchschnittsalgorithmus verwendet werden, um die Ausgabe- V-Werte zu erreichen. Für diesen Zweck wird der Korrekturspeicher 130 verwendet Dieser Speicher hält einen Korrekturwert, der für den Wert im Interceptspeicher 120 angewandt wird, um den Ausgabewert zu erzeugen. Das Mittelwertverfahren ignoriert Interpolationslinienadressen und liefert Ausgaben nur auf Integralrasterlinienwert.
Γ" Berechnung basiert auf der Gleichung für das arithmetische Mittel der Werte Vobis V„_i;esgilt
Σ ym = Γ—
m-0 L "
J1T1O. L- " " "
/i
Der Ausdruck in den eckigen Klammern ist der Korrekturausdruck. Der Durchschnitt wird herausgearbeitet, indem die V-Werte auf jeder Rasterlinie berücksichtigt werden und deren Durchschnitt zwischen den Ausgabelinien errechnet wird, n— 1 wird also die Anzahl der Rasteriinien zwischen den Ausgabelinien, und die unterschiedlichen Ausdrücke sind dann die <Jy-Ausgänge aus dem Vektorneigungs-PROM 129.
so Die Anwendung der Gleichung ist in F i g. 29 veranschaulicht, in der die Ausgabelinie bei d zu berechnen ist. Der Umschaltspeicher enthält den Wert Vfür das Vektorende auf G; den ganzen Vorgang hindurch.
Es gilt also:
Vn = V— Δ V(Umschaltspeicher minus V-Speicher)
Vo-Vi = rfyo (Vektorneigungs-PROM-Ausgang auf Gi)
Vi-V2 = dy\ (Vektorneigungs-PROM-Ausgang auf G2)
V2-V3 = ^(Vektomeigungs-PROM-Ausgangauf O3)
η =3
Durchschnitt Vfür die Zeilen
G0, G1, G2 = y Oy0 + y £> >, + Oy2) + (Y-Δ Y)
Der Korrektur-PROM 140 nimmt den «ty-Ausgang des Vektorneigung' PROMs 129 und multipliziert ihn mit einem Faktor annähernd gleich dem entsprechenden vorausgehenden Bruch. Dies wird durch einen kleineren PROM ausgewählt, den Faktorauswähl-PROM, im Normierer 136. der durch die Anzahl von Rasterlinien zwischen den Ausgabclinicn (dem Teiler) und der laufenden Linienzah! (dem Dividend) adressiert wird Der
Drei-Bit-Kode, der acht Skalenfaktoren ergibt, wird durch den Faktorauswähl-PROM an den Korrektur-PROM abgegeben.
Der Korrekturausdruck wird aufgebaut, indem der Ausgang eines Korrektur-PROMs 140 in den Korrekturspeicher 130 addiert wird. Dieser Speicher wird jedesmal aufgelöst, wenn eine Ausgabelinie vorhanden ist und beginnt dann mit dem Aufbau der Korrektur für die nächste Ausgabe. Der PROM-Ausgang auf der ß-Leitung is wird stets dem Korrekturspeicherausgang auf der Λ-Leitung durch den Akkumulator addiert. Der Wert im Korrekturspeicher ändert sein Vorzeichen, sobald der Umriß eines Quadranten ändert Der Korrekturspeicher besteht nur aus acht Bits, er ignoriert jedoch das unbedeutendste Bit der C-Leitung, da bei den kleinen Punktgrößen, bei denen er arbeitet, diese Genauigkeit unnötig ist Auf dies·; Art hat er effektiv neun Bits, und er hat einen Oberlauf, der ihn im Falle sehr großer Verschiebungen begrenzt
Der im Interceptspeicher 120 gehaltene Wert ist üblicherweise nicht das Yn der obigen Gleichung, sondern das Ende des laufenden Vektors. Unmittelbar vor dem Ausgang wird also der Korrekturspeicher durch das laufende Δ Kjustiert, so daß Diskrepanzen auftreten können.
Der Ausgabewert wird schließlich im Akkumulator 128 errechnet, indem der Ausgabespeicherausgang auf der /4-Leitung und der Interceptausgang auf der ß-Leitung verwendet werden. Die C-Leitung überträgt den korrekten Ausgabewert zum Ausgangspuffer 138.
Wie oben erwähnt, hält der Ausgabepuffer den errechneten Wert, bis der Schriftzeichengenerator andeutet, daß er empfangsbereit ist Die Serienübertragung wird dann durchgeführt, und die nächste Ausgabeberechnung kann beginnen. Ist der übertragene Wert der für den höchsten laufenden Umriß, dann kennzeichnet der Kodeumwandler den Schriftzeichengenerator nach der Übertragung auf der EΛ/DSC-Steuerleitung.
Hierzu 23 Blatt Zeichnungen

Claims (18)

Patentansprüche:
1. Setzgerät zur automatischen Generierung von Schriftzeichen mit einer Schriftzeiohenabbildungseinrichtung zur Aufzeichnung von Schriftzeichen als Vielzahl paralleler Abtaststriche auf einem Aufzeichnungs- träger, mit einem Schriftspeicher mit eingespeicherten digitalen Daten, die für jedes abzubildende Schriftzeichen in einem Normalraster die ersten und zweiten Koordinaten von Ausgangspunkten zweier Umrißlinien bezogen auf den Ursprung des Normalrasters als Digitalzahl definieren und anschließend eine Vielzahl geradliniger, sich aufeinanderfolgend entlang des Schriftzeichenumrisses von dem Ausgangspunkt aus erstreckender Vektoren als Digitalzahlen definieren, und mit einer elektronischen Rechner- und Steuereinrichtung, die mit dem Schriftspeicher zur Steuerung der Schriftzeichenabbildungseinrichtung in Verbindung steht, und dazu Mittel zum direkten Zugriff der gespeicherten digitalen Daten sowie zum Empfang dieser digitalen Daten eingerichtete Mittel zur Umwandlung dieser digitalen Daten in Schriftzeichen-Umschaltwerte für jeden Abtaststrich aufweist, dadurch gekennzeichnet, daß der Schriftspeicher zur Speicherung eines Satzes von normalisierten Schriftzeichen, die mindestens zwei Umrißlinien aufweisen, außer den
la) Digitalzahlen, welche die ersten und die zweiten Koordinaten der Ausgangspunkte (X1, Y,, X2, Y2) mindestens der beiden Umrisse eines der Schriftzeichen definieren,
Ib) Digitalzahlen enthält, welche die Vielzahl geradliniger, aufeinanderfolgend sich entlang der Schriftzeichenumrisse von den Ausgangspunkten erstreckender Vektoren für je einen Vektor durch eine erste, den ersten Koordinatenabstand und eine zweite, den zweiten Koordinatenabstand von einem Vektorende zum anderen darstellende Digitalzahl festlegen,
und daß die elektronische Rechner- und Steuereinrichtung mit Mitteln zur Ausgabe der gemäß la) und Ib) aus Digitalzahlen gebildeten Daten in einer die aufeinanderfolgenden Vektoren entsprechenden Folge sowie zum Empfang der Folge dieser Daten eingerichtete Mittel zu deren Umwandlung in Schriftzeichen-Umschaltwerte ausgebildet sind.
2. Setzgerät nach Anspruch 1, dadurch gekennzeichnet, daß die Mittel zum direkten Zugriff der gespeicherten digitalen Daten einen mit der Speichereinrichtung verbundenen Digitalrechner und einen Direktzugriffspeicher (RAM) aufweisen und daß die digitalen Daten von der Schriftspeichereinrichtung dem Direktzu- griffspeicher und von dort zum Umwandler unter der Steuerung des Rechners zuführbar sind.
3. Setzgerät nach Anspruch 1, dadurch gekennzeichnet, daß die Rechner- und Steuereinrichtung weiterhin Eingabemittel zur Eingabe von Betriebsanweisungen einschließlich Identität und Punktgröße der abzubildenden Schriftzeichen enthält, daß die Identität der abzubildenden Schriftzeichen den Zugriffsmitteln zur Auswahl der entsprechenden gespeicherten digitalen Daten zuführbar ist und daß die Punktgröße den
Umwandlungsmitteln zur Berechnung der Schriftzeicheninterceptwerte zuführbar ist.
4. Setzgerät nach Anspruch 3, gekennzeichnet durch Mittel, in denen eine der ersten und zweiten Koordinaten parallel den Abtaststrichen verläuft, in denen die Interceptwerte die Werte einer Koordinate an den Schnittpukten mit den Vektoren bei jedem folgenden Wert der anderen Koordinate sind, und in denen die Interceptwerte für folgende Werte der anderen Koordinate durch Addition der Neigung eines jeden dem zu berechnenden Interceptwert zugeordneten Vektors zu dem dem unmittelbar vorausgehenden Wert der anderen Koordinate entsprechenden Interceptwert errechenbar ist.
5. Setzgerät, in dem die Schriftzeichenabbildungseinrichtung eine feste Ausgangsauflösung hat, nach Anspruch 1, dadurch gekennzeichnet, daß die Umwandlungsmittel der Punktgröße Mittel zur Justierung der Anzahl der zur Definition eines Schriftzeichens erforderlichen Abtastlinien aufweisen, wodurch das Schrift zeichen in einer Koordinatenrichtung normiert wird.
6. Setzgerät nach Anspruch 1, dadurch gekennzeichnet, daß die Umwandlungsmittel Mittel zur Interpolation der Schriftzeichenabfangwerte zur Abbildung der Schriftzeichen mit einer feineren Auflösung als der Auflösung des normalisierten Kodesatzes der ersten und zweiten Koordinaten aufweist.
7. Setzgerät nach Anspruch 1, dadurch gekennzeichnet, daß die Umwandlungsmittel Mittel zur Durch-Schnittsermittlung der Schriftzcicheninterceptwerte zur Abbildung von Schriftzeichen mit einer gröberen
Auflösung als der Auflösung des normalisierten Kodesatzes aus ersten und zweiten Koordinaten aufweist.
8. Setzgerät nach Anspruch 1, dadurch gekennzeichnet, daß der Schriftspeicher zusätzlich zur Speicherung mindestens einer weiteren Digitalzahl eingerichtet ist, welche definiert, ob ein Schriftzeichen eine Unterscheidung aufweist, und durch Umwandlungsmittel, die auf die mindestens eine Zahl zur Errechnung der
Abfangwerte für unterschnittene Schriftzeichen in unterschnittenen Stellungen ansprechen.
9. Setzgerät nach Anspruch 1, dadurch gekennzeichnet, daß das Speichermedium eine Mangetscheibe (Floppy Disk) ist und die Schriftspeichereinrichtung einen Magnetscheibenleser zur selektiven Ablesung der digitalen Daten von der Magnetscheibe enthält.
10. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel, durch die der zweiten Digitalzahl jeweils eine ω vorgegebene obere Grenze gegeben wird.
11. Setzgerät nach Anspruch 10, gekennzeichnet durch Mittel, durch die der Abstand zwischen aufeinanderfolgenden ersten und zweiten Koordinaten gleich ist und wobei die erste und die /.weile Digital/.ahl die gleiche Obergrenze haben.
12. Setzgerät nach Anspruch 10, gekennzeichnet durch Bemessung der vorgegebenen Obergrenze für jede der ersten und zweiten Digitalzahl in der Weise, daß die Gesamtzahl der ein Schriftzeichenalphabet für einen gegebene Auflösung definierenden Daten minimisiert wird.
13. Setzgerät nach Anspruch 10, gekennzeichnet durch Mittel zur Bildung der ersten und zweiten Digitalzahl jeweils als 4-Bit-Binärzahlen, wobei jeder Vektor durch ein Datenbyte definiert ist.
14. Setzgerät nach Anspruch 10, gekennzeichnet durch Mittel zur Bildung der ersten und zweiten Digitalzahl jeweils als 8-Bit-Biuärzahlen, wobei jeder Vektor durch ein Datenwort definiert ist
15. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel zur Darstellung mindestens einer der Ausgangspunkte als eine den horizontalen Abstand von der linken Seite des Koordinatensatzes (Rasters) zum Ausgangspunkt definierende Digitalzanl und Mittel zur Darstellung einer anderen den vertikalen Abstand von der Schriftzeichengrundlinie zum Ausgangspunkt definierenden Digitalzanl.
16. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel zur Darstellung mindestens einer der Ausgangspunkte als eine den vertikalen Abstand vom oberen Rand des nominell ausgedehnten Gevierts zum Ausgangspunkt definierende Digitalzahl und durch Mittel zur Darstellung einer anderen den horizontalen Abstand des linken Rand des Schriftzeichens zum Ausgangspunkt definierende Digitalzahl.
17. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel zur Darstellung mindestens einiger der Schriftzeichen durch eine Digitalzahl, die einen ein Ende des Schriftzeichens spezifizierende Steuerkode definiert.
18. Setzgerät nach Anspruch 1, gekennzeichnet durch Mittel zur Darstellung mindestens einiger der Schriftzeichen durch eine Digitalzahl, die einen mindestens einen der folgenden Steuerfunktionen spezifizierenden Steuerkode definiert:
DE2953600A 1978-05-12 1979-05-11 Setzgerät zur automatischen Generierung von Schriftzeichen Expired DE2953600C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/905,451 US4199815A (en) 1978-05-12 1978-05-12 Typesetter character generating apparatus

Publications (1)

Publication Number Publication Date
DE2953600C2 true DE2953600C2 (de) 1985-06-27

Family

ID=25420841

Family Applications (3)

Application Number Title Priority Date Filing Date
DE2954383A Expired DE2954383C2 (de) 1978-05-12 1979-05-11
DE19792919013 Granted DE2919013A1 (de) 1978-05-12 1979-05-11 Verfahren zum kodieren von schriftzeichen und nach diesem verfahren arbeitende speichereinrichtung in einem setzgeraet
DE2953600A Expired DE2953600C2 (de) 1978-05-12 1979-05-11 Setzgerät zur automatischen Generierung von Schriftzeichen

Family Applications Before (2)

Application Number Title Priority Date Filing Date
DE2954383A Expired DE2954383C2 (de) 1978-05-12 1979-05-11
DE19792919013 Granted DE2919013A1 (de) 1978-05-12 1979-05-11 Verfahren zum kodieren von schriftzeichen und nach diesem verfahren arbeitende speichereinrichtung in einem setzgeraet

Country Status (8)

Country Link
US (1) US4199815A (de)
JP (6) JPS54149522A (de)
CA (3) CA1121056A (de)
DE (3) DE2954383C2 (de)
FR (1) FR2425677B1 (de)
GB (2) GB2020520B (de)
IT (1) IT1116588B (de)
SE (3) SE446705B (de)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3806223A1 (de) * 1987-02-27 1988-09-08 Hitachi Ltd Verfahren zur erzeugung eines zeichenabbilds
DE3917917A1 (de) * 1988-06-02 1989-12-07 Ricoh Kk Verfahren und einrichtungen zum erzeugen eines mehrstufigen zeichens
EP0290374A3 (en) * 1987-04-23 1990-01-17 H. Berthold Aktiengesellschaft Method of and device for generating and reproducing two-dimensional graphical objects
DE3914149A1 (de) * 1988-07-12 1990-01-18 Ona Electro Erosion System zur bestimmung der geometrie eines modells in zwei dimensionen durch kuenstliche sicht
DE4019660A1 (de) * 1989-06-20 1991-01-10 Ricoh Kk Bildabgabesystem
DE4112419A1 (de) * 1990-04-16 1991-10-17 Ricoh Kk Bilddaten-erzeugungseinrichtung

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4338673A (en) * 1978-12-05 1982-07-06 Compugraphic Corporation Phototypesetting system and method
JPS5727343Y2 (de) * 1979-02-02 1982-06-14
US4307377A (en) * 1979-11-09 1981-12-22 Bell Telephone Laboratories, Incorporated Vector coding of computer graphics material
US4491836A (en) * 1980-02-29 1985-01-01 Calma Company Graphics display system and method including two-dimensional cache
US4492956A (en) * 1980-02-29 1985-01-08 Calma Company Graphics display system and method including preclipping circuit
GB2074259B (en) * 1980-04-12 1983-08-17 Automotive Prod Co Ltd Rotation sensitive drum brake
US4425559A (en) 1980-06-02 1984-01-10 Atari, Inc. Method and apparatus for generating line segments and polygonal areas on a raster-type display
GB2082014B (en) * 1980-06-30 1985-05-09 Canon Kk Facsimile apparatus with character generator
US4331955A (en) * 1980-08-07 1982-05-25 Eltra Corporation Method and apparatus for smoothing outlines
JPS5739963A (en) * 1980-08-22 1982-03-05 Photo Composing Mach Mfg Co Ltd Memorizing method for character, figure and the like and photocomposing device
US4404554A (en) * 1980-10-06 1983-09-13 Standard Microsystems Corp. Video address generator and timer for creating a flexible CRT display
JPS57169791A (en) * 1981-04-10 1982-10-19 Shaken Kk Method of memorizing character and figure and phototypesetter
US4566126A (en) * 1982-04-30 1986-01-21 Fuji Electric Company, Ltd. Pattern discriminator
US4550438A (en) * 1982-06-29 1985-10-29 International Business Machines Corporation Retro-stroke compression and image generation of script and graphic data employing an information processing system
US4555763A (en) * 1982-07-01 1985-11-26 Decision Data Computer Corp. Method and apparatus for storage and accessing of characters, and electronic printer employing same
JPS5949071A (ja) * 1982-09-13 1984-03-21 Dainippon Screen Mfg Co Ltd 図形輪郭デ−タ圧縮方法
JPS5949655A (ja) * 1982-09-14 1984-03-22 Dainippon Screen Mfg Co Ltd 2値図形パターンの輪郭データ作成方法
JPS59101969A (ja) * 1982-12-01 1984-06-12 Dainippon Screen Mfg Co Ltd 2値画像パタ−ンのデ−タ処理方法及び装置
US4783829A (en) * 1983-02-23 1988-11-08 Hitachi, Ltd. Pattern recognition apparatus
DE3317842A1 (de) * 1983-05-17 1984-12-06 Mergenthaler Linotype Gmbh, 6236 Eschborn Graphisches reproduktions- und seztverfahren von schriftzeichen
EP0131676B1 (de) * 1983-07-04 1989-08-02 URW Software & Type GmbH Verfahren zum automatischen Digitalisieren des Umrisses von Strichgraphiken z.B. Buchstaben
JPS6075978A (ja) * 1983-10-03 1985-04-30 Photo Composing Mach Mfg Co Ltd 文字画像デ−タの処理方法
JPH0613212B2 (ja) * 1983-10-03 1994-02-23 株式会社写研 文字画像デ−タの処理方法
DE3572783D1 (en) * 1984-02-21 1989-10-12 Hell Rudolf Dr Ing Gmbh Method and device for recording characters
DE3419140A1 (de) * 1984-05-23 1985-11-28 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt Verfahren zur omnidirektionalen merkmalserkennung in einem sensorsehfeld
EP0191134B1 (de) * 1984-09-10 1991-12-18 Linotype Company Verfahren zur Erzeugung eines Satzes von eine Kurve darstellenden Signalen
US4688182A (en) * 1984-09-10 1987-08-18 Allied Corporation Method and apparatus for generating a set of signals representing a curve
US4686634A (en) * 1984-09-10 1987-08-11 Allied Corporation Method and apparatus for generating a set of signals representing a curve
US4686635A (en) * 1984-09-10 1987-08-11 Allied Corporation Method and apparatus for generating a set of signals representing a curve
US4686632A (en) * 1984-09-10 1987-08-11 Allied Corporation Method and apparatus for generating a set of signals representing a curve
EP0175179B1 (de) * 1984-09-10 1992-01-02 Linotype Company Verfahren und Gerät zur Erzeugung eines Satzes von eine Kurve darstellenden Signalen
US4674059A (en) * 1984-09-10 1987-06-16 Allied Corporation Method and apparatus for generating a set of signals representing a curve
DE3585902D1 (de) * 1984-09-10 1992-05-27 Linotype Co Verfahren zur erzeugung eines satzes von eine kurve darstellenden signalen.
US4686633A (en) * 1984-09-10 1987-08-11 Allied Corporation Method and apparatus for generating a set of signals representing a curve
US4686636A (en) * 1984-09-10 1987-08-11 Allied Corporation Method and apparatus for generating a set of signals representing a curve
JPH078559B2 (ja) * 1985-08-22 1995-02-01 大日本印刷株式会社 ディスプレイ上での文字書体指定方法
JPS6280058A (ja) * 1985-10-03 1987-04-13 Canon Inc 画像処理装置
JPS6282484A (ja) * 1985-10-07 1987-04-15 Canon Inc 線形図形の変換方法
US5365599A (en) * 1985-10-07 1994-11-15 Canon Kabushiki Kaisha Method and system of converting delineative pattern
JPS62202274A (ja) * 1986-02-28 1987-09-05 Nec Yamagata Ltd 電子機器の文字形状記憶方法
JPH01181173A (ja) * 1988-01-14 1989-07-19 Toshiba Corp ベクトルフォント輪郭描画方式
JP2634851B2 (ja) * 1988-04-28 1997-07-30 シャープ株式会社 画像処理装置
US5018217A (en) * 1988-09-26 1991-05-21 Brother Kogyo Kabushiki Kaisha Data converting apparatus having means for changing ornamental stroke end data of character outline
US5261032A (en) * 1988-10-03 1993-11-09 Robert Rocchetti Method for manipulation rectilinearly defined segmnts to form image shapes
AU624137B2 (en) * 1988-10-03 1992-06-04 Sun Microsystems, Inc. Method and apparatus for image manipulation
US5086482A (en) * 1989-01-25 1992-02-04 Ezel, Inc. Image processing method
JPH03224073A (ja) * 1990-01-30 1991-10-03 Ezel Inc 位置合わせ装置
DE69110213T2 (de) * 1990-02-27 1995-10-26 Seiko Epson Corp Verfahren zur erzeugung von punktsignalen für zeichenmuster und einrichtung hierzu.
US5245679A (en) * 1990-05-11 1993-09-14 Hewlett-Packard Company Data field image compression
DE69328811T2 (de) * 1992-10-20 2001-01-11 Network Computing Devices, Inc. Opcode abhängige Komprimierung für ein Window-System.
US6295378B1 (en) 1996-02-29 2001-09-25 Sanyo Electric Co., Ltd. Handwriting stroke information encoder which encodes handwriting stroke information by sampling
US8121338B2 (en) * 2004-07-07 2012-02-21 Directsmile Gmbh Process for generating images with realistic text insertion
CN118003776B (zh) * 2024-02-20 2026-08-04 长沙八思量信息技术有限公司 激光打印移动装置的控制方法、系统、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3471848A (en) 1963-09-30 1969-10-07 Alphanumeric Inc Pattern generator
GB1393653A (en) * 1972-06-08 1975-05-07 Digital Equipment Corp Display device with means for drawing vectors
DE2422464B2 (de) * 1973-05-11 1976-02-19 Rockwell International Corp., El Segundo, Calif. (V.St.A.) Verfahren zum codieren von schriftzeichen fuer den photoelektronischen lichtsatz und zeichengenerator zur darstellung der so codierten schriftzeichen

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3050581A (en) * 1960-08-30 1962-08-21 Bell Telephone Labor Inc Line tracing system
US3735389A (en) * 1970-02-24 1973-05-22 Zeta Research Digital graphic display apparatus, system and method
BE791200R (fr) * 1971-11-12 1973-03-01 Western Electric Co Appareil et procede pour transformer des informations numeriques en images graphiques et pour les
US4029947A (en) * 1973-05-11 1977-06-14 Rockwell International Corporation Character generating method and system
JPS5341017B2 (de) * 1973-06-06 1978-10-31
US3946365A (en) * 1973-12-13 1976-03-23 Bantner John A Graphic symbol generator

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3471848A (en) 1963-09-30 1969-10-07 Alphanumeric Inc Pattern generator
GB1393653A (en) * 1972-06-08 1975-05-07 Digital Equipment Corp Display device with means for drawing vectors
DE2422464B2 (de) * 1973-05-11 1976-02-19 Rockwell International Corp., El Segundo, Calif. (V.St.A.) Verfahren zum codieren von schriftzeichen fuer den photoelektronischen lichtsatz und zeichengenerator zur darstellung der so codierten schriftzeichen

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3806223A1 (de) * 1987-02-27 1988-09-08 Hitachi Ltd Verfahren zur erzeugung eines zeichenabbilds
EP0290374A3 (en) * 1987-04-23 1990-01-17 H. Berthold Aktiengesellschaft Method of and device for generating and reproducing two-dimensional graphical objects
DE3917917A1 (de) * 1988-06-02 1989-12-07 Ricoh Kk Verfahren und einrichtungen zum erzeugen eines mehrstufigen zeichens
DE3914149A1 (de) * 1988-07-12 1990-01-18 Ona Electro Erosion System zur bestimmung der geometrie eines modells in zwei dimensionen durch kuenstliche sicht
DE4019660A1 (de) * 1989-06-20 1991-01-10 Ricoh Kk Bildabgabesystem
DE4112419A1 (de) * 1990-04-16 1991-10-17 Ricoh Kk Bilddaten-erzeugungseinrichtung

Also Published As

Publication number Publication date
JPS61258285A (ja) 1986-11-15
SE456049B (sv) 1988-08-29
US4199815A (en) 1980-04-22
JPH0224895U (de) 1990-02-19
JPS59176048A (ja) 1984-10-05
DE2954383C2 (de) 1987-07-02
FR2425677A1 (fr) 1979-12-07
CA1105620A (en) 1981-07-21
DE2919013C2 (de) 1989-04-27
DE2954383A1 (de) 1985-03-21
IT1116588B (it) 1986-02-10
JPH021787U (de) 1990-01-08
GB2089179A (en) 1982-06-16
JPS54149522A (en) 1979-11-22
SE8501905D0 (sv) 1985-04-18
SE8502470L (sv) 1985-05-20
GB2089179B (en) 1982-12-08
CA1105619A (en) 1981-07-21
SE8502470D0 (sv) 1985-05-20
IT7948998A0 (it) 1979-05-10
GB2020520A (en) 1979-11-14
JPS59170883A (ja) 1984-09-27
FR2425677B1 (fr) 1985-05-31
SE7904009L (sv) 1979-11-13
SE456050B (sv) 1988-08-29
GB2020520B (en) 1982-11-17
CA1121056A (en) 1982-03-30
SE446705B (sv) 1986-10-06
DE2919013A1 (de) 1979-12-06

Similar Documents

Publication Publication Date Title
DE2919013C2 (de)
DE69312401T2 (de) Vorrichtung und verfahren zur erzeugung von linien von variabler breite
DE2940897C2 (de) Digitales Setzgerät
DE3440377C2 (de)
DE3831427C2 (de)
DE3851484T2 (de) Datenverringerung für die Bildanzeige von Ganzseiten-Graphiken.
DE2264090C3 (de) Datenverdichtung
DE69230282T2 (de) Bildverarbeitungsverfahren und -vorrichtung
DE68923227T2 (de) Vektor-zu-Raster-Umwandlungsverfahren.
DE2706080C2 (de) Verfahren zur adaptiven Quantisierung von Transformationskoeffizienten eines Bildes und Anordnung zum Durchführen des Verfahrens
DE69721941T2 (de) Gerät und Verfahren zum Extrahieren von Mustern
DE2459106C2 (de) Schaltungsanordnung zur Darstellung von Zeichen auf einem Bildschirm mittels eines Kathodenstrahls
DE2724108A1 (de) System zur optischen wiedergabe von symbolen, zeichen und darstellungen, insbesondere fuer layout von anzeigen in zeitungen u.dgl.
EP0137208B1 (de) Verfahren zur Umwandlung eines Eingangsbitstromes
DE2950712A1 (de) Einrichtung zur erzeugung eines elektronischen hintergrundrasterfeldes
DE2724075A1 (de) System zur optischen wiedergabe von symbolen, zeichen und darstellungen, insbesondere fuer den layout von anzeigen in zeitungen u.dgl.
DE2549792A1 (de) Zeilendrucker mit gemischter zeichenteilung
DE2816609C2 (de) Anordnung zur Bildverarbeitung
DE19610759A1 (de) Verfahren zum Codieren eines Dokumentes und Verfahren zum Senden eines Dokumentes von einem Sendecomputersystem zu einem Empfangscomputersystem
DE69013378T2 (de) Anordnung zur Umsetzung von Bildumrissdaten in Bildpunkte darstellende Punktdaten.
DE1913502A1 (de) Datengesteuerter Schriftzeichengenerator
DE2727627A1 (de) Paralleldekodiersystem und verfahren zur umsetzung von binaerdaten in videoform
DE69422540T2 (de) Gerät und Verfahren zur Erzeugung einer gerasterten Bildreproduktion
DE68910096T2 (de) Verfahren und Gerät zur Bildung von Buchstabenumrisslinien.
DE4306025A1 (de) Bildverarbeitungseinrichtung

Legal Events

Date Code Title Description
OI Miscellaneous see part 1
OI Miscellaneous see part 1
8125 Change of the main classification
8125 Change of the main classification
8126 Change of the secondary classification
8172 Supplementary division/partition in:

Ref country code: DE

Ref document number: 2954383

Format of ref document f/p: P

Q171 Divided out to:

Ref country code: DE

Ref document number: 2954383

AC Divided out of

Ref country code: DE

Ref document number: 2919013

Format of ref document f/p: P

D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: ALLIED CORP., MORRISTOWN, N.J., US

8328 Change in the person/name/address of the agent

Free format text: DANNENBERG, G., DIPL.-ING., 6000 FRANKFURT WEINHOLD, P., DIPL.-CHEM. DR., 8000 MUENCHEN GUDEL, D., DR.PHIL. SCHUBERT, S., DIPL.-ING., 6000 FRANKFURT BARZ, P., DIPL.-CHEM. DR.RER.NAT., PAT.-ANW., 8000 MUENCHEN

AH Division in

Ref country code: DE

Ref document number: 2954383

Format of ref document f/p: P

8327 Change in the person/name/address of the patent owner

Owner name: LINOTYPE CO., HAUPPAUGE, N.Y., US

AC Divided out of

Ref country code: DE

Ref document number: 2919013

Format of ref document f/p: P

8339 Ceased/non-payment of the annual fee