DE69026599T2 - Verfahren zum verdichten von charakterdaten und verfahren zur änderung der charakter - Google Patents

Verfahren zum verdichten von charakterdaten und verfahren zur änderung der charakter

Info

Publication number
DE69026599T2
DE69026599T2 DE69026599T DE69026599T DE69026599T2 DE 69026599 T2 DE69026599 T2 DE 69026599T2 DE 69026599 T DE69026599 T DE 69026599T DE 69026599 T DE69026599 T DE 69026599T DE 69026599 T2 DE69026599 T2 DE 69026599T2
Authority
DE
Germany
Prior art keywords
data
character
print
dots
dot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69026599T
Other languages
English (en)
Other versions
DE69026599D1 (de
Inventor
Masayuki Muraishi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nakajima All Precision Co Ltd
Original Assignee
Nakajima All Precision Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP26932289A external-priority patent/JPH03132119A/ja
Priority claimed from JP1285437A external-priority patent/JPH03146365A/ja
Application filed by Nakajima All Precision Co Ltd filed Critical Nakajima All Precision Co Ltd
Publication of DE69026599D1 publication Critical patent/DE69026599D1/de
Application granted granted Critical
Publication of DE69026599T2 publication Critical patent/DE69026599T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/002Generic data access
    • G06K2215/0028Generic data access characterised by the format per se
    • G06K2215/0031Compressed bit maps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/004Generic data transformation
    • G06K2215/0042Rasterisation
    • G06K2215/0051Rasterisation from compressed bitmap, e.g. run length

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

    Technisches Anwendungsgebiet
  • Die vorliegende Erfindung betrifft ein Verfahren zum Verdichten von Charakterdaten bzw. Zeichen- oder Buchstabendaten, das speziell zur Verwendung bei der Speicherung von Schriftartdaten, den sogenannten Charakter-Fontdaten für eine elektrische Schreibmaschine, einen Word- Prozessor, einen Drucker, ein Matrixdisplay und dergleichen in nicht flüchtigen Speichern geeignet ist, die als Zeichen- oder Charaktergeneratoren dienen.
  • Die vorliegende Erfindung betrifft auch ein Charaktermodifizierungsverfahren, das zur Expansion/Verdichtung komprimierter Charakter-Fontdaten geeignet ist, die aus nicht flüchtigen Speichern ausgelesen werden.
  • Stand der Technik
  • Üblicherweise sind bei einem Zeichengenerator, der mit einem Punktmatrixdrucker oder auch kurz Matrixdrucker verwendet wird, eine Punktmatrix-Flüssigkristallanzeige und dergleichen vorgesehen, wobei Punkte, die jedes Zeichen bzw. jeden Buchstaben aufbauen, innerhalb einer Matrix mit z.B. 24 Punkte pro Spalte angeordnet sind. Die Daten für jedes Zeichen (Charakter) werden erzeugt und in einem nicht flüchtigen Speicher wie einem ROM gespeichert. Die Daten umfassen Information im Hinblick darauf, ob für jeden Stift der Punktmatrix, welches die minimale Einheit in horizontale Richtung darstellt, d.h. für jede Punktposition in der vertikalen Richtung des Charakters Druckdaten vorhanden sind, ferner Information bezüglich der Charakterauslegung, Information bezüglich des Datenformats, Information bezüglich des Charaktercodes und dergleichen. Ein derartiger Charakterfont wird als Bitmap-Font bezeichnet.
  • Die FIG. 1 zeigt eine Punktmatrix für einen konventionellen Zeichengenerator, in welchem eine Bitmap für ein Prestige-Font "A" ausgebildet ist. Wie in FIG. 1 gezeigt, sind in der Bitmap, die aus 24 Reihen und 31 Spalten besteht, Punkte angeordnet. Die 24 Reihen in einer Spalte sind in jeweiligen Einheiten von vier Reihen gruppiert, und die Daten, die repräsentativ für ein Vorhandensein/Fehlen eines Punktes in jeder Einheit aus vier Reihen sind, werden durch eine Hexadezimalzahl ausgedrückt, um ein Charakterdatum vorzusehen. Auf diese Weise kann eine Spalte durch 3 Bytedaten ausgedrückt werden.
  • Die Hexadezimaldaten für die Punktmap der FIG. 1 sind in FIG. 2 angegeben.
  • Die im ROM gespeicherten Daten umfassen 31 x 3 Byte- Punktdaten für 31 Spalten von der 0-ten bis zur 30sten Spalte sowie 3 Bytedaten für einen vorderen oder Frontzwischenraum, die Charakterbreite und den rückwärtigen Zwischenraum oder Raum gemäß Darstellung in FIG. 3. Die gespeicherten Daten umfassen daher insgesamt 96 Bytedaten.
  • Die FIG. 4 ist ein Blockschaltbild, die das Konzept einer Vorrichtung zeigt, die einen solchen Zeichengenerator umfaßt, wobei die Vorrichtung in einem Drucker eingebaut ist. In dieser Vorrichtung ist eine CPU 1 mit einem ROM 2 verbunden, der als Zeichengenerator dient, welcher fest Charakterinformation speichert, ferner mit einem RAM 3, einem Druckermechanismus 4 und einem I/O-Interface 5. Bei dieser Anordnung steuert die CPU 1 den Druckermechanismus 4 in der Weise, daß dieser die aus dem Zeichengenerator ROM 2 ausgelesene Punktinformation druckt. Eine ähnliche Anordnung ist auch auf ein Matrixdisplay oder dergleichen anwendbar.
  • Eine derartige konventionelle Datenstruktur erfordert, daß eine Bitmap sämtliche Punktdaten einer Matrix einschließlich von Punktdaten, die nicht gedruckt werden, beinhalten sollte. Obgleich jedes Zeichen (Charakter) viele Punkte aufweist, die tatsächlich nicht gedruckt werden, müssen die Daten für solche Punkte in der Bitmap vorgesehen und vorbereitet werden, was eine große Speicherkapazität erfordert.
  • Ferner werden die Charakterdaten, die aus einem solchen Zeichengenerator ausgelesen werden, häufig durch Expansion, Verdichtung oder Emphasis (Hervorhebung) modifiziert. Jedoch verarbeitet das oben dargelegte konventionelle Punktspeicherschema Charakterdaten durch separate Gruppierung jedes Charakters in der vertikalen Richtung zur Gewinnung der entsprechenden Charakter- oder Zeichendaten. Infolgedessen ist eine komplizierte Operation zur Modifizierung eines Charakters oder Zeichens erforderlich. Beispielsweise wird im Fall der Expansion eine OR-Operation durch zusätzliches Vorsehen von Null-Daten für eine Spalte ausgeführt. Im Fall der Verdichtung wird eine OR-Operation zwischen den Daten für zwei Spalten ausgeführt, um nicht erforderliche Punkte zu beseitigen.
  • Derartige Operationen werden in Byte-Einheiten (8 Bits) oder Worteinheiten (16 Bits) ausgeführt. Daher wird eine Expansion um n oder eine Verdichtung um 1/n komplizierter als im Fall n = 2, woraus eine geringere Druckgeschwindigkeit resultiert.
  • Ein weiteres Dokument aus dem Stand der Technik, die JP-A-61 284457, offenbart ein Datenverdichtungsverfahren, in welchem zwei-Bitdatencodes jeweils repräsentieren:
  • eine Spalte ohne schwarze Punkte, eine Spalte identisch zur vorausgehenden Spalte, eine erste Start- und Endposition für schwarze Punkte und eine zweite Startund Endposition für schwarze Punkte. Da die Spalten jeweils 16 Reihen lang sind, bezeichnen die letzteren beiden Codes auch eine Anzahl von Druckpunkten, die kontinuierlich, d.h. fortgesetzt oder in Folge zu drucken sind.
  • Es ist ein Gegenstand der vorliegenden Erfindung, zumindest teilweise die obigen Probleme zu überwinden. Ein Ausführungsbeispiel der Erfindung sieht ein Verfahren zum Verdichten von Charakterdaten in einem Zeichengenerator vor, welches imstande ist, die Speicheranforderungen zu redzieren, und Charaktermodifizierungsoperationen erleichtert und vereinfacht.
  • Offenbarung der Erfindung
  • Gemäß der vorliegenden Erfindung ist ein Verfahren zum Verdichten von Charakterdaten vorgesehen, umfassend eie Schritte des Ausschneidens oderzerschneidenseiner Bitmap, die aus Punkten aufgebaut ist, die in m Reihen und in n Spalten angeordnet sind, wobei die Punkte ein Charakter (Zeichen bzw. Buchstabe) darstellen, und zwar mit einer vorbestimmten Teilung (Pitch oder Schrittweite ) in einer Reihen- oder Spaltenrichtung; wobei das Verfahren ferner die Schritte des Vorsehens von Punktpräsenzdaten für jede ausgeschnittene Reihe oder Spalte umfaßt, falls in der Reihe oder Spalte ein Druckpunkt existiert; und das Vorsehen für jede Reihe oder Spalte, in der ein Druckpunkt existiert, von Druckinformation, die eine Druckstartposition dieses Druckpunktes umfaßt, ferner Kontinuitäts- oder Fortsetzungsdaten, die anzeigen, daß nur ein Satz kontinuierlicher oder fortgesetzter Druckpunkte in der Reihe/Spalte vorliegt oder daß ein anderer Satz kontinuierlicher Punkte in der Reihe/Spalte existiert, und eine Anzahl von kontinuierlich oder fortgesetzt zu druckenden Druckpunkten als Information umfaßt.
  • Ein Charakter, insbesondere ein alphanumerisches Zeichen umfaßt häufig zahlreiche Linienelemente in der horizontalen oder vertikalen Richtung. Diesbezüglich wird gemäß der vorliegenden Erfindung ein Charakter separat mit einer vorbestimmten Teilung bzw. einem vorbestimmten Zwischenabstand in der horizontalen Richtung (Reihenrichtung) oder vertikalen Richtung (Spaltenrichtung) gruppiert, und es werden eine Punktstartposition und eine kontinuierlich oder fortlaufende Punktlänge als Daten für jede Sektion, die einen Druckpunkt aufweist, verwendet. Daher ist es möglich, ein Charakterdatum bzw. die Daten eines Charakters beträchtlich zu komprimieren und Charakterfonts in einem Speicher zu speichern, der eine geringe Kapazität aufweist. Darüber hinaus können die Expansion/Verdichtung in der horizontalen oder vertikalen Richtung einfach dadurch ausgeführt werden,daß nur die Punktstartadresse und die kontinuierliche Punktlänge geändert werden, wodurch eine Charaktermodifizierungsoperation vereinfacht und erleichtert wird.
  • Ferner werden in einem Charaktermodifizierungsverfahren unter Verwendung von Charakterdaten, die in der Weise folgend auf das Charakterverdichtungsverfahren gespeichert sind, die Punktstartpositionsdaten und die Daten bezüglich der kontinuierlichen Punktlänge als fundamentale Parameter abgeleitet, und die Daten werden einer Charaktermodifizierungsoperation entsprechend einem von vielfältigen Modifizierungsmodi unterzogen. Entsprechend der Operationsergebnisse wird die Punktstartadresse geändert, und es wird eine Druckpunktinformation entsprechend dem Ausmaß oder Betrag der kontinuierlichen Punktlänge gegeben. Daher können Prozesse für verschiedenste Arten von Charaktermodifizierungsmodi einfach ausgeführt werden. Ferner ist eine einfache Operation zur Charaktermodifizierung ohne Hinzufügung von Punkten erreichbar, woraus eine hohe Operationsgeschwindigkeit resultiert.
  • Kurzbeschreibung der Zeichnungen
  • FIG. 1 ist eine Darstellung, die ein Beispiel eines Charakter-Fonts einer Bitmap-Ausführungsart zeigt,
  • FIG. 2 ist eine Tabelle, die konventionelle Charakterdaten zeigt,
  • FIG. 3 ist ein Diagramm, das Zwischenräume vor und nach jedem Charakter zeigt, wobei konventionelle Charakterdaten verwendet sind,
  • FIG. 4 ist ein Blockschaltbild, das ein Beispiel des Aufbaus einer Vorrichtung zeigt, die einen Charaktergenerator umfaßt, der verdichtete Charakterdaten speichert,
  • FIG. 5 ist eine Darstellung, die das fundamentale Konzept eines Charakterdaten-Verdichtungsverfahrens gemäß der vorliegenden Erfindung verdeutlicht,
  • FIG. 6 ist ein Diagramm, das das Vorliegen/Fehlen eines Punkts in jeder Reihe verdeutlicht, der durch Herausschneiden eines Charakters in der horizontalen Richtung gewonnen wird,
  • FIG. 8 ist eine Tabelle. die ein Beispiel der Daten eines Charakters zeigt, welches eine Punktstartposition repräsentiert und einen kontinuierlichen Punktzustand, und
  • FIG. 9 ist ein Flußdiagramm, das den Inhalt des charaktermodifizierenden Verfahrens entsprechend der vorliegenden Erfindung zeigt.
  • Beste Art und Weise zur Ausführung der Erfindung
  • Es wird nun ein Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen erläutert.
  • Die FIG. 5 bis 8 zeigen, wie Daten gemäß der vorliegenden Erfindung verdichtet bzw. komprimiert werden.
  • FIG. 5 ist eine Darstellung, die Charakterdaten zeigt, welche in der horizontalen Richtung (Reihen-Richtung) entsprechend der vorliegenden Erfindung herausgenommen bzw. herausgeschnitten sind.
  • Beispielhalber wird ähnlich der Beschreibung des Standes der Technik ein Prestige-Font "A" verwendet. Dieses Charakter oder Zeichen ist in einer 24 x 31 Punktmatrixmap entwickelt. Zusätzlich zu den 31 Bits sind vom 32sten bis zum 35sten Bit vier Bits für ein Script- oder Schriftart- Font und einen Proportionaldruck vorgesehen, was einen breiteren Zwischenraum als 31 Bitbreite erfordert. Diese Map ist für eine jede Spalte in erste bis 24ste Sektionen gruppiert. Die Charakterdaten sind in folgender Weise vorgegeben.
  • (A) Sektionsinformation
  • Sektionsinformation entspricht Daten, die für das Vorhandensein/Fehlen von Punktdaten in jeder der 24 Sektionen repräsentativ sind. Beispielsweise ist diese Information ein Ein-Bitdatum, das den Wert "1" annimmt, wenn in der entsprechenden Sektion Daten vorliegen, und den Wert "0", wenn Daten fehlen. Daher kann eine Reihe durch 24 Bits/8 = 3 Bytes beispielsweise durch drei Gruppen Hexadezimalzahlen 7F, FF und E0 gemäß Darstellung in FIG. 2 dargestellt werden.
  • (B) Optionsinformation
  • Die Optionsinformation umfaßt weitere Daten, die erforderlich sind für den Druck, wobei hierfür ein Byte reserviert ist. Beispielsweise gibt diese Information die Mittenposition eines Charakterdesigns, die Art des Datenformats oder dergleichen an.
  • (C) Charakterdaten
  • Die Charakterdaten repräsentieren die Positionen von Punkten, die ein Charakter bzw. Zeichen darstellen, sowie die kontinuierliche Punktlänge.
  • Die Charakterdaten werden unter Heranziehen der in FIG. 1 gezeigten Punktmatrix als ein Beispiel erläutert. Die Charakterdaten sind aus 8 Bitdaten aufgebaut, wie in FIG. 7A gezeigt ist. B7 des MSB zeigt den Zustand der Punkte an. Dabei zeigt "1" einen vollständigen Punktzustand an, und "0" zeigt einen Folge- oder Fortsetzungszustand von Punkten an. Der "vollständige Zustand" bedeutet, daß ein Punktsatz nur in einem Bereich vorliegt. Der "Fortsetzungszust'and" bedeutet, daß ein weiterer Satz von Punkten in einem weiteren Bereich vorliegt. Im Hinblick auf Druckrequisiten bedeutet ein Punktsatz Punkte, die fortlaufend ein um die andere Position, d.h. an jeder zweiten Position, angeordnet sind. Im in FIG. 1 gezeigten Beispiel umfassen die Sektionen 2, 3, 4 und13 einen Punktesatz und B7 dieser Sektionen nimmt gemäß Darstellung in FIG. 8 den Wert "1" an.
  • B6 repräsentiert den Datenumfang. "1" repräsentiert Ein-Bytedaten für den Fall, daß die Anzahl von Punkten zwei oder weniger ist. "0" repräsentiert Zwei-Bytedaten für den Fall, daß die Anzahl von Punkten drei oder größer ist.
  • Ein Beispiel für B6 = 1 ist in FIG. 7D gezeigt, In diesem Fall kann die Anzahl von Punkten durch ein Bit von B5 ausgedrückt werden, und die Position von 0-ter Spalte bis zur 31sten Spalte wird durch die Bits B4 bis B0 ausgedrückt. Daher können sowohl die Punktzahl als auch die Position eines Startpunktes durch ein Byte ausgedrückt werden.
  • Demgegenüber wird im Fall B6 = 0 die Position durch Bits B5 bis B0 im ersten Byte gemäß Darstellung in FIG. 7B ausgedrückt, und die Anzahl von Punkten wird durch ein Byte der Bits B7 bis B0 des zweiten Byte gemäß Darstellung in FIG. 7C ausgedrückt.
  • Es wird nun das spezielle Beispiel der in FIG. 1 gezeigten Punktmatrix detaillierter bezüglich des Verfahrens der Gewinnung einer Charakter-Bitmap auf die oben erläuterte Weise beschrieben.
  • Sektion 2: Es sind zwei Punkte beginnend in der 14ten Spalte angeordnet. Daher betragen B7 = 1, B6 = 1, B5 = 1, und die Position 14 wird durch 01110 (binäre Darstellung) repräsentiert, wodurch sich die Charakterdaten 11101110 ergeben.
  • Sektion 3: Es sind drei Punkte beginnend von der 13ten Spalte aus angeordnet. Daher ist B7 = 1 und B6 = 0, womit angezeigt ist, daß der Datenumfang zwei Bytes umfaßt. Im ersten Byte ist nur die Position 13 = 01101 (Binärdarstellung) gegeben, und im zweiten Byte ist nur die Anzahl der Bits, 3, gegeben. Es ergeben sich dann für das erste Byte 10001101 und das zweite Byte 00000011.
  • Sektion 5: Es ist ein Punkt auf der 12ten Spalte angeordnet, und es sind zwei Punkte beginnend von der 16ten Spalte angeordnet. Daher werden die Zwei-Bytedaten zu 01001100 und 11110000 gewonnen.
  • Sektion 13: Es sind zehn Punkte beginnend von der 6sten Spalte aus angeordnet, womit die Zwei-Bytedatengröße angezeigt wird. Daher betragen B7 = 1 und B6 = 0 und das resultierende erste Byte 10000110 und das zweite Byte 00001010.
  • Sektion 19: Es ist ein Bereich aus fünf Punkten beginnend von der 0-ten Spalte aus angeordnet, und es sind sechs Punkte beginnend von der 20sten Spalte aus angeordnet, woraus sich zwei Sätze von Zwei-Bytedaten ergeben.
  • Die resultierenden Daten sind in FIG. 8 dargestellt.
  • Wie aus FIG. 8 ersichtlich, erfordern die Charakterdaten dieses Beispiels 37 Bytes.
  • Als Resultat kann der Buchstabe (Charakter) "A" aus FIG. 1 nur durch ein Maximum von 41 Bytes einschließlich der Sektionsinformation (A), der Optionsinformation (B) und den Charakterdaten (C) dargestellt werden. Es sind 55 Bytes im Vergleich zur üblicherweise erforderlichen Anzahl der Bytes entfallen, wobei eine Reduzierung auf weniger als die Hälfte der üblichen Bytezahl erfolgte.
  • Im obigen Ausführungsbeispiel wird eine Bitmap in der horizontalen Richtung ausgeschnitten. Es ist auch möglich, eine Bitmap in vertikaler Richtung auszuschneiden und zu entwickeln, wobei dieselbe Datenverdichtung möglich wird.
  • Ferner ist im obigen Ausführungsbeispiel die Bitstartposition als positive Zahl angezeigt. Die Bitstartposition kann jedoch relativ zur Charaktermittenposition 0 durch eine positive oder negative Zahl angezeigt werden.
  • Der Charakter- oder Zeichenmodifizierungsprozeß für Charakterdaten, die gespeichert sind, unter Verwendung des obigen Verfahrens kann vereinfacht werden.
  • FIG. 9 ist ein Flußdiagramm, das die Details des Charaktermodifizierungsverfahrens gemäß der vorliegenden Erfindung zeigt.
  • Es wird vorausgesetzt, daß beispielsweise der Charaktergenerator bzw. Zeichengenerator an jeder Sektion des Zeichens "A" der FIG. 1 separat in horizontaler Richtung gruppiert die Punktpräsenzinformation (FIG. 6) speichert sowie die Punktstartpositionsdaten und Fortsetzungspunkt- Längendaten (FIG. 8).
  • Zunächst wird für ein bestimmtes Charakter geprüft, ob sich in der ersten Sektion (ersten Reihe) irgendwelche Punktdaten befinden (Schritt S101).
  • Falls keine Punktdaten vorhanden sind, werden Punkt start-Positionsdaten A0 und Punktfortsetzungs-Längendaten N0 aus dem Zeichengenerator ausgelesen (Schritt S102).
  • Entsprechend den ausgelesenen Daten wird eine Operation zur Charaktermodifikation ausgeführt (Schritt S103). Eine solche Operation umfaßt die folgenden Merkmale.
  • (1) Expansion um n
  • AnEX = nA0
  • NnEX = nN0
  • (2) Verdichtung um 1/n
  • AnCON = INT(A0/n)
  • NnCON = INT(N0/n + 1),
  • wobei INT einem integralen Teil entspricht.
  • (3) Emphasis- oder Hervorhebungsfaktor m
  • AEm = a0
  • NEM = N0 + m,
  • wobei m gleich oder größer als 1 ist.
  • (4) Expansion um n und Emphasis (Emphasisfaktor m)
  • AnEXEM = nA0
  • NnEXEM = nnN0 + m,
  • wobei m gleich oder größer als 1 ist.
  • (5) Verdichtung um 1/n and Emphasis (Emphasisfaktor m)
  • AnCONEM = INT(A0/n)
  • NnCONEM = INT(N0/n + 1 + m)
  • (6) Expansion um x und Verdichtung um 1/y
  • Ax/y = xA0/y
  • Nx/y = N0 für x = 1
  • Nx/y = INT(xN0/y + 1) für x/y < 1
  • Nx/y = INT(xN0/y für x/y > 1
  • (7) Expansion um x, Verdichtung um 1/y und Emphasis (Emphasisfaktor m)
  • Ax/y = xA0/y
  • Nx/y = N0 für x/y = 1
  • Nx/y = INT(xN0/y + 1 + m) für x/y < 1
  • Nx/y = INT(xN0/y + m) für x/y > 1
  • Im folgenden wird die Adresse, an der die gewonnenen Daten gespeichert werden, gesetzt (Schritt S104). Speziell wird eine Bezugsadresse für ein Charakter dem Wert A, der durch die Charaktermodifizierungsoperation gewonnen wurde, hinzugefügt, und das Additionsergebnis wird als neue Adresse bei der Charaktermodifizierung verwendet. Falls ein schräggestelltes Charakter bzw. schräggestelltes Zeichen gewünscht ist, wird der Versetzungsgrad der Adresse für jede Reihe mit dem Grad der Schrägstellung oder Neigung geändert.
  • Die Punktdruckdaten werden an die in obiger Weise gewonnene Adresse gesetzt (Schritt S105).
  • Die Adresse wird auf die Adresse für den nächsten Punkt erneuert (Schritt S106). Dann wird geprüft, ob die Anzahl von Punkten, die der Berechnung des Schritts S103 unterzogen wurden, 0 ist oder nicht, d.h., ob die Operation für den letzten Punkt abgeschlossen worden ist oder nicht (Schritt S107). Falls nicht, so springt die Steuerung zurück auf Schritt S105, um die obigen Schritte so lange zu wiederholen, bis die Anzahl von Punkten, die der Berechnung unterzogen werden, 0 wird.
  • Nach Abschluß der Operation für den letzten Punkt unter den Punkten des Satzes geht die Steuerung zurück zu Schritt S101, um zu prüfen, ob irgendein Punkt in der Reihe oder in einer anderen Spalte vorhanden ist. Die Schritte S101 bis S107 werden wiederholt, bis die Punktdaten nichtpräsent werden.
  • Falls im Schritt S101 keine zu verarbeitenden Punktdaten vorliegen, rückt die Steuerung auf die nächste Sektion (Schritt S108) vor. Es werden dann die gleichen Operationen für die nächste Sektion ausgeführt, um die modifizierende Operation des gesamten Charakters abzuschließen.
  • In der in FIG. 4 gezeigten Vorrichtung werden die Punktstartpositionsdaten A0 und Fortsetzungspunkt-Längendaten N0 aus dem ROM 2 gelesen, und die Charaktermodifizierungsprozedur wird vom CPU 1 entsprechend dem in FIG. 9 gezeigten Flußdiagramm durchgeführt. Entsprechend der gewonnenen Punktinformation wird der Druckmechanismus 4 so gesteuert, daß er die Information ausdruckt.
  • Wie oben erläutert, werden entsprechend dem Charaktermodifizierungsverfahren der vorliegenden Erfindung verschiedene Modifizierungsprozesse unter Verwendung der gemeinsamen Parameter A und N anstelle der konventionellen Operation ausgeführt, die in Byte-Einheiten ausgeführt wurde. Darüber hinaus wird nicht nach einer Adresse ohne Punktdaten gesucht. Entsprechend können die Prozesse geschwindigkeitsmäßig gesteigert werden. Ferner sind verschiedene Prozesse allein dadurch möglich, daß der Inhalt der Operationen für die gemeinsamen Parameter geändert wird, und es ist möglich, den Vergrößerungsfaktor, Reduktionsfaktor, Emphasisfaktor und Neigungsgrad auf einfache Weise und frei zu ändern.
  • Im obigen Ausführungsbeispiel wird die Charaktermodifizierungsprozedur für Sektionen in Reihenrichtung ausgeführt. Es kann jedoch auf praktisch dieselbe Weise die Prozedur für Sektionen in Spaltenrichtung mit einem Charakterfonts speichernden Charaktergenerator oder Zeichengenerator ausgeführt werden.
  • Ferner kann ein bekannter Glättungs(Kerning- oder Unterschneidungs)-Prozeß ausgeführt werden, um die Kontur eines Zeichens, Buchstabens bzw. Charakters nach dem Charaktermodifizierungsprozeß zu glätten.

Claims (4)

1. Verfahren zum Verdichten von Charakterdaten, aufweisend die Schritte des Ausschxieidens einer Bitmap, die aus Punkten erstellt ist, die in m Reihen und in n Spalten angeordnet sind, wobei die Punkte ein Zeichen (Charakter) bilden, mit einer vorbestimten Teilung in Reihen- oder Spaltenrichtung;
wobei das Verfahren ferner die Schritte umfaßt:
Vorsehen von Punktpräsenzdaten für jede ausgeschnittene Reihe oder Spalte, falls ein Druckpunkt in der Reihe oder Spalte existiert; und
Vorsehen von Druckinformation für jede Reihe oder Spalte, in der dieser Druckpunkt existiert, wobei die Druckinformation eine Druckstartposition des Druckpunktes, Fortsetzungsdaten, die anzeigen, daß nur ein Satz kontinuierlicher Druckpunkte in der Reihe/Spalte vorliegt, oder daß ein weiterer Satz kontinuierlicher Punkte in der Reihe/Spalte existiert, und eine Anzahl von Druckpunkten, die kontinuierlich zu drucken sind, umfaßt.
2. Verfahren zum Verdichten von Charakterdaten nach Anspruch 1, in welchem die Punkte, die kontinuierlich zu drucken sind, durch ein Einzelpunktintervall voneinander beabstandet sind.
3. Verfahren zum Verdichten von Charakterdaten nach Anspruch 1 oder 2, in welchem die Fortsetzungsdaten das höchstwertige Bit (MSB) der Druckinformation umfassen und die Druckinformation ferner aufweist:
ein dem höchstwertigen Bit nächstgelegenes Bit, anzeigend, daß der Datenumfangder Druckinformation ein Byte oder zwei Bytes beträgt; und
fallsder Datenumfangein Byte beträgt, dritte und folgende Bits, die die Punktzahl und Punktposition repräsentieren, falls die Datengröße ein Byte beträgt, oder falls die Datengröße zwei Bytes beträgt, ein drittes und folgende Bits eines ersten Bytes, welches die Punktposition repräsentiert, und die Daten des zweiten Bytes, die die Punktzahl repräsentieren.
4. Verfahren zum Liefern von modifizierten Charakterdaten, umfassend:
Verdichten von Charakterdaten nach einem der Ansprüche 1 bis 3 zum Vorsehen verdichteter Charakterdaten;
Speichern der verdichteten Charakterdaten in einem Speicher;
Auslesen aus diesem Speicher der Druckstartpositionsdaten und der Anzahl von Druckpunkten, die kontinuierlich zu drucken sind, für jede Reihe oder Spalte, in der ein Druckpunkt des Zeichens (Charakters) existiert;
Ausführen einer Operation entsprechend der Charaktermodifikation bezüglich der Druckstartpositionsdaten und der Anzahl von Druckpunkten, die kontinuierlich zu drucken sind; und
Festlegen von Punktdruckinformation entsprechend einer Adresse, die durch eine kontinuierliche Punktlänge definiert ist, welche durch die Charaktermodifizierungsoperation gewonnen wurde, auf eine neue Adresse, die durch die Charaktermodifizierungsoperation für die Druckstartpositionsdaten gewonnen wurde.
DE69026599T 1989-10-17 1990-10-17 Verfahren zum verdichten von charakterdaten und verfahren zur änderung der charakter Expired - Fee Related DE69026599T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP26932289A JPH03132119A (ja) 1989-10-17 1989-10-17 文字データ圧縮方法
JP1285437A JPH03146365A (ja) 1989-11-01 1989-11-01 文字修飾方法
PCT/JP1990/001337 WO1991005664A1 (en) 1989-10-17 1990-10-17 Character data compression method and character modification method

Publications (2)

Publication Number Publication Date
DE69026599D1 DE69026599D1 (de) 1996-05-23
DE69026599T2 true DE69026599T2 (de) 1996-09-12

Family

ID=26548719

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69026599T Expired - Fee Related DE69026599T2 (de) 1989-10-17 1990-10-17 Verfahren zum verdichten von charakterdaten und verfahren zur änderung der charakter

Country Status (3)

Country Link
EP (1) EP0448725B1 (de)
DE (1) DE69026599T2 (de)
WO (1) WO1991005664A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3327650B2 (ja) * 1993-04-15 2002-09-24 キヤノン株式会社 記録装置
US5903715A (en) * 1991-12-06 1999-05-11 Seiko Epson Corporation Dot matrix printer having reduced bit map data storage
JP3106021B2 (ja) * 1992-11-30 2000-11-06 キヤノン株式会社 パターンデータの圧縮方法及び装置と出力方法及び装置
US5692108A (en) * 1994-09-26 1997-11-25 Xerox Corporation Odd/even stroke control for reduced video data clocking
JP4424845B2 (ja) 1999-12-20 2010-03-03 本田 正 イメージデータ圧縮方法及び復元方法
JP6890219B2 (ja) * 2016-01-29 2021-06-18 パナソニックIpマネジメント株式会社 圧縮データ構造とそれを用いた印刷データ圧縮方法、印刷方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52119026A (en) * 1976-03-31 1977-10-06 Hitachi Ltd Coding of binary signal
JPS61284457A (ja) * 1985-06-11 1986-12-15 Matsushita Electric Ind Co Ltd ドツトマトリクスデ−タの処理方法
JPS6227789A (ja) * 1985-07-29 1987-02-05 沖電気工業株式会社 キヤラクタジエネレ−タのデ−タ圧縮方式
JPS62278052A (ja) * 1986-05-26 1987-12-02 Nec Corp プリンタのドツトイメ−ジデ−タ入力方式
JPH01184154A (ja) * 1988-01-20 1989-07-21 Hitachi Ltd 文字パタンの保持及び展開方式
JP2710126B2 (ja) * 1988-04-28 1998-02-10 キヤノン株式会社 出力制御方法及び出力装置
JP2731099B2 (ja) * 1993-01-29 1998-03-25 古河機械金属株式会社 油圧式クレーンの切換弁装置

Also Published As

Publication number Publication date
EP0448725A4 (en) 1992-04-15
DE69026599D1 (de) 1996-05-23
WO1991005664A1 (en) 1991-05-02
EP0448725A1 (de) 1991-10-02
EP0448725B1 (de) 1996-04-17

Similar Documents

Publication Publication Date Title
DE3707112C2 (de)
EP0096079B1 (de) Verfahren zur Aufbereitung von Punktrasterdaten für Zeichen- und/oder Bilddarstellungen
DE69222689T2 (de) Verfahren und Vorrichtung zur Substituierung von Schriftarten und zur Anzeige von Zeichen
DE3851484T2 (de) Datenverringerung für die Bildanzeige von Ganzseiten-Graphiken.
DE3787073T2 (de) Mehrrichtungs-Abtast- und -Druckfähigkeit.
EP0132456B1 (de) Verfahren und Vorrichtung zur Prüfung der Satzqualität von Druckerzeugnissen, insbesondere Zeitungen
DE7639778U1 (de) Letternkoerper
DE3632603C2 (de)
DE68903837T2 (de) Verfahren zum vergroessern der daten eines bitrasters in einer horizontalen richtung.
DE3882063T2 (de) Verfahren zur Erzeugung von Buchstaben beim Punktdruck.
DE69212028T3 (de) Banddruckvorrichtung zum Drucken einer Mehrzahl von benachbarten Drucklinien über die Breite des Bandes
DE2701328C2 (de) Zeichengenerator
DE68927008T2 (de) Verfahren zum komprimieren und dekomprimieren von punktmatrixzeichen
DE69319988T2 (de) Verfahren für die Umsetzung von Bitkarten in einfarbige Daten
DE3932024C2 (de) Datenverarbeitungsanlage zur Umwandlung einer Gruppe von Umrißdaten
DE3520289C2 (de)
DE69026599T2 (de) Verfahren zum verdichten von charakterdaten und verfahren zur änderung der charakter
DE4124554C2 (de) Datenumwandlungseinrichtung und Zeichenausgabeeinrichtung
DE3786526T2 (de) Mehrrichtungs-Abtast- und -Druckfähigkeit.
DE68910096T2 (de) Verfahren und Gerät zur Bildung von Buchstabenumrisslinien.
DE3132842C2 (de) Verfahren zur Reduzierung der Redundanz von binären Zeichenfolgen für Matrixdruckverfahren
DE3935558A1 (de) Vorrichtung zum konvertieren von bildumrissdarstellungsdaten in punktmusterdaten zum erzeugen von punkten
DE3688439T2 (de) Geteilter druck von punktmustern mit hoher dichte.
DE4323025C2 (de) Schriftzeichen-Speichervorrichtung
DE3316669A1 (de) System und verfahren zum steuern des druckens mit einem drucker

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Free format text: PATENTANWAELTE REICHEL UND REICHEL, 60322 FRANKFURT

8339 Ceased/non-payment of the annual fee