DE4322364A1 - Verfahren zum Erzeugen von Fontdaten - Google Patents

Verfahren zum Erzeugen von Fontdaten

Info

Publication number
DE4322364A1
DE4322364A1 DE4322364A DE4322364A DE4322364A1 DE 4322364 A1 DE4322364 A1 DE 4322364A1 DE 4322364 A DE4322364 A DE 4322364A DE 4322364 A DE4322364 A DE 4322364A DE 4322364 A1 DE4322364 A1 DE 4322364A1
Authority
DE
Germany
Prior art keywords
data
bit
pattern
bit patterns
patterns
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
Application number
DE4322364A
Other languages
English (en)
Other versions
DE4322364C2 (de
Inventor
Aijiro Gohara
Kazuaki Ikeda
Kenji Ishida
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.)
Seiko Precision Inc
Original Assignee
Seikosha KK
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 JP4182121A external-priority patent/JPH07109548B2/ja
Priority claimed from JP4182120A external-priority patent/JPH07109547B2/ja
Application filed by Seikosha KK filed Critical Seikosha KK
Publication of DE4322364A1 publication Critical patent/DE4322364A1/de
Application granted granted Critical
Publication of DE4322364C2 publication Critical patent/DE4322364C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Document Processing Apparatus (AREA)

Description

Die vorliegende Erfindung bezieht sich auf ein Verfahren zum Erzeugen von Fontdaten in einem Drucker oder ähnlichem.
Wenn Fontdaten für einen Drucker oder ähnliches gespei­ chert werden sollen, wird gelegentlich ein Fontmuster gespei­ chert, das diese komprimiert, um den Speicherbedarf zu redu­ zieren, auch wenn in einigen Fällen die Bitmaßdaten des Fonts gespeichert werden.
Im Stand der Technik konnte jedoch in einigen Fällen das Fontmuster nicht wirkungsvoll komprimiert werden. Daher ist es eine Aufgabe der vorliegenden Erfindung ein Verfahren zum Erzeugen von Fontdaten zur Verfügung zu stellen, das eine wirkungsvolle Kompression von Fontmustern ermöglicht.
Diese und weitere Aufgaben werden durch das in den bei­ gefügten Patentansprüchen definierte Verfahren gelöst.
Fig. 1 ist eine Zeichnung, die sich auf die ersten und zweiten Ausführungsbeispiele der vorliegenden Erfindung be­ zieht, wobei Fig. 1(A) eine erklärende Zeichnung eines ur­ sprünglichen Fontmusters und Fig. 1(B) eine erklärende Zeich­ nung des Fontmusters nach einer Übersetzung ist.
Fig. 2 ist eine erklärende Ansicht, die hexadezimale Da­ ten zeigt, die dem Fontmuster der Fig. 1(B) nach der Überset­ zung entsprechen.
Fig. 3 ist eine Tabelle, die alle auf der Basis des Fontmusters nach der Übersetzung erzeugten und gespeicherten Daten entsprechend dem ersten Ausführungsbeispiel der Erfindung zeigt.
Fig. 4 ist ein Flußdiagramm, das den Datenkomprimierungsvorgang entsprechend dem ersten Ausfüh­ rungsbeispiel der Erfindung zeigt.
Fig. 5 ist ein Flußdiagramm, das den Datenwiedergabe­ vorgang entsprechend dem ersten Ausführungsbeispiel der Er­ findung zeigt.
Fig. 6 ist eine Tabelle, die alle auf der Basis des Fontmusters nach der Übersetzung erzeugten und gespeicherten Daten entsprechend dem zweiten Ausführungsbeispiel der Erfin­ dung zeigt.
Fig. 7 ist ein Flußdiagramm, das den Datenkomprimierungsvorgang entsprechend dem zweiten Ausfüh­ rungsbeispiel der Erfindung zeigt.
Fig. 8 ist ein Flußdiagramm, das den Datenwiedergabe­ vorgang entsprechend dem zweiten Ausführungsbeispiel der Er­ findung zeigt.
Fig. 9 ist eine Zeichnung, die sich auf die dritten und vierten Ausführungsbeispiele der vorliegenden Erfindung bezieht, wobei Fig. 9(A) eine erklärende Zeichnung eines ur­ sprünglichen Fontmusters, Fig. 9(B) eine erklärende Zeichnung des Fontmusters in der Mitte der Bearbeitung und Fig. 9(C) eine erklärende Zeichnung des Fontmusters nach der Überset­ zung ist.
Fig. 10 ist eine erklärende Ansicht, die hexadezimale Daten zeigt, die dem Fontmuster der Fig. 9(C) nach der Über­ setzung entsprechen.
Fig. 11 ist eine Tabelle, die alle auf der Basis des Fontmusters nach der Übersetzung erzeugten und gespeicherten Daten entsprechend dem dritten Ausführungsbeispiel der Erfin­ dung zeigt.
Fig. 12 ist ein Flußdiagramm, das den Datenkomprimierungsvorgang entsprechend dem dritten Ausfüh­ rungsbeispiel der Erfindung zeigt.
Fig. 13 ist ein Flußdiagramm, das den Datenwiedergabe­ vorgang entsprechend dem dritten Ausführungsbeispiel der Er­ findung zeigt.
Fig. 14 ist eine Tabelle, die alle auf der Basis des Fontmusters nach der Übersetzung erzeugten und gespeicherten Daten entsprechend dem vierten Ausführungsbeispiel der Erfin­ dung zeigt.
Fig. 15 ist ein Flußdiagramm, das den Datenkomprimierungsvorgang entsprechend dem vierten Ausfüh­ rungsbeispiel der Erfindung zeigt.
Fig. 16 ist ein Flußdiagramm, das den Datenwiedergabe­ vorgang entsprechend dem vierten Ausführungsbeispiel der Er­ findung zeigt.
Unter Bezugnahme auf die Fig. 1, 2, 3, 4 und 5 wird ein erstes Ausführungsbeispiel der vorliegenden Erfindung er­ klärt.
Fig. 1(A) ist eine erklärende Ansicht, die ein ursprüng­ liches Fontmuster zeigt, und Fig. 1(B) ist eine erklärende Ansicht, die das Fontmuster nach einer Übersetzung zeigt. Fig. 2 ist eine erklärende Zeichnung, die hexadezimale Daten zeigt, die dem Fontmuster der Fig. 1(B) nach der Übersetzung entsprechen. Fig. 3 ist eine Tabelle, die alle auf der Basis des Fontmusters nach der Übersetzung erzeugten und gespei­ cherten Daten zeigt. Fig. 4 ist ein Flußdiagramm, das den Datenkomprimierungsvorgang zeigt. Fig. 5 ist ein Flußdia­ gramm, das den Datenwiedergabevorgang zeigt.
Als erstes wird bezugnehmend auf das Flußdiagramm der Fig. 4 der Datenkomprimierungsvorgang entsprechend dem ersten Ausführungsbeispiel erklärt.
Fig. 1(A) zeigt ein ursprüngliches Fontmuster für einen Font, und das ursprüngliche Fontmuster ist in erste Bitmuster A1-A20 unterteilt, von denen jedes aus einer Einheit von 8 Bits besteht. Zweite Bitmuster B1-B20 sind in Fig. 1(B) ge­ zeigt. Diese sind durch sequentielle Ausführung einer exklu­ siven ODER-Operation (EXOR) auf die ersten Bitmuster A1-A20 erzeugt worden. Konkret wird folgender Vorgang durchgeführt:
A1 . . . B1
A2 . . . B2
A1 (EXOR) A3 . . . B3
A2 (EXOR) A4 . . . B4
·
·
A17 (EXOR) A19 . . . B19
A18 (EXOR) A20 . . . B20
Durch Darstellung der zweiten Bitmuster B1-B20 durch hexadezimale Daten können die in Fig. 2 gezeigten Umwand­ lungspunktdaten D1-D20 erhalten werden. Diese Umwandlungs­ punktdaten D1-D20 werden einmal in einem Puffer gespei­ chert. Das Subskript "H" bezeichnet hexadezimale Daten (Schritt b).
Die Daten "(FF)H", die am häufigsten unter den Umwand­ lungspunktdaten D1-D20 in Fig. 2 erscheinen, werden in Fig. 3 als Referenzbitmusterdaten gespeichert (Schritt c). Die An­ zahl der zweiten Bitmuster B1-B20, also die Anzahl der Um­ wandlungspunkte D1-D20 "(14)H" wird in einem Zähler als die Anzahl der Musterdaten in Fig. 3 eingestellt (Schritt d).
Die Umwandlungspunktdaten D1-D20 werden sequentiell aus dem Puffer ausgelesen (Schritt e). Die ausgelesenen Umwandlungspunktdaten Dn werden mit den Referenzbitmusterdaten "(FF)H" verglichen (Schritt f). Wenn beide Daten nicht gleich sind, werden Bitdaten "1" in der Komprimierungstabelle der Fig. 3 gespeichert (Schritt g). Zur gleichen Zeit werden die Umwandlungspunktdaten Dn als Komprimierungsbitmusterdaten gespeichert (Schritt h). Wenn die beiden Daten gleich sind, werden Bitdaten "0" in der Komprimierungstabelle der Fig. 3 gespeichert (Schritt i).
"1" wird von dem Wert des Zählers subtrahiert (Schritt j). Die obigen Schritt e-j werden wiederholt, bis der Wert des Zählers "0" wird (Schritt k). Also werden, während die Differenz und Gleichheit der Umwandlungspunktdaten Dn und der Bitmusterdaten "(FF)H" sequentiell in der Komprimierungstabelle gespeichert werden, die Umwandlungs­ punktdaten Dn nur dann als Komprimierungsbitmusterdaten ge­ speichert, wenn sich beide Daten unterscheiden.
Als nächstes wird der Datenwiedergabevorgang entspre­ chend dem ersten Ausführungsbeispiel unter Bezugnahme auf das Flußdiagramm der Fig. 5 erklärt.
Die Musterdatennummer "(14)H" in Fig. 3 wird in den Zäh­ ler eingesetzt (Schritt m). Eines der Bitdaten wird der Reihe nach von der Spitze der Komprimierungstabelle der Fig. 3 ge­ lesen (Schritt n). Es wird verglichen, ob die Bitdaten "1" sind oder nicht (Schritt o). Wenn die Bitdaten "1" sind, wird eines der Komprimierungsbitmusterdaten in Fig. 3 der Reihe nach von der Spitze der Tabelle gelesen und wird als die Um­ wandlungspunktdaten in Fig. 2 wiedergegeben (Schritt p). Wenn die Bitdaten nicht "1" sind, werden die Referenzbitdaten "(FF)H" als die Umwandlungsbitdaten in Fig. 2 wiedergegebenen (Schritt q).
"1" wird von dem Wert des Zählers subtrahiert (Schritt r). Die obigen Schritt n-r werden der Reihe nach wieder­ holt, bis der Wert des Zählers "0" wird (Schritt s). Auf diese Weise werden die Umwandlungsbitdaten D1-D20 der Fig. 2, also die zweiten Bitmuster B1-B20 in Fig. 1 wiedergege­ ben. Die ersten Bitmuster A1-A20 der Fig. 1(A) werden aus den zweiten Bitmustern B1-B20 der Fig. 1(B) wiedergegeben, um das ursprüngliche Fontmuster wiederzugeben (Schritt t).
Unter Bezugnahme auf die Fig. 1, 2, 6, 7 und 8 wird das zweite Ausführungsbeispiel der Erfindung erklärt.
Die Fig. 1 und 2 sind dieselben wie beim ersten Aus­ führungsbeispiel, und die Fig. 6, 7 und 8 entsprechen je­ weils den Fig. 3, 4 und 5 des ersten Ausführungsbeispiels. Demzufolge wird der Teil der Erklärung, der sich mit dem des ersten Ausführungsbeispiels überlappt, hiernach weggelassen.
Anhand des in Fig. 7 gezeigten Flußdiagramms wird zu­ nächst der Datenkomprimierungsvorgang entsprechend dem zwei­ ten Ausführungsbeispiel erklärt.
Die zweiten Bitmuster B1-B20 in Fig. 1(B) werden auf dieselbe Weise unter Verwendung der EXOR-Bearbeitung der er­ sten Bitmuster der A1-A20 der Fig. 1(A) erzeugt wie in dem ersten Ausführungsbeispiel, und die Umwandlungspunktdaten D1-D20 werden in dem Puffer gespeichert (Schritt b).
Drei Daten, die am häufigsten in den Umwandlungspunkt­ daten D1-D20 der Fig. 2 auftreten, also "(FF)H", "(01)H" und "(80)H", werden ausgewählt und jeweils als Referenzbitdaten 1, Referenzbitdaten 2 und Referenzbitdaten 3 in Fig. 6 gespeichert (Schritt c). Die Anzahl der zweiten Bitmuster B1-B20, also die Anzahl der Umwandlungspunkte D1- D20 "(14)H" wird in einem Zähler als die Anzahl der Muster­ daten in Fig. 6 eingestellt (Schritt d).
Die Umwandlungspunktdaten D1-D20 werden sequentiell aus dem Puffer ausgelesen (Schritt e). Die ausgelesenen Um­ wandlungspunktdaten Dn werden mit den Referenzbitmusterdaten 1, den Referenzbitmusterdaten 2 und den Referenzbitmusterdaten 3 verglichen (Schritt f). Wenn die Daten nicht mit einem der Referenzbitmusterdaten übereinstim­ men, werden Bitdaten "11" in der Komprimierungstabelle der Fig. 6 gespeichert (Schritt g). Zur gleichen Zeit werden die Umwandlungspunktdaten Dn als Komprimierungsbitmusterdaten ge­ speichert (Schritt h). Wenn die Daten gleich den Referenzbitdaten 1 sind, werden Bitdaten "00" in der Komprimierungstabelle der Fig. 6 gespeichert, wenn die Daten gleich den Referenzbitdaten 2 sind, werden Bitdaten "01" in der Komprimierungstabelle der Fig. 6 gespeichert, und wenn die Daten gleich den Referenzbitdaten 3 sind, werden Bitdaten "10" in der Komprimierungstabelle der Fig. 6 gespeichert (Schritt i).
"1" wird von dem Wert des Zählers subtrahiert (Schritt j). Die obigen Schritt e-j werden wiederholt, bis der Wert des Zählers "0" wird (Schritt k).
Als nächstes wird der Datenwiedergabevorgang entspre­ chend dem zweiten Ausführungsbeispiel unter Bezugnahme auf das Flußdiagramm der Fig. 8 erklärt.
Die Musterdatennummer "(14)H" in Fig. 6 wird in den Zäh­ ler eingesetzt (Schritt m). Eines der Bitdaten wird der Reihe nach von der Spitze der Komprimierungstabelle der Fig. 6 ge­ lesen (Schritt n). Es wird verglichen, ob die Bitdaten "11" sind oder nicht (Schritt o). Wenn die Bitdaten "11" sind, werden die Komprimierungsbitmusterdaten in Fig. 6 gelesen und als die Umwandlungspunktdaten in Fig. 2 wiedergegeben (Schritt p). Wenn die Bitdaten nicht "11" sind, werden die Referenzbitmusterdaten 1 (wenn die Bitdaten "00" sind), die Referenzbitmusterdaten 2 (wenn die Bitdaten "01" sind) oder die Referenzbitmusterdaten 3 (wenn die Bitdaten "10" sind) als die Umwandlungsbitdaten in Fig. 2 wiedergegebenen (Schritt q).
"1" wird von dem Wert des Zählers subtrahiert (Schritt r). Die obigen Schritt n-r werden der Reihe nach wieder­ holt, bis der Wert des Zählers "0" wird (Schritt s). Somit werden die ersten Bitmuster A1-A20 der Fig. 1(A) aus den zweiten Bitmustern B1-B20 der Fig. 1(B) wiedergegeben, um das ursprüngliche Fontmuster wiederzugeben (Schritt t).
Übrigens können, auch wenn die Beschreibung der ersten und zweiten Ausführungsbeispiele für den Fall, in dem die er­ sten Bitmuster aus Spalteneinheiten zusammengesetzt sind, ge­ geben wurde, diese auch aus Zeileneinheiten zusammengesetzt sein.
Unter Bezugnahme auf die Fig. 9, 10, 11, 12 und 13 wird ein drittes Ausführungsbeispiel der vorliegenden Erfin­ dung erklärt.
Fig. 9(A) ist eine erklärende Ansicht, die ein ursprüng­ liches Fontmuster zeigt, Fig. 9(B) ist eine erklärende Ansicht des Fontmusters in der Mitte der Bearbeitung und Fig. 9(C) ist eine erklärende Ansicht, die das Fontmuster nach ei­ ner Übersetzung zeigt. Fig. 10 ist eine erklärende Zeichnung, die hexadezimale Daten zeigt, die dem Fontmuster der Fig. 9(C) nach der Übersetzung entsprechen. Fig. 11 ist eine Ta­ belle, die alle auf der Basis des Fontmusters nach der Über­ setzung erzeugten und gespeicherten Daten zeigt. Fig. 12 ist ein Flußdiagramm, das den Datenkomprimierungsvorgang zeigt. Fig. 13 ist ein Flußdiagramm, das den Datenwiedergabevorgang zeigt.
Als erstes wird bezugnehmend auf das Flußdiagramm der Fig. 12 der Datenkomprimierungsvorgang entsprechend dem drit­ ten Ausführungsbeispiel erklärt.
Fig. 9(A) zeigt ein ursprüngliches Fontmuster für einen Font, und das ursprüngliche Fontmuster ist in erste Bitmuster A1-A20 unterteilt, von denen jedes aus einer Einheit von 8 Bits besteht. Zweite Bitmuster B1-B20 sind in Fig. 9(B) ge­ zeigt. Diese sind durch sequentielle Ausführung einer logischen Addition (ODER) auf die ersten Bitmuster A1-A20 erzeugt worden. Konkret wird folgender Vorgang durchgeführt:
A1 . . . B1
A2 . . . B2
A1 (ODER) A3 . . . B3
A2 (ODER) A4 . . . B4
·
·
A17 (ODER) A19 . . . B19
A18 (ODER) A20 . . . B20
Durch Durchführen einer exklusiven logischen Summe (EXOR) bei den zweiten Bitmustern B1-B20 werden die in Fig. 9(C) gezeigten dritten Bitmuster C1-C20 erzeugt. Konkret wird folgender Vorgang durchgeführt:
B1 . . . C1
B2 . . . C2
B1 (EXOR) B3 . . . C3
B2 (EXOR) B4 . . . C4
·
·
B17 (EXOR) B19 . . . C19
B18 (EXOR) B20 . . . C20
Durch Darstellung der dritten Bitmuster C1-C20 durch hexadezimale Daten können in Fig. 10 gezeigte Umwandlungs­ punktdaten D1-D20 erhalten werden. Diese Umwandlungspunkt­ daten D1-D20 werden einmal in einem Puffer gespeichert. Das Subskript "H" bezeichnet hexadezimale Daten (Schritt b).
Die Daten "(00)H", die am häufigsten unter den Umwand­ lungspunktdaten D1-D20 in Fig. 10 erscheinen, werden in Fig. 11 als Referenzbitmusterdaten gespeichert (Schritt c). Die Anzahl der dritten Bitmuster C1-C20, also die Anzahl der Umwandlungspunkte D1-D20 "(14)H" wird in einem Zähler als die Anzahl der Musterdaten in Fig. 11 eingestellt (Schritt d).
Die Umwandlungspunktdaten D1-D20 werden sequentiell aus dem Puffer ausgelesen (Schritt e). Die ausgelesenen Umwandlungspunktdaten Dn werden mit den Referenzbitmusterdaten "(00)H" verglichen (Schritt f). Wenn beide Daten nicht gleich sind, werden Bitdaten "1" in der Komprimierungstabelle der Fig. 11 gespeichert (Schritt g). Zur gleichen Zeit werden die Umwandlungspunktdaten Dn als Komprimierungsbitmusterdaten gespeichert (Schritt h). Wenn die beiden Daten gleich sind, werden Bitdaten "0" in der Komprimierungstabelle der Fig. 11 gespeichert (Schritt i).
"1" wird von dem Wert des Zählers subtrahiert (Schritt j). Die obigen Schritt e-j werden wiederholt, bis der Wert des Zählers "0" wird (Schritt k). Also werden, während die Differenz und Gleichheit der Umwandlungspunktdaten Dn und der Bitmusterdaten "(00)H" sequentiell in der Komprimierungstabelle gespeichert werden, die Umwandlungs­ punktdaten Dn nur dann als Komprimierungsbitmusterdaten ge­ speichert, wenn sich beide Daten unterscheiden.
Als nächstes wird der Datenwiedergabevorgang entspre­ chend dem dritten Ausführungsbeispiel unter Bezugnahme auf das Flußdiagramm der Fig. 13 erklärt.
Die Musterdatennummer "(14)H" in Fig. 11 wird in den Zähler eingesetzt (Schritt m). Eines der Bitdaten wird der Reihe nach von der Spitze der Komprimierungstabelle der Fig. 11 gelesen (Schritt n). Es wird verglichen, ob die Bitdaten "1" sind oder nicht (Schritt o). Wenn die Bitdaten "1" sind, wird eines der Komprimierungsbitmusterdaten in Fig. 11 der Reihe nach von der Spitze der Tabelle gelesen und als die Um­ wandlungspunktdaten in Fig. 10 wiedergegeben (Schritt p). Wenn die Bitdaten nicht "1" sind, werden die Referenzbitdaten "(00)H" als die Umwandlungsbitdaten in Fig. 2 wiedergegebenen (Schritt q).
"1" wird von dem Wert des Zählers subtrahiert (Schritt r). Die obigen Schritt n-r werden der Reihe nach wieder­ holt, bis der Wert des Zählers "0" wird (Schritt s). Auf diese Weise werden die Umwandlungsbitdaten D1-D20 der Fig. 10, also die dritten Bitmuster C1-C20 in Fig. 9 wiedergege­ ben. Die ersten Bitmuster A1-A20 der Fig. 9(A) werden aus den dritten Bitmustern C1-C20 der Fig. 9(C) wiedergegeben, um das ursprüngliche Fontmuster wiederzugeben (Schritt t).
Unter Bezugnahme auf die Fig. 9, 10, 14, 15 und 16 wird das vierte Ausführungsbeispiel der Erfindung erklärt.
Die Fig. 9 und 19 sind dieselben wie beim dritten Ausführungsbeispiel, und die Fig. 14, 15 und 16 entspre­ chen jeweils den Fig. 11, 12 und 13 des dritten Ausfüh­ rungsbeispiels. Demzufolge wird der Teil der Erklärung, der sich mit dem des dritten Ausführungsbeispiels überlappt, hiernach weggelassen.
Anhand des in Fig. 15 gezeigten Flußdiagramms wird zu­ nächst der Datenkomprimierungsvorgang entsprechend dem vier­ ten Ausführungsbeispiel erklärt.
Die zweiten Bitmuster B1-B20 in Fig. 9(B) und die dritten Bitmuster C1-C20 in Fig. 9(C) werden auf dieselbe Weise unter Verwendung der ODER- und EXOR-Bearbeitung der er­ sten Bitmuster der A1-A20 der Fig. 9(A) erzeugt wie in dem dritten Ausführungsbeispiel, und die Umwandlungspunktdaten D1- D20 werden in dem Puffer gespeichert (Schritt b).
Drei Daten, die am häufigsten in den Umwandlungspunkt­ daten D1-D20 der Fig. 2 auftreten, also "(00)H", "(FE)H" und "(7F)H", werden ausgewählt und jeweils als Referenzbitdaten 1, Referenzbitdaten 2 und Referenzbitdaten 3 in Fig. 14 gespeichert (Schritt c). Die Anzahl der dritten Bitmuster C1-C20, also die Anzahl der Umwandlungspunkte D1- D20 "(14)H" wird in einem Zähler als die Anzahl der Muster­ daten in Fig. 14 eingestellt (Schritt d).
Die Umwandlungspunktdaten D1-D20 werden sequentiell aus dem Puffer ausgelesen (Schritt e). Die ausgelesenen Um­ wandlungspunktdaten Dn werden mit den Referenzbitmusterdaten 1, den Referenzbitmusterdaten 2 und den Referenzbitmusterdaten 3 verglichen (Schritt f). Wenn die Daten nicht mit einem der Referenzbitmusterdaten übereinstim­ men, werden Bitdaten "11" in der Komprimierungstabelle der Fig. 14 gespeichert (Schritt g). Zur gleichen Zeit werden die Umwandlungspunktdaten Dn als Komprimierungsbitmusterdaten in Fig. 14 gespeichert (Schritt h). Wenn die Daten gleich den Referenzbitdaten 1 sind, werden Bitdaten "00" in der Komprimierungstabelle der Fig. 14 gespeichert, wenn die Daten gleich den Referenzbitdaten 2 sind, werden Bitdaten "01" in der Komprimierungstabelle der Fig. 14 gespeichert, und wenn die Daten gleich den Referenzbitdaten 3 sind, werden Bitdaten "10" in der Komprimierungstabelle der Fig. 14 gespeichert (Schritt i).
"1" wird von dem Wert des Zählers subtrahiert (Schritt j). Die obigen Schritt e-j werden wiederholt, bis der Wert des Zählers "0" wird (Schritt k).
Als nächstes wird der Datenwiedergabevorgang entspre­ chend dem vierten Ausführungsbeispiel unter Bezugnahme auf das Flußdiagramm der Fig. 16 erklärt.
Die Musterdatennummer "(14)H" in Fig. 14 wird in den Zähler eingesetzt (Schritt in). Eines der Bitdaten wird der Reihe nach von der Spitze der Komprimierungstabelle der Fig. 14 gelesen (Schritt n). Es wird verglichen, ob die Bitdaten "11" sind oder nicht (Schritt o). Wenn die Bitdaten "11" sind, werden die Komprimierungsbitmusterdaten in Fig. 14 der Reihe nach von oben gelesen und werden als die Umwandlungspunktdaten in Fig. 10 wiedergegeben (Schritt p). Wenn die Bitdaten nicht "11" sind, werden die Referenzbitmusterdaten 1 (wenn die Bitdaten "00" sind), die Referenzbitmusterdaten 2 (wenn die Bitdaten "01" sind) oder die Referenzbitmusterdaten 3 (wenn die Bitdaten "10" sind) als die Umwandlungsbitdaten in Fig. 10 wiedergegebenen (Schritt q).
"1" wird von dem Wert des Zählers subtrahiert (Schritt r). Die obigen Schritt n-r werden der Reihe nach wieder­ holt, bis der Wert des Zählers "0" wird (Schritt s). Somit werden die ersten Bitmuster A1-A20 der Fig. 9(A) aus den dritten Bitmustern C1-C20 der Fig. 9(C) wiedergegeben, um das ursprüngliche Fontmuster wiederzugeben (Schritt t).
Übrigens können, auch wenn die Beschreibung der dritten und vierten Ausführungsbeispiele für den Fall, in dem die er­ sten Bitmuster aus Spalteneinheiten zusammengesetzt sind, ge­ geben wurde, diese auch aus Zeileneinheiten zusammengesetzt sein.
Folglich erlaubt die vorliegende Erfindung die wirkungs­ volle Komprimierung eines Fontmusters.

