DE4323025C2 - Schriftzeichen-Speichervorrichtung - Google Patents
Schriftzeichen-SpeichervorrichtungInfo
- Publication number
- DE4323025C2 DE4323025C2 DE4323025A DE4323025A DE4323025C2 DE 4323025 C2 DE4323025 C2 DE 4323025C2 DE 4323025 A DE4323025 A DE 4323025A DE 4323025 A DE4323025 A DE 4323025A DE 4323025 C2 DE4323025 C2 DE 4323025C2
- Authority
- DE
- Germany
- Prior art keywords
- bit map
- character
- map data
- data
- bit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/005—Statistical coding, e.g. Huffman, run length coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
Description
Die vorliegende Erfindung betrifft eine Schriftzeichen-Speichervorrichtung
zur Speicherung eines Bitdarstellungs-
Schriftzeichens, welche insbesondere zum Komprimieren (Packen) und
Dekomprimieren (Entpacken) von Bitdarstellungs-Schriftzeichen Anwendung
findet.
Ein Schriftzeichen ist ein Satz von Zeichenmustern, der im allgemeinen und
üblicherweise für jeden Satz von Zeichen wie alphanumerischen Zeichen, Kana, d. h.
japanische Zeichen und Kanji, d. h. chinesische Zeichen bestimmt ist. Er ist auf einem
Speichermedium wie einem Festspeicher (ROM) in der Steuereinheit eines Druckers
oder einer Anzeigeeinheit oder ähnlichem gespeichert. Ein von einem Zentralrechner
übertragener Zeichencode wird in die entsprechenden Bit-Map-Daten umgewandelt und
von der Steuereinheit in einem Zeilenpuffer oder einem Bildpuffer (Seitenspeicher)
gespeichert.
Es gibt verschiedene solcher Schriftzeichen, wie den Mincho-Typ, den "Gothik"-Typ,
usw. Diese Schriftzeichen werden in Speichermedien wie einem ROM oder einer
IC-Karte usw. in einem Bitdarstellungsformat eines gedruckten (angezeigten) Bildes
gespeichert.
Jedoch hat sich mit der wachsenden Nachfrage für qualitativ hochwertige gedruckte
oder angezeigte Zeichen die Anordnung der Punkt-Matrix von Bit-Map-Daten, die in
einem Bit-Map-Schriftzeichenformat dargestellt werden, zu einer Darstellung mit sehr
hoher Dichte (hoher Auflösung) geändert, nämlich von 24 × 24 Punkten zu 48 × 48
Punkten. Wenn ein Bit-Map-Schriftzeichen durch 48 × 48 Punkte dargestellt wird,
können qualitativ hochwertige Zeichen durch einen seriellen Drucker gedruckt werden,
als wären sie mit 300 oder 360 dpi (Punkte pro inch) gedruckt. Jedoch wurden, da die
Menge der Bit-Map-Schriftzeichendaten stark ansteigt, wenn das Bit-Map-Schrift
zeichen in hoher Auflösung dargestellt wird, verschiedene Methoden zum
Komprimieren (Packen) und Speichern eines Bit-Map-Schriftzeichens auf einem
Speichermedium entwickelt.
Ein typisches Beispiel dieser Packungs- und Speichermethoden ist, einen Lauflängen-Co
dierprozeß auszuführen, indem man die Bit-Map-Daten jedes Zeichens des Bit-Map-Schrift
zeichens in "Ein"-Punkte (z. B. "Schwarz") und "Aus"-Punkte (z. B. "Weiß")
aufteilt und dann die mit dem Lauflängen-Codierungsverfahren codierten Daten in
Speichermedien, wie ROM oder ähnlichem, speichert. Bei diesem Verfahren sollen
lauflängencodierte Daten zu Bit-Map-Daten aus "Ein"-Punkten und "Aus"-Punkten
decodiert und dekomprimiert (entpackt) werden.
Wenn Punkt-Matrix-Daten mit hoher Dichte wie ein Bitdarstellungs-Schriftzeichen mit
einer hohen Dichte (hohen Auflösung), das durch "Ein"-Punkte und "Aus"-Punkte
repräsentiert ist, komprimiert und dekomprimiert werden, so ist das
Kompressionsverhältnis sehr gering, ungefähr 2/3 bei herkömmlichen Verfahren wie
dem Lauflängen-Codierungsverfahren. Weiterhin ist eine spezifische Schaltung
erforderlich, um die Daten zu dekomprimieren und, wenn die Bitdarstellungsdaten jedes
Zeichens in vertikaler Richtung gedreht werden (z. B. um 90 Grad entgegen dem
Uhrzeigersinn), können die Daten nicht gedreht werden, bis die Daten jedes Zeichens
vollständig dekomprimiert sind. Wenn solch ein Drehvorgang von einer spezifischen
Hardware-Schaltung ausgeführt wird, so kann diese unerwünscht kompliziert sein.
Andererseits kann, wenn der Drehvorgang durch eines Festprogramm ausgeführt wird,
die Hardware-Anordnung einfach sein, muß aber eine niedrige
Verarbeitungsgeschwindigkeit aufweisen.
In jüngster Zeit wurde eine Konturschrift weithin benutzt. Diese kann mit einem hohen
Kompressionsverhältnis verarbeitet werden, während die Verarbeitungsqualität dazu
neigt, sich bei Daten mit einer Dichte geringer als 68 × 68 Punkten pro Zeichen zu
verschlechtern. Da weiterhin eine komplizierte Verarbeitung erforderlich ist, wenn ein
Zeichen als Bit-Map-Daten gespeichert wird, wird ein Gerät geringer Leistungsfähigkeit
langsam, wenn es die Daten dekomprimiert. Daher ist dies nur anwendbar bei
hochleistungsfähigen Geräten, nicht für den persönlichen Gebrauch.
Die US-A-4,673,816 beschreibt eine Testvorrichtung zum Testen eines hochauflösenden
Musters, wie es beispielsweise zur Herstellung von VLSI-Bausteinen verwendet wird.
Dabei ist aus dieser Druckschrift bekannt, das überprüfte Testmuster mit einem Referenz-Test
muster zu vergleichen. Wiederholt auftretende Testmuster werden dementsprechend
wiederholt mit Daten des Referenz-Testmusters verglichen. Diese Druckschrift betrifft
jedoch nicht das Speichern von komprimierten Schriftzeichen.
Die DE-C2-35 38 639 beschreibt ein Bildverarbeitungssystem, wobei zur Ermöglichung
einer möglichst schnellen und einfachen Codierung von Bildinformationen Codes mit
geringer Redundanz erzeugt werden. Dabei werden Bildinformationen mit Hilfe einer
Unterteilungseinrichtung in rechteckige Rasterfelder aufgeteilt und die in den Rasterfeldern
enthaltenen Bildinformationen gemäß einem bestimmten Codierverfahren codiert.
Die DE-C2-32 41 673 offenbart ein Verfahren zum Komprimieren von Umrißdaten
zweidimensionaler Bilddarstellungen, wie z. B. digitalisierten Umrißdaten von
Schriftzeichen, wobei dieses Verfahren in computergesteuerten Fotosetzmaschinen
angewendet wird. Mit Hilfe eines Rasters wird die Bilddarstellung in eine Vielzahl von
Einzelbildern zerlegt, die separat gespeichert werden. Die Schnittpunkte zwischen den
Raster-Trennlinien und den Umrißlinien der Einzelbilder werden erfaßt und dienen
nachfolgend als Start- und Endpunkte zum Abtasten der dazwischenliegenden Umrißlinien,
wobei infolge des Abtastvorgangs die Umrißlinien durch charakteristische Punkte ersetzt
werden. Die Umrißlinien der Bilddarstellung werden somit nunmehr lediglich durch die
Folge korrespondierender Start- und Endpunkte benachbarter Einzelbilder sowie der zuvor
ermittelten charakteristischen Punkte zwischen diesen Start- und Endpunkten der
Einzelbilder definiert und verarbeitet.
Aus Makoto Nahao "Data Compression of Chinese Character Patterns", Proc. of the
IEEE, Vol. 68, No. 7, 1980, Seiten 818-829, sind weitere Datenkompressionsverfahren
zur Verarbeitung chinesischer Schriftzeichen bekannt, mit denen der zu verarbeitende
Datenaufwand möglichst gering gehalten werden soll, wobei diesbezüglich die Darstellung
chinesischen Schriftzeichen in Form von Punktmustern, die Umrißcodierung der
Schriftzeichen, die Darstellung der chinesischen Schriftzeichen durch ihren Grundkörper
und die Synthese der Schriftzeichen aus Teilmustern diskutiert wird.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, eine Schriftzeichen-Spei
chervorrichtung zum verbesserten Speichern eines komprimierten
Bit-Map-Schriftzeichens zu schaffen.
Diese Aufgabe wird erfindungsgemäß durch eine Schriftzeichen-Speichervorrichtung nach
Anspruch 1 gelöst. Die Unteransprüche beschreiben allgemein vorteilhafte
Ausgestaltungen und Ausführungsformen der vorliegenden Erfindung.
Eine erfindungsgemäße Schriftzeichen-Speichereinrichtung enthält eine Bit-Map-Da
ten-Speichereinheit und eine Adresseninformations-Speichereinheit.
Die Bit-Map-Daten sind in mehreren rechteckigen Bereichen enthalten.
Wenn mehrere der
rechteckigen Bereiche dieselben Bit-Map-Daten der rechteckigen Bereiche, die jedes
Zeichen bilden, enthält, speichert die Bit-Map-Daten-Speichereinheit für einen Block
die Bit-Map-Daten, die in den mehreren rechteckigen Bereichen enthalten sind. Wenn
ein rechteckiger Bereich Bit-Map-Daten aufweist, die nicht in einem anderen
rechteckigen Bereich enthalten sind, so speichert die Bit-Map-Daten-Speichereinheit die
Bit-Map-Daten einzeln. So werden Bit-Map-Daten nicht doppelt gespeichert.
Die Adresseninformations-Speichereinheit speichert auch die Adresseninformationen,
die den Speicherbereich in der Bit-Map-Daten-Speichereinheit angibt, auf welchem die
Bit-Map-Daten jedes der rechteckigen Bereiche eines Zeichens gespeichert sind.
Entsprechend kann die Datenmenge, da die Bit-Map-Daten nicht doppelt gespeichert
werden, wenn die Vorrichtung zur Speicherung des Schriftzeichens Bit-Map-Daten
einer Mehrzahl von Zeichen speichert, effektiv komprimiert werden, auch wenn eine
Anzahl von Zeichen-Schrifttypen gespeichert wird.
Wenn die von der oben beschriebenen Vorrichtung zur Speicherung von Schriftzeichen
komprimierten und gespeicherten Bit-Map-Daten dekomprimiert werden, wird
eine Bit-Map-
Daten-Leseeinheit angewiesen, von der Bit-Map-Speichereinheit die Bit-Map-Daten jeder
der rechteckigen Bereiche, die jedes Zeichen bilden, auszulesen entsprechend der
Adresseninformation über das zu dekomprimierende Zeichen, nachdem sie in der
Adresseninformations-Speichereinheit der oben beschriebenen Vorrichtung zur
Speicherung von Schriftzeichen gespeichert worden ist. Dann werden
die komprimierten Daten zu einem Zeichen-Schriftzeichen
durch Zusammenfügen der Bit-Map-Daten jeder der rechteckigen Bereiche, die von der
Bit-Map-Daten-Leseeinheit ausgelesen worden sind, dekomprimiert.
D. h., eine Vorrichtung zum Dekomprimieren von Schriftzeichen
empfängt Adresseninformation, die den Speicherbereich in der Bit-Map-Daten-
Speichereinheit angibt, in der die Bit-Map-Daten eines zu dekomprimierenden Zeichens
entsprechend der Adresseninformation gespeichert sind, die in der
Adresseninformations-Speichereinheit der Vorrichtung zur Speicherung von
Schriftzeichen abgespeichert worden ist. Dann dekomprimiert die
Dekompressionsvorrichtung die Daten entsprechend der Adresseninformation zu einem
Bit-Map-Schriftzeichen. Daraus folgt, daß kein kompliziertes Dekompressionsverfahren
erforderlich ist, bei dem codierte Daten decodiert werden müssen, womit der
Dekompressionsvorgang wesentlich beschleunigt wird.
Es folgt eine Beschreibung der Zeichnungen, wobei
Fig. 1 ein Diagramm (1) ist, welches das Prinzip der vorliegenden
Erfindung zeigt;
Fig. 2 ein Diagramm (2) ist, welches das Prinzip der vorliegenden
Erfindung zeigt;
Fig. 3 ein Verfahren zur Aufteilung eines Zeichens in Blöcke als
Vorverarbeitung des Datenkompressionsvorgangs entsprechend
eines Ausführungsbeispiels der vorliegenden Erfindung zeigt;
Fig. 4 eine Anordnung von 36 Stücken von Blockdaten, die durch
Aufteilung eines Zeichens (Symbols) von Bit-Map-Schrift
zeichendaten erhalten wurden, zeigt;
Fig. 5 ein Diagramm ist, das die Blocknummern enthält, die bei Bezug auf
jeden Block benutzt werden;
Fig. 6 ein Verfahren zur Aufteilung eines Zeichens in Blöcke zeigt, wenn
ein Bit-Map-Schriftzeichen gespeichert ist;
Fig. 7 ein Verfahren zur Speicherung von Bit-Map-Daten zeigt;
Fig. 8 ein Flußdiagramm zur Erklärung des Verfahrens zum
Komprimieren eines Bit-Map-Schriftzeichens entsprechend einem
Ausführungsbeispiel der vorliegenden Erfindung ist;
Fig. 9 ein Format zum Komprimieren und Speichern eines Bit-Map-Schrift
zeichens entsprechend einem Ausführungsbeispiel der
vorliegenden Erfindung zeigt;
Fig. 10 ein Zeichen eines Schriftzeichens, das in Blöcke aufgeteilt ist,
zeigt;
Fig. 11 ein Beispiel von in der Dateneinheit gespeicherten Bit-Map-Daten
zeigt;
Fig. 12A und 12B ein Beispiel der Zuordnung zwischen einem Block und einer
Speicheradresse der Bit-Map-Daten zeigt;
Fig. 13 ein Blockdiagramm ist, das die Systemkonfiguration eines seriellen
Druckers nach dem Punkt-Matrix-Verfahren entsprechend einem
Ausführungsbeispiel der vorliegenden Erfindung zeigt;
Fig. 14 ein Beispiel der Konfiguration eines Datenleseregisters zeigt;
Fig. 15 ein Beispiel der Konfiguration eines Zeilenpuffers zeigt;
Fig. 16 ein Flußdiagramm ist, das den Betrieb der Zentralrechnereinheit
(CPU) zeigt, wenn die Zeichen ohne Vorverarbeitung ausgedruckt
werden;
Fig. 17A und 17B ein Verfahren zur Verarbeitung von Zeichen aus einem horizontal
ausgerichteten Format in ein vertikal ausgerichtetes Format zeigt;
Fig. 18 ein Verfahren zur Speicherung von Bit-Map-Schrifttypendaten eines
bestimmten Zeichens in einem Zeilenpuffer der
Zentralrechnereinheit, wenn die Zeichen horizontal angerichtet
sind, zeigt;
Fig. 19 ein Flußdiagramm ist, das den Betrieb der Zentralrechnereinheit
(CPU) zeigt, wenn die Zeichen ausgedruckt werden, nachdem sie
entsprechend einem Ausführungsbeispiel der vorliegenden
Erfindung verarbeitet wurden;
Fig. 20 ein Verfahren zur Speicherung von Bit-Map-Daten im Block BL₁ in
einem vertikal ausgerichteten Format in einem Zeilenpuffer zeigt;
Fig. 21 das vertikal ausgerichtete Format der gedruckten Zeichen zeigt und
Fig. 22 ein Beispiel eines anderen Verfahrens zur Aufteilung eines Zeichens
in Byte-Blöcke zeigt.
Ausführungsbeispiele der vorliegenden Erfindung werden im folgenden mit Bezug auf
die beiliegenden Zeichnungen beschrieben.
Fig. 1 ist ein Blockdiagramm, das das Prinzip der
zum Komprimieren
eines Schriftzeichens eingesetzten erfindungsgemäßen Speichervorrichtung zeigt.
Die Speichervorrichtung enthält die folgenden Komponenten. Eine
Aufteilungseinheit 1 teilt die Bit-Map-Daten jedes Zeichens (im allgemeinen ein Symbol
und einen Graph einschließend) eines Bit-Map-Schriftzeichens gleichmäßig in mehrere
rechteckige Bereiche (Blöcke) auf. Eine Erfassungseinheit 2 erfaßt die rechteckigen
Bereiche, die dieselben Bit-Map-Daten aus den mehreren rechteckigen Bereichen
enthalten, die jedes der Zeichen bilden, die von der Aufteilungseinheit 1 gleichmäßig in
Teile aufgeteilt wurden. Wenn mehrere rechteckige Bereiche, die dieselben Bit-Map-Da
ten enthalten, von der Erfassungseinheit 2 erfaßt worden sind, speichert eine
Bit-Map-Daten-Speichereinheit 3 die Bit-Map-Daten für einen Block, die in den mehreren
rechteckigen Bereichen enthalten sind. Wenn ein rechteckiger Bereich Bit-Map-Daten
aufweist, die nicht in einem anderen rechteckigen Bereich enthalten sind, speichert die
Bit-Map-Daten-Speichereinheit die Bit-Map-Daten einzeln. Eine Adresseninformations-Spei
chereinheit 4 speichert Adresseninformation, die den Speicherbereich in der
Bit-Map-Daten-Speichereinheit 3 angibt, in dem die Bit-Map-Daten jedes der gleich großen
aufgeteilten Bereiche, die ein Zeichen bilden, gespeichert sind.
Die Aufteilungseinheit 1 kann so ausgebildet sein, daß ein Zeichen gleichmäßig in
rechteckige Bereiche einer Größe aufgeteilt wird, die einer Datenlänge entspricht, die
bei einer internen Verarbeitung in der Speichervorrichtung zum
Dekomprimieren der Daten in, z. B., einen Bit-Map-Schriftzeichen geeignet ist.
Die komprimierten Bit-Map-Daten
werden in der Schriftzeichen-Speichereinrichtung gespeichert, die die Bit-Map-Da
ten-Speichereinheit 3 und die Adresseninformations-Speichereinheit 4 umfaßt.
Fig. 2 ist ein Diagramm, das das Prinzip einer Vorrichtung zum
Dekomprimieren von Schriftzeichen zeigt. Die Dekompressionsvorrichtung
dekomprimiert zu einem Zeichen eines Schriftzeichens die Bit-Map-Daten,
die von der oben beschriebenen Schriftzeichen-Speichervorrichtung komprimiert
und in der Schriftzeichen-Speichereinrichtung (z. B. ROM) gespeichert wurden. Die
Schriftzeichendekompressions-Vorrichtung enthält die folgenden Komponenten.
Eine Bit-Map-Datenleseeinheit 11 erhält von der Adresseninformationsspeichereinheit 4
der Schriftzeichenspeicher-Vorrichtung eine Adresse der Bit-Map-Daten-Speichereinheit
3 zur Speicherung der Bit-Map-Daten jeder der rechteckigen Bereiche, die ein
bestimmtes Zeichen bilden und liest aus der Bit-Map-Daten-Speichereinheit 3
entsprechend der Adresse die Bit-Map-Daten aus.
Eine Dekompressionseinrichtung 12 dekomprimiert die Daten in ein Zeichen eines
Bit-Map-Schriftzeichenformats durch Zusammenfügen der Bit-Map-Daten jedes der
rechteckigen Bereiche, die von der Bit-Map-Datenleseeinheit 11 ausgelesen worden
sind.
Die oben beschriebene Schriftzeichen-Speichervorrichtung teilt die Bit-Map-Daten
(z. B. 48 × 48 Punkte) eines Zeichens gleichmäßig in eine Mehrzahl rechteckiger
Bereiche (z. B. 8 × 8 Punkt-Bereiche) mittels der Aufteilungseinheit 1 auf.
Dann erfaßt die Erfassungseinheit 2, ob mehrere rechteckige Bereiche dieselben
Bit-Map-Daten enthalten oder nicht durch Vergleichen der Anordnung der Bit-Map-Daten
der rechteckigen Bereiche eines gleichmäßig aufgeteilten Zeichens (Blocks) oder der
rechteckigen Bereiche verschiedener Zeichen.
Wenn die Erfassungseinheit 2 mehrere rechteckige Bereiche erfaßt hat, die dieselben
Bit-Map-Daten enthalten, speichert die Bit-Map-Daten-Speichereinheit 3 anschließend
die Bit-Map-Daten nur für einen Blocks auf ihr Speichermedium. Wenn ein
rechteckiger Bereich Bit-Map-Daten enthält, die nicht in einem anderen rechteckigen
Bereich enthalten sind, speichert die Bit-Map-Speichereinheit die Bit-Map-Daten auf
ihrem Speichermedium einzeln.
Die Adresseninformations-Speichereinheit 4 speichert eine Adresse (Zeiger, Pointer),
die den Bereich auf dem Speichermedium angibt, auf dem die Bit-Map-Daten der
rechteckigen Bereiche für jeden der rechteckigen Bereiche, die jedes Zeichen bilden,
gespeichert sind.
So können Bit-Map-Daten von Zeichen derart in der Bit-Map-Daten-Speichereinheit 3
gespeichert werden, daß sie nicht doppelt gespeichert werden und Adresseninformation,
die den Speicherbereich auf dem Speichermedium, auf welchen die Bit-Map-Daten
jedes der rechteckigen Bereiche, die jedes Zeichen bilden, wird in der
Adresseninformations-Speichereinheit 4 gespeichert.
Als Ergebnis können Bit-Map-Daten einer Anzahl von Zeichen mit einem hohen
Kompressionsverhältnis gespeichert werden, indem die Bit-Map-Daten jedes Zeichens
eines Bit-Map-Schriftzeichens gleichmäßig in mehrere rechteckige Bereiche aufgeteilt
werden, indem für einen Block die Bit-Map-Daten, die in mehreren rechteckigen
Bereichen enthalten sind, gespeichert werden, wenn mehrere rechteckige Bereiche, die
dieselben Bit-Map-Daten enthalten, erfaßt werden, und dabei doppelte Speicherung der
anderen rechteckigen Bereiche, die dieselben Bit-Map-Daten enthalten, vermieden wird.
Insbesondere Bit-Map-Daten, die eine große Zahl von weißen Punkten, wie z. B. häufig
genutzte einfache Zeichen, können mit einem hohen Kompressionsverhältnis gespeichert
werden. Beispiele dieser einfachen Zeichen, die aus einer Anzahl von rechteckigen
Bereichen mit viel freiem Raum bestehen, sind "1", "-", "L", usw., und ungefahr fünf
Sechstel dieser Zeichen besteht aus Freiraum.
Das erfindungsgemäße Kompressionsverfahren erfordert eine kleinere Kapazität des
Bit-Map-Daten-Speicherbereichs und der Adressenraum im Bit-Map-Daten-Speicherbereich
ist kleiner als bei herkömmlichen Verfahren. Daher kann die Datenlänge einer Adresse,
die zur Adressierung eines Bit-Map-Daten-Speicherbereichs benutzt wird, kleiner
gemacht werden als bei herkömmlichen Verfahren. Andererseits wird die Anzahl der
Adressen gleich der Anzahl rechteckiger Bereiche aller Zeichen eines Bit-Map-Schrift
zeichens, da die Bit-Map-Daten jedes Zeichens gespeichert werden, nachdem sie
in mehrere rechteckige Bereiche aufgeteilt worden sind. Entsprechend wird die
Gesamtkapazität der Adressenspeicherung größer. D.h., daß das erfindungsgemäße
Kompressionsverfahren eine größere Speicherkapazität des Adressenspeicherbereichs
(Adresseneinheit) erfordert als herkömmliche Verfahren, während die gesamte
Speicherkapazität der Bit-Map-Daten-Speichereinheit 3 und der Adresseninformations-Spei
chereinheit 4 die halbe Gesamtkapazität ist, welche bei herkömmlichen Verfahren
erforderlich ist, wie später im Detail beschrieben werden wird. Daher kann ein
Bit-Map-Schriftzeichen mit einem hohen Kompressionsverhältnis komprimiert und
gespeichert werden. Weiterhin nimmt die Reduzierung der für das erfindungsgemäße
Kompressionsverfahren erforderliche Speicherkapazität zu, wenn die Menge der Daten
mit einer hohen Auflösung (und Dichte) eines Bit-Map-Schriftzeichens zunimmt.
Wenn die durch die oben beschriebene Kompressions-Vorrichtung komprimierten
Bit-Map-Daten dekomprimiert werden, liest die Bit-Map-Daten-Leseeinheit 11 der
Schriftzeichendekompressions-Vorrichtung die Bit-Map-Daten aller rechteckigen
Bereiche eines bestimmten Zeichens aus der Bit-Map-Daten-Speichereinheit 3
entsprechend der in der Adresseninformations-Speichereinheit 4 der
Schriftzeichenspeicher- Vorrichtung gespeicherten Adresseninformationen.
Die Dekompressionseinrichtung 12 rekonstruiert die von der Bit-Map-Datenleseeinheit
11 ausgelesenen Bit-Map-Daten in einer vorbestimmten Reihenfolge, um so die
Bit-Map-Daten eines bestimmten Zeichens zu dekomprimieren.
Zu dieser Zeit dekomprimiert die Schriftzeichendekompressions-Vorrichtung mit
Leichtigkeit die Bit-Map-Daten eines bestimmten Zeichens des komprimierten und
gespeicherten Bit-Map-Schriftzeichens.
Weiterhin können Bit-Map-Daten mit einer hohen Geschwindigkeit von der
Schriftzeichendekompressions- Vorrichtung dekomprimiert werden durch Speichern der
Bit-Map-Daten jedes Zeichens, nachdem diese in mehrere rechteckige Bereiche
geeigneter Größe für interne Verarbeitungsschritte, die durch die
Schriftzeichendekompressions-Vorrichtung ausgeführt werden, aufgeteilt worden sind.
Wenn ein bestimmtes Zeichen so verarbeitet wird, daß es gedruckt oder angezeigt wird,
nachdem es gedreht wurde, können die Bit-Map-Daten jedes Zeichens in einem
gewünschten Format gespeichert werden und in einem Zeilenpuffer (für einen seriellen
Drucker), einem Seitenspeicher (für einen Seitendrucker) oder in einem Bildspeicher
(für eine Anzeigeeinheit) gespeichert werden, nachdem die Verarbeitung in Einheiten
rechteckiger Bereiche durchgeführt worden ist. Entsprechend erfordert das vorliegende
Verfahren keine Speicher zum Abspeichern aller Bit-Map-Daten eines Zeichens, um ein
Zeichen zu verarbeiten und die Speicherplatzkapazität für die
Bit-Map-Daten-Verarbeitung kann kleiner gemacht werden.
Weiterhin können, da die Bit-Map-Daten eines Zeichens in Einheiten rechteckiger
Bereiche verarbeitet werden können, diese mit hoher Geschwindigkeit durch
Festprogramme verarbeitet werden, indem nur eine einfache Hardware-Anordnung
hinzugefügt wird.
Ein mehr praktisches Ausführungsbeispiel wird im folgenden mit Bezug auf die
beigefügten Zeichnungen beschrieben. Fig. 3 zeigt ein erfindungsgemäßes Verfahren
zum Komprimieren von Bit-Map-Daten jedes Zeichens eines Bit-Map-Schriftzeichens.
Die folgende Erklärung bezieht sich auf ein Verfahren zum Komprimieren und
Dekomprimieren von Bit-Map-Daten des Bit-Map-Schriftzeichens im 48 × 48 Punkt-
Matrix-Format, wobei die Datenverarbeitungsanlage für einen 8-Bit-Drucker ausgelegt
ist.
Fig. 3 zeigt Bit-Map-Daten von 48 × 48 Punkt-Kanji. Bei dem vorliegenden
Ausführungsbeispiel werden diese 48 × 48 Punkt-Bit-Map-Daten in 36 Blöcke
(rechteckige Bereiche) aufgeteilt, die jeweils 8 × 8 Punkte enthalten, wie in Fig. 4
gezeigt ist. Von diesen aufgeteilten Blöcken wird jedem Block eine serielle Nummer
(Blocknummer) 1-36 zugewiesen. Wie in Fig. 4 gezeigt ist, wird der Block mit der
Blocknummer i (i = 1, 2,. . ., 36) als Block BLi bezeichnet.
Entsprechend dem vorliegenden Ausführungsbeispiel ist jeder Block in vertikaler
Richtung in 8 Bytes BLi-CL₁, BLi-CL₂, . . ., BLi-CL₈ aufgeteilt, wie in Fig. 6 gezeigt
ist. So werden die Daten in Byte-Einheiten verarbeitet.
ist. So werden die Daten in Byte-Einheiten verarbeitet.
Entsprechend den in Fig. 3 gezeigten Bit-Map-Daten enthalten manche Blöcke dasselbe
Bit-Map-Muster. D.h., die Blöcke BL₃, BL₃₃, BL₃₅ und BL₃₆ enthalten dasselbe
Bit-Map-Muster. Die Bit-Map-Daten dieser Blöcke sind binäre Daten von 8 Byte und
werden repräsentiert durch "00, 00, 00, 00, 00, 00, 00, 00" ("00" ist eine
hexadezimale Darstellung).
Zusätzlich enthalten die Blöcke BL₈, BL₁₄ und BL₂₀ dasselbe Bit-Map-Muster und die
Blöcke BL₁₅, BL₂₁, BL₁₁, BL₂₃, BL₁₇ und BL₂₉ enthalten ebenfalls dasselbe
Bit-Map-Muster.
Entsprechend dem vorliegenden Ausführungsbeispiel werden die Bit-Map-Daten jedes
Zeichens in 36 Blöcke BL₁-BL₃₆ aufgeteilt, wobei jeder Block aus 8 × 8 Punkten
besteht, wie in Fig. 4 gezeigt ist. Für Blöcke BLi, BLj, . . . (i ≠ j), die dieselben Bit-Map-Da
ten enthalten, werden die Bit-Map-Daten einzeln gespeichert, es sei denn die
Bit-Map-Daten werden in der Dateneinheit (Bit-Map-Datenspeichereinheit) gespeichert.
Dann werden die 8 × 8 Punkt-Bit-Map-Daten des Blocks BLi (i = 1, 2, . . ., 36) als
8-Byte Binärdaten gespeichert, wie in Fig. 6 gezeigt ist.
Somit werden die 48 × 48 Punkt-Zeichen Bit-Map-Daten aus Fig. 3 als 28 Blöcke BL₁,
BL₂, . . ., BL₂₇, BL₂₈ aus einer Gesamtheit von 36 Blöcken BL₁-BL₃₆ gespeichert,
wie in Fig. 7 gezeigt ist, wobei jeder als 1-Byte-Binär-Daten gespeichert wird.
Wenn die Bit-Map-Daten des in Fig. 3 gezeigten Zeichens ohne Kompressionsverfahren
gespeichert werden wie bei einem herkömmlichen Verfahren, ist die (Speicherplatz-)
Erfordernis 288 Bytes (6 Bytes × 48 Spalten). Wenn entsprechend des vorliegenden
Ausführungsbeispiels dieselben Bit-Map-Daten in mehreren Blöcken aller zu
verarbeitender Zeichen erfaßt werden, werden die Bit-Map-Daten kollektiv gespeichert.
Als Ergebnis ist die (Speicherplatz-) Erfordernis für die Bit-Map-Daten des in Fig. 3
gezeigten Zeichens 224 Bytes (28 Blöcke × 8 Bytes). So kann die (Speicherplatz-)
Erfordernis zur Speicherung von Bit-Map-Daten entsprechend dem erfindungsgemäßen
Kompressionsverfahren um 64 Bytes (288-224) reduziert werden.
Als nächstes wird ein Verfahren zur Realisierung der oben beschriebenen
Datenkompression unter Bezugnahme auf das in Fig. 8 gezeigte Flußdiagramm erklärt.
Die Dateneinheit (Bit-Map-Speichereinheit) wird später als Bereich bezeichnet, in dem
Bit-Map-Datenblöcke aller Zeichen eines Bit-Map-Schriftzeichens gespeichert sind und
die Adresseneinheit (Adresseninformations-Speichereinheit) ist ein Bereich, in dem ein
Zeiger (Pointer) zu einer Speicheradresse der oben beschriebenen Dateneinheit für alle
Bit-Map-Datenblöcke aller Zeichen eines Bit-Map-Schriftzeichens gespeichert ist.
Die Arbeitsschritte in dem in Fig. 8 gezeigten Flußdiagramm werden im folgenden
beschrieben. Zuerst werden, wenn die Bit-Map-Daten eines Zeichens empfangen
werden, die Bit-Map-Daten in 36 Blöcke BL₁-BL₃₆ (S1) des in Fig. 4 gezeigten
Formats aufgeteilt.
Anschließend wird für jeden der 36 durch die oben beschriebene Aufteilung erhaltenen
Blöcke geprüft, ob jede der Bit-Map-Daten der 36 Blöcke schon in die Dateneinheit
abgespeichert wurde (S2 und S3) oder nicht. Wenn nicht ("nein" in S3), werden die
Bit-Map-Daten des Blocks in einem vorbestimmten Abschnitt der Dateneinheit des
Speichermediums in einem binären Datenformat mit 8 Byte gespeichert und die
Leitadresse des Speicherbereichs wird in der Adresseneinheit gespeichert.
Wenn bei dem Bestimmungsschritt S3 die Bit-Map-Daten schon abgespeichert worden
sind ("ja" in S3), werden die Bit-Map-Daten des Blocks nicht doppelt gespeichert und
die Leitadresse zu dem Speicherbereich der Dateneinheit, die die Bit-Map-Daten
speichert, wird abgespeichert (S5).
Die oben beschriebenen Schritte S2-S5 werden für alle Bit-Map-Datenblöcke von
Zeichen in der in Fig. 5 gezeigten Reihenfolge der Blocknummern ausgeführt (bis der
Bestimmungsschritt S6 "ja" ausgibt). Wenn mehrere Blöcke aller Bit-Map-Datenblöcke,
die ein Zeichen bilden, dieselben Bit-Map-Daten enthalten und die Bit-Map-Daten noch
nicht abgespeichert worden sind, werden die Bit-Map-Daten von einem Block in der
Dateneinheit abgespeichert. Wenn ein Block Bit-Map-Daten aufweist, die
unterschiedlich sind von denen aller anderen Blöcke, so werden die Bit-Map-Daten in
der Dateneinheit gespeichert. Die Leitadressen der Speicherbereiche für alle Bit-Map-Da
tenblöcke, die in der Dateneinheit gespeichert sind, werden in der Adresseneinheit
abgespeichert.
Die oben beschriebenen Schritte S1-S5 werden für alle Bit-Map-Daten aller Zeichen
(bis der Bestimmungsschritt S8 "ja" ausgibt) durchgeführt und alle Bit-Map-Daten aller
Zeichen eines Bit-Map-Schriftzeichens werden komprimiert und in der Dateneinheit
abgespeichert und die Adresseneinheit speichert die Leitadressen (Zeiger) der
Speicherbereiche für alle Bit-Map-Datenblöcke, die Zeichen in einem Bit-Map-Schrift
zeichenformat bilden und in der Dateneinheit gespeichert werden.
Fig. 9 zeigt die Anordnung des Speicherbereichs, in dem ein Bit-Map-Schriftzeichen
gespeichert wird, nachdem es mittels des oben beschriebenen Kompressionsverfahrens
komprimiert worden ist.
In Fig. 9 ist die Dateneinheit 200 ein Bereich, in dem Bit-Map-Daten aller Zeichen
eines Bit-Map-Schriftzeichens wie oben beschrieben in Blockeinheiten komprimiert und
gespeichert werden und eine Adresseneinheit 100 ist ein Bereich, in dem die
Leitadressen der Bit-Map-Daten aller Blöcke BL₁-BL₃₆ eines
Bit-Map-Schriftzeichens, die in der Dateneinheit 200 gespeichert sind, gespeichert werden.
Im folgenden werden die in die Dateneinheit 200 abzuspeichernden Bit-Map-Daten und
die in die Adresseneinheit 100 abzuspeichernden Adressen-Daten erklärt, wenn das in
Fig. 3 gezeigte Zeichen und das in Fig. 10 gezeigte Zeichen mittels des oben
beschriebenen Kompressionsverfahrens komprimiert werden.
Das in Fig. 3 gezeigte Zeichen weist 4 Blöcke 3 (BL₃), 33 (BL₃₃), 35 (BL₃₅) und 36
(BL₃₆) auf, die alle dieselben Bit-Map-Daten enthalten, nämlich lauter weiße Punkte.
Wenn die Bit-Map-Daten nicht in die Dateneinheit 200 abgespeichert worden sind,
werden dann die Bit-Map-Daten von Block 3, d. h. dem Block mit der niedrigsten
Blocknummer der vier Blöcke, in die Dateneinheit 200 abgespeichert, wie in Fig. 11
dargestellt ist. Die Bit-Map-Daten aller anderen Blöcke 33, 35 und 36 werden
überhaupt nicht gespeichert.
Entsprechend werden, wenn die Blöcke 8 (BL₈), 14 (BL₁₄) und 20 (BL₂₀) dieselben
Bit-Map-Daten enthalten und die Daten nicht in der Dateneinheit 200 abgespeichert
worden sind, die Bit-Map-Daten von Block 8 in der Dateneinheit 200 gespeichert und
die Bit-Map-Daten der anderen Blöcke 14 und 20 werden überhaupt nicht gespeichert.
Wenn weiterhin die Blöcke 11 (BL₁ 1) und 23 (BL₂₃), die Blöcke 15 (BL₁₅) und 21
(BL₂₁), und die Blöcke 17 (BL₁₇) und 28 (BL₂₈) jeweils denselben Block gemeinsam
enthalten und die Bit-Map-Daten noch nicht in die Dateneinheit 200 abgespeichert
worden sind, dann werden jeweils die Bit-Map-Daten der Blöcke 11, 15 und 17 in die
Dateneinheit 200 abgespeichert.
Als Ergebnis werden, wie in Fig. 11 gezeigt ist, die Bit-Map-Daten von 28 Blöcken
gespeichert und keine der Bit-Map-Daten, die in irgendwelchen anderen der 36 Blöcke
des in Fig. 3 gezeigten Zeichens enthalten sind, werden doppelt abgespeichert.
Nimmt man dann an, daß die Bit-Map-Daten des in Fig. 3 gezeigten Zeichens wie oben
beschrieben komprimiert und in die Dateneinheit 200 abgespeichert worden sind,
werden anschließend die Bit-Map-Daten des in Fig. 10 gezeigten Zeichens wie folgt
komprimiert.
Wenn die Blöcke des in Fig. 10 gezeigten Zeichens einer mit dem anderen verglichen
werden oder wenn die Bit-Map-Daten jedes Blocks mit denen in der Dateneinheit 200
verglichen werden, so enthalten die Blöcke 1, 2, 4, 5, 7, 8, 10, 11, 20, 22, 23, 25, 26,
28, 31, 32, 34 und 35 des in Fig. 10 gezeigten Zeichens alle dieselben Bit-Map-Daten,
nämlich lauter weiße Punkte. Da diese Bit-Map-Daten schon als Bit-Map-Daten von
Block 3 des in Fig. 3 gezeigten Zeichens unter der Adresse A-03 in der Dateneinheit
200 abgespeichert worden sind, wie in Fig. 11 gezeigt ist, werden die Bit-Map-Daten
dieser Blöcke nicht in der Dateneinheit 200 abgespeichert. Ähnlich werden, da die
Bit-Map-Daten der Blöcke 9 und 12 schon unter der Adresse A-15 in der Dateneinheit 200,
wie in Fig. 11 gezeigt ist, abgespeichert worden sind, die Bit-Map-Daten dieser Blöcke
nicht in der Dateneinheit 200 abgespeichert. Da weiterhin die Bit-Map-Daten der
Blöcke 14, 16 und 17 schon unter der Adresse A-05 in der Dateneinheit 200
abgespeichert worden sind, wie in Fig. 11 gezeigt ist, werden die Bit-Map-Daten dieser
Blöcke nicht in der Dateneinheit 200 abgespeichert.
Als Ergebnis speichert die Dateneinheit 200 die Bit-Map-Daten von 13 von 36 Blöcken,
wobei keine dieser doppelt gespeichert sind, die mit irgendeinem der anderen Blöcke
dieselben Bit-Map-Daten gemeinsam enthalten, wie in Fig. 11 dargestellt ist.
Die Adresseneinheit 100 speichert die Speicheradressen der Bit-Map-Daten von 36
Blöcken.
Fig. 12A und 12B zeigen die Entsprechung zwischen den Blöcken und den
Speicheradressen, die in der Adresseneinheit 100 gespeichert sind, der Bit-Map-Daten
der in den Fig. 3 und 10 gezeigten Zeichen. Wie in Fig. 12A gezeigt ist, wird die
Speicheradresse A-8 des Blocks 8 des Zeichens aus Fig. 3 als Adresse des Blocks 14,
der dieselben Bit-Map-Daten mit Block 8 gemeinsam enthält, abgespeichert.
Wie in Fig. 12B gezeigt ist, wird die Speicheradresse A-3 der Bit-Map-Daten von
Block 3 des Zeichens aus Fig. 3 als Adresse der Blöcke 1, 2, 4, . . ., und 35, die
dieselben Bit-Map-Daten im Zeichen aus Fig. 10 enthalten, gespeichert.
So werden die Bit-Map-Daten aller Blöcke aller Zeichen undupliziert in der
Dateneinheit 200 gespeichert, wobei die Speicheradressen jedes Bit-Map-Datenblocks,
der ein Zeichen bildet, geeignet gespeichert sind. So kann die in der Dateneinheit 200
gespeicherte Daten menge deutlich reduziert werden.
Entsprechend dem vorliegenden Ausführungsbeispiel werden die Bit-Map-Daten eines
Zeichens gespeichert, nachdem sie in 36 Blöcke BL₁-BL₃₆ aufgeteilt worden sind.
Die Dateneinheit 200 speichert binäre Daten, die Bit-Map-Daten repräsentieren, welche
wenigstens 0 Bytes (wenn die Bit-Map-Daten aller Blöcke schon in der
Dateneinheit 200 gespeichert sind) und bis zu 288 (= 8 × 36) Bytes (wenn die Bit-Map-Da
ten aller Blöcke voneinander verschieden sind und keiner von ihnen schon in der
Dateneinheit gespeichert ist) enthalten.
Anschließend wird die (Speicherplatz-) Erfordernis zur Speicherung eines Bit-Map-Schrift
zeichens für die Fälle verglichen, wenn die Bit-Map-Daten eines Zeichens wie
sie sind ohne ein Kompressionsverfahren gespeichert werden, wie bei einem
herkömmlichen Verfahren, und wenn sie komprimiert gespeichert werden, nachdem sie
in 36 Blöcke entsprechend dem Kompressionsverfahren des Ausführungsbeispiels
aufgeteilt worden sind.
Dann kann ein Bit-Map-Schriftzeichen mit 9000 Zeichen in Hirakana, Katakana,
alphanumerischen Zeichen, Kanji basierend auf der ersten und zweiten Stufe des
japanischen Industriestandards (JIS) geliefert werden. Die Bit-Map-Daten jedes
Zeichens werden durch eine 48 × 48 Punkt-Matrix repräsentiert.
Bei dem herkömmlichen Verfahren beträgt, da die Daten nicht komprimiert sind, wenn
sie gespeichert werden, die Datenlänge der Bit-Map-Daten eines Zeichens 288 Bytes
(6 Bytes × 48), wobei eine Gesamtmenge von 2 590 000 Bytes (= 9000 × 288) zur
Speicherung der Bit-Map-Daten von 9000 Zeichen erforderlich ist. D.h., ein Bereich
von 2 590 000 Bytes muß alleine für die Dateneinheit reserviert werden.
Da die Dateneinheit weiterhin einen Platz von 2 590 000 Bytes enthält, sind mehr als
20 Bit-Adressendaten notwendig, damit der gesamte Speicherplatz adressiert werden
kann. Daher sollte die Datenlänge der Adressendaten unter Berücksichtigung der
Effizienz einer Datenverarbeitung 3 Bytes umfassen, wobei ein Bereich von
27 000 Bytes (= 9000 × 3 Bytes) für die Adresseneinheit reserviert werden sollte.
Wie oben beschrieben wurde, ist eine Gesamtheit von ungefähr 2 617 000 Bytes
(= ungefähr 2 590 000 + 27 000 Bytes) bei einem herkömmlichen Verfahren zur
Speicherung des Bit-Map-Schriftzeichens mit 9000 Zeichen erforderlich.
Andererseits können die oben beschriebenen 9000 Zeichen entsprechend der
vorliegenden Ausführungsform mit dem oben beschriebenen Kompressionsverfahren auf
eine Gesamtheit von 82 500 zu speichernden Blöcken reduziert werden. D.h., ein
Bereich von ungefähr 660 000 Bytes (= ungefähr 82 500 × 8 Bytes) sollte für die
Dateneinheit 200 reserviert werden.
Da der Bereich der Dateneinheit 200 660 000 Bytes umfaßt, sollte die Datenlänge der
Adressendaten 17 Bits umfassen, um alle Bereiche der Dateneinheit 200 zu adressieren.
Jedoch kann die Datenlänge, da die Menge der Bit-Map-Daten eines Blocks gleich
8 Bytes ist, 14 Bit betragen, wobei die niedrigsten 3 Bits weggelassen sind. (Wenn die
Bit-Map-Daten dekomprimiert werden, können die ursprünglichen Adressen durch
Addition der niedrigsten 3 Bits "000" erhalten werden). Die 14-Bit Adressendaten
werden durch 2 Bytes repräsentiert, so daß die Daten einfach verarbeitet werden
können. Da die Bit-Map-Daten eines Zeichens aus den 36 Blöcken BL₁-BL₃₆
bestehen, beträgt die Menge der Adressendaten für ein Zeichen 72 Bytes (= 2
Bytes × 36). Daher sollte ein Bereich von 648 000 Bytes (= 72 Bytes × 9000) für die
Adresseneinheit 100 reserviert werden.
Als Ergebnis beträgt die (Speicherplatz-) Erfordernis zur Speicherung eines Bit-Map-Schrift
zeichens als Bit-Map-Daten der oben beschriebenen 9000 Zeichen ungefähr
1 308 000 Bytes (= ungefähr 660 000 Bytes + 648 000 Bytes).
So ist entsprechend dem vorliegenden Ausführungsbeispiel das Kompressionsverhältnis
des 9000-Zeichen-Bit-Map-Schriftzeichens ungefähr 1/2 (= 1 308 00 : 2 617 000).
Anschließend ist Fig. 13 ein Blockdiagramm, das die Anordnung des Systems eines
seriellen Druckers in Punkt-Matrix-Format zeigt, wobei die Daten mittels eines
Bit-Map-Schriftzeichens, das nach dem oben beschriebenen Verfahren komprimiert wurde,
ausgedruckt werden.
Eine Zentralrechnereinheit (CPU) 302 ist über einen Adressenbus 310 und einen
Datenbus 320 mit einem Programm-ROM (Festspeicher) 301, einer
Zentraleinheitsschnittstelle 303, einer Druckeransteuerschaltung 304, einer CG-ROM
(Datenerzeugungs-Festspeicher) 306, einem Datenleseregister 307 und einem
Zeilenpuffer 308 verbunden.
Der Programm-Festspeicher 301 speichert ein Programm für ein Mikroprogramm für
die CPU 302, ein Programm zur Steuerung eines Druckvorgangs, usw.
Die CPU 302 führt ein in dem Programm-Festspeicher 301 gespeichertes Programm,
um Druckdaten von einer Zentraleinheit (in den Zeichnungen nicht dargestellt) über die
Zentraleinheitsschnittstelle 203 zu empfangen und die Druckeransteuerschaltung 304 zu
steuern, so daß die Zeichen, Symbole usw., die durch die Druckdaten spezifiziert sind,
in einem 48 × 48 Punkt-Matrix-Format von einer Druckervorrichtung 305 ausgedruckt
werden. Die CPU 302 enthält eine Datenübertragungseinheit zur Übertragung von
Daten in den Zeilenpuffer 308.
Die CG-ROM (Zeichenerzeugungs-ROM) 306 ist eine Masken-ROM zur Speicherung
eines Bit-Map-Zeichensatzes in einem 48 × 48 Bit-Map-Daten-Format für jedes nach
dem oben beschriebenen Verfahren komprimierte Zeichen. Sie enthält, wie in Fig. 9
gezeigt ist, die Adresseneinheit 100 und die Dateneinheit 200.
Das Datenleseregister 307 zum Lesen von 8 × 8 Bit-Daten wird benutzt, wenn 1-Block
Bit-Map-Daten (= 8 × 8 Punkte) zum Drucken eines Zeichens oder eines Symbols
dargestellt im 48 × 48 Punkt-Matrix-Format und über die Zentralrechnereinheit 302 von
dem Zeichenerzeugungs-Festspeicher 306 gelesen zur Drehung bit-weise verarbeitet
werden. Z.B. enthält es, wie in Fig. 14 gezeigt ist, acht 8-Bit-Schieberegister 307-1,
307-2, . . ., 307-8.
Der Zeilenpuffer 308 enthält 2304 (= 48 × 48) Bits zur Speicherung von 1-Zeichen-Bit-Map-Da
ten, die von der Druckervorrichtung 305 gedruckt werden und speichert die
1-Zeichen- oder 1-Symbol-Bit-Map-Daten, die von der Druckervorrichtung 305
gedruckt werden. Fig. 15 zeigt ein Beispiel einer Anordnung des Zeilenpuffers 308. In
dem Beispiel enthält der Zeilenpuffer 308 48 kaskadenförmig angeordnete
48-Bit-Schieberegister 308-1 - 308-48.
Die Druckervorrichtung 305 enthält ein Stellelement, um einen 48-Punkt-Druckerkopf
und 48 Druckerdrähte unabhängig anzusteuern, einen Ansteuermechanismus zur
Steuerung der horizontalen Bewegung (in der Hauptabtastrichtung auf dem
Druckerpapier) des Druckerkopfes und einen Formularvorschubmechanismus zum
Vorschub von Druckerpapier usw.
Die Druckeransteuerschaltung 304 steuert den Betrieb des 48-Punkt-Druckerkopfes der
Druckervorrichtung 305 oder steuert einen Formularvorschub-Vorgang unter Kontrolle
der Zentralrechnereinheit 302. Die Druckersteuereinheit enthält die
Druckeransteuerschaltung 304 und die Zentralrechnereinheit 302.
Die Zentraleinheitsschnittstelle 303 ist über ein auf die Standards einer Zentraleinheit
(in den Zeichnungen nicht dargestellt) anwendbares Kabel verbunden, eine
"Centronics"-Schnittsteile und ein RS-232C, und empfängt die Druckdaten von der
Zentraleinheit und überträgt verschiedene Steuersignale zur und von der Zentraleinheit.
Als nächstes wird unter Bezugnahme auf Fig. 16 der von der Zentralrechnereinheit
eines seriellen Druckers in der oben angesprochenen Anordnung ausgeführte
Drucksteuerbetrieb erklärt.
Fig. 16 ist ein Flußdiagramm zur Erklärung der Arbeitsweise der Zentralrechnereinheit
302, wenn ein im Zeichenerzeugungs-Festspeicher 306 gespeichertes Bit-Map-Schrift
zeichen in einem horizontal ausgerichteten Format ohne eine
Zeichenverarbeitung, wie etwa eine Rotation oder ähnliches, ausgedruckt wird.
Die Zentralrechnereinheit 302 ruft die Adresseneinheit 100 (siehe Fig. 9) auf Basis
eines Codes eines bestimmten Zeichens, wenn es von der Zentraleinheit über die
Zentraleinheitsschnittstelle 303 empfangen wird, ab, so daß die Leitadresse des Bereichs
der Dateneinheit 200 (siehe Fig. 9) auf dem Zeichenerzeugungs-Festspeicher 306, in
welchem die Bit-Map-Daten des bestimmten Zeichens (S11) enthalten sind, erhalten
wird.
Anschließend setzt die Zentralrechnereinheit 302 ein Blocknummernregister (in den
Zeichnungen nicht dargestellt) der gesamten Anzahl der Blöcke der Bit-Map-Daten
bestimmter Zeichen fest (S12).
Dann bestimmt die Zentralrechnereinheit 302, ob alle Blöcke der Bit-Map-Daten des
bestimmten Zeichens von der Dateneinheit 200 des Zeichenerzeugungs-Festspeichers
306 gelesen worden sind oder nicht (S13). Wenn nicht die Daten aller Blöcke
ausgelesen wurden ("nein" in S13), wird der 8 × 8-Punkte-Block BL₁, der ein
bestimmtes Zeichen bildet, d. h., 8-Byte-Bit-Map-Daten aufeinanderfolgend im
Datenleseregister 307 abgespeichert, indem die Daten in Byte-Einheiten von der
Dateneinheit 200 des Zeichenerzeugungs-Festspeichers 306 entsprechend der in S11
erhaltenen Adresse auf der Dateneinheit 200 ausgelesen werden (S14-S16).
Bei diesem Vorgang (wie in Fig. 17A gezeigt) werden die 8 × 8-Punkt-Bit-Map-Daten
des Blocks BL₁, der ein bestimmtes Zeichen bildet, in dem Datenleseregister 307
abgespeichert.
Dann liest die Zentralrechnereinheit 302 alle 8 × 8-Punkt-Bit-Map-Daten des Blocks
BL₁ von dem Zeichenerzeugungs-Festspeicher 306. Wenn die Daten im
Datenleseregister 307 abgespeichert worden sind ("ja" in S16), dann werden die 8 × 8-Bit
(= 8 Bytes) Bit-Map-Daten von Block BL₁ (BL₁-CL₁ - BL₁-CL₈), die im
Datenleseregister 307 gespeichert sind, über den Datenbus 320 übertragen und in
entsprechenden Schieberegistern 308-1 - 308-8 des Zeilenpuffers 308 abgespeichert.
Bei diesem Vorgang werden, wie unter (a) wie in Fig. 18 dargestellt ist, die Bit-Map-Daten
in der ersten Spalte bis zur achten Spalte (BL₁-CL₁ - BL₁-CL₈) des Blocks BL₁,
der ein bestimmtes Zeichen bildet, auf die Schieberegister 308-1 - 308-8 des
Zeilenpuffers 308 verteilt und dort gespeichert.
Dann führt die Zentralrechnereinheit 302 die Verarbeitung der Schritte S14-S19 der
Bit-Map-Daten aller verbleibenden Blöcke, die ein bestimmtes Zeichen bilden, aus.
Bei diesem Vorgang werden die Druckdaten der ersten bis achten Spalten, die ein
bestimmtes Zeichen bilden, d. h., die Bit-Map-Daten der Blöcke BL₁ bis BL₆ in den
Schieberegistern 308-1 - 308-8 des Zeilenpuffers 308 in der Reihenfolge (a), (b),
(f) abgespeichert, wie in Fig. 18 dargestellt ist.
Entsprechend werden die Bit-Map-Daten der Blöcke BL₇-BL₁₂, d. h. die Druckdaten
den neunten bis siebzehnten Spalten auf die Schieberegister 308-9 - 308-16 übertragen.
Die Bit-Map-Daten der Blöcke BL₁₃-BL₁₈, d. h. die Druckdaten in den siebzehnten
bis vierundzwanzigsten Spalten werden auf die Schieberegister 308-17 - 308-24
übertragen, d. h. die Bit-Map-Daten werden sequentiell in den Schieberegistern
abgespeichert. Schließlich werden die Bit-Map-Daten der Blöcke BL₃₁-BL₃₆, d. h. die
Druckdaten den einundvierzigsten bis achtundvierzigsten Spalten auf die Schieberegister
308-41 - 308-48 übertragen.
Als Ergebnis sind, wie unter (f) in Fig. 18 dargestellt ist, 8-Bit Bit-Map-Daten der
ersten bis achten Spalten der Blöcke BL₁ - BL₆ in den Schieberegistern 308-1 - 308-8
beginnend mit den Daten der ersten Spalte aufeinanderfolgend abgespeichert. Obwohl
nicht in den Zeichnungen dargestellt, sind die 8-Bit Bit-Map-Daten der neunten bis
sechzehnten Spalten der Blöcke BL₇-BL₁₂ in den Schieberegistern 308-9 - 308-16 und
die 8-Bit Bit-Map-Daten der einundvierzigsten bis achtundvierzigsten Spalten der
Blöcke BL₃₁ - BL₃₆ in den Schieberegistern 308-41 - 308-48 gespeichert. Somit sind
die Daten im Zeilenpuffer 308 derart angeordnet, daß die 48 × 48-Punkt-Bit-Map-Daten
bestimmter Zeichen in einem horizontal ausgerichteten Format gedruckt werden
können.
Anschließend liest die Zentralrechnereinheit 302 die Bit-Map-Daten bestimmter
Zeichen, die wie oben beschrieben, im Zeilenpuffer 308 in der Reihenfolge der
Schieberegister 308-1, 308-2, . . ., 308-48 gespeichert sind, aus und überträgt sie
anschließend in 8-Bit Einheiten über den Datenbus 310 zur Druckeransteuerschaltung
304 (S20).
Beim Erhalt aller 48 × 48 Punkt-Bit-Map-Daten eines bestimmten Zeichens in
horizontal ausgerichtetem Format von der Zentralrechnereinheit 302 steuert die
Druckeransteuerschaltung 304 die Druckervorrichtung 305, so daß das bestimmte
Zeichen als 48 × 48 Punkt-Matrix in horizontal ausgerichtetem Format auf das Papier
gedruckt wird.
Fig. 19 ist ein Flußdiagramm, welches den Betrieb der Zentralrechnereinheit 302
darstellt, wenn die Bit-Map-Daten eines Zeichens eines Bit-Map-Zeichensatzes, die auf
dem Zeichenerzeugungs-Festspeicher 306 gespeichert sind, vor dem Ausdrucken des
Zeichens in einem vertikal ausgerichteten Format in einem Vorgang zur Verarbeitung
japanischer Wörter.
In Fig. 19 sind die Verarbeitungsschritte, die auch in dem Flußdiagramm von Fig. 16
gezeigt sind, mit den entsprechenden Nummern aus Fig. 16 zu sehen. Die
entsprechende Nummer ist rechts von jeder Schrittnummer in Klammern eingeschlossen
angegeben.
Die Verarbeitung, die von der Zentralrechnereinheit 302 durchgeführt wird, wenn ein
Zeichen ausgedruckt wird, nachdem es vorverarbeitet wurde, weicht von dem
horizontal ausgerichteten Druckverfahren ohne Vorverfahren nur im Verfahrensschritt
S37 ab. D.h., daß wenn z. B. die Bit-Map-Daten eines Zeichens um 90 Grad gegen den
Uhrzeigersinn gedreht werden, um das Zeichen in einem vertikal ausgerichteten Format
auszugeben, die Zentralrechnereinheit 302 logische arithmetische Rechenoperationen
ausführt, um die 8 × 8-Bit-Map-Daten (eines bestimmten Druckzeichens und im
Datenleseregister 307 gespeichert) in Schritt S37 um 90 Grad gegen den Uhrzeigersinn
zu drehen und dann die um 90 Grad gedrehten Bit-Map-Daten zum Zeilenpuffer 308
überträgt.
Praktischerweise werden die Daten des ersten Bits der ersten bis achten Spalten in Block
BL₁ (BL₁-CL₁-b₁ - BL₁-CL₈-b₁) zum sechsten Register (dem sechsten seriell
verbundenen Register) in Schieberegister 308-1 übertragen. Entsprechend werden die
Daten des zweiten Bits der ersten bis achten Spalten in Block BL₁ (BL₁-CL₁-b₂ - BL₁-CL₈-b₂),
die Daten des dritten Bits, . . ., und die Daten des achten Bits
(BL₁-CL₁-b₈ - BL₁-CL₁-b₈) zum sechsten Register der Schieberegister 308-2, 308-3, . . ., bzw. 308-8
übertragen.
In Schritt S37 wird ein Verfahren ohne das beschriebene Vorverfahren auf ein Zeichen
angewandt, so daß die Bit-Map-Daten eines bestimmten Druckzeichens, die als 8 × 8
Punkt-Matrix und in Block BL₁, wie in Fig. 17A gezeigt ist, gespeichert sind, in die
Schieberegister 308-1 - 308-8 im Zeilenpuffer 308 in der Anordnung abgespeichert
werden, in der die Daten als Bit-Map-Daten, nachdem sie um 90 Grad gegen den
Uhrzeigersinn gedreht worden sind, ausgedruckt werden, wie in Fig. 17B gezeigt ist (
siehe Fig. 20). Dann wird das Verfahren in Schritt S37 auf die Bit-Map-Daten (eines
bestimmten Druckzeichens) in allen Blöcken BL₁-BL₃₆ angewandt. Als Ergebnis sind
die Bit-Map-Daten bestimmter Zeichen in den Schieberegistern 308-1 - 308-48 im
Zeilenpuffer 308 in einer Anordnung gespeichert, in der die bestimmten Zeichen
ausgedruckt werden, nachdem sie um 90 Grad gegen den Uhrzeigersinn gedreht worden
sind. Dann werden, wie in Fig. 20 gezeigt ist, die Daten der ersten Bits in den Spalten
41 bis 48 des Blocks BL₃₁ (BL₃₁-BL₁-b₁ - BL₃₁-CL₈-b₁) ganz rechts im ersten
Register des führenden Schieberegisters 308-1 im Zeilenpuffer gespeichert. In Fig. 20
bezeichnet "BL₁-CLj-bk" den k-ten Bit des Bytes CLj in Block BL₁.
So kann das im Zeichenerzeugungs-Festspeicher 306 abgespeicherte Bit-Map-Schrift
zeichen benutzt werden, um ein bestimmtes Zeichen (z. B. das in Fig. 3 gezeigte
Zeichen) in einem vertikal ausgerichteten Format, wie in Fig. 21 zu sehen ist,
auszudrucken, wobei das Bit-Map-Muster, das ursprünglich zum horizontal
ausgerichteten Ausdrucken benutzt wurde, benutzt wird. Entsprechend empfängt die
Zentralrechnereinheit 302 von der Zentraleinheitsschnittstelle 303 einen dem jeweiligen
Zeichen folgenden Zeichencode und liest entsprechend dem Code die Bit-Map-Daten
aus der Dateneinheit 200 des Zeichenerzeugungs-Festspeichers 306 aus und speichert im
Zeilenpuffer 308 die gelesenen Daten jedes Blocks des Zeichens, das dem bestimmten
Zeichen folgt, nachdem sie um 90 Grad gedreht wurden. Durch Wiederholen dieser
Verfahren werden die Zeichen so in einem vertikal ausgerichteten Format gedruckt.
Wie oben beschrieben wurde, werden bei dem vorliegenden Ausführungsbeispiel die
Bit-Map-Daten, wie in Fig. 20 gezeigt ist, in Blockeinheiten als 8 × 8-Punkt-Matrix
verarbeitet, wenn die Bit-Map-Daten eines Zeichens, das in einem vertikal
ausgerichteten Format ausgedruckt werden soll, in Zeilenpuffer 308 gespeichert
werden, nachdem sie um 90 Grad gegen den Uhrzeigersinn gedreht worden sind.
Weiterhin können, da die Bit-Map-Daten in Blöcke in ein 8 × 8-Punkt (8 Bytes × 8)-Ma
trix-Format aufgeteilt sind, das für die von der Zentralrechnereinheit 302
ausgeführte Datenverarbeitung geeignet ist, die Bits mit hoher Geschwindigkeit als
Festprogrammverarbeitung von der Zentralrechnereinheit 302 ausgeführt werden, wenn
die Bit-Map-Daten in Block BLi (i = 1, 2, . . ., 36), die die jeweiligen Zeichen bilden
und in dem 8 × 8 Register 307 gespeichert sind, im Zeilenpuffer 308 so abgespeichert
sind, daß sie in einem vertikal ausgerichteten Format ausgedruckt werden können, was
insbesondere für japanische oder chinesische Zeichen wichtig ist.
Daher können die Daten mit viel höherer Geschwindigkeit verarbeitet werden, als wenn
herkömmlich dekomprimierte Daten eines Bit-Map-Schriftzeichens für ein vertikal
ausgerichtetes Druckformat benutzt werden. Weiterhin können die zu druckenden
Bit-Map-Daten von dem Zeichenerzeugungs-Festspeicher 306 mit Bezugnahme auf die in
der Adresseneinheit 100 im Zeichenerzeugungs-Festspeicher 306 gespeicherten
Adressen gelesen werden, so daß auf das Zielgebiet auf der Dateneinheit 200 auf dem
Zeichenerzeugungs-Festspeicher 306 direkt zugegriffen werden kann. Als Ergebnis
können die Bit-Map-Daten für Druckzeichen effizienter und mit höherer
Geschwindigkeit gespeichert werden als bei herkömmlichen Verfahren.
Bit-Map-Daten werden bei dem oben beschriebenen Ausführungsbeispiel in einem
48 × 48-Punkt-Bit-Map-Schriftzeichen vorbereitet. Jedoch ist die vorliegende Erfindung
nicht auf diese Anwendung beschränkt, sondern kann auf ein hochauflösendes
Bit-Map-Schriftzeichen wie 56 × 56 Punkt-, 64 × 64-Punkt-, 96 × 96-Punkt-Bit-Map-Schrift
zeichen usw. angewendet werden. Erfindungsgemäß ist das
Kompressionsverhältnis (Verdichtungsverhältnis) des Bit-Map-Schriftzeichens um so
größer und die Zeit, die für die Verarbeitung und Dekompression der Bit-Map-Daten
jedes Zeichens benötigt wird, um so kürzer, je größer die Auflösung des
Bit-Map-Schriftzeichens ist.
Weiterhin ist die vorliegende Erfindung nicht beschränkt auf die Anwendung von
Bit-Map-Schriftzeichen, sondern kann auf jeden Druckzeichentyp wie "Mincho", "Gothic",
"Brush-Pen", "Handwriting", "Pen", "Textbook", "Square", "Round-Gothic", und
runde Schriftzeichen angewendet werden. Weiterhin können die Blöcke nicht nur in
8 × 8-Punkte, sondern optional in jedes Punkt-Matrix-Format aufgeteilt werden, das für
die Datenlänge, die in der Datenkompressions-Vorrichtung oder der
Datendekompressions-Vorrichtung verarbeitet wird, anwendbar ist. Außerdem ist die
Zeichenverarbeitung nicht auf eine Drehung des Zeichens beschränkt, sondern es
können verschiedene Zeichenverarbeitungen mit einer höheren Geschwindigkeit als bei
herkömmlichen Verfahren ausgeführt werden.
Weiterhin kann die vorliegende Erfindung in effektiver Weise auf Bit-Map-Schrift
zeichen angewendet werden, die nicht nur für einen seriellen Drucker des
vorliegenden Ausführungsbeispiels benutzt werden, sondern auch für andere Typen von
Druckern so wie Seitendrucker, Zeilendrucker usw. und für Anzeigeeinheiten wie
Kathodenstrahlröhren-Anzeigen, Flüssigkristall-Anzeigen usw.
Zusätzlich können die Bit-Map-Daten in Blöcke, die einem Zeichen in einem Bit-Map-Schrift
zeichen bilden, durch andere Verfahren aufgeteilt werden, als die bei dem oben
beschriebenen Verfahren benutzte. Z.B. können die Daten parallel in der
Hauptabtastrichtung der Druckzeichen aufgeteilt werden, wie in Fig. 22 gezeigt ist. Die
Daten können nicht nur in 8-Bit (1-Byte)-Einheiten, sondern in jede Bit-Länge, z. B. ein
Wort (16 Bit) in Abhängigkeit der Datenlänge der Schriftzeichenkompressi
ons-Vorrichtung oder Schriftzeichendekompressions-Vorrichtung aufgeteilt werden.
Wie oben beschrieben wurde, verarbeitet die erfindungsgemäße
Schriftzeichen-Speichervorrichtung Daten mit hoher Geschwindigkeit mit einer
einfachen Hardware-Anordnung durch Komprimieren eines Bit-Map-Schriftzeichens mit
einem hohen Kompressionsverhältnis, Speichern desselben auf einem Speichermedium,
Dekomprimieren der Bit-Map-Daten jedes Zeichens in das Bit-Map-Schriftzeichen und
Verarbeiten der Bit-Map-Daten der Zeichen, damit sie in einem vertikal ausgerichteten
Format usw. gedruckt werden können.
Weiterhin dekomprimiert und verarbeitet die erfindungsgemäße
Schriftzeichen-Speichervorrichtung Bit-Map-Daten jedes Zeichens, die von der
oben beschriebenen Schriftzeichenkompressionsvorrichtung komprimiert und
gespeichert wurden, mit hoher Geschwindigkeit in einen Bit-Map-Schriftzeichen.
Claims (10)
1. Schriftzeichen-Speichervorrichtung,
mit einer Bit-Map-Daten-Speichereinrichtung (3) zum Speichern eines Blocks von identischen Bit-Map-Daten, die in mehreren rechteckigen Bereichen enthalten sind, auf welche entsprechende Zeichen gleichmäßig aufgeteilt sind, und zum Speichern unterschiedlicher Bit-Map-Daten, die nur in einem rechteckigen Bereich enthalten sind, und
mit einer Adresseninformations-Speichereinrichtung (4) zum Speichern einer Adresseninformation, die den Speicherbereich in der Bit-Map-Daten-Spei chereinrichtung (3) angibt, zum Speichern der Bit-Map-Daten jedes rechteckigen Bereichs, die jeweils ein Zeichen bilden.
mit einer Bit-Map-Daten-Speichereinrichtung (3) zum Speichern eines Blocks von identischen Bit-Map-Daten, die in mehreren rechteckigen Bereichen enthalten sind, auf welche entsprechende Zeichen gleichmäßig aufgeteilt sind, und zum Speichern unterschiedlicher Bit-Map-Daten, die nur in einem rechteckigen Bereich enthalten sind, und
mit einer Adresseninformations-Speichereinrichtung (4) zum Speichern einer Adresseninformation, die den Speicherbereich in der Bit-Map-Daten-Spei chereinrichtung (3) angibt, zum Speichern der Bit-Map-Daten jedes rechteckigen Bereichs, die jeweils ein Zeichen bilden.
2. Schriftzeichen-Speichervorrichtung nach Anspruch 1,
gekennzeichnet durch
eine Aufteilungseinrichtung (I), um die Bit-Map-Daten jedes Zeichens in einem Bit-Map-Schriftzeichen in mehrere gleich große rechteckige Bereiche aufzuteilen; und
eine Erfassungseinrichtung (2) zur Erfassung mehrerer rechteckiger Bereiche, die dieselben Bit-Map-Daten enthalten unter den rechteckigen Bereichen, die durch gleichmäßiges Aufteilen jedes Zeichens durch die Aufteilungseinrichtung (1) erhalten wurden.
eine Aufteilungseinrichtung (I), um die Bit-Map-Daten jedes Zeichens in einem Bit-Map-Schriftzeichen in mehrere gleich große rechteckige Bereiche aufzuteilen; und
eine Erfassungseinrichtung (2) zur Erfassung mehrerer rechteckiger Bereiche, die dieselben Bit-Map-Daten enthalten unter den rechteckigen Bereichen, die durch gleichmäßiges Aufteilen jedes Zeichens durch die Aufteilungseinrichtung (1) erhalten wurden.
3. Schriftzeichen-Speichervorrichtung nach Anspruch 2,
dadurch gekennzeichnet,
daß die Aufteilungseinrichtung (1) ein Zeichen gleichmäßig in rechteckige
Bereiche aufteilt, wobei jeder eine Datenlänge aufweist, die für eine von einer
Schriftzeichendekompressions-Vorrichtung ausgeführten internen Verarbeitung
anwendbar ist.
4. Schriftzeichen-Speichervorrichtung nach Anspruch 2,
dadurch gekennzeichnet,
daß die Aufteilungseinrichtung (1) jedes Zeichen in (ganzzahlige) Vielfache von
rechteckigen Bereichen mit 8 × 8-Bits aufteilt.
5. Schriftzeichen-Speichervorrichtung nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet,
daß die Bit-Map-Daten-Speichereinrichtung (3) und die Adresseninforma
tions-Speichereinrichtung (4) Bit-Map-Daten bzw. Adresseninformation auf
demselben Speichermedium abspeichern.
6. Schriftzeichen-Speichervorrichtung nach einem der vorhergehenden Ansprüche,
gekennzeichnet durch
eine Bit-Map-Daten-Leseeinrichtung (11) zum Auslesen der Bit-Map-Daten aller rechteckigen Bereiche bestimmter Zeichen entsprechend der Adresseninformation, die den Speicherbereich der Bit-Map-Daten jedes rechteckigen Bereiches anzeigt, und
eine Dekompressionseinrichtung (12) zum Dekomprimieren der komprimierten Daten in ein Zeichen in einem Zeichen-Schriftzeichen durch Zusammenfügen der Bit-Map-Daten jeder der rechteckigen Bereiche, die von der Bit-Map-Daten-Le seeinrichtung (11) ausgelesen wurden.
eine Bit-Map-Daten-Leseeinrichtung (11) zum Auslesen der Bit-Map-Daten aller rechteckigen Bereiche bestimmter Zeichen entsprechend der Adresseninformation, die den Speicherbereich der Bit-Map-Daten jedes rechteckigen Bereiches anzeigt, und
eine Dekompressionseinrichtung (12) zum Dekomprimieren der komprimierten Daten in ein Zeichen in einem Zeichen-Schriftzeichen durch Zusammenfügen der Bit-Map-Daten jeder der rechteckigen Bereiche, die von der Bit-Map-Daten-Le seeinrichtung (11) ausgelesen wurden.
7. Schriftzeichen-Speichervorrichtung nach Anspruch 6,
dadurch gekennzeichnet,
daß die Dekompressionseinrichtung (12) die von der Bit-Map-Daten-Lese
einrichtung (11) ausgelesenen Bit-Map-Daten in Einheiten der rechteckigen
Bereiche dreht, um ein Zeichen um einen wählbaren Winkel zu drehen, und die
Daten in ein Zeichen dekomprimiert.
8. Schriftzeichen-Speichervorrichtung nach Anspruch 1-5,
gekennzeichnet durch
eine Bit-Map-Daten-Leseeinrichtung zum Auslesen der Bit-Map-Daten aller rechteckiger Bereiche mit in × in-Punkten bestimmter Zeichen entsprechend der Adresseninformation, die den Speicherbereich der Bit-Map-Daten jedes rechteckigen Bereichs angibt;
ein Datenleseregister (307) zur Speicherung von Bit-Map-Daten eines rechteckigen Bereichs mit n × n-Bits, der von der Daten-Leseeinrichtung ausgelesen wurde;
einen Druckerkopf mit wenigstens m-Punkten;
einen Zeilenpuffer (308) zur Speicherung der Druckdaten in Abhängigkeit von der Anordnung des Druckerkopfes (305);
eine Datenübertragungseinrichtung zur Übertragung in eine entsprechende Position in dem Zeilenpuffer (308) von n-Bit Bit-Map-Daten in den ersten bis achten Spalten jeder der n × n-Bit rechteckigen Bereiche, wobei die Daten in dem Datenleseregister (307) gespeichert waren, wenn ein Zeichen wie es ist ohne Drehvorgang gedruckt wird und zur Übertragung in eine entsprechende Position in dem Zeilenpuffer (308) und zur Drehung der Daten des ersten Bits, zweiten Bits, . . ., n-ten-Bits der ersten bis m-ten Spalten jeder der n × n-Bit-rechteckigen Bereiche, wobei die Daten im Datenleseregister (307) gespeichert waren, wenn ein Zeichen gedruckt wird, nachdem es gedreht wurde, und
eine Druckersteuereinrichtung (304), um zum Druckerkopf (305) zum Ausdrucken die von der Datenübertragungseinrichtung übertragenen und in dem Zeilenpuffer (308) gespeicherten Daten auszugeben.
eine Bit-Map-Daten-Leseeinrichtung zum Auslesen der Bit-Map-Daten aller rechteckiger Bereiche mit in × in-Punkten bestimmter Zeichen entsprechend der Adresseninformation, die den Speicherbereich der Bit-Map-Daten jedes rechteckigen Bereichs angibt;
ein Datenleseregister (307) zur Speicherung von Bit-Map-Daten eines rechteckigen Bereichs mit n × n-Bits, der von der Daten-Leseeinrichtung ausgelesen wurde;
einen Druckerkopf mit wenigstens m-Punkten;
einen Zeilenpuffer (308) zur Speicherung der Druckdaten in Abhängigkeit von der Anordnung des Druckerkopfes (305);
eine Datenübertragungseinrichtung zur Übertragung in eine entsprechende Position in dem Zeilenpuffer (308) von n-Bit Bit-Map-Daten in den ersten bis achten Spalten jeder der n × n-Bit rechteckigen Bereiche, wobei die Daten in dem Datenleseregister (307) gespeichert waren, wenn ein Zeichen wie es ist ohne Drehvorgang gedruckt wird und zur Übertragung in eine entsprechende Position in dem Zeilenpuffer (308) und zur Drehung der Daten des ersten Bits, zweiten Bits, . . ., n-ten-Bits der ersten bis m-ten Spalten jeder der n × n-Bit-rechteckigen Bereiche, wobei die Daten im Datenleseregister (307) gespeichert waren, wenn ein Zeichen gedruckt wird, nachdem es gedreht wurde, und
eine Druckersteuereinrichtung (304), um zum Druckerkopf (305) zum Ausdrucken die von der Datenübertragungseinrichtung übertragenen und in dem Zeilenpuffer (308) gespeicherten Daten auszugeben.
9. Schriftzeichen-Speichervorrichtung nach Anspruch 8,
dadurch gekennzeichnet,
daß das Zeichen in einem horizontal ausgerichteten Format gedruckt wird, wenn
das Zeichen wie es ist ohne einen Drehvorgang gedruckt wird, und daß das
Zeichen in einem vertikal ausgerichteten Format gedruckt wird, wenn das Zeichen
nach Drehung gedruckt wird.
10. Schriftzeichen-Speichervorrichtung nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet,
daß die Bit-Map-Daten in der Bit-Map-Daten-Speichereinrichtung (3)
abgespeichert werden, nachdem sie in mehrere rechteckige Bereiche einer Größe
aufgeteilt worden sind, die auf die Länge der Daten, die bei einer internen
Verarbeitung durch die Schriftzeichendekompressions-Vorrichtung zur
Dekompression der Bit-Map-Daten verarbeitet werden, angepaßt ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4270250A JPH06222747A (ja) | 1992-10-08 | 1992-10-08 | フォント圧縮装置及びフォント復元装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4323025A1 DE4323025A1 (de) | 1994-04-14 |
DE4323025C2 true DE4323025C2 (de) | 1998-01-29 |
Family
ID=17483637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4323025A Expired - Fee Related DE4323025C2 (de) | 1992-10-08 | 1993-07-09 | Schriftzeichen-Speichervorrichtung |
Country Status (4)
Country | Link |
---|---|
US (1) | US5822504A (de) |
JP (1) | JPH06222747A (de) |
KR (1) | KR960014502B1 (de) |
DE (1) | DE4323025C2 (de) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2388944B (en) * | 1999-02-05 | 2004-03-17 | Advanced Risc Mach Ltd | Bitmap font data storage within data processing systems |
US7302111B2 (en) * | 2001-09-12 | 2007-11-27 | Micronic Laser Systems A.B. | Graphics engine for high precision lithography |
JP5061314B2 (ja) * | 2007-02-27 | 2012-10-31 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置及び画像形成プログラム |
JP5361033B2 (ja) * | 2008-04-23 | 2013-12-04 | 任天堂株式会社 | 圧縮処理プログラム、圧縮処理装置、文字発生装置、及び、ゲーム装置 |
US9805696B2 (en) * | 2015-10-22 | 2017-10-31 | Renesas Electronics America | Synchronized image expansion |
GB2575030B (en) * | 2018-06-22 | 2020-10-21 | Advanced Risc Mach Ltd | Data processing systems |
US10761841B2 (en) | 2018-10-17 | 2020-09-01 | Denso International America, Inc. | Systems and methods for identifying source code from binaries using machine learning |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3241673C2 (de) * | 1981-11-11 | 1985-08-14 | Dainippon Screen Seizo K.K., Kyoto | Verfahren zum Verdichten von Daten Zwei-wertiger Bilddarstellungen |
US4673816A (en) * | 1983-12-27 | 1987-06-16 | Fujitsu Limited | Method for inspecting a pattern and an apparatus for inspecting a pattern |
DE3538639C2 (de) * | 1984-10-31 | 1990-09-20 | Canon K.K., Tokio/Tokyo, Jp |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0228708B1 (de) * | 1985-12-27 | 1991-11-06 | Kanzaki Paper Manufacturing Company Limited | Wärmeempfindlicher Drucker zum Drucken von regelmässigen und unregelmässigen Schriftzeichen und dessen Druckverfahren |
DE68927008T2 (de) * | 1988-09-26 | 1997-03-20 | Oki Electric Ind Co Ltd | Verfahren zum komprimieren und dekomprimieren von punktmatrixzeichen |
US5272768A (en) * | 1989-02-21 | 1993-12-21 | Hewlett-Packard Company | Blank strip font compression method and device, and resulting stored, decompressible font |
JPH04220764A (ja) * | 1990-03-13 | 1992-08-11 | Hewlett Packard Co <Hp> | 文字フォント圧縮方法および装置 |
JP2647226B2 (ja) * | 1990-03-23 | 1997-08-27 | 沖電気工業株式会社 | ドットパターン圧縮方法及び伸長方法 |
JPH04331162A (ja) * | 1991-05-02 | 1992-11-19 | Nec Eng Ltd | 文字パターン発生器 |
-
1992
- 1992-10-08 JP JP4270250A patent/JPH06222747A/ja active Pending
-
1993
- 1993-07-09 DE DE4323025A patent/DE4323025C2/de not_active Expired - Fee Related
- 1993-07-10 KR KR1019930012968A patent/KR960014502B1/ko not_active IP Right Cessation
-
1996
- 1996-09-12 US US08/712,957 patent/US5822504A/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3241673C2 (de) * | 1981-11-11 | 1985-08-14 | Dainippon Screen Seizo K.K., Kyoto | Verfahren zum Verdichten von Daten Zwei-wertiger Bilddarstellungen |
US4673816A (en) * | 1983-12-27 | 1987-06-16 | Fujitsu Limited | Method for inspecting a pattern and an apparatus for inspecting a pattern |
DE3538639C2 (de) * | 1984-10-31 | 1990-09-20 | Canon K.K., Tokio/Tokyo, Jp |
Non-Patent Citations (1)
Title |
---|
NAGAO: "Data Compression of Chinese Character Pattern" Proc. of the IEEE, Vol. 68, No. 7, 1980, S. 818-829 * |
Also Published As
Publication number | Publication date |
---|---|
US5822504A (en) | 1998-10-13 |
KR950003966A (ko) | 1995-02-17 |
JPH06222747A (ja) | 1994-08-12 |
KR960014502B1 (ko) | 1996-10-16 |
DE4323025A1 (de) | 1994-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3707112C2 (de) | ||
DE3805573C2 (de) | ||
EP0096079B1 (de) | Verfahren zur Aufbereitung von Punktrasterdaten für Zeichen- und/oder Bilddarstellungen | |
DE3044092C2 (de) | ||
DE19610759C2 (de) | Verfahren zum Codieren eines Dokumentes und Verfahren zum Senden eines Dokumentes von einem Sendecomputersystem zu einem Empfangscomputersystem | |
EP0132456B1 (de) | Verfahren und Vorrichtung zur Prüfung der Satzqualität von Druckerzeugnissen, insbesondere Zeitungen | |
DE69636707T2 (de) | Druckersystem, Datenverarbeitungsgerät und Datenverarbeitungsverfahren | |
DE19711674B4 (de) | Verfahren und System zum Drucken rasterisierter Dokumente | |
DE3632603C2 (de) | ||
DE102006011225B4 (de) | System und Verfahren zur Drucksteuerung | |
DE69737717T2 (de) | Bildprozessor | |
DE3716752C2 (de) | ||
DE69633716T2 (de) | Hochgeschwindigkeitssystem zur Skalierung von Bildern | |
JPH0723008B2 (ja) | 文字像を発生する方法 | |
DE4323025C2 (de) | Schriftzeichen-Speichervorrichtung | |
DE2825321A1 (de) | Rasterdrucker | |
DE2550212C3 (de) | Drucker mit Pufferspeicher | |
DE3520289C2 (de) | ||
DE3713627A1 (de) | Bildspeicherschaltung, insbesondere zur verwendung beim drehen von bilddaten | |
DE69632644T2 (de) | Bilderzeugung für seitendrucker | |
DE3132842C2 (de) | Verfahren zur Reduzierung der Redundanz von binären Zeichenfolgen für Matrixdruckverfahren | |
DE60211210T2 (de) | Vorrichtung und verfahren zur bildskalierung | |
EP0304509B1 (de) | Bildschirmgerät zur Textdarstellung | |
DE69630907T2 (de) | Drucker mit komprimierter Architektur bei grosser Bandbreite | |
DE3415769C2 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8125 | Change of the main classification |
Ipc: G06F 15/66 |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |