DE19516979A1 - Verfahren und Vorrichtung zum Komprimieren von Bitmap-Daten - Google Patents
Verfahren und Vorrichtung zum Komprimieren von Bitmap-DatenInfo
- Publication number
- DE19516979A1 DE19516979A1 DE19516979A DE19516979A DE19516979A1 DE 19516979 A1 DE19516979 A1 DE 19516979A1 DE 19516979 A DE19516979 A DE 19516979A DE 19516979 A DE19516979 A DE 19516979A DE 19516979 A1 DE19516979 A1 DE 19516979A1
- Authority
- DE
- Germany
- Prior art keywords
- zone
- black pixels
- bitmap data
- line
- data compression
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/41—Bandwidth or redundancy reduction
- H04N1/411—Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
- H04N1/413—Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
- H04N1/415—Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information in which the picture-elements are subdivided or grouped into fixed one-dimensional or two-dimensional blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/41—Bandwidth or redundancy reduction
- H04N1/411—Bandwidth or redundancy reduction for the transmission or storage or reproduction of two-tone pictures, e.g. black and white pictures
- H04N1/413—Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information
- H04N1/419—Systems or arrangements allowing the picture to be reproduced without loss or modification of picture-information in which encoding of the length of a succession of picture-elements of the same value along a scanning line is the only encoding step
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
Description
Die vorliegende Erfindung bezieht sich auf ein
Verfahren und eine Vorrichtung, die Bitmap-Daten jeweils mit
hoher Datenübertragungsgeschwindigkeit effektiv komprimie
ren, wenn Bitmap-Daten ohne Zeichen- (Zeichensatz) -Daten
direkt zu einem Drucker übertragen werden, um Zeichen zu
drucken.
Bei Druckern (nachfolgend als Bilddrucker bezeichnet)
ohne Zeichensatzdaten, die für Personalcomputer verwendet
werden, werden Zeichensatzdaten innerhalb eines Personal
computers expandiert, um Bitmap-Daten zu einem Drucker zu
übertragen.
Aus diesem Grund kann in dem Bilddrucker das Volumen
übertragbarer Daten erhöht sein, verglichen mit dem Drucker,
bei dem Zeicheninformationen im Kode-Format übertragen
werden. Gleichzeitig kann die Druckgeschwindigkeit des
Druckers vermindert sein.
Um die Menge an Daten zu vergrößern, die zu einem
Drucker übertragen werden, ohne dessen Druckgeschwindigkeit
zu verringern, existieren hauptsächlich zwei Verfahren:
eines, das Datenübertragung selbst mit hoher Geschwindigkeit verarbeitet, und ein anderes, das eine Scheindatenüber tragung mit hoher Geschwindigkeit verarbeitet.
eines, das Datenübertragung selbst mit hoher Geschwindigkeit verarbeitet, und ein anderes, das eine Scheindatenüber tragung mit hoher Geschwindigkeit verarbeitet.
Das erstere Verfahren erfordert anstelle von
Centronics, welches die Standardschnittstelle zwischen einem
Personalcomputer und einem Drucker ist, individuelle Hard
ware und Software. Daher ist die Kompatibilität mit anderen
Modellen gemindert. Ferner behindert die inhärente Begren
zung der Hardwareverarbeitungsgeschwindigkeit die Datenüber
tragung beträchtlich stärker.
In den letzten Jahren ist das letztere Verfahren
intensiv untersucht worden, um die Datenübertragung durch
eine Datenkomprimierung scheinbar zu erhöhen.
Als Bitmap-Datenkomprimierungsverfahren, das für
Bilddrucker eingesetzt wird, existiert ein Verfahren, bei
dem eine Druckzone in einer Scaneinheit extrahiert wird.
Dieses Extraktionsverfahren bezieht sich auf ein Verfahren
zum Komprimieren von Daten in einem Grafikmodus durch einen
Drucker mit eingebauten Zeichensatzdaten, besonders auf ein
Verfahren zum einmaligen kollektiven Scannen (oder Abtasten)
von vielen Linien (z. B. 48 Linien) in einem seriellen
Drucker, wie z. B. einem Tintenstrahldrucker.
Mit anderen Worten, die Scanzeile (Scanbreite) mit 48
Linien (Punkten) wird gescannt, wie in Fig. 17 gezeigt. Die
linke Leerzone und die rechte Leerzone sind für die Zeichen
zone 25 angeordnet, die in den 48 Linien schwarze Pixels
enthält. Die linke Zone wird in ein Zeichen kodiert, das
eine Leerzone darstellt. Die rechte Leerzone wird in ein
Zeichen kodiert, das das Ende der Zeichenzone darstellt. Nur
die Bitmap-Daten der verbleibenden Zeichenzone werden zu
einem Drucker übertragen.
Ferner existiert das Lauflängenverfahren, bei dem die
Tendenz genutzt wird, daß weiße Pixels oder schwarze Pixels
in gewissem Grade wiederholt auftreten.
Gemäß dem Komprimierungsverfahren wird die Datenkom
primierung ausgeführt, indem ein Kode mit variabler Länge
(Huffman-Kode) einer weißen Durchschnittslauflänge zugeord
net wird, unter Berücksichtigung dessen, daß das Testbild,
das verwendet wird, um das internationale Standardsystem des
CCITT zu selektieren, eine weiße Durchschnittslauflänge von
38 bis 152 und eine schwarze Durchschnittslauflänge von 4
bis 7 hat.
Bei solch einem Beispiel, daß das Komprimierungsver
fahren auf einen Bilddrucker angewendet wird, können Druck
daten auf 1/2 bis auf 1/10 komprimiert werden.
Außerdem existiert das MR-(MMR)-System, bei dem die
Position (ein Pixel von Interesse, das sich verändert) eines
sich verändernden Pixels (ein Pixel, das sich von weiß in
schwarz oder von schwarz in weiß verändert hat) kodiert
wird. Dieses Verfahren wird bei den gegenwärtigen G3-(G4)-
Telekopiermaschinen eingesetzt.
Bei dem Verfahren zum Extrahieren einer Druckzone in
einer Scaneinheit ist die Belastung für einen Personalcompu
ter niedrig, da nur die Bitmap-Daten übertragen werden, die
der Zone entsprechen, die eine andere ist als die oberen,
unteren, linken und rechten Leerzonen einer Seite. Ein
Nachteil besteht jedoch darin, daß Leerstellen zwischen
Zeilen und zwischen Zeichen in einem üblichen Text nicht
komprimiert werden können, da die Übertragungseinheit in der
Sekundärscanrichtung viele oder 48 Linien beträgt. Der
Komprimierungseffekt kann bei linierten Dokumenten, wie bei
tabellierten Daten, nicht so sehr erreicht werden.
Bei dem Lauflängensystem wird die kontinuierliche Länge
derselben Daten gezählt und dann einer festen Länge oder
variablen Länge (Huffman-Kode) zugeordnet. Daher ist die
Konfiguration einfach und nimmt bei der Verarbeitung auf
Seiten eines Personalcomputers nicht übermäßig viel Zeit in
Anspruch. Ein Nachteil besteht jedoch darin, daß japanische
Dokumente, die chinesische Zeichen mit vielen Pixel
veränderungen enthalten, wegen der Nutzung einer nur ein
dimensionalen Korrelation nicht ausreichend komprimiert
werden können.
Das MR-(MMR)-System, bei dem die relative Position
eines zweidimensionalen Veränderungspunktes kodiert wird,
kann eine hohe Komprimierung von Linienbilddaten vorsehen.
Das vielmalige Befragen des Speichers erfordert jedoch
exklusive Hardware, um die Komprimierung auf Bilddrucker
anzuwenden. Ferner kann wie bei dem Lauflängensystem, unter
Berücksichtigung der Komplexität des Algorithmus, kein
effektiver Komprimierungseffekt bei chinesischen Zeichen mit
vielen zweidimensionalen Veränderungspunkten erreicht
werden.
Des weiteren führt bei jedem oben beschriebenen System
ein komplizierter Algorithmus zur Datenkomprimierung nach
teilig zu einer längeren Komprimierungszeit in einem Perso
nalcomputer.
Die vorliegende Erfindung ist darauf gerichtet, die
oben erwähnten Probleme zu überwinden. Es ist eine Aufgabe
der vorliegenden Erfindung, ein Bitmap-Datenkomprimierungs
verfahren vorzusehen, bei dem Bitmap-Daten gemäß einem
einfachen Algorithmus ohne Verwendung von spezieller Hard
ware übertragen und Daten effektiv komprimiert werden
können, z. B. selbst Dokumente in japanisch, die chinesische
Zeichen mit vielen zweidimensionalen Strichen enthalten.
Es ist eine andere Aufgabe der vorliegenden Erfindung,
eine Bitmap-Datenkomprimierungsvorrichtung vorzusehen, die
Bitmap-Daten gemäß einem einfachen Algorithmus ohne Ver
wendung von spezieller Hardware übertragen und Daten effek
tiv komprimieren kann, z. B. selbst Dokumente in japanisch,
die chinesische Zeichen mit vielen zweidimensionalen Stri
chen enthalten.
Um die obigen Aufgaben zu erreichen, ist gemäß der
vorliegenden Erfindung das Bitmap-Datenkomprimierungsver
fahren gekennzeichnet durch einen Hauptscanschritt zum
Scannen von Bitmap-Daten in einer Hauptscanrichtung; einen
ersten Zonentrennschritt zum Trennen einer Zone, die schwar
ze Pixels enthält, und einer Zone, die keine schwarzen
Pixels enthält, immer bei K (eine ganze Zahl von 1 oder
mehr) Linien durch Ausführen des Hauptscanprozesses; einen
Sekundärscanschritt zum Scannen einer logischen Zeile in
einer Sekundärrichtung, die zu der Hauptscanrichtung recht
winklig ist, welche logische Zeile, in der wenigstens eine
Linie, die durch den ersten Zonentrennschritt erhalten
wurde, als N Linien (eine ganze Zahl von 1 oder mehr)
definiert ist, schwarze Pixels enthält; einen zweiten
Zonentrennschritt zum Trennen einer Zone, die schwarze
Pixels enthält, in Spalteneinheit, und einer Zone, die keine
schwarzen Pixels enthält, durch Ausführen des Sekundärscan
schrittes; und einen Kodierungsschritt zum Kodieren jeder
der Zonen, die durch den ersten Zonentrennschritt und den
zweiten Zonentrennschritt erhalten wurden, als Element.
Gemäß der vorliegenden Erfindung ist das Bitmap-Daten
komprimierungsverfahren gekennzeichnet durch einen Haupt
scanschritt zum Scannen von Bitmap-Daten in einer Haupt
scanrichtung; einen ersten Zonentrennschritt zum Trennen
einer Zone, die schwarze Pixels enthält, und einer Zone, die
keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl
von 1 oder mehr) Linien durch Ausführen des Hauptscanprozes
ses; einen Sekundärscanschritt zum Scannen einer logischen
Zeile in einer Sekundärrichtung, die zu der Hauptscanrich
tung rechtwinklig ist, welche logische Zeile, in der
wenigstens eine Linie, die durch den ersten Zonentrenn
schritt erhalten wurde, als N Linien (eine ganze Zahl von 1
oder mehr) definiert ist, schwarze Pixels enthält; einen
zweiten Zonentrennschritt zum Trennen einer Zone, die
schwarze Pixels enthält, in Spalteneinheit, und einer Zone,
die keine schwarzen Pixels enthält, durch Ausführen des
Sekundärscanschrittes; einen ersten Kodierungsschritt zum
Kodieren jeder Zone, die bei dem ersten Zonentrennschritt
und dem zweiten Zonentrennschritt erhalten wurde, als
Element; und einen zweiten Kodierungsschritt zum Unterziehen
der ersten kodierten Daten einem zweiten Kodierungsprozeß,
welche ersten kodierten Daten beim ersten Kodierungsschritt
durch Kodieren von Zonen, die jeweilig bei dem ersten
Zonentrennschritt und dem zweiten Zonentrennschritt erhalten
wurden, als Elemente erhalten wurden.
Da alle Leerzonen, die schwarze Pixels in Bitmap-Daten
enthalten, effektiv weiter komprimiert werden können,
besteht deshalb ein Vorteil darin, daß die Bitmap-Datenkom
primierungsrate beträchtlich verbessert werden kann.
Des weiteren ist gemäß der vorliegenden Erfindung die
Bitmap-Datenkomprimierungsvorrichtung gekennzeichnet durch
ein Hauptscanmittel zum Scannen von Bitmap-Daten in einer
Hauptscanrichtung; ein erstes Zonentrennmittel zum Trennen
einer Zone, die schwarze Pixels enthält, und einer Zone, die
keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl
von 1 oder mehr) Linien, auf der Grundlage von Daten, die
durch Betreiben des Hauptscanmittels erhalten wurden; ein
Sekundärscanmittel zum Scannen einer logischen Zeile in
einer Sekundärrichtung, die zu der Hauptscanrichtung recht
winklig ist, welche logische Zeile, in der wenigstens eine
Linie, die durch das erste Zonentrennmittel erhalten wurde,
als N Linien (eine ganze Zahl von 1 oder mehr) definiert
ist, schwarze Pixels enthält; ein zweites Zonentrennmittel
zum Trennen einer Zone, die schwarze Pixels enthält, in
Spalteneinheit, und einer Zone, die keine schwarzen Pixels
enthält, auf der Grundlage von Daten, die durch Betreiben
des Sekundärscanmittels erhalten wurden; und ein Kodier
mittel zum Kodieren jeder Zone, die durch das erste Zonen
trennmittel und das zweite Zonentrennmittel erhalten wurde,
in einen Kode, der aus einer Steuerklassifizierung und einem
Argument gebildet ist, die jeweils im voraus vorgegeben
sind.
Gemäß der vorliegenden Erfindung ist die Bitmap-Daten
komprimierungsvorrichtung gekennzeichnet durch ein Haupt
scanmittel zum Scannen von Bitmap-Daten in einer Haupt
scanrichtung; ein erstes Zonentrennmittel zum Trennen einer
Zone, die schwarze Pixels enthält, und einer Zone, die keine
schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1
oder mehr) Linien, auf der Grundlage von Daten, die durch
Betreiben des Hauptscanmittels erhalten wurden; ein Sekun
därscanmittel zum Scannen einer logischen Zeile in einer
Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig
ist, welche logische Zeile, in der wenigstens eine Linie,
die durch das erste Zonentrennmittel erhalten wurde, als N
Linien (eine ganze Zahl von 1 oder mehr) definiert ist,
schwarze Pixels enthält; ein zweites Zonentrennmittel zum
Trennen einer Zone, die schwarze Pixels enthält, in Spalten
einheit, und einer Zone, die keine schwarzen Pixels enthält,
auf der Grundlage von Daten, die durch Betreiben des Sekun
därscanmittels erhalten wurden; ein erstes Kodiermittel zum
Kodieren jeder Zone, die durch das erste Zonentrennmittel
und das zweite Zonentrennmittel erhalten wurde, in einen
Kode, der aus einer Steuerklassifizierung und einem Argument
gebildet ist, jeweils im voraus beschrieben; und ein zweites
Kodiermittel zum Kodieren der ersten kodierten Daten, die
durch das erste Kodiermittel erhalten wurden, in Zeichen
daten mit variabler Länge.
Wie oben beschrieben, besteht ein Vorteil darin, daß
das Volumen von Bitmap-Daten durch effektives Darstellen der
Leerzonen in allen Zonen von Bitmap-Daten reduziert werden
kann, wodurch die Leistung der Bitmap-Datenkomprimierungs
vorrichtung weitgehend verbessert werden kann.
Fig. 1 ist ein Diagramm, das zum Erläutern eines
Aspektes der vorliegenden Erfindung verwendet wird;
Fig. 2 ist ein Diagramm, das zum Erläutern eines
Aspektes der vorliegenden Erfindung verwendet wird;
Fig. 3 ist ein Blockdiagramm, das einen Aspekt der
vorliegenden Erfindung zeigt;
Fig. 4 ist ein Blockdiagramm, das einen Aspekt der
vorliegenden Erfindung zeigt;
Fig. 5 ist ein Blockdiagramm, das eine Vorrichtung
zeigt, die das Bitmap-Komprimierungsverfahren gemäß der
ersten Ausführungsform der vorliegenden Erfindung verkör
pert;
Fig. 6 ist ein Blockdiagramm, das die gesamte Kon
figuration der Bitmap-Komprimierungsvorrichtung zeigt;
Fig. 7 ist ein Flußdiagramm, das zum Erläutern der
Operation der ersten Ausführungsform gemäß der vorliegenden
Erfindung verwendet wird;
Fig. 8 ist ein Flußdiagramm, das zum Erläutern einer
anderen Operation der ersten Ausführungsform gemäß der
vorliegenden Erfindung verwendet wird;
Fig. 9 ist ein Flußdiagramm, das zum Erläutern der
Operation der ersten Ausführungsform gemäß der vorliegenden
Erfindung verwendet wird;
Fig. 10 ist ein Flußdiagramm, das zum Erläutern der
Operation der ersten Ausführungsform gemäß der vorliegenden
Erfindung verwendet wird;
Fig. 11(a) ist ein Diagramm, das die Bitmap-Daten-
Scaneinheit und die Bitmap-Daten-Scanrichtung gemäß der
ersten Ausführungsform der vorliegenden Erfindung zeigt;
Fig. 11(b) ist ein Diagramm, das die Bitmap-Daten-
Scaneinheit und die Bitmap-Daten-Scanrichtung gemäß der
ersten Ausführungsform der vorliegenden Erfindung zeigt;
Fig. 12 ist ein Diagramm, das ein Dokument in englisch
zeigt, das zum Erläutern der ersten Ausführungsform der
vorliegenden Erfindung verwendet wird;
Fig. 13 ist ein Diagramm, das ein Dokument in englisch
zeigt, das zum Erläutern der ersten Ausführungsform der
vorliegenden Erfindung verwendet wird;
Fig. 14 ist ein Diagramm, das ein Beispiel des Verhält
nisses von Leerstelle zu Zeichenzone eines Bitmaps gemäß der
ersten Ausführungsform der vorliegenden Erfindung zeigt;
Fig. 15 ist ein Diagramm, das eine Liste von Steuer
kodes gemäß der ersten Ausführungsform der vorliegenden
Erfindung zeigt;
Fig. 16 ist ein Blockdiagramm, das die Konfiguration
einer Vorrichtung zeigt, die das Bitmap-Datenkomprimierungs
verfahren gemäß der zweiten Ausführungsform der vorliegenden
Erfindung verkörpert; und
Fig. 17 ist ein Diagramm, das ein Bitmap-Datenkom
primierungsverfahren zeigt.
Zuerst wird unten unter Bezugnahme auf die beiliegenden
Zeichnungen der Aspekt der vorliegenden Erfindung beschrie
ben.
Fig. 1 ist ein Diagramm, das zum Erläutern eines
Aspektes der vorliegenden Erfindung verwendet wird. Unter
Bezugnahme auf Fig. 1 enthält das Bitmap-Datenkomprimie
rungsverfahren einen Hauptscanschritt zum Scannen von
Bitmap-Daten in einer Hauptscanrichtung (Schritt S1) und
einen ersten Zonentrennschritt (Schritt S2) zum Trennen
einer Zone, die schwarze Pixels enthält, und einer Zone, die
keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl
von 1 oder mehr) Linien durch Ausführen des Hauptscanprozes
ses (Schritt S1).
Das Bitmap-Datenkomprimierungsverfahren enthält auch
einen Sekundärscanschritt (Schritt S3) zum Scannen einer
logischen Zeile in einer Sekundärrichtung, die zu der
Hauptscanrichtung rechtwinklig ist, welche logische Zeile,
in der wenigstens eine Linie, die durch den ersten Zonen
trennschritt (Schritt S2) erhalten wurde, als N Linie(n)
(eine ganze Zahl von 1 oder mehr) definiert ist, schwarze
Pixels enthält, und einen zweiten Zonentrennschritt (Schritt
S4) zum Trennen einer Zone, die schwarze Pixels enthält, in
Spalteneinheit, und einer Zone, die keine schwarzen Pixels
enthält, durch Ausführen des Sekundärscanschrittes (Schritt
S3).
Ferner enthält das Bitmap-Datenkomprimierungsverfahren
einen Kodierschritt (Schritt S5) zum Kodieren jeder Zone,
die bei dem ersten Zonentrennschritt (Schritt S2) und dem
zweiten Zonentrennschritt (Schritt S4) erhalten wurde, als
Element.
Gemäß dem Bitmap-Datenkomprimierungsverfahren der
vorliegenden Erfindung werden Bitmap-Daten bei dem Haupt
scanschritt (Schritt S1) in der Hauptscanrichtung gescannt
und dann immer bei K (eine ganze Zahl von 1 oder mehr)
Linien in Zonen getrennt, die schwarze Pixels enthalten, und
in Zonen, die keine schwarzen Pixels enthalten.
Bei dem Sekundärscanschritt (Schritt S3) ist wenigstens
eine Linie, die bei dem ersten Zonentrennschritt (Schritt
S2) erhalten wurde, in logischen Zeilen, die als die N (eine
ganze Zahl von 1 oder mehr) Linie(n) definiert ist, die
schwarze Pixels enthält, und in der Sekundärscanrichtung
gescannt wird, die zu der Hauptscanrichtung rechtwinklig
ist. Bei dem Kodierschritt (Schritt S5) können die Zonen,
die bei dem ersten Zonentrennschritt (Schritt S2) und dem
zweiten Zonentrennschritt (Schritt S4) erhalten wurden, als
Elemente kodiert werden.
Daher können alle Leerzonen ohne schwarze Pixels in den
Bitmap-Daten effektiv komprimiert werden, so daß die Bitmap-
Datenkomprimierungsrate beträchtlich verbessert werden kann.
Fig. 2 zeigt ein erläuterndes Diagramm des Aspektes der
vorliegenden Erfindung. Wie in Fig. 2 gezeigt, enthält das
Bitmap-Datenkomprimierungsverfahren einen Hauptscanschritt
zum Scannen von Bitmap-Daten in einer Hauptscanrichtung
(Schritt S1′) und einen ersten Zonentrennschritt (Schritt
S2′) zum Trennen einer Zone, die schwarze Pixels enthält,
und einer Zone, die keine schwarzen Pixels enthält, immer
bei K (eine ganze Zahl von 1 oder mehr) Linien durch Aus
führen des Hauptscanprozesses (Schritt S1′).
Das Bitmap-Datenkomprimierungsverfahren enthält auch
einen Sekundärscanschritt (Schritt S3′) zum Scannen einer
logischen Zeile in einer Sekundärrichtung, die zu der
Hauptscanrichtung rechtwinklig ist, welche logische Zeile,
in der wenigstens eine Linie, die bei dem ersten Zonen
trennschritt (Schritt S2′) erhalten wurde, als N Linie(n)
(eine ganze Zahl von 1 oder mehr) definiert ist, schwarze
Pixels enthält, und einen zweiten Zonentrennschritt (Schritt
S4′) zum Trennen einer Zone, die schwarze Pixels enthält, in
Spalteneinheit, und einer Zone, die keine schwarzen Pixels
enthält, durch Ausführen des Sekundärscanschrittes (Schritt
S3′).
Als nächstes kodiert ein erster Kodierschritt (Schritt
S5′) jede Zone, die bei dem ersten Zonentrennschritt
(Schritt S2′) und dem zweiten Zonentrennschritt (Schritt
S4′) erhalten wurde, als Element. Ein zweiter Kodierschritt
(Schritt S6′) unterzieht die ersten kodierten Daten, die bei
dem ersten Kodierschritt (Schritt S5′) kodiert wurden, dem
zweiten Kodierprozeß.
Bei dem Bitmap-Datenkomprimierungsverfahren der vor
liegenden Erfindung werden Bitmap-Daten bei dem Hauptscan
schritt (Schritt S1′) in der Hauptscanrichtung gescannt und
dann bei dem ersten Zonentrennschritt (Schritt S2′) immer
bei K (eine ganze Zahl von 1 oder mehr) Linien in Zonen
getrennt, die schwarze Pixels enthalten, und in Zonen, die
keine schwarzen Pixels enthalten.
Bei dem Sekundärscanschritt (Schritt S3′) ist wenig
stens eine Linie, die bei dem ersten Zonentrennschritt
(Schritt S2′) erhalten wurde, in logischen Zeilen, die als N
(eine ganze Zahl von 1 oder mehr) Linie(n) definiert ist,
die schwarze Pixels enthält (enthalten), und in der Sekun
därscanrichtung gescannt wird, die zu der Hauptscanrichtung
rechtwinklig ist.
Bei dem ersten Kodierschritt (Schritt S5′) können die
Zonen, die bei dem ersten Zonentrennschritt (Schritt S2′)
und dem zweiten Zonentrennschritt (Schritt S4′) erhalten
wurden, als Elemente kodiert werden. Bei dem zweiten Kodier
schritt (Schritt S6′) werden die kodierten Daten, die bei
dem ersten Kodierschritt (Schritt S5′) kodiert wurden, einem
Kodierungsprozeß unterzogen.
Daher können alle Leerzonen ohne schwarze Pixels in den
Bitmap-Daten effektiv komprimiert werden, so daß die Bitmap-
Datenkomprimierungsrate beträchtlich verbessert werden kann.
Bei dem Bitmap-Datenkomprimierungsverfahren der vor
liegenden Erfindung kann eine Zone, die aus sukzessiven M
Linien (M K) gebildet ist, als eine Zone kodiert werden,
welche Zone, die keine schwarzen Pixels enthält, bei dem
ersten Zonentrennschritt (Schritte S2 oder S2′) erhalten
wurde.
Eine Zone am Anfang oder am Ende von jeder Seite, die
keine schwarzen Pixels enthält und bei dem ersten Zonen
trennschritt (Schritte S2 oder S2′) erhalten wurde, kann als
eine Zone kodiert werden.
In diesem Fall kann eine Zone, die aus sukzessiven M
(M K) Linien gebildet ist, keine schwarzen Pixels enthält
und bei dem ersten Zonentrennschritt (Schritt S2 oder S2′)
erhalten wurde, als eine Zone kodiert werden. Selbst wenn
eine Zone, die keine schwarzen Pixels enthält und bei dem
ersten Zonentrennschritt (Schritt S2 oder S2′) erhalten
wurde, der Kopf auf jeder Seite ist, kann sie als eine Zone
kodiert werden. Wenn die Zone das Ende von jeder Seite ist,
kann sie ebenfalls als eine Zone kodiert werden.
Daher können die Leerzonen, die an den Köpfen oder
unteren Enden einer Seite eines Bitmaps eines Dokumentes
angeordnet sind, kollektiv und effektiv kodiert werden.
Somit kann die Komprimierungsrate von Bitmap-Daten weit
gehend verbessert werden.
Gemäß dem Bitmap-Datenkomprimierungsverfahren der
Erfindung kann eine Zone in der logischen Zeile, die keine
schwarzen Pixels enthält und durch den zweiten Zonentrenn
schritt (Schritt S4 oder S4′) erhalten wurde, als eine Zone
kodiert werden. Eine Zone am linken oder rechten Ende von
jeder logischen Zeile, die keine schwarzen Pixels enthält
und durch den zweiten Zonentrennschritt (Schritt S4 oder
S4′) erhalten wurde, kann als eine Zone kodiert werden.
Somit kann die Zone in jeder logischen Zeile, die keine
schwarzen Pixels enthält und bei dem zweiten Zonentrenn
schritt (Schritt S4 oder S4′) erhalten wurde, als eine Zone
kodiert werden. Wenn die Zone, die keine schwarzen Pixels
enthält und bei dem zweiten Zonentrennschritt (Schritt S4
oder S4′) erhalten wurde, am linken Ende in jeder logischen
Zeile ist, kann sie als eine Zone kodiert werden. Wenn die
Zone am rechten Ende von jeder logischen Zeile ist, kann sie
ebenfalls als eine Zone kodiert werden.
Deshalb können bei dem Bitmap, das einem Dokument
entspricht, die eingerückte Leerzone am linken Ende, die
Leerzone am rechten Ende auf Grund eines kurzen Satzes, oder
eine Leerzone zwischen Zeichen effektiv komprimiert werden,
so daß die Bitmap-Datenkomprimierungsrate weitgehend verbes
sert werden kann.
Die Anzahl von logischen Linien, die bei dem ersten
Zonentrennschritt (Schritt S2 oder S2′) geschaffen werden,
ist ein fester Wert N, z. B. 8.
Somit können die logischen Linien, die bei dem ersten
Zonentrennschritt (Schritt S2 oder S2′) geschaffen werden,
auf einen festen Wert N, z. B. 8, festgelegt werden.
Bei einer Komprimierung der Bitmap-Daten, wie ein
Dokument, können die Leerzonen darin zum Beispiel effektiv
komprimiert werden. Da die Verarbeitungseinheit des Prozes
sors in einem Personalcomputer mit der Bitbreite des Spei
chers abgestimmt werden kann, können ferner der Personalcom
puter und der Drucker von der Verarbeitungslast weitgehend
befreit werden.
Bei dem Bitmap-Datenkomprimierungsverfahren der vor
liegenden Erfindung kann das Endzeichen einer Zeichenzone 0
sein, welche Zeichenzone als Zone definiert ist, die kon
tinuierliche schwarze Pixels in einer logischen Zeile
enthält und bei dem zweiten Zonentrennschritt (S4 oder S4′)
erhalten wurde.
Somit ist der Endkode der Zeichenzone, die sukzessive
schwarze Pixels in einer logischen Zeile enthält und bei dem
zweiten Zonentrennschritt (Schritt S4 oder S4′) erhalten
wurde, 0.
Das Eliminieren des Ausdrückens der sukzessiven Breite
einer Zeichenzone in Bitmap-Daten reduziert die Last des
Bitmap-Datenkomprimierungsprozesses, wodurch die Komprimie
rungsrate weitgehend verbessert wird.
Die Zonen, die bei dem ersten Zonentrennschritt
(Schritt S2 oder S2′) und dem zweiten Zonentrennschritt
(Schritt S4 oder S4′) erhalten wurden, werden mit einem 8-
Bit-Kode gekennzeichnet. Der 8-Bit-Zonenkennzeichnungskode
kann aus einer Steuerklassifizierung und einem Argument
gebildet sein.
In diesem Fall können die Zonen, die bei dem ersten
Zonentrennschritt (Schritt S2 oder S2′) und dem zweiten
Zonentrennschritt (Schritt S4 oder S4′) erhalten werden, mit
dem 8-Bit-Kode gekennzeichnet werden. Die Zonen können mit
dem Kode mit einer Länge von 8 Bits gekennzeichnet werden,
der aus einer Steuerklassifizierung und einem Argument
gebildet ist.
Somit kann der Bitmap-Datenkomprimierungsprozeß leicht
gesteuert werden. Die Personalcomputer und Drucker können
von der Belastung wegen des Bitmap-Datenkomprimierungs
prozesses weitgehend befreit werden.
Wenigstens eines von 8-Bit-Argumenten kann unmittelbar
hinter allen oder einem Teil der Kennzonen mit dem 8-Bit-
Kode folgen, der jeweils aus einer Steuerklassifizierung und
einem Argument gebildet ist.
Selbst wenn die Zonen, die bei dem ersten Zonentrenn
schritt und dem zweiten Zonentrennschritt erhalten wurden,
groß sind, können sie effektiv gekennzeichnet werden. Das
Komprimieren aller Bitmap-Daten in Byte-Einheit verbessert
die Wiederholungsrate der komprimierten Muster.
Bei dem Bitmap-Datenkomprimierungsverfahren gemäß der
vorliegenden Erfindung kann ein Kode, der Wiederholung
darstellt, Daten zugeordnet werden, die kontinuierlich
zweimal oder mehrmals in Bitmap-Daten in einer Zeichenzone
erscheinen, die sukzessive schwarze Pixels in der logischen
Zeile enthält und bei dem zweiten Zonentrennschritt (Schritt
S4 oder S4′) erhalten wurde, welche Daten aus einer Steuer
klassifizierung und der Anzahl von Wiederholungszyklen
gebildet sind.
Somit kann ein Kode, der die Wiederholungsanzahl
darstellt, Daten zugeordnet werden, die kontinuierlich
zweimal oder mehrmals in Bitmap-Daten in einer Zeichenzone
erscheinen, die schwarze Pixels in der logischen Zeile
enthält und bei dem zweiten Zonentrennschritt (Schritt S4
oder S4′) erhalten wurde, welche Daten aus einer Steuer
klassifizierung und der Anzahl von Wiederholungszyklen
gebildet sind. Somit können Daten, die kontinuierlich
erscheinen, leicht komprimiert werden, so daß die Personal
computer und Drucker von der Last zum Verarbeiten weitgehend
befreit werden können.
Bei dem Bitmap-Datenkomprimierungsverfahren gemäß der
vorliegenden Erfindung wird ein Kode, der Informationen
bezüglich einer Position darstellt, die ab dem Kopf einer
Seite gezählt wird, unmittelbar nach der letzten Zeichenzone
in der logischen Zeile, die bei dem zweiten Zonentrenn
schritt (S4 oder S4′) erhalten wurde, hinzugefügt.
Selbst wenn ein Bitfehler während einer Bitmap-Daten
übertragung auftritt, kann verhindert werden, daß sich der
Fehler von den Positionsinformationen des Seitenkopfes auf
die Daten ausbreitet, die den Fehler-Bitmap-Daten folgen.
Als Resultat kann verhindert werden, daß die Bitmap-Daten,
die nach dem Fehlerauftrittspunkt folgen, verschoben werden.
Ferner kann die Startposition der ersten Zeichenzone in
einer logischen Zeile als Relativwert zu der Startposition
der ersten Zeichenzone der logischen Zeile unmittelbar vor
der oben erwähnten logischen Zeile kodiert werden. Wenn zum
Beispiel die Bitmap-Daten eines Dokumentes, bei dem die
Startposition der ersten Zeichenzone in einer logischen
Zeile zu der Startposition der ersten Zeichenzone in der
logischen Zeile unmittelbar vor der ersteren logischen Zeile
eingerückt ist oder ihr nahe ist, kann die Bitmap-Datenkom
primierungsrate weiter erhöht werden.
Fig. 3 ist ein Blockdiagramm, das den Aspekt der
vorliegenden Erfindung zeigt. Fig. 3 zeigt die Bitmap-
Datenkomprimierungsvorrichtung, um die Schritte (Schritte S1
bis S5), die bei Fig. 1 beschrieben wurden, gemäß der
vorliegenden Erfindung auszuführen.
Unter Bezugnahme auf Fig. 3 bezeichnet Bezugszahl 1 ein
Hauptscanmittel, bezeichnet 2 ein erstes Zonentrennmittel,
bezeichnet 3 ein Sekundärscanmittel, bezeichnet 4 ein
zweites Zonentrennmittel und bezeichnet 5 ein Kodiermittel.
Das Hauptscanmittel 1 scannt Bitmap-Daten in der
Hauptscanrichtung. Das erste Zonentrennmittel 2 trennt die
durch das Hauptscanmittel 1 gescannten Bitmap-Daten immer
bei K Linien in Zonen, die schwarze Pixels enthalten, und
Zonen, die keine schwarzen Pixels enthalten.
Das Sekundärscanmittel 3 scannt die logische Zeile, die
in dem ersten Zonentrennmittel 2 erhalten wurde und die als
N Linien definiert ist, die wenigstens eine Linie mit
schwarzen Pixels enthalten, in der Richtung, die zu der
Sekundärscanrichtung rechtwinklig ist. Das zweite Zonen
trennmittel 4 trennt die logische Zeile, die durch das
Sekundärscanmittel 3 erhalten wurde, in Zonen, die schwarze
Pixels enthalten, und Zonen, die keine schwarzen Pixels
enthalten, immer bei einer Spalte.
Das Kodiermittel 5 kodiert Zonen, die in dem ersten
Zonentrennmittel 2 und dem zweiten Zonentrennmittel 3
erhalten wurden, in einen Kode, der aus einer Steuerklassi
fizierung und einem Argument gebildet ist, die jeweils
vorbestimmt sind.
In Fig. 3 verbindet die Leitung 6 das erste Zonentrenn
mittel 2 mit dem Sekundärscanmittel 3, um Bitmap-Daten für
eine logische Zeile zu übertragen. Die Leitung 7 überträgt
Informationen (V-Info) bezüglich der Zone, die durch das
erste Zonentrennmittel 2 erhalten wurde. Die Leitung 8
überträgt Informationen (H-Info) bezüglich Zonen, die durch
das zweite Zonentrennmittel 4 erhalten wurden.
In der Bitmap-Datenkomprimierungsvorrichtung scannt das
Hauptscanmittel 1 Bitmap-Daten in der Hauptscanrichtung. Das
erste Zonentrennmittel 2 trennt die Bitmap-Daten in die
Zonen, die schwarze Pixels enthalten, und Zonen, die keine
schwarzen Pixels enthalten, immer bei K (eine ganze Zahl von
1 oder mehr) Linien auf der Grundlage der resultierenden
Daten.
Das Sekundärscanmittel 3 scannt eine logische Zeile in
der Sekundärscanrichtung, die zu der Hauptscanrichtung
rechtwinklig ist, welche logische Zeile als N (eine ganze
Zahl von 1 oder mehr) Linien definiert ist, die wenigstens
eine Linie mit schwarzen Pixels enthalten und durch das
erste Zonentrennmittel erhalten wurde. Dann trennt das
zweite Zonentrennmittel 4 die logische Zeile immer bei einer
Spalte in die Zonen, die schwarze Pixels enthalten, und
Zonen, die keine schwarzen Pixels enthalten, auf der Grund
lage von Daten, die durch das Sekundärscanmittel 3 erhalten
wurden.
Die Zonen, die durch das erste Zonentrennmittel 2 und
das zweite Zonentrennmittel 4 erhalten wurden, werden in
einen Kode kodiert, der aus einer Steuerklassifizierung und
einem Argument gebildet ist, die jeweils vorbestimmt sind.
Wie oben beschrieben, können gemäß der Bitmap-Datenkom
primierungsvorrichtung Leerzonen in allen Zonen in Bitmap-
Daten effektiv ausgedrückt werden, so daß das Volumen der
Bitmap-Daten reduziert werden kann. Somit kann die Leistung
der Bitmap-Datenkomprimierungsvorrichtung weiter verbessert
werden.
Fig. 4 ist ein Blockdiagramm, das den Aspekt der
vorliegenden Erfindung zeigt. Fig. 4 zeigt die Konfiguration
der Bitmap-Datenkomprimierungsvorrichtung, um die Schritte
(Schritte S1′ bis S6′) auszuführen, die unter Bezugnahme auf
Fig. 2 beschrieben wurden.
Unter Bezugnahme auf Fig. 4 bezeichnet Bezugszahl 1 ein
Hauptscanmittel, bezeichnet 2 ein erstes Zonentrennmittel,
bezeichnet 3 ein Sekundärscanmittel, bezeichnet 4 ein
zweites Zonentrennmittel, bezeichnet 5A ein erstes Kodier
mittel und bezeichnet 5B ein zweites Kodiermittel.
In diesem Fall scannt das Hauptscanmittel 1 Bitmap-
Daten in der Hauptscanrichtung. Das erste Zonentrennmittel 2
trennt die Bitmap-Daten, die durch das Hauptscanmittel 1
gescannt wurden, in Zonen, die schwarze Pixels enthalten,
und Zonen, die keine schwarzen Pixels enthalten, bei jeder K
Linie.
Das Sekundärscanmittel 3 scannt die logische Zeile, die
als N Linien definiert ist, die wenigstens eine Linie mit
schwarzen Pixels enthalten, und durch das erste Zonentrenn
mittel 2 erhalten wurde, in der Richtung, die zu der Haupt
scanrichtung rechtwinklig ist. Dann trennt das zweite
Zonentrennmittel 4 die logische Zeile, die durch das Sekun
därscanmittel 3 gescannt wurde, in die Zonen, die schwarze
Pixels enthalten, und Zonen, die keine schwarzen Pixels
enthalten, bei immer einer Spalte.
Ferner kodiert das erste Kodiermittel 5A Zonen, die in
dem ersten Zonentrennmittel 2 und dem zweiten Zonentrenn
mittel 4 erhalten wurden, in eine Steuerklassifizierung und
ein Argument, die jeweils vorbestimmt sind. Das zweite
Kodiermittel 5B kodiert die ersten kodierten Daten, die in
dem ersten Kodiermittel 5A erhalten wurden, in einen Kode
mit variabler Länge.
In Fig. 4 entsprechen die Leitungen 6, 7 und 8 jeweilig
jenen in Fig. 3. Die eingehende Beschreibung wird hier
weggelassen.
Wie bei der in Fig. 3 gezeigten Ausführungsform scannt
in der Bitmap-Datenkomprimierungsvorrichtung das Hauptscan
mittel 1 Bitmap-Daten in der Hauptscanrichtung, und das
erste Zonentrennmittel 2 trennt Daten, die durch das Haupt
scanmittel erhalten wurden, in Zonen, die schwarze Pixels
enthalten, und Zonen, die keine schwarzen Pixels enthalten,
bei jeder K (eine ganze Zahl von 1 oder mehr) Linie.
Das Sekundärscanmittel 3 scannt die logische Zeile, die
als N (eine ganze Zahl von 1 oder mehr) Linie(n) definiert
ist, die wenigstens eine Linie mit schwarzen Pixels enthält
(enthalten), und durch das erste Zonentrennmittel erhalten
wurde, in der Sekundärscanrichtung, die zu der Hauptscan
richtung rechtwinklig ist. Dann trennt das zweite Zonen
trennmittel 4 die logische Zeile, die durch das Sekundär
scanmittel 3 erhalten wurde, bei immer einer Spalte in die
Zonen, die schwarze Pixels enthalten, und Zonen, die keine
schwarzen Pixels enthalten.
Ferner kodiert das erste Kodiermittel 5A Zonen, die in
dem ersten Zonentrennmittel 2 und dem zweiten Zonentrenn
mittel 4 erhalten wurden, in eine Steuerklassifizierung und
ein Argument, die jeweils vorbestimmt sind. Das zweite
Kodiermittel 5B kodiert die ersten kodierten Daten, die in
dem ersten Kodiermittel 5A erhalten wurden, in einen Kode
mit variabler Länge.
Mit anderen Worten, das Volumen von Daten kann durch
effektives Ausdrücken der Leerzonen aller Zonen in Bitmap-
Daten reduziert werden. Dann werden Daten in kodierte Daten
mit variabler Länge kodiert. Das Volumen der Bitmap-Daten
kann weiter reduziert werden. Somit kann die Leistung der
Bitmap-Datenkomprimierungsvorrichtung weitgehend verbessert
werden.
Unten erfolgt unter Bezugnahme auf die beiliegenden
Zeichnungen eine Erläuterung bezüglich der ersten Ausfüh
rungsform gemäß der vorliegenden Erfindung.
Fig. 5 ist ein Blockdiagramm, das die Konfiguration
einer Vorrichtung zeigt, die das Bitmap-Datenkomprimierungs
verfahren gemäß der ersten Ausführungsform der vorliegenden
Erfindung verkörpert. Unter Bezugnahme auf Fig. 5 enthält
die Komprimierungsvorrichtung 9 eine Hauptscaneinheit 1′,
die als Hauptscanmittel dient, eine erste Zonentrenneinheit
2′, die als erstes Zonentrennmittel dient, eine Sekundär
scaneinheit 3′, die als Sekundärscanmittel dient, eine
zweite Zonentrenneinheit 4′, die als zweites Zonentrenn
mittel dient, und eine Kodiereinheit 5′, die als Kodier
mittel dient.
Die Hauptscaneinheit 1′ scannt Bitmap-Daten, wie
Dokumente, in der Hauptscanrichtung 19 (in Fig. 11(b)
gezeigt) mit einer Einheit von immer 8 Linien (Punkten), die
mit Bezugszahl 18 in Fig. 11(a) bezeichnet ist.
Die erste Zonentrenneinheit 2′ trennt die Zone der 8-
Linien-Einheit, die durch den Scanprozeß der 8-Linien-
Einheit erhalten wurde, in Zonen, die Zeichen (schwarze
Pixels) enthalten, und Zonen, die keine Zeichen enthalten.
Die Sekundärscaneinheit 3′ scannt eine logische Zeile,
die als wenigstens eine Linie mit Zeichen definiert ist, mit
immer einer Spalten-(Byte)-Einheit in der Sekundärscanrich
tung, die zu der Hauptscanrichtung rechtwinklig ist.
Die zweite Zonentrenneinheit 4′ trennt eine Spalten
einheit, die durch die Sekundärscaneinheit 3′ gescannt
wurde, in Zonen, die Zeichen enthalten, und Zonen, die keine
Zeichen enthalten.
Die Kodiereinheit 5′ kodiert jede der Zonen, die in der
ersten Zonentrenneinheit 2′ und der zweiten Zonentrenn
einheit 4′ erhalten wurden, in einen Kode mit einer Länge
von 8 Bits "XXX:xxxxx", der gebildet ist aus 3 Bits "XXX",
die eine Steuerklassifizierung darstellen, und aus 5 Bits
"xxxxx", die ein Argument darstellen. Gewöhnlich werden sie
jeweils in einer Binärzahl dargestellt, wobei "X" und "x"
die Zahl "0" oder "1" sind.
Wie bei der in Fig. 3 gezeigten Ausführungsform zeigt
Fig. 5 eine Leitung 6, die die erste Zonentrenneinheit 2′
mit der Sekundärscaneinheit 3′ verbindet, um Bitmap-Daten
einer logischen Zeile zu übertragen, eine Leitung 7, die
Informationen (V-Info) bezüglich einer Zone überträgt, die
durch die erste Zonentrenneinheit 2′ erhalten wurde, und die
Leitung 8, die Informationen (H-Info) bezüglich einer Zone
überträgt, die durch die zweite Zonentrenneinheit 4′ erhal
ten wurde.
Fig. 6 ist ein Diagramm, das die gesamte Konfiguration
einer Vorrichtung zeigt, die Daten gemäß dem Bitmap-Daten
komprimierungsverfahren von einem Computer 10 zu einem
Drucker überträgt. Wie in Fig. 6 gezeigt, enthält der
Computer 10 ein Bitmap-Datenkomprimierungsmittel 14. Der
Drucker 12 enthält ein Wiederherstellungsmittel 15, welches
komprimierte Bitmap-Daten, die gemäß einer Centronics-
Schnittstelle gesendet wurden, wiederherstellt, und ein
Druckmittel 17, das die wiederhergestellten Bitmap-Daten
druckt.
Bei dem obigen System kann der Drucker 12 Dokumente auf
dem Computer 10 in japanisch oder englisch drucken. Die in
Fig. 5 gezeigte Bitmap-Datenkomprimierungsvorrichtung 9
führt das Komprimierungsverfahren gemäß dem Prozeß aus, der
in dem in Fig. 6 gezeigten Komprimierungsmittel 14 ausge
führt wird.
Als nächstes erfolgt unten eine eingehende Erläuterung
bezüglich des Falls, wenn die Bitmap-Datenkomprimierungsvor
richtung 9 gemäß der in Fig. 5 gezeigten ersten Ausführungs
form das Dokument in englisch (Bitmap) komprimiert, das in
Fig. 12 gezeigt ist.
Das Dokument in englisch ist mit Zeichen in Punktgröße
12 geschrieben, mit einem Leerraum von 16 Punkten zwischen
Zeilen (logischen Zeilen), einem Leerraum von 1 bis 4
Punkten zwischen Zeichen, einem Leerraum von 12 bis 20
Punkten zwischen Wörtern und mit Zeichen mit einer Höhe von
52 Punkten.
Fig. 13 ist ein Diagramm, das eine Vergrößerung der
Zone zeigt, die in Fig. 12 mit Bezugszahl 20 bezeichnet ist.
Zuerst wird unten unter Bezugnahme auf die Schritte A1
bis A11, die in Fig. 7 gezeigt sind, und das Dokument in
englisch, das in Fig. 12 gezeigt ist, der Prozeß beschrie
ben, der Bitmap-Daten unter Verwendung der Hauptscaneinheit
1′, der ersten Zonentrenneinheit 2′ und der Kodiereinheit 5′
kodiert (komprimiert). In Fig. 12 entsprechen die Bezugs
zeichen A4, A8 und A11 jeweilig den Schritten, die in Fig. 7
gezeigt sind. Bezugszahl 20 bezeichnet eine Zeile, die
Zeichen enthält.
Die Hauptscaneinheit 1′ scannt das Bitmap des engli
schen Dokumentes 17 ab dem oberen Abschnitt bei jeder
logischen Zeile von 8 Linien (Punkten) in der Hauptscanrich
tung (Schritt A1) und detektiert dann, ob in jeder logischen
Zeile schwarze Pixels enthalten sind (Schritt A2).
Die Hauptscaneinheit 1′ überträgt das Detektionsresul
tat zu der ersten Zonentrenneinheit 2′. Nach Empfang des
Detektionsresultats, falls die empfangene logische Zeile
keine schwarzen Pixels enthält und vollkommen aus weißen
Pixels (Leerstellen) gebildet ist, stellt die erste Zonen
trenneinheit 2′ ihren Prozeß auf Schritt A1 zurück. Dann
wiederholt die Hauptscaneinheit 1′ das 8-Linien-Scannen.
Das heißt, die Hauptscaneinheit 1′ wiederholt das 8-
Linien-Scannen, bis die zeichenenthaltende Zeile 20 gefunden
ist.
Wenn das durch die erste Zonentrenneinheit 2′ empfange
ne Detektionsresultat schwarze Pixels enthält, wird bei
Schritt A2 die Route JA selektiert. Die erste Zonentrenn
einheit 2′ extrahiert sukzessive weiße Pixels oder Leerzonen
(Schritt A3) der vorhergehenden Schritte. Die Leerzone wird
als Informationen (V-Info) zu der Kodiereinheit 5′ über
tragen.
Die Kodiereinheit 5′ empfängt die Leerzonen, die in der
ersten Zonentrenneinheit 2′ extrahiert wurden, und kodiert
sie in einen VERTICAL SPACE Kode "010:xxxxx", der eine
Leerzone darstellt (Schritt A4).
Bei dem VERTICAL SPACE Kode steht "010" für eine
Steuerklassifizierung, die vertikales Überspringen auf einer
Seite darstellt. "xxxxx" steht für eine Binärzahl einer
Lauflänge (Länge von kontinuierlichen Leerzonen), mit der
ein vertikales Überspringen beim Drucken eines Dokumentes
ausgeführt wird.
Die Lauflänge einer Leerzone von zum Beispiel "17" wird
durch fünf Binärstellen 10001 (oder 0 × 11, in Hexadezimal
schreibweise) dargestellt. Der VERTICAL SPACE Kode, der die
Steuerung (VSKIP17) zum vertikalen Überspringen mit einer
Lauflänge 17 darstellt, ist "010 : 10001".
Fünf Binärstellen können Dezimalzahlen 1 bis 31 (00001
bis 11111 in Binärschreibweise) darstellen. Daher können die
Lauflängen 1 bis 31 durch einen VERTICAL SPACE Kode von 1
Byte (8 Bits) dargestellt werden.
Bei einer Lauflänge von 32 oder mehr ist das Argument
"xxxxx" des 8-Bit-Kodes "00000". Wenn dem Argument "00000"
die spezielle Bedeutung gegeben ist, daß kontinuierliche
Argumente, die dem 8-Bit-Kode ferner folgen, existieren und
daß das Argument bei "32" beginnt, kann der Steuerkode durch
2-Byte-Darstellung "010 : 00000 xxxxxxxx" dargestellt werden
und ist aus einem 8-Bit-Kode plus 8 Bits gebildet.
Die Lauflänge kann von "32" bis "287" dargestellt
werden. Die Lauflänge "200" wird durch Binärstellen
"xxxxxxxx" dargestellt, die "168" entsprechen.
Das heißt, "168" wird durch Binärstellen "10101000"
(oder "a8" in Hexadezimalschreibweise) dargestellt. Der
VERTICAL SPACE Kode ist "010 : 00000 10101000" und stellt eine
Steuerung (VSKIP200) dar, durch die die Lauflänge mit 200
vertikal übersprungen wird. Ähnlich wird die Lauflänge von
"288" oder mehr mit 3 Bytes dargestellt, die das ferner
hinzugefügte Argument von 8 Bits enthalten.
Der VERTICAL SPACE Kode kann durch mehrere Bytes
dargestellt werden und hinter dem Argument ferner mehrere
Argumente enthalten.
Als nächstes unterzieht die Hauptscaneinheit 1′ das
Bitmap des englischen Dokumentes 17 dem 8-Linien-Scannen
(Schritt A5) und detektiert, ob in der logischen Zeile, die
aus 8 Bits gebildet ist, schwarze Pixels enthalten sind
(Schritt A6).
Die Hauptscaneinheit 1′ überträgt das Detektionsresul
tat zu der ersten Zonentrenneinheit 2′. Nach Empfang des
Detektionsresultats, falls schwarze Pixels in der logischen
Zeile, die aus 8 Linien gebildet ist, enthalten sind,
selektiert die erste Zonentrenneinheit 2′ bei Schritt A6 die
Route JA, wodurch der Prozeß zu Schritt AS zurückkehrt. Die
Hauptscaneinheit 1′ führt wieder die 8-Linien-Scanoperation
aus.
Mit anderen Worten, die Hauptscaneinheit 1′ wiederholt
das 8-Linien-Scannen, bis das Scannen der Zeile 20, die
Zeichen enthält, beendet ist, und dann wird der Beginn einer
neuen Leerzeile 21 detektiert.
Als Resultat beträgt die Anzahl von Linien, die eine
logische Zeile bilden, die in der ersten Zonentrenneinheit
2′ erhalten wird, "8 (Linien)".
Wenn das Detektionsresultat, das durch die erste
Zonentrenneinheit 2′ empfangen wird, keine schwarzen Pixels
enthält, wird bei Schritt A6 die Route NEIN selektiert. Die
erste Zonentrenneinheit 2′ extrahiert kollektiv Stellen, die
sukzessive schwarze Pixels enthalten, oder logische Zeilen,
die Zeichenzonen enthalten (Schritt A7), und überträgt dann
die logische Zeile, die Zeichenzonen enthält, als Informa
tionen H-Info.
In diesem Fall ist die Anzahl von Linien, die eine
logische Zeile bilden, die in der ersten Zonentrenneinheit
2′ erhalten wird, ein fester Wert (N) von 8 (Linien) oder
mehr.
Die Kodiereinheit 5′ kodiert die empfangene logische
Zeile in den START BLOCK Kode "011 : 00000", der aus einer
Steuerklassifizierung "011", die den Beginn einer logischen
Zeile mit Zeichenzonen bezeichnet, und "00000" gebildet ist,
welches keine Argumente darstellt (Schritt A8).
Die erste Zonentrenneinheit 2′ überträgt die logische
Zeile über die Leitung 6 zu der Sekundärscaneinheit 3′
(Schritt A9), um Leerzonen zu kodieren, die in der logischen
Zeile enthalten sind, und detektiert dann, ob die letzte
Zeile (letzte logische Zeile, oder das untere Ende auf der
Dokumentenseite) folgt (Schritt A10).
Falls das Detektionsresultat nicht die letzte Zeile
angibt, geht der Prozeß zu Schritt A1 über. Dann werden die
Schritte A1 bis A9 wiederholt, bis die Hauptscaneinheit 1′
die letzte Zeile detektiert.
Falls das Detektionsresultat die letzte Zeile angibt,
wird die Zeile (logische Zeile) als Informationen H-Info zu
der Kodiereinheit 5′ übertragen. Die Kodiereinheit 5′
kodiert die Zeile in einen END LINE Kode "001 : 00000", der
die letzte Zeile darstellt (Schritt A11).
Wie oben beschrieben, wird die Zone, die aus M (z. B.
17 oder 200) Linien gebildet ist, keine sukzessiven schwar
zen Pixels enthält und in der ersten Zonentrenneinheit 2′
erhalten wurde, als einzelne Zone kodiert. Ferner wird die
Zone am Kopf oder am Ende auf jeder Seite, die keine schwar
zen Pixels enthält, als einzelne Zone kodiert.
Bei den Schritten A1 bis A11 wird das englische Doku
ment (Bitmap-Daten) in Zeilen in 8-Linien-Einheit (logische
Zeile) getrennt, die jeweils schwarze Pixels enthalten, und
in Leerzonen (das obere und untere Ende eines Dokumentes und
der Raum zwischen Zeilen), die keine schwarzen Pixels
enthalten. Die Zeile, die schwarze Pixels enthält, wird zu
der Sekundärscaneinheit 3′ übertragen, und die Leerzone wird
in der Kodiereinheit 5′ kodiert.
Die obigen Schritte entsprechen den Schritten A1′ bis
A9′, die in Fig. 8 gezeigt sind. In diesem Fall werden
anders als bei den in Fig. 7 gezeigten Schritten A3 und A4,
bei denen Leerzonen aus 8 Linien oder mehr auf einmal
extrahiert und kodiert werden, Leerzonen in einer 8-Linien-
Einheit extrahiert und kodiert.
Mit anderen Worten, die Hauptscaneinheit 1′ scannt das
Dokument vom oberen Ende in der Hauptscanrichtung und in der
8-Linien-Einheit (logische Zeile) (Schritt A1′) und detek
tiert dann, ob in 8 Linien schwarze Pixels enthalten sind
(Schritt A2′).
Wenn 8 Linien keine schwarzen Pixels enthalten,
extrahiert die erste Zonentrenneinheit 2′ Leerzonen für 8
Linien (Schritt A3′), und die Kodiereinheit 5′ kodiert sie
in einen VERTICAL SPACE Kode "010:xxxxx" (Schritt A4′).
Wenn 8 Linien schwarze Pixels enthalten, extrahiert die
erste Zonentrenneinheit 2′ eine logische Zeile von 8 Linien
(Schritt A5′), und die Kodiereinheit 5′ kodiert die Start
position einer logischen Zeile, die Zeichenzonen enthält, in
einen START BLOCK Kode "011 : 00000" (Schritt A6′).
Um die logische Zeile zugleich zu trennen und in
Zeichenzonen und Leerzonen zu kodieren, überträgt die erste
Zonentrenneinheit 2′ die logische Zeile über die Leitung 6
zu der Sekundärscaneinheit 3′ (Schritt A7′) und detektiert
dann, ob die letzte Zeile (das untere Ende auf der Dokument
seite) folgt (Schritt A8′).
Falls das Detektionsresultat nicht die letzte Zeile
angibt, geht der Prozeß zu Schritt A1′ über. Dann werden die
Schritte A1′ bis A7′ wiederholt, bis die letzte Zeile
detektiert ist.
Falls das Detektionsresultat die letzte Zeile angibt,
kodiert die Kodiereinheit 5′ die Zeile in einen END LINE
Kode "001 : 00000", der das untere Ende der Dokumentseite
darstellt (Schritt A9′).
Wie oben beschrieben, scannt gemäß der vorliegenden
Ausführungsform die Hauptscaneinheit 1′ die Zeile in der 8-
Linien-(Punkte) -Einheit, und die erste Zonentrenneinheit 2′
extrahiert kollektiv Leerzonen in 8 Linien oder mehr als
einzelne Leerzone. Daher kann die Leerzone, die oft am
oberen oder unteren Ende eines Dokumentes angeordnet ist,
effektiv kodiert und komprimiert werden, um ein Dokument mit
gutem Aussehen vorzusehen.
Ferner scannt die Hauptscaneinheit 1′ ein Dokument, das
Zeichen enthält (Zeichen mit 52 Punkten in der Höhe auf dem
Dokument in englisch, das in Fig. 12 gezeigt ist), die in
der 8-Linien-(Punkte)-Einheit viel kleiner als die geschrie
benen Zeichen sind. Daher kann die Leerzone zwischen Zeilen,
zusätzlich zu den Leerzonen am oberen und unteren Ende eines
Dokumentes, effektiv kodiert und komprimiert werden.
Die Hauptscaneinheit 1′ scannt die Zeile in der 8-
Linien-Einheit. Die Hauptscaneinheit 1′ kann die Zeile auch
in einer K- (eine ganze Zahl von 1 oder mehr) -Linien-
Einheit scannen.
Als nächstes scannt die Sekundäreinheit 3′ eine logi
sche Zeile, die Zeichenzonen enthält, oder eine Zeile, die
im Prozeß (Schritte A1 bis A11) keine kodierten Zeichen
enthält, und die von der ersten Zonentrenneinheit 2′ über
die Leitung 6 übertragen wurde, bei Schritt A9. Die zweite
Zonentrenneinheit 4′ trennt die logische Zeile in Zeichenzo
nen und Leerzonen. Die Kodiereinheit 5′ führt einen Kodie
rungs-(Komprimierungs-)Prozeß aus. Diese obigen Prozesse
werden unten unter Bezugnahme auf Fig. 13 und die in Fig. 9
gezeigten Schritte B1 bis B17 beschrieben.
Der in Fig. 9 gezeigte Schritt A9 entspricht dem
Schritt A9, der in Fig. 7 gezeigt ist. Zeichen A8, das in
Fig. 13 gezeigt ist, entspricht dem in Fig. 7 gezeigten
Prozeßschritt. Zeichen B4, B5, B8 und B17 entsprechen den in
Fig. 9 gezeigten Prozeßschritten.
Die Sekundärscaneinheit 3′ empfängt eine logische
Zeile, die schwarze Pixels enthält und von der ersten
Zonentrenneinheit 2′ übertragen wurde (Schritt A9), und
scannt sie in der Richtung, die zu der Richtung rechtwinklig
ist, die durch die Hauptscaneinheit 1′ gescannt wurde (hin
zu dem englischen Dokument, das in Fig. 12 gezeigt ist),
immer bei einer Spalte (Byte) (Schritt B1) und detektiert
dann, ob die Spalte schwarze Pixels enthält (Schritt B2).
Die Sekundärscaneinheit 3′ überträgt das Detektions
resultat zu der zweiten Zonentrenneinheit 4′.
Wenn die empfangene logische Zeile nur weiße Pixels
(Leerstellen), keine schwarzen Pixels, enthält, selektiert
die zweite Zonentrenneinheit 4′ bei Schritt B2 die Route
NEIN. Dann führt die Sekundärscaneinheit 3′ wieder den Ein-
Spalten-Scanprozeß aus.
Das heißt, die Sekundärscaneinheit 3′ wiederholt das
Ein-Spalten-Scannen, bis die logische Zeile, die Zeichen
enthält, detektiert wird.
Wenn die zweite Zonentrenneinheit 4′ andererseits das
Detektionsresultat empfängt, das schwarze Pixels enthält,
wird bei Schritt B2 die Route JA selektiert. Die zweite
Zonentrenneinheit 4′ extrahiert bei dem Prozeß gleichzeitig
die Position, an der weiße Pixels kontinuierlich erscheinen,
oder Leerzonen in der logischen Zeile (die der linken
Leerzone in einem Dokument entsprechen) (Schritt B3) und
überträgt sie dann als Informationen (H-Info) zu der Kodier
einheit 5′.
Die Kodiereinheit 5′ kodiert die Informationen (H-Info)
in einen SKIP BLOCK Kode "110:xxxxx", der aus einer Steuer
klassifizierung "110" gebildet ist, die steuert, um die
Leerzone zu überspringen, und aus "xxxxx", welches die Länge
einer zu überspringenden Leerzone in vier Binärstellen
darstellt, die zu überspringen ist (Schritt B4).
Die Kodiereinheit 5′ kodiert auch die Startposition
einer Zeichenzone in einer logischen Zeile in einen PUT
BLOCK Kode "101 : 00000", der aus einer Steuerklassifizierung
"101" gebildet ist, die den Beginn einer Zeichenzone
bezeichnet, und aus "00000", welches kein Argument darstellt
(Schritt B5).
Die Sekundärscaneinheit 3′ scannt die nächste logische
Zeile (Schritt B6) und detektiert dann, ob die Zeile schwar
ze Pixels enthält (Schritt B7).
Die Sekundärscaneinheit 3′ überträgt das Detektions
resultat zu der zweiten Zonentrenneinheit 4′. Bei Empfang
des Detektionsresultats, falls die empfangene logische Zeile
schwarze Pixels enthält, selektiert die zweite Zonentrenn
einheit 4′ bei Schritt B7 die Route JA. Die Sekundärscan
einheit 3′ wiederholt wieder das Ein-Spalten-Scannen.
Mit anderen Worten, die Sekundärscaneinheit 3′ wie
derholt das Ein-Spalten-Scannen, bis die Zeichenzone 23
endet und eine neue Leerzone beginnt. Der Fall, wenn die
zweite Zonentrenneinheit 4′ das Detektionsresultat empfängt,
das keine schwarzen Pixels enthält (NEIN bei Schritt B7),
bedeutet, daß eine neue Leerzone (eine Leerstelle zwischen
Zeichenzonen) beginnt. Die Informationen werden in einen
START SPACE Kode "000:00000" kodiert, der aus einer Steuer
klassifizierung "000" gebildet ist, die den Beginn eines
Raumes hinter (Ende der Zeichenzone) einer Zeichenzone
bezeichnet, und aus "00000", welches kein Argument darstellt
(Schritt B8).
Somit wird der Kode, der das Ende einer Zeichenzone in
einer logischen Zeile darstellt, die kontinuierliche schwar
ze Pixels enthält und durch die zweite Zonentrenneinheit 4′
erhalten wird, "0" ("000:00000").
Die zweite Zonentrenneinheit 4′ exrahiert kollektiv die
Stelle, an der schwarze Pixels bei dem vorherigen Prozeß
sukzessive erscheinen, oder die Zeichenzone 23 in einer
logischen Zeile (Schritt B9), und überträgt sie dann als H-
Info zu der Kodiereinheit 5′, um die Zeichenzone zu kodieren
(Schritt B10).
Die Sekundärscaneinheit 3′ führt weiter das Ein-Spal
ten-Scannen aus (Schritt B11) und detektiert dann, ob das
Detektionsresultat schwarze Pixels enthält (Schritt B12).
Wenn das Detektionsresultat keine schwarzen Pixels
enthält (NEIN bei Schritt B12), führt die Sekundärscan
einheit 3′ wieder das Ein-Spalten-Scannen aus. Dann wie
derholt die Sekundärscaneinheit 3′ dies, bis das Detektions
resultat schwarze Pixels enthält (JA bei Schritt B12).
Wenn das Detektionsresultat schwarze Pixels enthält (JA
bei Schritt B12), endet die sukzessive Zone (weiße Zone
zwischen Zeichen). Der Fakt bedeutet den Beginn einer neuen
Zeichenzone 24. Die Startposition der Zeichenzone wird in
einen PUT BLOCK Kode "101 : 00000" kodiert (Schritt B13).
Die zweite Zonentrenneinheit 4′ extrahiert die Leerzone
(Schritt B14), und die Kodiereinheit 5′ kodiert die Leerzone
(Schritt B15).
Ferner detektiert die Sekundärscaneinheit 3′, ob die
logische Zeile vollständig gescannt ist (Schritt B16).
Wenn die logische Zeile nicht endet, kehrt der Prozeß
zu Schritt B6 zurück. Die Schritte B6 bis B15 werden bis zum
Ende der logischen Zeile wiederholt.
Wenn die logische Zeile endet, wird die Endposition der
logischen Zeile in einen END BLOCK (EDBLK) Kode kodiert, der
das Ende der logischen Zeile bezeichnet (Schritt B17). Dann
endet der Prozeß.
Der END BLOCK (EDBLK) Kode ist ein Kode "100:xxxxx",
der aus einer Steuerklassifizierung "100" und aus einem
Argument "xxxxx" gebildet ist, das einen Wert in Binär
stellen darstellt, welcher Wert erhalten wird, indem eine
Zahl, die ab der logischen Kopfzeile in einem schon ver
arbeiteten Dokument seriell gezählt wird, "mod 32" unter
zogen wird. Wenn die Zahl einer logischen Zeile in Operation
"379" ist, beträgt "xxxxx" "11011", welches bei
"379mod32=27" "27" in Binärstellen darstellt.
Auf solch eine Weise werden Kodedarstellungsinformatio
nen bezüglich einer Position, die ab dem Kopf einer Seite
gezählt wurde, unmittelbar hinter der letzten Zeichenzone in
einer logischen Zeile hinzugefügt, die durch die zweite
Zonentrenneinheit 4′ erhalten wurde.
Bei Schritt B5 wird die Startposition der ersten
Zeichenzone in einer logischen Zeile bei jeder Gelegenheit
kodiert. Die Startposition kann jedoch als Relativwert zu
der Startposition der ersten Zeichenzone in der logischen
Zeile kodiert werden, die der obengenannten logischen Zeile
unmittelbar vorausgeht.
Bei dem Prozeß (Schritte B1 bis B17) wird die logische
Zeile, die von der ersten Zonentrenneinheit 2′ zu der
Sekundärscaneinheit 3′ übertragen wurde, in eine Zone
(Zeichenzone) kodiert, die schwarze Pixels enthält, und in
eine Leerzone (der Leerraum des linken Endes in einem
Dokument, der Raum zwischen Zeichen und der Leerraum des
rechten Endes in einem Dokument), die keine schwarzen Pixels
enthält.
Somit scannt die Sekundärscaneinheit 3′ die logische
Zeile, die Zeichenzonen enthält und von der ersten Zonen
trenneinheit 2′ übertragen wurde, in der Sekundärrichtung in
Ein-Byte-Einheit, und dann extrahiert die zweite Zonentrenn
einheit 4′ die kontinuierlichen Leerzonen als kombinierte
Leerzone, wodurch ein eingerückter Leerraum des linken Endes
und ein Leerraum des rechten Endes hinter einem kurzen Satz
in einem Dokument effektiv kodiert (komprimiert) werden.
Wie oben beschrieben, scannt die Hauptscaneinheit 1′
die logische Zeile in einer 8-Linien-Einheit, die viel
kleiner als die Zeichengröße ist. Daher kann der Raum
zwischen Zeichen oder englischen Wörtern, und der Raum
zwischen Zeichen mit vielen Veränderungen von schwarzen und
weißen Pixels in einem japanischen Dokument, effektiv
extrahiert und kodiert werden, zusätzlich zu dem Leerraum
des linken Endes und zu dem Leerraum des rechten Endes in
einem Dokument. Natürlich kann die Dokument-(Bitmap-Daten)-
Komprimierungsrate beträchtlich verbessert werden.
Ferner werden bei dem Bildverarbeitungsverfahren
schwarze Pixels normalerweise als Zahl "1" dargestellt, und
weiße Pixels werden als Zahl "0" dargestellt. Die Leerzone
genau hinter der Zeichenzone beginnt im wesentlichen bei
einem weißen Pixel "0".
Falls der Kode, der den Leerraum angibt, der START
SPACE Kode "000:00000" ("0" in Dezimalschreibweise) ist, ist
es unnötig, die Breite einer Zeichenzone zu bezeichnen.
Ferner kann die Verarbeitungslast des Personalcomputers
verringert werden, und die Dokument-(Bitmap-Daten)-Kom
primierungsrate kann weitgehend verbessert werden.
Da ein Kode, der eine logische Zeile darstellt, wie der
END BLOCK (EDBLK) Kode, zu dem Ende von jeder logischen
Zeile hinzugefügt wird, und eine Zahl der logischen Zeile,
die ab der verarbeiteten logischen Zeile im Kopf eines
Dokumentes gezählt wird, zu einem Wert mod32 hinzugefügt
wird, kann verhindert werden, selbst wenn ein Bitfehler
während einer Datenübertragung auftreten sollte, daß er sich
auf die folgenden logischen Zeilen ausbreitet.
Mit anderen Worten, selbst wenn die Datenkomprimierung
die absoluten Informationen von zu übertragenden Daten
kodiert, können Druckdaten gesteuert werden, um nicht unter
die Position verschoben zu werden, an der ein Fehler, wie
ein Bitfehler, aufgetreten ist.
Im allgemeinen enthalten englische Dokumente eingerück
te Formen, und der Beginn der Kopfzeichenzone belegt in
jeder logischen Zeile dieselbe Position oder eine Position
in der Nähe. Aus diesem Grund kann die Bitmap-Daten-Kom
primierungsrate weiter verbessert werden, indem der Beginn
der ersten Zeichenzone in einer logischen Zeile als Relativ
wert zu der ersten Zeichenzone in der unmittelbar vorausge
henden logischen Zeile kodiert wird.
Als nächstes erfolgt unten unter Bezugnahme auf die
Prozeßschritte C1 bis C4, die in Fig. 10 gezeigt sind, eine
Erläuterung bezüglich des Prozesses, bei dem die Zeichenzone
kodiert wird, die schwarze Pixels enthält, die bei Schritt
B9 extrahiert wurde, oder die Zeichenzone, die bei Voll
endung des obigen Prozesses nicht kodiert war (Schritte B1
bis B17). Fig. 10 zeigt den Schritt B10, der dem Schritt B10
in Fig. 9 entspricht.
Die Kodiereinheit 5′ empfängt Daten hinsichtlich der
Zeichenzone, die bei Schritt B9 extrahiert wurde, und
detektiert dann, ob sich die Daten auf kontinuierliche
Daten, wie Linien, beziehen, oder auf nichtkontinuierliche
Daten, wie normale Zeichen (Schritt C1).
Falls die empfangenen Daten kontinuierlich sind, wird
bei Schritt C1 die Route JA selektiert. Der REPEAT DATA
(RPTLN n m, wobei n eine ganze Zahl von 1 oder mehr oder
eine Wiederholungszahl ist und m Wiederholungsdaten sind)
Kode, der die Wiederholungszahl darstellt, wird zu den
kontinuierlichen Daten hinzugefügt (Schritt C2) und einem
Kodierprozeß unterzogen (Schritt C3).
Wie bei dem anderen Kode (VERTICAL SPACE Kode, END LINE
Kode) verkörpert bei dem REPEAT DATA (RPTLN n m) Kode
"111:xxxxx" "111" eine Steuerklassifizierung, die eine
Komprimierung von kontinuierlichen Daten angibt, und "xxxxx"
stellt ein Argument in Binärschreibweise dar, das die
Häufigkeit des Auftretens von kontinuierlichen Daten (Wie
derholungszahl) n angibt.
Wenn der Horizontalliniendarstellungskode "03" zum
Beispiel als 03, 03 . . . 03, 03 323-mal kontinuierlich auf
tritt, wird die Wiederholungszahl 323 in "287" und "36"
geteilt, um in Binärschreibweise immer 2 Byte darzustellen,
wie bei dem VERTICAL SPACE Kode erläutert wurde. Dann wird
die REPEAT NUMBER ausgedrückt als RPTLN287 03 RPTLN36 03
(323 = 287 + 36).
Der REPEAT DATA (RPTLN n m) Kode, der RPTLN287 dar
stellt, wird dargestellt als "111 : 00000 11111111". Der
REPEAT DATA (RPTLN n m) Kode, der RPTLN36 darstellt, wird
dargestellt als "111 : 00000 00000100".
Wie oben beschrieben, wird ein Zeichen, das aus einer
Steuerklassifizierung, die Wiederholen darstellt, und aus
einer Wiederholungszahl gebildet ist, Bitmap-Daten zugeord
net, die kontinuierlich zweimal oder mehrmals in einer
Zeichenzone erscheinen, die kontinuierliche schwarze Pixels
in einer logischen Zeile enthält und durch die zweite
Zonentrenneinheit 4′ erhalten wurde.
Falls die empfangenen Daten nicht kontinuierlich sind,
werden sie kodiert, wie sie sind (Schritt C4).
Nicht nur normaler Fettdruck, wie Gotik, sondern auch
kontinuierliche Daten, wie eine horizontale Linie, können
effektiv komprimiert werden, indem einer Zeichenzone in
einem Dokument ein und derselbe Datenwiederholungsdarstel
lungskode zugeordnet wird.
Bei Vollendung des Prozesses (Schritte A1 bis A11, B1
bis B17 und Schritte C1 bis C4) ist der Kodierungs-(Kom
primierungs-)Prozeß des englischen Bitmaps für eine Seite
beendet, wie in Fig. 12 gezeigt.
Fig. 14 ist ein Diagramm, das die Beziehung zwischen
einer Zeichenzone und einer Leerzone in Bitmap-Daten zeigt.
Fig. 15 ist eine Tabelle, die Kodes darstellt und einen
VERTICAL SPACE Kode, einen START BLOCK Kode und END LINE
Kode, Funktionen und Argumente (Optionen) enthält, die in
der vorliegenden Ausführungsform beschrieben sind.
In Fig. 15 sind Zonen, die durch die erste Zonentrenn
einheit 2′ und die zweite Zonentrenneinheit 4′ erhalten
wurden, mit einem Kode mit einer Länge von 8 Bits gekenn
zeichnet, der aus einer Steuerklassifizierung und einem
Argument gebildet ist.
Bei dem VERTICAL SPACE Kode folgt zum Beispiel wenig
stens ein Kode mit einer Länge von 8 Bits unmittelbar hinter
allem, oder ein Kode mit einer Länge von 8 Bits, der aus der
Steuerklassifizierung und dem Argument gebildet ist und jede
Zone kennzeichnet.
Wie oben beschrieben, kann gemäß der vorliegenden
Erfindung die Komprimierungsrate weitgehend verbessert
werden, da alle Leerzonen in einem Dokument effektiv
extrahiert und kodiert werden können.
Konkret belegt, wie in Fig. 14 gezeigt, das Zeichen
zonenverhältnis eines Dokumentes im Durchschnitt 6,7%, und
den Rest belegen die Leerzonen, die den Raum zwischen
Zeichen (10,3% im Durchschnitt), den eingerückten Raum und
den Raum vor oder hinter einem kurzen Satz (32,5% im
Durchschnitt) und den Raum zwischen Zeilen (50,4% im
Durchschnitt) einnehmen. Gemäß der vorliegenden Erfindung
kann, da die Leerzonen effektiv extrahiert und kodiert
werden können, die Komprimierungsrate weitgehend verbessert
werden.
Wenn der Bitmap-Datenkomprimierungsprozeß auf einem
Personalcomputer ausgeführt wird, wird eine kleine Anzahl
von Steuerkodes (Kode mit einer Länge von 8 Bits), z. B.
höchstens 8 Steuerklassifizierungen, verwendet. Daher kann
die Bitmap-Daten-Komprimierungsrate durch einen einfachen
Algorithmus effektiv verbessert werden. Die Belastung bei
dem Komprimierungsprozeß kann reduziert werden.
Gemäß der vorliegenden Erfindung wird das Hauptscannen
in einer Zeichenzone in 8-Bit-(Punkt)-Einheit vertikal
ausgeführt.
Jeder Kode (Steuerkode) ist in 8-Bit-Länge und besteht
aus einer Steuerklassifizierung plus Argument, oder in Byte-
Einheit, die aus mehreren verketteten 8-Bit-Kodes gebildet
ist. Bei solch einer Konfiguration sind alle Daten, die
durch Kodieren eines Dokumentes (Bitmap-Daten) erhalten
wurden, in Byte-Einheit. Da die Komprimierung mit der
Verarbeitungseinheit eines Prozessors verarbeitet wird, die
auf die Bitbreite eines Speichers abgestimmt ist, kann daher
die Verarbeitung auf der Seite von Personalcomputern oder
Druckern erleichtert und verbessert werden.
Als nächstes wird die zweite Ausführungsform gemäß der
vorliegenden Erfindung erläutert.
Fig. 16 ist ein Blockdiagramm, das die Konfiguration
der Bitmap-Datenkomprimierungsvorrichtung gemäß der zweiten
Ausführungsform der vorliegenden Erfindung zeigt. Wie in
Fig. 16 gezeigt, enthält die Komprimierungsvorrichtung 9′
eine erste Scaneinheit 1′, die als Hauptscanmittel dient,
eine erste Zonentrenneinheit 2′, die als erstes Zonentrenn
mittel dient, eine Sekundärscaneinheit 3′, die als Sekun
därscanmittel dient, eine zweite Zonentrenneinheit 4′, die
als zweites Zonentrennmittel dient, eine erste Kodiereinheit
5A, die als erstes Kodiermittel dient, und eine zweite
Kodiereinheit 5B, die als zweites Kodiermittel dient.
Die Hauptscaneinheit 1′, die erste Zonentrenneinheit
2′, die Sekundärscaneinheit 3′ und die zweite Zonentrenn
einheit 4′ entsprechen jeweilig jenen in der ersten Aus
führungsform.
Die Hauptscaneinheit 1′ scannt das in Fig. 12 gezeigte
englische Dokument in der Hauptscanrichtung (oder nach
rechts in Fig. 12) (tastet es ab). Die erste Zonentrenn
einheit 2′ trennt die Zeile, die durch die Hauptscaneinheit
1′ gescannt wurde, in eine Zone, die Zeichen (nachfolgend
als schwarze Pixels bezeichnet) enthält, und eine Zone, die
keine Zeichen enthält, bei jeder 8-Linien-(Punkt)-Einheit.
Die Sekundärscaneinheit 3′ scannt eine logische Zeile,
die als wenigstens eine Linie mit Zeichen definiert ist, die
durch die erste Zonentrenneinheit 2′ erhalten wurde, in der
Sekundärscanrichtung (nach unten in Fig. 12), die zu der
Hauptscanrichtung rechtwinklig ist.
Die zweite Zonentrenneinheit 4′ trennt die Zeile, die
durch die Sekundäreinheit 3′ gescannt wurde, in eine Zone,
die Zeichen enthält, und eine Zone, die keine Zeichen
enthält, in Ein-Spalten-Einheit.
Die erste Kodiereinheit 5A entspricht der Kodiereinheit
5′, die in der ersten Ausführungsform verwendet wurde, und
kodiert eine Zone, die in der ersten Zonentrenneinheit 2′
und der zweiten Zonentrenneinheit 4′ erhalten wurde, in
einen Kode mit einer Länge von 8 Bits "XXX:xxxxx", der aus 3
Bits "XXX" besteht, die eine Steuerklassifizierung dar
stellen, und aus 5 Bits "xxxxx", die ein Argument darstel
len.
Die zweite Kodiereinheit 5B, die in der ersten Aus
führungsform in Fig. 5 nicht angeordnet ist, kodiert die
ersten Kodedaten, die durch die erste Kodiereinheit 5A
erhalten wurden, zum Beispiel gemäß der adaptiven Lempel-
Ziv-(LZ)-Kodiertechnik weiter.
In der vorliegenden Ausführungsform entspricht das
Komprimierungsverfahren der Bitmap-Datenkomprimierungsvor
richtung 9′ dem Prozeß der Komprimierungsvorrichtung 14, die
in Fig. 6 gezeigt ist.
Der Fall, wenn die Bitmap-Datenkomprimierungsvorrich
tung das in Fig. 12 gezeigte englische Dokument komprimiert,
wie bei der ersten Ausführungsform, wird unten beschrieben.
Die Hauptscaneinheit 1′ scannt zuerst das Dokument vom
oberen Ende in der Hauptscanrichtung immer in 8-Linien-
Einheit (logische Zeile) und detektiert, ob die 8 Linien
schwarze Pixels enthalten.
Die Hauptscaneinheit 1′ überträgt das Detektionsresul
tat zu der ersten Zonentrenneinheit 2′. Falls die erste
Zonentrenneinheit 2′ das Resultat empfängt, das eine logi
sche Zeile mit weißen Pixels (Leerstellen) enthält, wie
derholt die Hauptscaneinheit 1′ wieder das 8-Linien-Scannen.
Wenn das durch die erste Zonentrenneinheit 2′ empfange
ne Detektionsresultat schwarze Pixels enthält, extrahiert
die erste Zonentrenneinheit 2′ kollektiv die Stellen, an
denen weiße Pixels, oder Leerzonen, kontinuierlich erschei
nen, und überträgt sie dann zu der ersten Kodiereinheit 5A.
Die Kodiereinheit 5A empfängt die Leerzone, die in der
ersten Zonentrenneinheit 2′ extrahiert wurde, und kodiert
sie dann in einen VERTICAL SPACE Kode "010:xxxxx", der eine
Leerzone darstellt.
Der VERTICAL SPACE Kode ist derselbe wie jener, der in
der ersten Ausführungsform beschrieben wurde. "010" stellt
eine Steuerklassifizierung dar, die auf einer Seite vertikal
überspringt, und "xxxxx" stellt eine Binärzahl dar, die die
Lauflänge (die Länge einer kontinuierlichen Leerzone)
darstellt, mit der Linien bei einer Dokumentdruckoperation
vertikal übersprungen werden. Falls die Lauflänge der
Leerzone zum Beispiel "17" beträgt, wird der VERTICAL SPACE
Kode "010 : 10001".
Die Lauflänge mit einer Dezimalzahl von "32" oder mehr,
z. B. "200", die nicht mit binären 5 Bits dargestellt werden
kann, wird durch 2 Bytes (8 Bits plus 8 Bits) ausgedrückt,
wie ein Steuerkode 010 : 00000 10101000, mit der Bedeutung,
daß das Argument "00000" des Kodes mit 8-Bit-Länge ferner
ein sukzessives Argument enthält, das dem Kode mit 8-Bit-
Länge folgt und bei der Zahl "32" beginnt.
In der vorliegenden Ausführungsform kann der VERTICAL
SPACE Kode mit mehreren Bytes dargestellt werden und ferner
mehrere Argumente hinter einem Argument enthalten.
Als nächstes unterzieht die Hauptscaneinheit 1′ das
Dokument weiter dem 8-Linien-Scannen und detektiert, ob die
8 logischen Linien schwarze Pixels enthalten.
Die Hauptscaneinheit 1′ überträgt das Detektionsresul
tat zu der ersten Zonentrenneinheit 2′. Falls die erste
Zonentrenneinheit 2′ das Detektionsresultat, oder die
empfangenen logischen Zeilen, mit schwarzen Pixels empfängt,
wiederholt die Hauptscaneinheit 1′ das 8-Linien-Scannen bis
zu der Position, an der alle logischen Linien nur weiße
Pixels enthalten.
Das heißt, die Hauptscaneinheit 1′ wiederholt das 8-
Linien-Scannen, bis das Scannen der Zeile 20, die Zeichen
enthält, endet und der Beginn einer neuen Leerzeile 21
detektiert wird.
Somit beträgt die Anzahl von Linien, die eine logische
Zeile bilden, die durch die erste Zonentrenneinheit 2′
erhalten wird, "8 (Linien)".
Bei dem Detektionsresultat, das keine schwarzen Pixels
enthält, das bei der ersten Zonentrenneinheit 2′ empfangen
wird, extrahiert die erste Zonentrenneinheit 2′ die Stelle,
an der schwarze Pixels bei dem Prozeß kontinuierlich
erscheinen, oder die logische Zeile mit Zeichenzonen, und
überträgt dann die Zeichenzonen als Informationen V-Info zu
der ersten Kodiereinheit 5A.
Somit ist die Anzahl von Linien, die eine logische
Zeile bilden, die durch die erste Zonentrenneinheit 2′
erhalten wird, ein fester Wert (N) von 8 (Linien) oder mehr.
Die erste Kodiereinheit 5A kodiert die empfangene
logische Zeile in einen START BLOCK Kode "011 : 00000", der
den Beginn einer logischen Zeile darstellt, die Zeichenzonen
enthält.
Der START BLOCK Kode "011 : 00000" ist ein Kode mit 8-
Bit-Länge und hat dasselbe Bitformat wie der VERTICAL SPACE
Kode. "011" stellt eine Steuerklassifizierung dar, und
"00000" stellt kein Argument dar.
Um Leerzonen, die eine logische Zeile enthalten, zu
20 kodieren, überträgt die erste Zonentrenneinheit 2′ die
logische Zeile über die Leitung 6 zu der Sekundärscaneinheit
3′ und detektiert dann, ob es die letzte Zeile (die letzte
logische Zeile oder das untere Ende einer Dokumentenseite)
ist.
Falls das Detektionsresultat nicht die letzte Zeile
angibt, wiederholt die Hauptscaneinheit 1′ den obigen
Prozeß, bis die Hauptscaneinheit 1′ die letzte Zeile detek
tiert.
Falls das Detektionsresultat die letzte Zeile angibt,
empfängt die erste Kodiereinheit 5A die Zeile (logische
Zeile) und kodiert sie dann in einen END LINE Kode
"001 : 00000", der die letzte Zeile darstellt.
Die Zone, die aus M (z. B. "17" oder "200") Linien
gebildet ist, keine kontinuierlichen schwarzen Pixels
enthält und durch die erste Zonentrenneinheit 2′ erhalten
wurde, wird als einzelne Zone kodiert. Zonen am Kopf oder am
Ende einer Seite, die keine schwarzen Pixels enthalten,
werden als einzelne Zone kodiert.
Wie bei der ersten Ausführungsform wird das englische
Dokument (Bitmap-Daten) in der 8-Linien-(logische Zeile)-
Einheit in eine Zeichenzone getrennt, die schwarze Pixels
enthält, und eine Leerzone (das obere Ende bei einem Doku
ment, der Raum zwischen Zeilen und das untere Ende bei einem
Dokument), die keine schwarzen Pixels enthält. Die Zeile,
die Zeichen enthält, wird zu der Sekundärscaneinheit 3′
übertragen, und die Leerzone wird in der ersten Kodier
einheit 5A kodiert.
Leerzonen mit 8 Linien oder mehr werden nicht auf
einmal erweitert und kodiert. Wie bei dem Prozeß der ersten
Ausführungsform, der in Fig. 8 gezeigt ist, können Leerzonen
in 8-Linien-Einheit extrahiert und kodiert werden.
In diesem Fall scannt die Hauptscaneinheit 1′ zuerst
ein Dokument von dessen oberem Ende immer in 8-Linien-
Einheit (logische Zeile) in der Hauptscanrichtung und
detektiert, ob die 8 Linien schwarze Pixels enthalten oder
nicht.
Falls die 8 Linien keine schwarzen Pixels enthalten,
extrahiert die erste Zonentrenneinheit 2′ Leerzonen für 8
Linien, und die erste Kodiereinheit 5A kodiert das Resultat
in einen VERTICAL SPACE Kode "010:xxxxx".
Falls die 8 Linien schwarze Pixels enthalten, extra
hiert die erste Zonentrenneinheit 2′ die logische Zeile für
8 Linien, und die erste Kodiereinheit 5A kodiert die Start
position einer logischen Zeile in einen START BLOCK Kode
"011 : 00000".
Um die logische Zeile zugleich in eine Zeichenzone und
eine Leerzone zu trennen und die resultierenden Zonen zu
kodieren, überträgt die erste Zonentrenneinheit 2′ die
logische Zeile über die Leitung 6 ferner zu der Sekundär
scaneinheit 3′ und detektiert dann, ob die logische Zeile
die letzte Zeile (das untere Ende auf einer Dokumentenseite)
ist.
Falls das Detektionsresultat nicht die letzte Zeile
angibt, wird der obengenannte Prozeß wiederholt, bis die
letzte Zeile auftritt.
Falls das Detektionsresultat die letzte Zeile angibt,
kodiert die erste Kodiereinheit 5A die Zeile in einen END
LINE Kode "001 : 00000", der das untere Ende einer Dokumenten
seite darstellt.
Wie bei der ersten Ausführungsform scannt die Haupt
scaneinheit 1′ gemäß der vorliegenden Ausführungsform
Bitmap-Daten in 8-Linien-Einheit, und die erste Zonentrenn
einheit 2′ extrahiert eine Leerzone mit 8 Linien oder mehr
als einzelne Leerzone. Daher kann die Leerzone, die oft an
dem oberen Ende oder dem unteren Ende eines Dokumentes
angeordnet ist, um ein gutes Aussehen vorzusehen, effektiv
kodiert und komprimiert werden.
Die Hauptscaneinheit 1′ scannt in 8-Punkte-(Linien)-
Einheit (wobei die Zeichen in dem englischen Dokument in
Fig. 12 jeweils 52 Punkte hoch sind), die viel kleiner als
das Zeichen in einem Dokument ist. Daher können nicht nur
die Leerzonen an dem oberen Ende und dem unteren Ende
effektiv kodiert und komprimiert werden, sondern auch
Leerzonen zwischen Zeilen in einem Dokument.
In der vorliegenden Ausführungsform scannt die Haupt
scaneinheit 1′ ein Dokument in 8-Linien-Einheit, kann es
aber in K- (eine ganze Zahl von 1 oder mehr) -Linien-Einheit
scannen.
Wie bei der ersten Ausführungsform scannt die Sekun
därscaneinheit 3′ die logische Zeile, die eine Zeichenzone
enthält und von der ersten Zonentrenneinheit 2′ übertragen
wurde; die zweite Zonentrenneinheit 4′ trennt die logische
Zeile in eine Zeichenzone und eine Leerzone; und die erste
Kodiereinheit 5A kodiert (komprimiert) sie. Als nächstes
wird unten solch ein Prozeß beschrieben.
Die Sekundärscaneinheit 3′ empfängt eine logische
Zeile, die schwarze Pixels enthält und von der ersten
Zonentrenneinheit 2′ übertragen wurde, und führt dann ein
Ein-Spalten-(Byte)-Scannen in der Richtung aus (auf dem
englischen Dokument in Fig. 12 nach unten), die zu der
Scanrichtung der Hauptscaneinheit 1′ rechtwinklig ist, um zu
detektieren, ob die Spalte schwarze Pixels enthält.
Die Sekundärscaneinheit 3′ überträgt das Detektions
resultat zu der zweiten Zonentrenneinheit 4′.
Wenn gescannte Ein-Spalten-Daten nur weiße Pixels
(Leerstellen) enthalten, wiederholt die Sekundärscaneinheit
3′ die Ein-Spalten-Scanoperation, bis die logische Zeile
Zeichen enthält.
Wenn die zweite Zonentrenneinheit 4′ das Detektions
resultat, das schwarze Pixels enthält, empfängt, extrahiert
sie auf einmal die Stellen, an denen weiße Pixels kontinu
ierlich auftreten, oder Leerzonen in der logischen Zeile
(die Leerzone des linken Endes bei einem Dokument), und
überträgt dann das Resultat als Informationen H-Info zu der
ersten Kodiereinheit 5A.
Die erste Kodiereinheit 5A kodiert die resultierenden
Informationen in einen SKIP BLOCK Kode "110:xxxxx", der aus
einer Steuerklassifizierung "110" gebildet ist, die steuert,
um die Leerzone zu überspringen, und aus "xxxxx" in Binär
schreibweise, welches die Länge einer zu überspringenden
Leerzone darstellt.
Ferner wird der Beginn einer Zeichenzone in einer
logischen Zeile in einen PUT BLOCK Kode kodiert, der aus
einer Steuerklassifizierung "101" gebildet ist, die den
Beginn einer Zeichenzone bezeichnet, und aus "00000",
welches keine Argumente darstellt.
Die Sekundärscaneinheit 3′ unterzieht die logische
Zeile weiter dem Ein-Spalten-Scannen und detektiert dann, ob
die Spalte schwarze P 13066 00070 552 001000280000000200012000285911295500040 0002019516979 00004 12947ixels enthält.
Falls die logische Zeile schwarze Pixels enthält,
wiederholt die Sekundärscaneinheit 3′ das Ein-Spalten-
Scannen, bis das Ende einer Zeichenzone detektiert ist.
Das Detektionsresultat, das keine schwarze Pixels
enthält und in der zweiten Zonentrenneinheit 4′ empfangen
wird, gibt den Beginn einer neuen Leerzone (Leerstelle
zwischen Zeichen) an. Daher wird das Detektionsresultat in
einen START SPACE Kode "000:00000" kodiert, der aus einer
Steuerklassifizierung "000" gebildet ist, die den Beginn
eines Raumes hinter einer Zeichenzone (oder das Ende einer
Zeichenzone) angibt, und aus "00000", welches keine Argumen
te darstellt.
Somit wird das Zeichen, welches das Ende einer Zeichen
zone mit kontinuierlichen schwarzen Pixels in einer logi
schen Zeile darstellt, die in der zweiten Zonentrenneinheit
4′ erhalten wurde, 0 ("000:00000").
Die zweite Zonentrenneinheit 4′ extrahiert kollektiv
die Stellen, an denen schwarze Pixels in dem Prozeß kon
tinuierlich auftreten, oder die Zeichenzone in einer logi
schen Zeile, und überträgt dann das Resultat als Informatio
nen H-Info zu der ersten Kodiereinheit 5A, um die Zeichenzo
ne zu kodieren.
Die Sekundärscaneinheit 3′ führt weiter das Ein-Spal
ten-Scannen aus und scannt, ob schwarze Pixels enthalten
sind.
Wenn das Detektionsresultat keine schwarzen Pixels
enthält, wiederholt die Sekundärscaneinheit 3′ das Ein-
Spalten-Scannen, bis das Detektionsresultat schwarze Pixels
enthält.
Das Detektionsresultat, das schwarze Pixels enthält,
gibt das Ende der kontinuierlichen Zone (der Leerzone
zwischen Zeichen) oder den Beginn einer neuen Zeichenzone
an. Somit wird die Startposition der Zeichenzone in einen
PUT BLOCK Kode "101 : 00000" kodiert.
Die zweite Zonentrenneinheit 3′ extrahiert die Leerzo
ne. Dann kodiert die erste Kodiereinheit 5A die Leerzone.
Die Sekundärscaneinheit 3′ detektiert, ob die gescannte
logische Zeile beendet ist.
Falls die logische Zeile nicht beendet ist, wird der
Prozeß wiederholt, bis die logische Zeile endet.
Falls die logische Zeile beendet ist, wird die Endposi
tion der logischen Zeile in einen END BLOCK (EDBLK) Kode
kodiert, um den Prozeß zu beenden.
Der END BLOCK (EDBLK) Kode entspricht jenem der ersten
Ausführungsform.
Der END BLOCK Kode ist "100:xxxxx", der gebildet ist
aus einer Steuerklassifizierung "100" und einem Argument
"xxxxx" in Binärschreibweise, das einen Wert darstellt, der
erhalten wird, indem die Zahl, die ab der schon verarbeite
ten logischen Zeile am Kopf eines Dokumentes gezählt wurde,
mod32 unterzogen wird. Wenn die Zahl der logischen Zeile bei
einer Verarbeitungsoperation zum Beispiel "379" ist, ist
"xxxxx" "11011" in Binärschreibweise, welches 27 bei
379mod32=27 darstellt.
Ein Kode, der positionelle Informationen angibt, die ab
dem Seitenkopf gezählt wurden, wird unmittelbar hinter der
letzten Zeichenzone in einer logischen Zeile hinzugefügt,
die in der zweiten Zonentrenneinheit 4′ erhalten wurde.
Bei der vorliegenden Ausführungsform kann die Start
position der ersten Zeichenzone in einer logischen Zeile als
Relativposition für die erste Zeichenzone in der logischen
Zeile kodiert werden, die der obengenannten logischen Zeile
unmittelbar vorausgeht.
Die logische Zeile, die von der ersten Zonentrenn
einheit 2′ zu der Sekundärscaneinheit 3′ übertragen wird,
wird ferner in eine Zone (Zeichenzone) getrennt, die schwar
ze Pixels enthält, und in eine Leerzone (der Leerraum des
linken Endes, der Raum zwischen Linien und der Leerraum des
rechten Endes bei einem Dokument), die keine schwarzen
Pixels enthält.
Wie oben beschrieben, scannt die Sekundärscaneinheit 3′
ferner die logische Zeile, die Zeichenzonen enthält und von
der ersten Zonentrenneinheit 2′ übertragen wurde, in Ein-
Byte-Einheit in der Sekundärscanrichtung. Die zweite Zonen
trenneinheit 4′ extrahiert kontinuierliche Leerzonen als
eine Leerzone. Daher können der linke Leerraum auf Grund
einer Einrückoperation und der rechte Leerraum auf Grund
eines kurzen Satzes effektiv kodiert (komprimiert) werden.
Da die Hauptscaneinheit 1′ die logische Zeile in der 8-
Linien-Einheit scannt, die viel kleiner als das Zeichen ist,
kann, wie oben beschrieben, nicht nur der linke oder rechte
Leerraum, sondern auch der Leerraum zwischen Zeichen oder
englischen Wörtern in einem Dokument extrahiert und kodiert
werden. Daher kann die Komprimierungsrate eines Dokumentes
(Bitmap-Daten) weitgehend verbessert werden.
Ferner bezeichnet bei dem Bildverarbeitungsverfahren,
das in der ersten Ausführungsform verwendet wird, die Stelle
"1" normalerweise ein schwarzes Pixel, und die Stelle "0"
bezeichnet ein weißes Pixel. Die Leerzone unmittelbar hinter
der Zeichenzone beginnt ohne Ausnahme bei einem weißen Pixel
"0".
Falls der Leerraumdarstellungskode "000:00000" ist ("0"
als Dezimalzahl), wie der START SPACE Kode, ist es unnötig,
die Breite einer Zeichenzone anzugeben. Somit kann die Last
beim Verarbeiten auf dem Computer reduziert werden. Die
Dokument- (Bitmap-Daten) -Komprimierungsrate kann weitgehend
verbessert werden.
Selbst wenn ein Fehler, wie ein Bitfehler, auftritt,
kann eine Fehlerausbreitung auf die folgenden logischen
Zeilen verhindert werden, indem ein Wert, wie der END BLOCK
(EDBLK) Kode hinzugefügt wird, der erhalten wird, indem der
Kode, der die letzte logische Zeile in einem Dokument
angibt, und eine Zahl der logischen Zeile, die ab der schon
verarbeiteten logischen Zeile am Kopf eines Dokumentes
gezählt wird, mod32 unterzogen wird.
Selbst wenn die absoluten Positionsinformationen von zu
übertragenden Daten kodiert worden sind, kann die Datenkom
primierung verhindern, daß Druckdaten an Positionen ver
schoben werden, die dem Abschnitt folgen, an dem ein Fehler,
wie ein Bitfehler, aufgetreten ist.
Im allgemeinen enthalten viele englische Dokumente
eingerückte Formate. Die Anfänge der Kopfzeichenzonen in
logischen Zeilen beginnen an derselben Position oder fast an
derselben Position. Die Komprimierungsrate kann weitgehend
verbessert werden, indem ein Relativwert zwischen der
Startposition der ersten Zeichenzone der logischen Zeile und
der ersten Zeichenzone in der logischen Zeile, die der
obengenannten logischen Zeile unmittelbar vorausgeht,
dargestellt wird.
Als nächstes erfolgt unten eine Beschreibung bezüglich
eines Prozesses, bei dem Zeichenzonen kodiert werden, die
zur Zeit der Vollendung des obigen Prozesses nicht kodiert
waren.
Wie bei der ersten Ausführungsform empfängt die erste
Kodiereinheit 5A zuerst Daten einer Zeichenzone und detek
tiert dann, ob die Daten kontinuierliche Daten sind, wie
Linien, oder nichtkontinuierliche Daten, wie normale Zei
chen.
Falls die empfangenen Daten kontinuierlich sind, werden
sie in einen REPEAT DATA (RPTLN n m, wobei n eine ganze Zahl
von 1 oder mehr ist und eine Wiederholfrequenz darstellt und
m Wiederholdaten sind) Kode kodiert.
Wie bei der ersten Ausführungsform ist in dem REPEAT
DATA (RPTLN n m) Kode "111:xxxxx" "111" eine Steuerklassifi
zierung, die eine Komprimierung von kontinuierlichen Daten
bezeichnet, und "xxxxx" ist ein Argument als Binärzahl, das
die Frequenz des Auftretens (Wiederholungszahl) n der
kontinuierlichen Daten darstellt.
Der Horizontalliniendarstellungskode "03" tritt zum
Beispiel 323-mal wiederholt auf, als 03, 03 . . . 03, 03. Wie
bei dem VERTICAL SPACE Kode beschrieben, wird die Wiederhol
anzahl 323 zur Darstellung als 2-Byte-Ausdruck in 287 und 36
geteilt, oder RPTLN287 03 RPTLN36 03 (323 = 287 + 36).
Der REPEAT DATA (RPTLN n m) Kode, der RPTLN287 dar
stellt, ist "111 : 00000 11111111", und der REPEAT DATA
(RPTLN n m) Kode, der RPTLN36 darstellt, ist "111 : 00000
00000100".
Auf solch eine Weise wird das Wiederholungsdarstel
lungszeichen, das aus einer Steuerklassifizierung und
Wiederholanzahlen gebildet ist, Daten zugeordnet, die
kontinuierlich zweimal oder mehrmals in Bitmap-Daten-Sätzen
in einer Zeichenzone auftreten, die kontinuierliche schwarze
Pixels in einer logischen Zeile enthält und durch die zweite
Zonentrenneinheit 4′ erhalten wurde.
Falls die empfangenen Daten nicht kontinuierlich sind,
werden empfangene nichtkontinuierliche Daten kodiert, wie
sie sind.
Das Zuordnen eines Kodes zu der Zeichenzone in einem
Dokument, der die Wiederholbarkeit derselben Daten angibt,
kann die Komprimierungsrate von kontinuierlichen Daten, wie
horizontalen Linien, zuzüglich des Fettdrucktyps, wie
Normal-Gotik, effektiv verbessern.
Wie bei der ersten Ausführungsform kennzeichnet der
Kode, wie der VERTICAL SPACE Kode, der in Fig. 15 gezeigt
ist, die Zone, die durch die erste Zonentrenneinheit 2′ und
die zweite Zonentrenneinheit 4′ erhalten wurde, mit einem
Kode von 8-Bit-Länge. Der Kode von 8-Bit-Länge ist aus einer
Steuerklassifizierung und einem Argument gebildet.
Wenigstens einer der Kodes von 8-Bit-Länge, wie zum
Beispiel der VERTICAL SPACE Kode, folgt unmittelbar hinter
allem, oder der Kode von 8-Bit-Länge, der aus der Steuer
klassifizierung und einem Argument gebildet ist und zur
Kennzeichnung einer Zone dient.
Wie oben beschrieben, entspricht der oben beschriebene
Prozeß dem Prozeß gemäß der ersten Ausführungsform. Bei der
vorliegenden Ausführungsform können alle Leerzonen in einem
Dokument effektiv extrahiert und kodiert werden. 8 Bits, die
in einer Zeichenzone vertikal angeordnet sind, werden als
eine Einheit behandelt. Jeder Kode (Steuerkode) ist in 8-
Bit-Länge mit einer Steuerklassifizierung und einem Argument
oder in Byte-Einheit mit verketteten 8-Bit-Kodes gebildet.
Daher sind alle Daten, die erhalten werden, indem ein
Dokument (Bitmap-Daten) einer Kodieroperation unterzogen
wird, in Byte-Einheit gebildet, so daß der Komprimierungs
prozeß mit der Prozessorverarbeitungseinheit ausgeführt
werden kann, die an die Speicherbitbreite angepaßt ist. Die
Betriebsfähigkeit des Personalcomputers und des Druckers
kann weitgehend verbessert werden.
Wenn die erste Kodiereinheit 5A Bitmap-Daten für eine
Seite vollständig kodiert, sind die komprimierten Bitmap-
Daten auf solch eine Weise aus Wiederholungsdatensätzen in
Byte-Einheit gebildet, die den VERTICAL SPACE Kode, START
BLOCK Kode, END LINE Kode, SKIP BLOCK Kode, START SPACE
Kode, END BLOCK Kode und dergleichen enthalten.
Bei der vorliegenden Ausführungsform kodiert die zweite
Kodiereinheit 5B Daten unter Verwendung des adaptiven
Lempel-Ziv-(LZ)-Kodierverfahrens weiter.
Das adaptive Lempel-Ziv-(LZ)-Kodierverfahren kann
Datenmuster, die Datensätze enthalten, die wiederholt in
Byte-Einheit auftreten, effektiv komprimieren.
Da die zweite Kodiereinheit 5B die ersten kodierten
Daten (die den VERTICAL SPACE Kode, START BLOCK Kode, END
LINE Kode oder dergleichen enthalten), die in der ersten
Kodiereinheit 5A erhalten wurden, unter Einsatz des adapti
ven Lempel-Ziv-(LZ)-Kodierverfahrens weiter komprimiert,
beträgt die durchschnittliche Bitmap-Datenkomprimierungsrate
1/48,3.
Im Gegensatz dazu beträgt die durchschnittliche Bitmap-
Datenkomprimierungsrate, die durch die erste Kodiereinheit
5A erreicht wird, 1/11,3, und die durchschnittliche Bitmap-
Datenkomprimierungsrate, die durch die zweite Kodiereinheit
5B erreicht wird, beträgt 1/16,7. Es versteht sich, daß die
Kombination der ersten und zweiten Kodiereinheiten 5A und 5B
bei dem Kodierprozeß die durchschnittliche Bitmap-Datenkom
primierungsrate 3- bis 4mal verbessert.
Anstelle des Kodierverfahrens der zweiten Kodiereinheit
5B kann ein anderes Kodierverfahren genutzt werden (wie das
Huffman- oder ein universelles Kodierverfahren).
Hinsichtlich der Beziehung zwischen den Zahlen K, M und
N der logischen Zeilen, die in der ersten Zonentrenneinheit
2′ erhalten werden und in den ersten und zweiten Ausfüh
rungsformen ersichtlich sind, wird das Scannen in jeder
Ausführungsform unter der Bedingung ausgeführt, daß die Zahl
K der logischen Zeilen 8 beträgt. Daher enthält wenigstens
eine der gescannten logischen Zeilen 8 Linien oder mehr mit
schwarzen Pixels. Die Zahl M von Linien in einer Zone
(Leerzone) ohne kontinuierliche schwarze Pixels ist größer
als 8. Diese Beziehungen werden dargestellt als K N oder
K M.
Claims (34)
1. Ein Bitmap-Datenkomprimierungsverfahren mit:
einem Hauptscanschritt (S1) zum Scannen von Bitmap-Daten in einer Hauptscanrichtung;
einem ersten Zonentrennschritt (S2) zum Trennen einer Zone, die schwarze Pixels enthält, und einer Zone, die keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1 oder mehr) Linien durch Ausführen des genannten Hauptscanprozesses;
einem Sekundärscanschritt (S3) zum Scannen einer logischen Zeile in einer Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig ist, welche logische Zeile, in der wenigstens eine Linie, die durch den genannten ersten Zonentrennschritt erhalten wurde, als N Linie(n) (eine ganze Zahl von 1 oder mehr) definiert ist, schwarze Pixels enthält;
einem zweiten Zonentrennschritt (S4) zum Trennen einer Zone, die schwarze Pixels enthält, in Spalten einheit, und einer Zone, die keine schwarzen Pixels enthält, durch Ausführen des genannten Sekundärscanschrittes; und
einem Kodierungsschritt (S5) zum Kodieren jeder der Zonen, die durch den genannten ersten Zonentrenn schritt (S2) und den genannten zweiten Zonentrennschritt (S4) erhalten wurden, als Element.
einem Hauptscanschritt (S1) zum Scannen von Bitmap-Daten in einer Hauptscanrichtung;
einem ersten Zonentrennschritt (S2) zum Trennen einer Zone, die schwarze Pixels enthält, und einer Zone, die keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1 oder mehr) Linien durch Ausführen des genannten Hauptscanprozesses;
einem Sekundärscanschritt (S3) zum Scannen einer logischen Zeile in einer Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig ist, welche logische Zeile, in der wenigstens eine Linie, die durch den genannten ersten Zonentrennschritt erhalten wurde, als N Linie(n) (eine ganze Zahl von 1 oder mehr) definiert ist, schwarze Pixels enthält;
einem zweiten Zonentrennschritt (S4) zum Trennen einer Zone, die schwarze Pixels enthält, in Spalten einheit, und einer Zone, die keine schwarzen Pixels enthält, durch Ausführen des genannten Sekundärscanschrittes; und
einem Kodierungsschritt (S5) zum Kodieren jeder der Zonen, die durch den genannten ersten Zonentrenn schritt (S2) und den genannten zweiten Zonentrennschritt (S4) erhalten wurden, als Element.
2. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 1, ferner mit dem Schritt:
Kodieren einer Zone, die aus sukzessiven M Linien (M K) gebildet ist, als eine Zone, welche Zone keine schwarzen Pixels enthält und durch den ersten Zonen trennschritt (S2) erhalten wurde.
Kodieren einer Zone, die aus sukzessiven M Linien (M K) gebildet ist, als eine Zone, welche Zone keine schwarzen Pixels enthält und durch den ersten Zonen trennschritt (S2) erhalten wurde.
3. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 2, ferner mit dem Schritt:
Kodieren einer Zone am Anfang von jeder Seite, die keine schwarzen Pixels enthält und durch den genannten ersten Zonentrennschritt (S2) erhalten wurde, als eine Zone.
Kodieren einer Zone am Anfang von jeder Seite, die keine schwarzen Pixels enthält und durch den genannten ersten Zonentrennschritt (S2) erhalten wurde, als eine Zone.
4. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 2, ferner mit dem Schritt:
Kodieren einer Zone am Ende von jeder Seite, die keine schwarzen Pixels enthält und durch den genannten ersten Zonentrennschritt (S2) erhalten wurde, als eine Zone.
Kodieren einer Zone am Ende von jeder Seite, die keine schwarzen Pixels enthält und durch den genannten ersten Zonentrennschritt (S2) erhalten wurde, als eine Zone.
5. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 1, ferner mit dem Schritt:
Kodieren einer Zone in der genannten logi schen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4) erhalten wurde, als eine Zone.
Kodieren einer Zone in der genannten logi schen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4) erhalten wurde, als eine Zone.
6. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 5, ferner mit dem Schritt:
Kodieren einer Zone am linken Ende von jeder logischen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4) erhalten wurde, als eine Zone.
Kodieren einer Zone am linken Ende von jeder logischen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4) erhalten wurde, als eine Zone.
7. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 5, ferner mit dem Schritt:
Kodieren einer Zone am rechten Ende von jeder logischen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4) erhalten wurde, als eine Zone.
Kodieren einer Zone am rechten Ende von jeder logischen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4) erhalten wurde, als eine Zone.
8. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 1, bei dem die Anzahl N von Linien, die die genann
te logische Zeile bilden, die durch den genannten ersten
Zonentrennschritt (S2) erhalten wird, ein fester Wert ist.
9. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 8, bei dem die Anzahl N von Linien, die die genann
te logische Zeile bilden, die durch den genannten ersten
Zonentrennschritt (S2) erhalten wird, "8" beträgt.
10. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 1, bei dem der Kode, der das Ende einer Zeichenzone
darstellt, "0" ist, welcher Kode als Zone definiert ist, die
schwarze Pixels der logischen Zeile enthält und bei dem
genannten zweiten Zonentrennschritt (S4) erhalten wird.
11. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 1, bei dem jede Zone, die bei dem genannten ersten
Zonentrennschritt (S2) und dem genannten zweiten Zonentrenn
schritt (S4) erhalten wird, mit einem Kode mit einer Länge
von 8 Bits gekennzeichnet wird.
12. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 11, bei dem der Kode mit 8-Bit-Länge, der jede Zone
kennzeichnet, aus einer Steuerklassifizierung und einem
Argument gebildet ist.
13. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 12, bei dem wenigstens eines von 8-Bit-Argumenten
unmittelbar hinter allen oder einem Teil der Zonen folgt,
die mit dem Kode von 8-Bit-Länge gekennzeichnet sind, der
jeweils aus einer Steuerklassifizierung und einem Argument
gebildet ist.
14. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 1, ferner mit dem Schritt:
Zuordnen eines Kodes, der Wiederholung darstellt, zu Daten, die kontinuierlich zweimal oder mehr mals in Bitmap-Daten erscheinen, die in einer Zeichenzone enthalten sind, welche schwarze Pixels in der genannten logischen Zeile umfaßt und bei dem genannten zweiten Zonen trennschritt (S4) erhalten wurde, welcher Kode aus einer Steuerklassifizierung und der Anzahl von Wiederholungszyklen gebildet ist.
Zuordnen eines Kodes, der Wiederholung darstellt, zu Daten, die kontinuierlich zweimal oder mehr mals in Bitmap-Daten erscheinen, die in einer Zeichenzone enthalten sind, welche schwarze Pixels in der genannten logischen Zeile umfaßt und bei dem genannten zweiten Zonen trennschritt (S4) erhalten wurde, welcher Kode aus einer Steuerklassifizierung und der Anzahl von Wiederholungszyklen gebildet ist.
15. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 1, ferner mit dem Schritt:
Hinzufügen eines Kodes, der Informationen bezüglich einer Position darstellt, die ab dem Kopf einer Seite gezählt wurde, unmittelbar nach der letzten Zeichen zone in der logischen Zeile, die bei dem genannten zweiten Zonentrennschritt (S4) erhalten wurde.
Hinzufügen eines Kodes, der Informationen bezüglich einer Position darstellt, die ab dem Kopf einer Seite gezählt wurde, unmittelbar nach der letzten Zeichen zone in der logischen Zeile, die bei dem genannten zweiten Zonentrennschritt (S4) erhalten wurde.
16. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 1, ferner mit dem Schritt:
Kodieren der Startposition der ersten Zei chenzone in einer logischen Zeile als Relativwert zu der Startposition der ersten Zeichenzone der logischen Zeile unmittelbar vor der genannten logischen Zeile.
Kodieren der Startposition der ersten Zei chenzone in einer logischen Zeile als Relativwert zu der Startposition der ersten Zeichenzone der logischen Zeile unmittelbar vor der genannten logischen Zeile.
17. Ein Bitmap-Datenkomprimierungsverfahren mit:
einem Hauptscanschritt (S1′) zum Scannen von Bitmap-Daten in einer Hauptscanrichtung;
einem ersten Zonentrennschritt (S2′) zum Trennen einer Zone, die schwarze Pixels enthält, und einer Zone, die keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1 oder mehr) Linien durch Ausführen des genannten Hauptscanprozesses (S1′);
einem Sekundärscanschritt (S3′) zum Scannen einer logischen Zeile in einer Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig ist, welche logische Zeile, in der wenigstens eine Linie, die durch den genannten ersten Zonentrennschritt erhalten wurde, als N Linie(n) (eine ganze Zahl von 1 oder mehr) definiert ist, schwarze Pixels enthält;
einem zweiten Zonentrennschritt (S4′) zum Trennen einer Zone, die schwarze Pixels enthält, in Spalten einheit, und einer Zone, die keine schwarzen Pixels enthält, durch Ausführen des genannten Sekundärscanschrittes;
einem ersten Kodierungsschritt (S5′) zum Kodieren jeder Zone, die bei dem genannten ersten Zonen trennschritt (S2′) und dem genannten zweiten Zonentrenn schritt (S4′) erhalten wurde, als Element; und
einem zweiten Kodierungsschritt (S6′) zum Unterziehen der genannten ersten kodierten Daten einem zweiten Kodierungsprozeß, welche ersten kodierten Daten, die durch Kodieren von Zonen, die jeweilig bei dem genannten ersten Zonentrennschritt (S2′) und dem genannten zweiten Zonentrennschritt (S4′) erhalten wurden, bei dem genannten ersten Kodierungsschritt (S5′) als Elemente erhalten wurden.
einem Hauptscanschritt (S1′) zum Scannen von Bitmap-Daten in einer Hauptscanrichtung;
einem ersten Zonentrennschritt (S2′) zum Trennen einer Zone, die schwarze Pixels enthält, und einer Zone, die keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1 oder mehr) Linien durch Ausführen des genannten Hauptscanprozesses (S1′);
einem Sekundärscanschritt (S3′) zum Scannen einer logischen Zeile in einer Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig ist, welche logische Zeile, in der wenigstens eine Linie, die durch den genannten ersten Zonentrennschritt erhalten wurde, als N Linie(n) (eine ganze Zahl von 1 oder mehr) definiert ist, schwarze Pixels enthält;
einem zweiten Zonentrennschritt (S4′) zum Trennen einer Zone, die schwarze Pixels enthält, in Spalten einheit, und einer Zone, die keine schwarzen Pixels enthält, durch Ausführen des genannten Sekundärscanschrittes;
einem ersten Kodierungsschritt (S5′) zum Kodieren jeder Zone, die bei dem genannten ersten Zonen trennschritt (S2′) und dem genannten zweiten Zonentrenn schritt (S4′) erhalten wurde, als Element; und
einem zweiten Kodierungsschritt (S6′) zum Unterziehen der genannten ersten kodierten Daten einem zweiten Kodierungsprozeß, welche ersten kodierten Daten, die durch Kodieren von Zonen, die jeweilig bei dem genannten ersten Zonentrennschritt (S2′) und dem genannten zweiten Zonentrennschritt (S4′) erhalten wurden, bei dem genannten ersten Kodierungsschritt (S5′) als Elemente erhalten wurden.
18. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 17, ferner mit dem Schritt:
Kodieren einer Zone, die aus sukzessiven M Linien (M K) gebildet ist, als eine Zone, welche Zone keine schwarzen Pixels enthält und durch den ersten Zonen trennschritt (S2′) erhalten wurde.
Kodieren einer Zone, die aus sukzessiven M Linien (M K) gebildet ist, als eine Zone, welche Zone keine schwarzen Pixels enthält und durch den ersten Zonen trennschritt (S2′) erhalten wurde.
19. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 18, ferner mit dem Schritt:
Kodieren einer Zone am Anfang von jeder Seite, die keine schwarzen Pixels enthält und durch den genannten ersten Zonentrennschritt (S2′) erhalten wurde, als eine Zone.
Kodieren einer Zone am Anfang von jeder Seite, die keine schwarzen Pixels enthält und durch den genannten ersten Zonentrennschritt (S2′) erhalten wurde, als eine Zone.
20. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 18, ferner mit dem Schritt:
Kodieren einer Zone am Ende von jeder Seite, die keine schwarzen Pixels enthält und durch den genannten ersten Zonentrennschritt (S2′) erhalten wurde, als eine Zone.
Kodieren einer Zone am Ende von jeder Seite, die keine schwarzen Pixels enthält und durch den genannten ersten Zonentrennschritt (S2′) erhalten wurde, als eine Zone.
21. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 17, ferner mit dem Schritt:
Kodieren einer Zone in der genannten logi schen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4′) erhalten wurde, als eine Zone.
Kodieren einer Zone in der genannten logi schen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4′) erhalten wurde, als eine Zone.
22. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 21, ferner mit dem Schritt:
Kodieren einer Zone am linken Ende von jeder logischen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4′) erhalten wurde, als eine Zone.
Kodieren einer Zone am linken Ende von jeder logischen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4′) erhalten wurde, als eine Zone.
23. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 21, ferner mit dem Schritt:
Kodieren einer Zone am rechten Ende von jeder logischen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4′) erhalten wurde, als eine Zone.
Kodieren einer Zone am rechten Ende von jeder logischen Zeile, die keine schwarzen Pixels enthält und durch den genannten zweiten Zonentrennschritt (S4′) erhalten wurde, als eine Zone.
24. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 17, bei dem die Anzahl von N Linien, die die
genannte logische Zeile bilden, die durch den genannten
ersten Zonentrennschritt (S2′) erhalten wird, ein fester
Wert ist.
25. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 24, bei dem die Anzahl von N Linien, die die
genannte logische Zeile bilden, die durch den genannten
ersten Zonentrennschritt (S2′) erhalten wird, "8" beträgt.
26. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 17, bei dem der Kode, der das Ende einer Zeichenzo
ne darstellt, "0" ist, welcher Kode als Zone definiert ist,
die schwarze Pixels der logischen Zeile enthält und bei dem
genannten zweiten Zonentrennschritt (S4′) erhalten wird.
27. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 17, bei dem jede Zone, die bei dem genannten ersten
Zonentrennschritt und dem genannten zweiten Zonentrenn
schritt (S4′) erhalten wird, mit einem Kode mit einer Länge
von 8 Bits gekennzeichnet wird.
28. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 27, bei dem der Kode mit einer Länge von 8 Bits,
der jede Zone kennzeichnet, aus einer Steuerklassifizierung
und einem Argument gebildet ist.
29. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 28, bei dem wenigstens eines von 8-Bit-Argumenten
unmittelbar hinter allen oder einem Teil der Zonen folgt,
die mit dem Kode von 8-Bit-Länge gekennzeichnet sind, der
jeweils aus einer Steuerklassifizierung und einem Argument
gebildet ist.
30. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 17, ferner mit dem Schritt:
Zuordnen eines Zeichens, das Wiederholung darstellt, zu Daten, die kontinuierlich zweimal oder mehr mals in Bitmap-Daten erscheinen, die in einer Zeichenzone enthalten sind, die schwarze Pixels in der genannten logi schen Zeile umfaßt und bei dem genannten zweiten Zonentrenn schritt (S4′) erhalten wurde, welcher Kode aus einer Steuer klassifizierung und der Anzahl von Wiederholungszyklen gebildet ist.
Zuordnen eines Zeichens, das Wiederholung darstellt, zu Daten, die kontinuierlich zweimal oder mehr mals in Bitmap-Daten erscheinen, die in einer Zeichenzone enthalten sind, die schwarze Pixels in der genannten logi schen Zeile umfaßt und bei dem genannten zweiten Zonentrenn schritt (S4′) erhalten wurde, welcher Kode aus einer Steuer klassifizierung und der Anzahl von Wiederholungszyklen gebildet ist.
31. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 17, ferner mit dem Schritt:
Hinzufügen eines Kodes, der Informationen bezüglich einer Position darstellt, die ab dem Kopf einer Seite gezählt wurde, unmittelbar nach der letzten Zeichenzo ne in der logischen Zeile, die bei dem genannten zweiten Zonentrennschritt (S4′) erhalten wurde.
Hinzufügen eines Kodes, der Informationen bezüglich einer Position darstellt, die ab dem Kopf einer Seite gezählt wurde, unmittelbar nach der letzten Zeichenzo ne in der logischen Zeile, die bei dem genannten zweiten Zonentrennschritt (S4′) erhalten wurde.
32. Das Bitmap-Datenkomprimierungsverfahren nach
Anspruch 17, ferner mit dem Schritt:
Kodieren der Startposition der ersten Zei chenzone in einer logischen Zeile als Relativwert zu der Startposition der ersten Zeichenzone der logischen Zeile unmittelbar vor der genannten logischen Zeile.
Kodieren der Startposition der ersten Zei chenzone in einer logischen Zeile als Relativwert zu der Startposition der ersten Zeichenzone der logischen Zeile unmittelbar vor der genannten logischen Zeile.
33. Eine Bitmap-Datenkomprimierungsvorrichtung mit:
einem Hauptscanmittel (1) zum Scannen von Bitmap-Daten in einer Hauptscanrichtung;
einem ersten Zonentrennmittel (2) zum Trennen einer Zone, die schwarze Pixels enthält, und einer Zone, die keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1 oder mehr) Linien, auf der Grundlage von Daten, die durch Betreiben des genannten Hauptscanmittels (1) erhalten wurden;
einem Sekundärscanmittel (3) zum Scannen einer logischen Zeile in einer Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig ist, welche logische Zeile, in der wenigstens eine Linie, die durch das genannte erste Zonentrennmittel (2) erhalten wurde, als N Linien (eine ganze Zahl von 1 oder mehr) definiert ist, schwarze Pixels enthält;
einem zweiten Zonentrennmittel (4) zum Trennen einer Zone, die schwarze Pixels enthält, in Spalten einheit, und einer Zone, die keine schwarzen Pixels enthält, auf der Grundlage von Daten, die durch Betreiben des genann ten Sekundärscanmittels erhalten wurden; und
einem Kodiermittel (5) zum Kodieren jeder Zone, die durch das genannte erste Zonentrennmittel (2) und das genannte zweite Zonentrennmittel (4) erhalten wurde, in einen Kode, der aus einer Steuerklassifizierung und einem Argument gebildet ist, die jeweils im voraus vorgegeben sind.
einem Hauptscanmittel (1) zum Scannen von Bitmap-Daten in einer Hauptscanrichtung;
einem ersten Zonentrennmittel (2) zum Trennen einer Zone, die schwarze Pixels enthält, und einer Zone, die keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1 oder mehr) Linien, auf der Grundlage von Daten, die durch Betreiben des genannten Hauptscanmittels (1) erhalten wurden;
einem Sekundärscanmittel (3) zum Scannen einer logischen Zeile in einer Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig ist, welche logische Zeile, in der wenigstens eine Linie, die durch das genannte erste Zonentrennmittel (2) erhalten wurde, als N Linien (eine ganze Zahl von 1 oder mehr) definiert ist, schwarze Pixels enthält;
einem zweiten Zonentrennmittel (4) zum Trennen einer Zone, die schwarze Pixels enthält, in Spalten einheit, und einer Zone, die keine schwarzen Pixels enthält, auf der Grundlage von Daten, die durch Betreiben des genann ten Sekundärscanmittels erhalten wurden; und
einem Kodiermittel (5) zum Kodieren jeder Zone, die durch das genannte erste Zonentrennmittel (2) und das genannte zweite Zonentrennmittel (4) erhalten wurde, in einen Kode, der aus einer Steuerklassifizierung und einem Argument gebildet ist, die jeweils im voraus vorgegeben sind.
34. Eine Bitmap-Datenkomprimierungsvorrichtung mit:
einem Hauptscanmittel (1′) zum Scannen von Bitmap-Daten in einer Hauptscanrichtung;
einem ersten Zonentrennmittel (2′) zum Trennen einer Zone, die schwarze Pixels enthält, und einer Zone, die keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1 oder mehr) Linien, auf der Grundlage von Daten, die durch Betreiben des genannten Hauptscanmittels erhalten wurden;
einem Sekundärscanmittel (3′) zum Scannen einer logischen Zeile in einer Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig ist, welche logische Zeile, in der wenigstens eine Linie, die durch das genannte erste Zonentrennmittel (2′) erhalten wurde, als N Linie(n) (eine ganze Zahl von 1 oder mehr) definiert ist, schwarze Pixels enthält;
einem zweiten Zonentrennmittel (4′) zum Trennen einer Zone, die schwarze Pixels enthält, in Spalten einheit, und einer Zone, die keine schwarzen Pixels enthält, auf der Grundlage von Daten, die durch Betreiben des genann ten Sekundärscanmittels erhalten wurden; und
einem ersten Kodiermittel (5A) zum Kodieren jeder Zone, die durch das genannte erste Zonentrennmittel (2′) und das genannte zweite Zonentrennmittel (4′) erhalten wurde, in einen Kode, der aus einer Steuerklassifizierung und einem Argument gebildet ist, die jeweils im voraus vorgeschrieben sind; und
einem zweiten Kodiermittel (5B) zum Kodieren der ersten kodierten Daten, die durch das genannte erste Kodiermittel (5A) erhalten wurden, in Kode-Daten mit varia bler Länge.
einem Hauptscanmittel (1′) zum Scannen von Bitmap-Daten in einer Hauptscanrichtung;
einem ersten Zonentrennmittel (2′) zum Trennen einer Zone, die schwarze Pixels enthält, und einer Zone, die keine schwarzen Pixels enthält, immer bei K (eine ganze Zahl von 1 oder mehr) Linien, auf der Grundlage von Daten, die durch Betreiben des genannten Hauptscanmittels erhalten wurden;
einem Sekundärscanmittel (3′) zum Scannen einer logischen Zeile in einer Sekundärrichtung, die zu der Hauptscanrichtung rechtwinklig ist, welche logische Zeile, in der wenigstens eine Linie, die durch das genannte erste Zonentrennmittel (2′) erhalten wurde, als N Linie(n) (eine ganze Zahl von 1 oder mehr) definiert ist, schwarze Pixels enthält;
einem zweiten Zonentrennmittel (4′) zum Trennen einer Zone, die schwarze Pixels enthält, in Spalten einheit, und einer Zone, die keine schwarzen Pixels enthält, auf der Grundlage von Daten, die durch Betreiben des genann ten Sekundärscanmittels erhalten wurden; und
einem ersten Kodiermittel (5A) zum Kodieren jeder Zone, die durch das genannte erste Zonentrennmittel (2′) und das genannte zweite Zonentrennmittel (4′) erhalten wurde, in einen Kode, der aus einer Steuerklassifizierung und einem Argument gebildet ist, die jeweils im voraus vorgeschrieben sind; und
einem zweiten Kodiermittel (5B) zum Kodieren der ersten kodierten Daten, die durch das genannte erste Kodiermittel (5A) erhalten wurden, in Kode-Daten mit varia bler Länge.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18264394A JP3278298B2 (ja) | 1994-08-03 | 1994-08-03 | ビットマップデータの圧縮方法及び圧縮装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19516979A1 true DE19516979A1 (de) | 1996-02-15 |
DE19516979C2 DE19516979C2 (de) | 1997-01-16 |
Family
ID=16121893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19516979A Expired - Fee Related DE19516979C2 (de) | 1994-08-03 | 1995-05-09 | Bitmap-Datenkomprimierungsverfahren und Bitmap-Datenkomprimierungsvorrichtung zur Durchführung dieses Verfahrens |
Country Status (3)
Country | Link |
---|---|
US (1) | US5777749A (de) |
JP (1) | JP3278298B2 (de) |
DE (1) | DE19516979C2 (de) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6259810B1 (en) * | 1997-04-15 | 2001-07-10 | Microsoft Corporation | Method and system of decoding compressed image data |
US6112208A (en) * | 1997-08-25 | 2000-08-29 | Fujitsu Limited | Data compressing method and apparatus to generate bit maps in accordance with extracted data symbols |
JPH1186014A (ja) | 1997-09-08 | 1999-03-30 | Fujitsu Ltd | 文書画像表示方法および表示装置 |
US6594385B2 (en) * | 1998-10-27 | 2003-07-15 | Hewlett-Packard Development Company, L.P. | Image compression of background and text tiles |
US7167259B2 (en) * | 2000-05-16 | 2007-01-23 | International Business Machines Corporation | System and method for merging line work objects using tokenization and selective compression |
JP3901514B2 (ja) * | 2001-12-27 | 2007-04-04 | 富士通株式会社 | 画像圧縮方法、その復元方法及びそのプログラム |
JP4278918B2 (ja) * | 2002-04-19 | 2009-06-17 | 富士通株式会社 | 画像データ処理装置とその方法 |
JPWO2004068844A1 (ja) | 2003-01-30 | 2006-05-25 | 富士通株式会社 | 画像圧縮方法、画像復元方法、プログラム及び装置 |
JP2004304424A (ja) * | 2003-03-31 | 2004-10-28 | Fujitsu Ltd | 画像圧縮方法、プログラム、記憶媒体及び装置 |
US20050162694A1 (en) * | 2003-04-15 | 2005-07-28 | Fujitsu Limited | Printer control device |
JP4008428B2 (ja) * | 2004-04-26 | 2007-11-14 | 富士通株式会社 | 画像圧縮方法 |
JP4552993B2 (ja) * | 2007-10-11 | 2010-09-29 | ブラザー工業株式会社 | 画像処理装置及び画像処理装置の制御プログラム |
US8023755B2 (en) * | 2008-05-15 | 2011-09-20 | International Business Machines Corporation | Generating subimages of an image to use to represent the image |
JP2011040970A (ja) * | 2009-08-10 | 2011-02-24 | Canon Inc | データ処理装置、および、データ処理方法 |
JP5225420B2 (ja) * | 2011-03-31 | 2013-07-03 | 威鋒數位開發股▲ふん▼有限公司 | コンピュータによるドットマトリクスフォントデータの圧縮及び解凍のための方法及びシステム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3411483A1 (de) * | 1983-03-28 | 1984-10-11 | Dainippon Screen Manufacturing Co., Ltd., Kyoto | Verfahren und vorrichtung zur verarbeitung binaerer bilddaten |
JPH0232675A (ja) * | 1988-07-21 | 1990-02-02 | Sharp Corp | ファクシミリ装置における疑似中間調データの伝送処理方法 |
DE3538639C2 (de) * | 1984-10-31 | 1990-09-20 | Canon K.K., Tokio/Tokyo, Jp |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4149145A (en) * | 1977-02-17 | 1979-04-10 | Xerox Corporation | Fax processor |
US4603607A (en) * | 1982-02-25 | 1986-08-05 | Channellock, Inc. | Pivot connection for slip joint pliers |
JP2505401B2 (ja) * | 1984-10-31 | 1996-06-12 | キヤノン株式会社 | 画像処理装置 |
JP2644477B2 (ja) * | 1985-09-04 | 1997-08-25 | キヤノン株式会社 | 画像処理方法 |
JP2505402B2 (ja) * | 1984-10-31 | 1996-06-12 | キヤノン株式会社 | 画像処理装置 |
US4896275A (en) * | 1987-07-10 | 1990-01-23 | Bull Hn Information Systems Inc. | Full page graphics image display data reduction |
US4870498A (en) * | 1987-09-15 | 1989-09-26 | Printware, Inc. | Decompressing run-length-encoded to transition-encoded font image information in an image generator |
US4982293A (en) * | 1988-06-02 | 1991-01-01 | Ricoh Company, Ltd. | Method of compressing halftone image data |
JP3066909B2 (ja) * | 1990-08-27 | 2000-07-17 | キヤノン株式会社 | 復号装置 |
US5335290A (en) * | 1992-04-06 | 1994-08-02 | Ricoh Corporation | Segmentation of text, picture and lines of a document image |
-
1994
- 1994-08-03 JP JP18264394A patent/JP3278298B2/ja not_active Expired - Fee Related
-
1995
- 1995-05-09 DE DE19516979A patent/DE19516979C2/de not_active Expired - Fee Related
-
1997
- 1997-02-19 US US08/802,096 patent/US5777749A/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3411483A1 (de) * | 1983-03-28 | 1984-10-11 | Dainippon Screen Manufacturing Co., Ltd., Kyoto | Verfahren und vorrichtung zur verarbeitung binaerer bilddaten |
DE3538639C2 (de) * | 1984-10-31 | 1990-09-20 | Canon K.K., Tokio/Tokyo, Jp | |
JPH0232675A (ja) * | 1988-07-21 | 1990-02-02 | Sharp Corp | ファクシミリ装置における疑似中間調データの伝送処理方法 |
Non-Patent Citations (1)
Title |
---|
DE-B.: RIEDEL, K.: Datenreduzierende Bild- codierung, München, Franzis-Verlag, 1986, S.47-65 * |
Also Published As
Publication number | Publication date |
---|---|
JP3278298B2 (ja) | 2002-04-30 |
JPH0851545A (ja) | 1996-02-20 |
US5777749A (en) | 1998-07-07 |
DE19516979C2 (de) | 1997-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69531080T2 (de) | System und Verfahren zur Bildkompression | |
DE69321798T2 (de) | Seitendrucker mit automatischer Schriftartkomprimierung | |
DE69425338T2 (de) | Verfahren und Vorrichtung zum Einsparen von Druckerspeicher | |
DE69131369T2 (de) | Gerät und Verfahren zur Bildverarbeitung | |
DE3851484T2 (de) | Datenverringerung für die Bildanzeige von Ganzseiten-Graphiken. | |
DE19516979C2 (de) | Bitmap-Datenkomprimierungsverfahren und Bitmap-Datenkomprimierungsvorrichtung zur Durchführung dieses Verfahrens | |
DE3879131T2 (de) | Elektronische zusammensetzung. | |
DE69626394T2 (de) | Verfahren und vorrichtung zur verminderung des speicherbedarfs für anzeigedaten | |
DE69232493T2 (de) | Verfahren und Gerät zur Zeichenerkennung | |
DE19610759C2 (de) | Verfahren zum Codieren eines Dokumentes und Verfahren zum Senden eines Dokumentes von einem Sendecomputersystem zu einem Empfangscomputersystem | |
DE69325444T2 (de) | Seitendrucker mit einem System zum Empfang und Druck gerasterter Bildpunktdaten von einem Hauptrechner | |
DE69831133T2 (de) | Konfiguriation einer Datenverarbeitungspipeline | |
DE69603547T2 (de) | Codierungsverfahren und Decodierungsschaltung für die Komprimierung von chinesischen Textzeichendaten | |
DE69926469T2 (de) | Filterung von Bilddaten bei der Verarbeitung zusammengesetzter Dokumente | |
DE69721941T2 (de) | Gerät und Verfahren zum Extrahieren von Mustern | |
DE69027902T2 (de) | Graphische Skalierungsverfahren für hochauflösende Drucker | |
DE10204751B4 (de) | Verfahren zur Konvertierung eines Linework Datenformats in das Format einer Seitenbeschreibungssprache | |
DE69319988T2 (de) | Verfahren für die Umsetzung von Bitkarten in einfarbige Daten | |
DE2264090A1 (de) | Datenverdichtungssystem | |
DE4005492A1 (de) | Bildcodierverfahren | |
DE3416795C2 (de) | Bilddaten-Kompressionssystem | |
DE19711674B4 (de) | Verfahren und System zum Drucken rasterisierter Dokumente | |
DE69121345T2 (de) | Zeichenausgabegerät | |
DE69737717T2 (de) | Bildprozessor | |
DE69227646T2 (de) | Bildverarbeitung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8328 | Change in the person/name/address of the agent |
Representative=s name: SEEGER SEEGER LINDNER PARTNERSCHAFT PATENTANWAELTE |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20141202 |