Claims (6)

1. Verfahren zum Erzeugen von Fontdaten, dadurch gekenn­ zeichnet, daß es die folgenden Verfahrensschritte umfaßt:
Unterteilen eines durch eine Matrix in Einheiten von Spalten und Zeilen dargestellte Fontmusters, um eine Mehrzahl von ersten Bitmustern (A1-A20) zu erzeugen;
sequentielles Bilden von exklusiven logischen Summen von benachbarten ersten Bitmustern, um eine Mehrzahl von zweiten Bitmustern (B1-B20) zu bilden;
Bezeichnen von wenigstens einem oder mehreren Bitmustern, die häufig unter der Mehrzahl von zweiten Bitmustern auftreten, als Referenzbitmuster; und
Vergleichen und Speichern der Differenz jedes der Bitmuster der Mehrzahl von zweiten Bitmustern und des Referenzbitmusters und Speichern nur der Bitmuster unter den zweiten Bitmustern, die sich von dem Referenzbitmuster unter­ scheiden, wodurch gespeicherte Daten des Fontmusters erzeugt werden.
2. Verfahren zum Erzeugen von Fontdaten nach Anspruch 1, dadurch gekennzeichnet, daß das Referenzbitmuster aus einem Bitmuster besteht, das am häufigsten unter der Mehrzahl der zweiten Bitmuster auftritt.
3. Verfahren zum Erzeugen von Fontdaten nach Anspruch 1, dadurch gekennzeichnet, daß das Referenzbitmuster aus einer Mehrzahl von Bitmustern besteht, die ein Bitmuster enthalten, das am häufigsten unter der Mehrzahl der zweiten Bitmuster auftritt.
4. Verfahren zum Erzeugen von Fontdaten, dadurch gekenn­ zeichnet, daß es die folgenden Verfahrensschritte umfaßt:
Unterteilen eines durch eine Matrix in Einheiten von Spalten und Zeilen dargestellte Fontmusters in eine Mehrzahl von ersten Bitmustern (A1-A20);
Bilden von exklusiven logischen Summen von benachbarten ersten Bitmustern, um eine Mehrzahl von zweiten Bitmustern (B1-B20) zu bilden;
Bilden von exklusiven logischen Summen von benachbarten zweiten Bitmustern, um eine Mehrzahl von dritten Bitmustern (C1-C20) zu bilden;
Bezeichnen von wenigstens einem oder mehreren Bitmustern, die häufig unter der Mehrzahl von dritten Bitmustern auftreten, als Referenzbitmuster; und
Vergleichen und Speichern der Differenz jedes der Bitmuster der Mehrzahl von dritten Bitmustern und des Referenzbitmusters und Speichern nur der Bitmuster unter den dritten Bitmustern, die sich von dem Referenzbitmuster unter­ scheiden, wodurch gespeicherte Daten des Fontmusters erzeugt werden.
5. Verfahren zum Erzeugen von Fontdaten nach Anspruch 4, dadurch gekennzeichnet, daß das Referenzbitmuster aus einem Bitmuster besteht, das am häufigsten unter der Mehrzahl der dritten Bitmuster auftritt.
6. Verfahren zum Erzeugen von Fontdaten nach Anspruch 4, dadurch gekennzeichnet, daß das Referenzbitmuster aus einer Mehrzahl von Bitmustern besteht, die ein Bitmuster enthalten, das am häufigsten unter der Mehrzahl der dritten Bitmuster auftritt.
DE4322364A 1992-07-09 1993-07-05 Verfahren zum Erzeugen von Fontdaten Expired - Fee Related DE4322364C2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP4182121A JPH07109548B2 (ja) 1992-07-09 1992-07-09 フォントデータの形成方法
JP4182120A JPH07109547B2 (ja) 1992-07-09 1992-07-09 フォントデータの形成方法

Publications (2)

Publication Number Publication Date
DE4322364A1 true DE4322364A1 (de) 1994-04-21
DE4322364C2 DE4322364C2 (de) 2001-05-10

Family

ID=26501044

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4322364A Expired - Fee Related DE4322364C2 (de) 1992-07-09 1993-07-05 Verfahren zum Erzeugen von Fontdaten

Country Status (5)

Country Link
US (1) US5453938A (de)
KR (1) KR960014166B1 (de)
DE (1) DE4322364C2 (de)
GB (1) GB2268607B (de)
TW (1) TW247952B (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5644684A (en) * 1993-03-15 1997-07-01 Canon Kabushiki Kaisha High-efficiency compression suitable for use in character generation
AU3238295A (en) * 1995-08-03 1997-03-05 Michael L. Cole Recursive data compression
US6678688B1 (en) 2000-10-26 2004-01-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for composite font generation
US9319444B2 (en) * 2009-06-22 2016-04-19 Monotype Imaging Inc. Font data streaming
US8615709B2 (en) 2010-04-29 2013-12-24 Monotype Imaging Inc. Initiating font subsets
US9817615B2 (en) 2012-12-03 2017-11-14 Monotype Imaging Inc. Network based font management for imaging devices
WO2014100582A2 (en) 2012-12-21 2014-06-26 Monotype Imaging Inc. Supporting color fonts
EP2943894A2 (de) 2013-01-09 2015-11-18 Monotype Imaging Inc. Erweiterter texteditor
US9317777B2 (en) 2013-10-04 2016-04-19 Monotype Imaging Inc. Analyzing font similarity for presentation
US9691169B2 (en) 2014-05-29 2017-06-27 Monotype Imaging Inc. Compact font hinting
US10115215B2 (en) 2015-04-17 2018-10-30 Monotype Imaging Inc. Pairing fonts for presentation
US11537262B1 (en) 2015-07-21 2022-12-27 Monotype Imaging Inc. Using attributes for font recommendations
US11334750B2 (en) 2017-09-07 2022-05-17 Monotype Imaging Inc. Using attributes for predicting imagery performance
US10909429B2 (en) 2017-09-27 2021-02-02 Monotype Imaging Inc. Using attributes for identifying imagery for selection
WO2019089578A1 (en) 2017-10-30 2019-05-09 Monotype Imaging Inc. Font identification from imagery

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3535696A (en) * 1967-11-09 1970-10-20 Webb James E Data compression system with a minimum time delay unit
US3694813A (en) * 1970-10-30 1972-09-26 Ibm Method of achieving data compaction utilizing variable-length dependent coding techniques
KR850001657B1 (ko) * 1981-03-06 1985-11-06 야마모도 다꾸마 영상(影像) 데이터 변환법 및 문자 코우드와 문자패턴 변환장치
US4481602A (en) * 1981-04-06 1984-11-06 International Business Machines Corporation Font compression and decompression for character generation
GB2129546B (en) * 1982-11-02 1985-09-25 Cambridge Instr Ltd Image comparison
FR2538979B1 (fr) * 1982-12-29 1985-07-05 Telediffusion Fse Systeme de transcodage de matrices pour videographie a alphabet dynamiquement redefinissable
US4631521A (en) * 1984-12-31 1986-12-23 Wang Laboratories, Inc. Method and apparatus for differential run-length coding
JPS63170063A (ja) * 1987-01-07 1988-07-13 Brother Ind Ltd 印字装置
US5046025A (en) * 1988-07-27 1991-09-03 Bmc Software, Inc. Data transmission optimizer including multi-pass symbol buffer optimization, trial generation feature and MDT reset voting feature
US5005137A (en) * 1989-01-09 1991-04-02 Bmc Software, Inc. Method for optimizing data streams containing two-byte characters
US5272768A (en) * 1989-02-21 1993-12-21 Hewlett-Packard Company Blank strip font compression method and device, and resulting stored, decompressible font
US5179711A (en) * 1989-12-26 1993-01-12 International Business Machines Corporation Minimum identical consecutive run length data units compression method by searching consecutive data pair comparison results stored in a string
FR2660088B1 (fr) * 1990-03-26 1992-06-26 Arditti David Dispositif de condensation de donnees numeriques.

Also Published As

Publication number Publication date
KR940002734A (ko) 1994-02-19
GB2268607B (en) 1995-09-27
US5453938A (en) 1995-09-26
GB9314260D0 (en) 1993-08-18
DE4322364C2 (de) 2001-05-10
KR960014166B1 (ko) 1996-10-14
GB2268607A (en) 1994-01-12
TW247952B (de) 1995-05-21

Similar Documents

Publication Publication Date Title
DE4322364A1 (de) Verfahren zum Erzeugen von Fontdaten
DE2944822C2 (de)
DE3237393C2 (de) Verfahren zum Korrigieren der Gradation der Ausgangsdaten, zur Anwendung bei einem digitalen Bildverarbeitungssystem
DE3132225C2 (de) Einrichtung für die Adressierung gespeicherter Ergebniswerte bei einer schnellen Hadamard-Transformation
DE3326725A1 (de) Verfahren zur datenkomprimierung fuer zweidimensionale zeichenbilder
DE3416939A1 (de) Verfahren zur steuerung von betriebseinrichtungen
DE2625973A1 (de) Verfahren und anordnung zur redundanzvermindernden transformation von bildern
EP0241576B1 (de) Verfahren zur Verringerung der Datenmenge bei der Bildkodierung
DE2746969C2 (de) Einrichtung zum Vergleichen von Mustern
DE3345306A1 (de) Verfahren und vorrichtung zur verarbeitung von bilddaten
DE2805294C2 (de) Codierende Übertragungsanlage für Faksimile-Signale
DE2758151A1 (de) Einrichtung zum sortieren von datensaetzen
DE3638852A1 (de) Bildverarbeitungsgeraet und -verfahren
DE75349T1 (de) Verfahren und vorrichtung zur steuerung eines koppelfeldes.
DE19635758C1 (de) Verfahren und Vorrichtung zur rechnergestützten Generierung mindestens eines künstlichen Trainingsdatenvektors für ein neuronales Netz
DE69627391T2 (de) Verfahren und system zum durchführen einer booleschen operation auf bitketten unter benutzung einer maximalen bitscheibe
DE3410496C2 (de)
DE2054941A1 (de) Anordnung zur Auswahl von Datensätzen
DE2726198C2 (de) Einrichtung zur Störentkopplung zwischen einem Servo-Magnetkopf und einem Datenmagnetkopf
EP3812949A1 (de) Konfigurierbarer digitaler zwilling
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE3443272C2 (de) Verfahren zum Ausbreiten eines Fehlers in Daten und Fehlererkennungssystem
DE19732626C2 (de) Verfahren zum Verarbeiten eines komprimierten Datenstromes
DE3046972C2 (de) Steuerschaltung zum Erzeugen von Punktmusterdaten
DE1499286A1 (de) Datenbearbeitungsanlage

Legal Events

Date Code Title Description
8180 Miscellaneous part 1

Free format text: IM HEFT 2/94, SEITE 333, SP.2: DIE VEROEFFENTLICHUNG IST ZU STREICHEN DA KEINE SCHRIFT GEDRUCKT WURDE

8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: SEIKO PRECISION INC., TOKIO/TOKYO, JP

D2 Grant after examination
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee