DE69736649T2 - Schriftteilung für verschiedene Zeichengrössen - Google Patents

Schriftteilung für verschiedene Zeichengrössen Download PDF

Info

Publication number
DE69736649T2
DE69736649T2 DE69736649T DE69736649T DE69736649T2 DE 69736649 T2 DE69736649 T2 DE 69736649T2 DE 69736649 T DE69736649 T DE 69736649T DE 69736649 T DE69736649 T DE 69736649T DE 69736649 T2 DE69736649 T2 DE 69736649T2
Authority
DE
Germany
Prior art keywords
point size
point
size
character
output
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 - Lifetime
Application number
DE69736649T
Other languages
English (en)
Other versions
DE69736649D1 (de
Inventor
Peter Karow
John R. Portola Valley California MacMillan
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.)
Adobe Inc
Original Assignee
Adobe Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Systems Inc filed Critical Adobe Systems Inc
Application granted granted Critical
Publication of DE69736649D1 publication Critical patent/DE69736649D1/de
Publication of DE69736649T2 publication Critical patent/DE69736649T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/109Font handling; Temporal or kinetic typography

Description

  • Hintergrund
  • Diese Erfindung betrifft die Generierung bzw. Erzeugung des Beabstandens bzw. Schriftteilens von Zeichen bzw. Buchstaben für eine Ausgabe an Vorrichtungen, wie beispielsweise Display- bzw. Anzeigeschirmen, Laserdruckern, Photosetzern und Laserfilmaufnahmegeräten bei einem Bereich von Zeichen- bzw. Punktgrößen.
  • Ein Satz von Zeichen bzw. Buchstaben mit einem besonderen Design wird als "Schriftbild" bzw. "Schriftart" bezeichnet. Ein digitaler Font bzw. eine digitale Schriftart (hier einfach als ein "Font" erwähnt bzw. bezeichnet), wie beispielsweise irgendeiner der PostScript® Fonts, die von Adobe Systems Incorporated von Mountain View, Kalifornien, erhältlich sind, beinhaltet im allgemeinen Instruktionen bzw. Anweisungen (normalerweise gelesen und interpretiert durch Renderungs- bzw. Wiedergabeprogramme, die auf Computerprozessoren ablaufen) zum Rendern bzw. Wiedergeben von Zeichen bzw. Buchstaben in einer besonderen Schriftart bzw. einem besonderen Schriftbild. Ein digitaler Font speichert Konturen und "Andeutungen" bzw. "Hinweise" von Zeichen bzw. Buchstaben zusammen mit den sogenannten "Fontmetriken" des Fonts, welche sich auf das Beabstanden bzw. Schriftteilen von Schriftzeichen beziehen, um Wörter eines Texts auszubilden. Digitale Fontformate sind im Detail in der Literatur beschrieben. Siehe beispielsweise Peter Karow, Digital Typefaces, Springer Verlag, 1994, ISBN 3-540-56509-4, Seiten 139 ff. Wie hier verwendet, bezieht sich der Ausdruck "Zeichen" auf irgendeine Form eines Zeichens bzw. Buchstabens, einer Zahl, eines Symbol, eines Icons, einer Graphik, oder dgl., das als ein graphisches Element ausgegeben werden kann.
  • Das Aussehen einer Schriftart wird nicht nur durch das Aussehen von einzelnen bzw. individuellen Zeichen beeinflußt, sondern auch durch die Art und Weise, wie die Zeichen innerhalb eines Zeichenstrings bzw. einer Zeichenreihe beabstandet sind. Siehe beispielsweise Peter Karow, Font Technology, Springer Verlag, 1994, ISBN 3-540-57223-6, Seiten 173 ff. Demgemäß beinhalten Fonts, die ein proportionales Beabstanden unterstützen, häufig Abstandsmetriken, die Instruktionen für ein Definieren der Abstände zwischen den Zeichen bereitstellen.
  • Außerdem kann eine Textbe- bzw. -verarbeitungssoftware ein "Spurhalten" bzw. "Spurverfolgen" liefern, welches eine konstante kleine Menge an zusätzlichem Raum zwischen den Zeichen in einer Textausgabe bereitstellt. Wenn ein positiver oder negativer Spurhaltewert gewählt wird, wird diese Menge bzw. dieses Ausmaß unabhängig davon angewandt, welches die Schriftzeichen- bzw. Zeichenpaare sind oder die Zeichen- bzw. Punktgröße ist. Ein Spurhalten zieht nicht in Betracht, daß unterschiedliche Zeichenpaare unterschiedliche Mengen bzw. Größen von zusätzlicher Beabstandung erfordern.
  • Beabstandungs- bzw. Abstandsmetriken, die ein proportionales Beabstanden bzw. Schriftteilen ermöglichen, werden typischerweise für eine Ausgabe bei einer spezifischen Punktgröße erzeugt, traditionell 12 Punkt, und wenn eine Anwendung eine Ausgabe bei einer unterschiedlichen Punktgröße erfordert, wird das Beabstanden einfach linear skaliert bzw. im Maßstab durchgeführt. Dies wird als "traditionel les" Beabstanden bezeichnet. Unglücklicherweise erzeugt ein lineares Skalieren basierend auf Abstandsmetriken für eine einzelne Referenz- bzw. Bezugspunktgröße nicht konsequent gute Ergebnisse. Dies deshalb, weil ein ordnungsgemäßes bzw. richtiges Beabstanden zwischen einem Zeichenpaar mit unterschiedlichen Schriftbildern bzw. Schriftarten, unterschiedlichen Paaren von Zeichen, und unterschiedlichen Punktgrößen variieren kann. Im allgemeinen fordern für eine klare Ausgabe Zeichen bei kleineren Punktgrößen proportional größere Abstände zwischen den Zeichen, als Zeichen dies bei größeren Punktgrößen tun.
  • Existierende Techniken zum Beabstanden jedes Zeichenpaars basierend auf den spezifischen Merkmalen bzw. Eigenschaften dieses Zeichenpaars sind kostspielig zu verwenden. Ein Verfahren, bezeichnet als "automatisches Kerning bzw. Unterschneiden", berechnet ein Beabstanden zwischen spezifischen Zeichenpaaren an Ausgabepunktgrößen auf Verlangen, innerhalb eines Anwendungsprogramms wie Adobe PageMaker. Traditionell bezieht sich ein "Kerning" auf eine Technik eines Einstellens des Beabstandens nur von spezifischen Zeichenpaaren (bezeichnet als "kritische bzw. entscheidende Zeichenpaare") basierend auf den Formen der Zeichenanschläge. Ein automatisches Kerning erkennt, daß alle Paare kritische Zeichenpaare sind und spezielle Beabstandungserfordernisse aufweisen, und erkennt auch, daß ein breiteres Beabstanden im allgemeinen für Zeichen erforderlich ist, die bei kleineren Punktgrößen ausgegeben werden, während ein engeres Beabstanden allgemein für Zeichen erforderlich ist, die bei größeren Punktgrößen ausgegeben werden. Ein automatisches Kerning wird in größerem Detail in dem gemeinsam übertragenen europäischen Patent EP 0 465 704 B1 erklärt, welches ein Verfahren zum automatischen Generieren, für einen Font bei einer Punktgröße, von Kerningwerten für einen Satz von kritischen Zeichenpaaren und Seitenränderwerten für alle Zeichen des Fonts offenbart.
  • Jedoch erfordert ein automatisches Kerning eine Analyse des spezifischen Fonts, der spezifischen Punktgröße, und der spezifischen Zeichenkombination jedesmal, wenn es angewendet wird. Demgemäß erfordert es häufig mehr Be- bzw. Verarbeitungszeit und Energie bzw. Leistung, als vernünftigerweise verfügbar ist.
  • Zusammenfassung
  • Allgemein liefert in einem Aspekt die Erfindung ein Computerimplementiertes Verfahren zum Beabstanden bzw. Teilen eines Paars von Zeichen bzw. Buchstaben, die von einem digitalen Font bzw. einer digitalen Schriftart für eine benachbarte Anzeige bzw. Darstellung an einer Ausgabepunktgröße gerendert bzw. wiedergegeben werden, wo die Schriftart erste Abstandsmetriken für eine kleine Punktgröße nicht größer als die Ausgabepunktgröße und für eine unterschiedliche große Punktgröße von nicht weniger als der Ausgabepunktgröße aufweist. Das Verfahren enthält die Schritte eines Berechnens einer Trennung an der ausgegebenen bzw. Ausgabepunktgröße durch ein Interpolieren der ersten Abstandsmetriken der kleinen Punktgröße und der ersten Abstandsmetriken der großen Punktgröße für das Paar von Zeichen oder eines von diesen, und eines Beabstandens des Paars als eine Funktion der berechneten Trennung.
  • Bevorzugte Ausführungsformen der Erfindung beinhalten eines oder mehrere der folgenden Merkmale. Die ersten Abstandsmetriken sind Kerning- bzw. Unterschneidungswerte. Die ersten Abstandsmetriken sind rechte Seitenränder und der Schritt eines Interpolierens wird an die rechten Seitenränder eines Zeichens des Paars angewandt; der Font weist als zweite Abstandsmetriken linke Seitenränder für die kleine Punktgröße und linke Seitenränder für die große Punktgröße auf; und der Schritt eines Berechnens der Trennung beinhaltet ein Interpolieren der rechten Seitenränder der kleinen Punktgröße und der rechten Seitenränder der großen Punktgröße für eines der Zeichen und ein Interpolieren der linken Seitenränder der kleinen Punktgröße und der linken Seitenränder der großen Punktgröße für das andere der Zeichen. Die kleine Punktgröße ist nicht größer als 12 Punkt und die große Punktgröße ist nicht weniger als 12 Punkt. Die Schriftart besitzt erste Abstandsmetriken für wenigstens drei unterschiedliche Punktgrößen; beispielsweise weist die Schriftart erste Abstandsmetriken für Punktgrößen von 6 Punkt (pt), 12 Punkt (pt) und 72 Punkt (pt) auf. Die ersten Abstandsmetriken sind linke Seitenränder, rechte Seitenränder oder Kerning- bzw. Unterschneidungswerte. Der Schritt eines Interpolierens beinhaltet ein Berechnen einer linearen Interpolation der ersten Abstandsmetriken der kleinen Punktgröße und der großen Punktgröße. Der Schritt eines Berechnens der Trennung beinhaltet ein Berechnen der Summe eines interpolierten rechten Seitenrands für ein Zeichen des Paars plus eines interpolierten linken Seitenrands für das andere Zeichen des Paars plus eines interpolierten Unterschneidungswerts für das Paar.
  • Allgemein liefert in einem anderen Aspekt die Erfindung ein Computer-implementiertes Verfahren zum Beabstanden bzw. Teilen eines Paars von Zeichen bzw. Buchstaben, die von einem digitalen Font bzw. einer digitalen Schriftart für eine benachbarte Anzeige bzw. Darstellung an einer Ausgabe punktgröße gerendert werden. Das Verfahren beinhaltet die Schritte eines Etablierens bzw. Einrichtens eines Satzes von großen Punktgrößen; eines Aufbauens bzw. Einrichtens eines Satzes von kleinen Punktgrößen, von denen jede kleiner als irgendeine der großen Punktgrößen ist; eines Berechnens des Abstands für das Paar als eine Abstandsfunktion der Ausgabepunktgröße, wo die Funktion einen Abstand für jede der kleinen Punktgrößen berechnet, der größer im Verhältnis zur Punktgröße ist als der Abstand, der durch die Funktion für irgendeine der großen Punktgrößen berechnet wird; und eines Anzeigens des Paars von Zeichen mit dem berechneten Abstand.
  • Bevorzugte Ausführungsformen der Erfindung beinhalten eines oder mehrere der folgenden Merkmale. Die Abstands- bzw. Beabstandungsfunktion ist für ein Punktgrößenargument definiert, das sich wenigstens von 6 Punkt bis 72 Punkt erstreckt. Eine Punktgröße von 12 Punkt trennt den Satz kleinerer Punktgrößen vom Satz größerer Punktgrößen.
  • Allgemein liefert in einem anderen Aspekt die Erfindung ein Computer-implementiertes Verfahren eines Generierens bzw. Erzeugens eines Ausgabebeabstandens für ein Zeichen bei einer Ausgabepunktgröße von einem digitalen Font, der Abstandsmetriken aufweist, die mehrere Sätze von linken und rechten Seitenrandwerten beinhalten, jeden Satz für eine Ausgabe bei einer unterschiedlichen Punktgröße. Das Verfahren beinhaltet die Schritte eines Auswählens für das Zeichenpaar eines ersten Paars von linken und rechten Seitenrandwerten und eines zweiten Paars von linken und rechten Seitenrandwerten von den Abstandsmetriken für eine erste Punktgröße bzw. eine zweite Punktgröße, wobei die erste Punktgröße nicht größer als die Ausgabepunktgröße ist und die zweite Punktgröße nicht kleiner als die Ausgabepunktgröße ist; eines Generierens bzw. Erzeugens eines linken Seitenrandwerts für das Zeichen an der Ausgabepunktgröße durch ein Interpolieren des ersten linken Seitenrandwerts und des zweiten linken Seitenrandwerts zu der Ausgabepunktgröße; und eines Generierens eines rechten Seitenrandwerts für das Zeichen an der Ausgabepunktgröße durch ein Interpolieren des ersten rechten Seitenrandwerts und des zweiten rechten Seitenrandwerts zu der Ausgabepunktgröße.
  • Bevorzugte Ausführungsformen der Erfindung beinhalten eines oder mehrere der folgenden Merkmale. Die Paare von Seitenrandwerten beinhalten ein Paar von Seitenrandwerten für eine Ausgabe mit bzw. bei 12 Punkt und ein Paar von Seitenrandwerten für eine Ausgabe bei 6 Punkt oder bei 72 Punkt. Die Abstandsmetriken umfassen bzw. enthalten Paare von Seitenrandwerten für wenigstens drei unterschiedliche Punktgrößen. Die Paare von Seitenrandwerten enthalten ein Paar für eine Ausgabe bei 6 Punkt, ein Paar für eine Ausgabe bei 12 Punkt und ein Paar für eine Ausgabe bei 72 Punkt. Das Interpolieren ist linear.
  • Allgemein liefert in einem anderen Aspekt die Erfindung ein Computer-implementiertes Verfahren eines Generierens bzw. Erzeugens eines Ausgabebeabstandens für ein Zeichenpaar bei einer Ausgabepunktgröße von einem digitalen Font, der Abstandsmetriken aufweist, die mehrere Sätze von Kerning- bzw. Unterschneidungswerten beinhalten, jeden Satz für eine Ausgabe bei einer unterschiedlichen Punktgröße. Das Verfahren beinhaltet die Schritte eines Auswählens für das Zeichenpaar eines ersten Unterschneidungswerts und eines zweiten Unterschneidungswerts von den Abstandsmetriken für eine erste Punktgröße bzw. eine zweite Punktgröße, wobei die erste Punktgröße nicht größer als die Ausgabepunktgröße ist und die zweite Punktgröße nicht kleiner als die Ausgabepunktgröße ist; und eines Generierens eines Unterschneidungswerts für das Zeichenpaar durch ein Interpolieren des ersten Unterschneidungswerts und des zweiten Unterschneidungswerts zu der Ausgabepunktgröße.
  • Bevorzugte Ausführungsformen der Erfindung beinhalten eines oder mehrere der folgenden Merkmale. Die Sätze von Unterschneidungswerten beinhalten einen Satz von Kerning- bzw. Unterschneidungswerten für eine Ausgabe bei 12 Punkt und einen Satz von Unterschneidungswerten für eine Ausgabe bei 6 Punkt oder bei 72 Punkt. Die Abstandsmetriken enthalten Unterschneidungswerte für wenigstens drei unterschiedliche Punktgrößen. Die Sätze von Unterschneidungswerten beinhalten einen Satz zur Ausgabe bei 6 Punkt, einen Satz zur Ausgabe bei 12 Punkt und einen Satz zur Ausgabe bei 72 Punkt. Das Interpolieren ist linear.
  • Allgemein liefert in einem anderen Aspekt die Erfindung einen Gegenstand einer Herstellung, wie dies in Anspruch 20 spezifiziert ist.
  • Bevorzugte Ausführungsformen der Erfindung beinhalten eines oder mehrere der folgenden Merkmale. Das Computerprogramm beinhaltet einen Satz von linken Seitenrändern bei einer unterschiedlichen dritten Punktgröße, beinhaltend einen linken Seitenrand für das erste Zeichen, und einen Satz von rechten Seitenrändern an bzw. bei der dritten Punktgröße, beinhaltend einen rechten Seitenrand für das erste Zeichen. Das Computerprogramm beinhaltet Buchstabenrenderinstruktionen bzw. -anweisungen zum Rendern des Aussehens eines zweiten Zeichens; einen Satz von Unterschneidungs- bzw.
  • Kerningwerten an einer ersten Punktgröße, beinhaltend einen Unterschneidungswert für ein Paar, bestehend aus dem ersten Zeichen, gefolgt durch das zweite Zeichen; und einen Satz von Unterschneidungswerten an einer unterschiedlichen zweiten Punktgröße, enthaltend einen Unterschneidungswert für das Paar. Das Computerprogramm beinhaltet einen Satz von Unterschneidungswerten bei einer unterschiedlichen dritten Punktgröße, beinhaltend einen Unterschneidungswert für das Paar.
  • Allgemein liefert in einem anderen Aspekt die Erfindung einen Gegenstand einer Herstellung, wie dies in Anspruch 24 spezifiziert ist.
  • Bevorzugte Ausführungsformen der Erfindung beinhalten eines oder mehrere der folgenden Merkmale. Das Computerprogramm beinhaltet einen Satz von Unterschneidungswerten bei einer unterschiedlichen dritten Punktgröße, beinhaltend einen Unterschneidungswert für das Paar.
  • Unter den Vorteilen der Erfindung sind die Folgenden. Die Erfindung stellt eine gute Lesbarkeit für Text über einen wesentlichen Bereich von kleinen bis großen Punktgrößen bereit, ohne eine Handeinstellung einer Schriftzeichenbeabstandung zu erfordern. Die Erfindung stellt ein Punktgrößen-variables Kerning bzw. Unterschneiden von Zeichenpaaren bereit. Die Erfindung stellt Punktgrößen-variable Seitenränder für Zeichen bereit. Die Erfindung stellt ein Punktgrößen-variables Unterschneiden von Zeichen gegen das Zwischenraum- bzw. Abstandszeichen bereit, um ein visuell attraktives Beabstanden zwischen Worten bereitzustellen. Die Erfindung stellt eine visuell gefällige Ausrichtung eines vertretbaren Textes an einen linken und rechten Rand zur Verfügung bzw. bereit, um zu erzeugen, was als "optische Ränder" bezeichnet wird.
  • Die Erfindung kann über ein Verfolgen bzw. Spurhalten angewandt werden. Die Erfindung kann verwendet werden mit und als eine Erweiterung von existierenden digitalen Fonts. Die Erfindung kann implementiert werden, um ihre Vorteile bei sehr geringen Kosten in der Ausführungszeit zu erzielen.
  • Für ein vollständigeres Verständnis der Natur bzw. Beschaffenheit und weiterer Vorteile der Erfindung sollte auf die detaillierte Beschreibung Bezug genommen werden, die in Verbindung mit den begleitenden Zeichnungen gemacht wird.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Diagramm, das eine Vorrichtung illustriert, die für die vorliegende Erfindung geeignet ist.
  • 2 illustriert Abstandsmetriken, die in der Erfindung verwendet werden können.
  • 3 illustriert eine Anwendung eines negativen Kernings bzw. Unterschneidens.
  • 4a und 4b illustrieren ein Beabstanden von Zeichenpaaren.
  • 5a und 5b vergleichen das Aussehen eines Schriftteilens bzw. Beabstandens, das durch ein Verfahren der Erfindung mit einem herkömmlichen Beabstanden an drei Punktgrößen erzeugt wird.
  • 6 ist ein Diagramm, das Elemente eines Fonts der vorliegenden Erfindung illustriert.
  • 7 (welche aus 7a, 7b, 7c und 7d besteht) illustriert die Ergebnisse eines Anwendens der Erfindung auf vier Zeichenpaare bei einem Bereich von Punktgrößen in einer Helvetica Schriftart.
  • 8 (welche aus 8a, 8b, 8c und 8d besteht) illustriert die Ergebnisse eines Anwendens der Erfindung auf vier Zeichenpaare bei einem Bereich von Punktgrößen in einer Times Roman Schriftart.
  • Detaillierte Beschreibung
  • Bezugnehmend auf 1 beinhaltet eine Vorrichtung, die zum Implementieren eines Verfahren für ein Punktgrößen-variables Beabstanden von Zeichen bzw. Buchstaben für eine Ausgabe geeignet ist, einen Computerprozessor 20, wie beispielsweise einen Mikroprozessor mit integriertem Schaltkreis, und einen Speicher 22, wie beispielsweise einen Halbleiter RAM oder ROM, zum Speichern von Instruktionen bzw. Anweisungen und Daten, die durch den Prozessor 20 ausgeführt und verwendet werden. Der Prozessor 20, der unter einer Regelung bzw. Steuerung eines Programms 24 im Speicher 22 läuft, weist einen Zugang bzw. Zutritt zu einem Font bzw. Zeichensatz 26 auf, der in einer maschinenlesbaren Form im Speicher 22 oder auf einer gesonderten Speichervorrichtung 28, wie beispielsweise einem Festplattenlaufwerk oder einer entnehmbaren Diskette gespeichert ist. Der Font beinhaltet einen Satz von Instruktionen, die durch ein Programm 24 gerendert bzw. wiedergegeben werden können, das durch den Prozessor 20 abläuft, welcher direkt oder indirekt mit einer eine Ausgabe erzeugenden Vorrichtung 30 gekoppelt ist, wie beispielsweise einem Display- bzw. Anzeigeschirm, einer Laserdruckmaschine, einem Photosatzsystem oder Laserfilmaufnahme- bzw. -wiedergabegerät. Der Prozessor 20 und der Speicher 22 können in einer peripheren Vorrichtung bzw. einem Peripheriegerät eingebettet sein, wie beispielsweise einem PostScript Laserdrucker. Weil er einen Satz von Instruktionen beinhaltet, ist der Font selbst auch ein Computerprogramm.
  • Die hier beschriebenen Verfahren können leicht in Hardware, Firmware oder Äquivalenten, wie beispielsweise anwendungsspezifischen integrierten Schaltungen (ASICs) implementiert sein, oder in einem Computerprogrammprodukt, das greifbar in einer Computerprogramm-Speichervorrichtung zur Ausführung durch einen Computerprozessor eingebettet ist. Speichervorrichtungen, die zum greifbaren Verkörpern der Computerprogramminstruktionen geeignet sind, die die hier beschriebenen Verfahren implementieren, beinhalten alle Formen von nicht flüchtigem Speicher, enthaltend Halbleiter-Speichervorrichtungen, wie beispielsweise EPROM, EEPROM, und Flashspeichervorrichtungen, Magnetplatten, wie beispielsweise internen Festplatten und entnehmbaren Platten, magnetoptischen Platten, und CD-ROM Scheiben bzw. Platten.
  • Bezugnehmend auf 2 sind die Gesamtbreite 36 und linker und rechter Seitenrand 32 und 34 traditionelle Parameter (Werte), die für die Zeichen eines Fonts definiert sind und als Fontmetriken gespeichert sind. Traditionell sind bzw. werden diese Werte nur für eine Punktgröße definiert und für diese Punktgröße optimiert, welche im allgemeinen 12 Punkte (pt). ist.
  • Wenn nur Seitenränder verwendet werden, erhalten einige Zeichenpaare einen Abstand, der zu breit ist, während andere einen Abstand erhalten, der zu eng ist. Um dies zu korrigieren, werden Kerning- bzw. Unterschneidungstabellen verwendet, welche Korrekturwerte für kritische bzw. entscheidende Zeichenpaare aufweisen. Allgemein resultiert eine Verwendung von Unterschneidungstabellen in einem Spalt zwischen zwei Zeichen, der kleiner ist als derjenige, der aus einem Verwenden der konstanten Seitenränder der Zeichen resultieren würde. 3 illustriert die Anwendung eines negativen Unterschneidens – Unterschneiden, das einen Abstand zwischen Zeichen subtrahiert – angewandt auf das Zeichenpaar 'AV' (negativer Unterschneidungsabstand 38) und das Zeichenpaar 'Vo' (negativer Unterschneidungsabstand 39).
  • Digitale Fonts weisen allgemein eine einzige Unterschneidungstabelle auf, die 200 bis 600 Kerning- bzw. Unterschneidungswerte für ausgewählte Zeichenpaare enthalten kann, die für eine Punktgröße optimiert sind. Dies ist nicht ausreichend, um korrektes Beabstanden bzw. Schriftteilen für alle Punktgrößen bereitzustellen.
  • Bezugnehmend auf 4a und 4b können die Überlegungen, die bei einem Anwenden des Verfahrens auf ein Punktgrößen-variables Beabstanden involviert sind, unter Bezugnahme auf vier veranschaulichende bzw. illustrative Zeichenpaare beschrieben werden: HH, OO, AV und W. Diese vier Paare weisen zwei vertikale Striche bzw. Anschläge (HH), zwei entgegengesetzte runde Striche (OO), zwei parallele diagonale Striche (AV), und zwei entgegengesetzte diagonale Striche (VV) auf, die die Grenzen ihrer jeweiligen Zeichenzwischenräume ausbilden. Diese Zeichenzwischenräume sollten sich unterschiedlich verhalten, wenn die Punktgröße für ein Schreiben von klein auf groß geändert wird, um ein harmonisches Aussehen bei allen Punktgrößen zu erzielen, wie dies durch die Figuren illustriert wird.
  • 4a zeigt die vier Zeichenpaare mit einem traditionellen Beabstanden bei den drei Punktgrößen von 6 Punkt, 12 Punkt und 72 Punkt. Zum Vergleich zeigt 4b die gleichen Zeichenpaare mit einem Punktgrößen-variablen Beabstanden bei den gleichen Punktgrößen. Wie aus den Figuren ersichtlich ist, sind alle vier Paare gut in 4b beabstandet, während in 4a einige Paare zu weit, und einige zu nahe beisammen beabstandet sind. Insbesondere zeigen 4a und 4b das Folgende:
    • ∙ HH ist weiter bei niedrigeren und enger bei größeren Punktgrößen. Der weiße Zeichenzwischenraum weist die Form eines Rechtecks auf. HH weist üblicherweise keinen Unterschneidungswert zugeordnet bzw. zugewiesen auf.
    • ∙ OO ist auch breiter bei niedrigeren, und enger bei größeren Punktgrößen, aber insgesamt ist OO enger in bezug auf die Zeichenbreiten beabstandet als HH, weil die zwei gegenüberliegenden runden Schriftkegel mehr weißen Raum an der Oberseite und an dem Boden belassen. Der weiße Zeichenzwischenraum weist die Form einer -Sanduhr auf. OO weist üblicherweise keinen Unterschneidungswert zugeordnet auf; ein Beabstanden wird nur durch die linken und rechten Seitenränder erzielt.
    • ∙ AV muß immer negativ unterschnitten sein. Die Trennung könnte schmäler bei größeren Punktgrößen, abhängig vom Stil des Schriftbilds bzw. der Schriftart sein. Die Form des weißen Zeichenzwischenraums ist ein Parallelogramm.
    • ∙ VV muß positiv bei niedrigeren Punktgrößen unterschnitten sein. Über 72 Punkt wird die Trennung relativ enger. Die Form des weißen Zeichenzwischenraums ist ein Dreieck.
  • Diese Beispiele zeigen vier unterschiedliche Formen als Zeichenzwischenraum: Rechteck, Sanduhr, Parallelogramm und Dreieck. Der Regel eines Schriftsetzers folgend – je gleichmäßiger die Farbe einer Seite von Text, umso müheloser kann sie gelesen werden – würde man die gleiche Fläche allen unterschiedlichen Zeichenzwischenräumen geben. Dies ist buchstäblich nicht möglich oder wünschenswert, wie dies nun beschrieben wird.
  • Das Rechteck zwischen HH ist bzw. wird als der normalisierende Bereich für den Zweck der folgenden Vergleiche genommen. Wenn dieser Bereich bzw. diese Fläche für VV zu eigen gemacht wird, würde der Bereich des Dreiecks zu klein sein und verursachen, daß die Buchstaben überlappen. Dagegen würde AV zu schmal aussehen, weil menschliche Leser gewohnt sind, dieses Paar mit einem relativ großen weiten Zeichenzwischenraum zu sehen. Ähnlich würde OO zu eng aussehen, wenn der Sanduhrbereich in der Größe zum HH Rechteck genormt würde. Wie mit bzw. bei dem Paar VV muß man eine bestimmte minimale Trennung zwischen den zwei Os beibehalten. Auch scheint es, daß die weißen Bereiche bzw. Flächen der Sanduhr an der Oberseite und am Boden nicht zu ihrem mathematischen Anteil zum wahrgenommenen weißen Zwischenraum beitragen. Eine Berücksichtigung von lediglich diesen wenigen Beispielen macht es klar, daß ein korrektes unterschnittenes Beabstanden auch auf einem optischen Eindruck und einer Wahrnehmung basiert und nicht nur auf mathematischen Gleichungen, die die Flächen von Zwischenräume normen.
  • Bezugnehmend auf 6 beinhaltet ein Font 26, der in dem Verfahren eines Punktgrößen-variablen Beabstandens zu verwenden ist, zusätzlich zu den ein Zeichen rendernden bzw. wiedergebenden Instruktionen, Hinweisen bzw. Andeutungen und Tabellen, die normalerweise in einem Font gefunden werden, wenigstens einen zusätzlichen Satz von Beabstandungs- bzw. Abstandsmetriken. Die Ausführungsform, die zu beschreiben ist, verwendet einen Font mit drei Unterschneidungstabellen 50, bezeichnet K6, K12 und K72, und drei Sätze von Seitenrändern 52, bezeichnet als L6 und R6, L12 und R12, und L72 und R72. Diese Metriken sind besonders beabstandet, unterschnitten und werden für Bezugs- bzw. Referenzpunktgrößen von 6 Punkt, 12 Punkt bzw. 72 Punkt erzeugt. Äquivalent bzw. gleichwertig werden mehrere Abstandsmetriken, beinhaltend die mehreren Unterschneidungswerte und die mehreren Seitenrandwerte in einer oder mehreren mehrwertigen Tabelle(n) oder anderen Datenstruktur(en) gehalten.
  • Der Ausdruck "Abstandsmetriken" wird hier verwendet, um Parameter einzuschließen, die die Zeichenbeabstandung für einen Font beschreiben. Die spezifischen Parameter und das Format, in welchem sie repräsentiert werden, können variieren. Die Werte für die Abstandsmetriken-Parameter können durch irgendein geeignetes Verfahren bestimmt werden. Beispielsweise können die Unterschneidungswerte für Zeichenpaare bei einer Referenzpunktgröße händisch oder durch das oben beschriebene automatische Unterschneidungsverfahren bestimmt werden. Weiterhin können die Werte der Abstandsmetriken in verschiedenen Formaten dargestellt werden, ohne die Anwendung des Verfahrens eines Punktgrößen-variablen Beabstandens zu beeinflussen.
  • Wie es herkömmlich bzw. konventionell ist, werden ein Beabstanden und andere Fontmetriken in sogenannten "Einheiten" gegeben. Eine Einheit ist ein Tausendstel bzw. 1/1000 eines Punkts, oder ungefähr 1/72000 eines Zolls. In einer Ausführungsform enthalten die metrischen bzw. Metriksätze für 12 Punkt (K12, L12 und R12) absolute Beabstandungswerte in Einheiten, während die Sätze für 6 Punkt und 72 Punkt Beabstandungswerte enthalten, die als Differenzen von den Werten für 12 Punkt ausgedrückt sind. Die Unterschneidungswerte dehnen den Raum zwischen den Zeichen aus (wenn positiv) oder verengen bzw. kontrahieren ihn (wenn negativ). Differenzen bzw. Unterschiede werden aus Gründen einer Bequemlichkeit und für eine Geschwindigkeit in den Berechnungen verwendet, wie dies beschrieben werden wird.
  • Die Abstandsmetriken (die Unterschneidungs- und Seitenrandwerte enthalten) können automatisch durch Anwenden des automatischen Unterschneidungsverfahrens des oben zitierten Patents ( EP 0 465 704 B1 ) an den Font mehrere Male – beispielsweise einmal für jede der Punktgrößen 6 Punkt, 12 Punkt und 72 Punkt erzeugt werden. Alternativ können die Metriken händisch erzeugt werden oder automatisch und dann händisch fein eingestellt werden.
  • In einer Ausführungsform beinhalten die Abstandsmetriken Unterschneidungswerte für Zeichen, die mit dem Zwischenraum- bzw. Abstandszeichen gepaart sind. Eine Verwendung von derartigen Abstandsunterschneidungswerten ist vorteilhaft beim Beabstanden von Worten und beim Erhalten bzw. Erzielen von visuell gefälligen Rändern für einen zulässigen Text. Beispielsweise kann man an einem zulässigen linken Rand das erste Zeichen der Zeile des Texts gegen ein Ab standszeichen unterschneiden, um das Zeichen zu plazieren, um einen optischen Rand zu erzielen. Ohne Unterschneiden oder mit einem Unterschneidungswert von null wird der linke Rand der gesamten Breite des Textzeichens auf dem linken Rand plaziert. Wenn der Unterschneidungswert negativ ist, wird das Zeichen nach links verschoben; wenn positiv, wird es nach rechts verschoben. Ähnlich kann das letzte Zeichen einer Zeile gegen ein Abstandszeichen unterschnitten werden, um das Textzeichen richtig an einem zulässigen rechten Rand zu plazieren. An einem rechten Rand verschiebt ein negativer Unterschneidungswert das letzte Textzeichen nach rechts und ein positiver Wert verschiebt es nach links.
  • Die Ausführungsform des Verfahrens eines Punktgrößen-variablen Beabstandens, das beschrieben werden wird, interpoliert zu der spezifizierten Ausgabepunktgröße basierend auf zwei Sätzen von Abstandsmetriken: dem Satz für Punktgröße 12 Punkt, und einem der Sätze für Punktgröße 6 Punkt oder 72 Punkt, welcher auch immer auf der gleichen Seite von 12 Punkt wie die Ausgabepunktgröße ist. Beispielsweise wird ein Beabstanden für ein Zeichenpaar bei einer Ausgabepunktgröße von 9 Punkt von den Abstandsmetriken für Punktgrößen 6 Punkt und 12 Punkt interpoliert.
  • Verschiedene Methoden einer Interpolation können verwendet werden, und eine Auswahl eines spezifischen Verfahrens kann von den Erfordernissen der Anwendung abhängen, ebenso wie von anderen Variablen, beinhaltend das Schriftbild bzw. die Schriftart, das Format der Sätze von Abstandsmetriken, die Be- bzw. Verarbeitungsleistung, die für ein Erzeugen einer Ausgabe verfügbar ist, oder den Be- bzw. Verarbeitungszeiterfordernissen. In den folgenden Absätzen wird ein ein faches und ausreichendes lineares Interpolationsverfahren beschrieben.
  • Wie erwähnt worden ist, werden drei Sätze von rechten Seitenrandwerten als R6, X12 und X72 bezeichnet; drei Sätze von linken Seitenrandwerten werden als L6, L12 und L72 bezeichnet; und drei Sätze von Kerning- bzw. Unterschneidungswerten werden als K6, K12 und K72 bezeichnet. Für eine Ausgabepunktgröße von X werden Abstandsmetrikenwerte, die als RX, LX und KX erwähnt werden, berechnet, und das Beabstanden für ein spezifisches Zeichenpaar C1C2 wird berechnet als die Summe RX(C1) + LX(C2) + KX (C1C2).
  • Für eine Ausgabepunktgröße X, welche nicht eine ganze Zahl sein muß, wird ein Interpolationsfaktor F durch Anwenden der folgenden Regeln berechnet.
  • Figure 00190001
  • Alternativ kann die Interpolation so erweitert werden, daß der Faktor F für die Punktgrößen weniger als 6 Punkt größer als 1 ist und der Faktor F für Punktgrößen größer als 72 Punkt größer als 1 ist.
  • Der Interpolationsfaktor F kann entweder, wie benötigt, während einer Ausführung einer Anwendung berechnet werden, oder Interpolationsfaktoren können vorab für einen Bereich von Ausgabepunktgrößen berechnet werden und in einer Nachschlagtabelle gespeichert werden. In jedem Fall werden für eine lineare Interpolation, sobald der Interpolationswert F bestimmt ist, Werte für RX, LX und KX durch eine lineare Interpolation von zwei Sätzen von Abstandsmetriken berechnet. Die folgenden Gleichungen (2) stellen eine lineare Interpolation für Ausgabepunktgrößen zwischen 6 Punkt und 12 Punkt oder zwischen 12 Punkt und 72 Punkt bereit, mit einer linearen oder konstanten Extrapolation für Punktgrößen geringer als 6 Punkt oder größer als 72 Punkt. In diesen Gleichungen beziehen sich die Variablen RY, LY, und KY auf den Außenseitensatz von Abstandsmetriken: R6, L6 und K6 wenn x < 12; oder R72, L72 und K72 wenn X > 12. (F = 0, wenn X = 12). RX = R12 + F × RY LX = L12 + F × LY KX = K12 + F × KY
  • Der Bereich von wahrscheinlich vernünftigen Ausgabepunktgrößen läuft von 4 Punkt (sehr schwer zu lesen) bis 200 Punkt (Postertyp, sehr selten verwendet), aber ein gewöhnlicher Arbeitsbereich ist von 8 Punkt bis 24 Punkt. Die drei Punktgrößen (6 Punkt, 12 Punkt und 72 Punkt) wurden als optimal in bezug auf Speichererfordernisse und Plazierung für eine Interpolation für diesen üblichen Bereich gewählt. Andere Wahlen für die Punktgrößen und/oder eine unterschiedliche Anzahl von Punktgrößen könnte für eine Interpolation verwendet werden, wie andere, nicht lineare Interpolationsverfahren bzw. -methoden verwendet werden könnten.
  • Die Seitenrandwerte (L6, L12 usw.) sind herkömmlicherweise in einer Tabelle (Feld bzw. Array) gespeichert und durch Zeichenzahl bzw. -nummer adressiert, d.h. durch die interne Darstellung eines Buchstabens oder anderen Zeichens in einem digitalen Alphabet, welches normalerweise in der Größenordnung von 300 Zeichen aufweist. Normalerweise würde erwartet werden, daß eine Unterschneidungstabelle, die auf einer Platte gespeichert ist oder mit einem Dokument übertragen wird, als Teil eines Fonts, beispielsweise Werte für nur ungefähr 3000 kritische bzw. entscheidende Zeichenpaare aufweist (3000 × 2 = 6 K Bytes), so daß irgendeine von verschiedenen Techniken verwendet werden kann, um die erforderliche Plattenspeicherung oder Datenübertragungszeit bei den Kosten einer gewissen Extrabe- bzw. -verarbeitung zu verringern. In einer derartigen Technik wird ein Satz von Unterschneidungsklassen definiert und in einer Tabelle oder einer anderen geeigneten Datenstruktur gespeichert, um anzugeben, wenn akzentuierte bzw. betonte Zeichen die Unterschneidungswerte von ihren Basiszeichen erben, wodurch die Anzahl von Zeichenpaaren verringert wird, die gespeichert werden müssen. Beispielsweise würde beim Definieren einer Klassenunterschneidungstabelle erkannt werden, daß die Unterschneidung für die Paare ÂT, A .T, ÅT, Á und ÀT die gleiche ist wie für das Paar AT, während die Unterschneidung für Te nicht die gleiche ist wie für Tè, Té, Tê oder Te.
  • Die Unterschneidungswerte (K6 usw.) können bei einer Laufzeit als eine erweiterte Matrix gespeichert werden, die durch ein Paar von Zeichenzahlen adressiert wird, welche für ein Alphabet von 300 Zeichen ein Kontingent von 300 × 300 × 2 (ungefähr 200 K) Bytes an Speicher erfordern würde, was in einem modernen Personal Computer vernünftig bzw. annehmbar ist. In einer alternativen Ausführungsform ist die Laufzeitmatrix so bemessen, um durch alle Paare von Zeichen in dem Alphabet adressierbar zu sein. In dieser Ausführungsform kann der Matrixwert für ein Zeichenpaar ein Unterschneidungswert oder alternativ die Summe eines rechten Seitenrands für das erste Zeichen des Paars, eines Unterschneidungswerts und eines linken Seitenrands für das zweite Zeichen des Paars sein (unter der Annahme, daß die Zeichen von links nach rechts geschrieben werden). Wenn derartige zusammengesetzte Abstandsmetriken in Matrizen beispielsweise für Punktgrößen von 6 Punkt, 12 Punkt und 72 Punkt gespeichert werden, können die unten beschriebenen Berechnungen entsprechend vereinfacht werden.
  • Das folgende Beispiel wird ein Beabstanden der Zeichenpaare AV und W an Ausgabepunktgrößen X1 = 6, X2 = 9, X3 = 12, X4 = 42, und X5 = 72 illustrieren. Die Werte der Abstandsmetriken für die Zeichen A und V sind:
    Figure 00220001
  • Zuerst werden die Interpolationsfaktoren F in Übereinstimmung mit den Gleichungen (1) oben berechnet: FX1 = 1; FX2 = 0,5; FX3 = 0; FX4 = 0,5; und FX5 = 1.
  • Als nächstes wird, für das Zeichenpaar AV, RX bestimmt für A, LX wird bestimmt für V, und KX wird bestimmt für AV, in Übereinstimmung mit Gleichung (2), basierend auf den oben gegebenen Abstandsmetriken:
    Figure 00230001
  • Ähnlich ist für X3 der Gesamtabstand –80; für X4 ist der Gesamtabstand –88; und für X5 ist der Gesamtabstand –96.
  • Ein Ausführen der gleichen Berechnungen für ein zweites Beispiel mit den gleichen Ausgabepunktgrößen X1 bis X5 für das Zeichenpaar VV, KX wird für VV bestimmt, und RX und LX werden für V bestimmt. Demgemäß ist für X1 der Gesamtabstand 18; für X2 ist der Gesamtabstand 11,5; für X3 ist der Gesamtabstand 5; für X4 ist der Gesamtabstand –3; und für X5 ist der Gesamtabstand –11.
  • Eine Übersicht der Gesamtabstandsergebnisse für die Zeichenpaare AV und VV zeigt, wie Abstände für Zeichenpaare berechnet werden, indem sowohl die spezifischen Zeichen als auch die Ausgabepunktgröße in Betracht gezogen bzw. berücksichtigt werden. Durch ein Interpolieren aus zwei Sätzen von Abstandsmetriken rechnet das Verfahren Abstände, die genauer sind als sie durch einfaches Skalieren von Abständen berechnet werden könnten, die von einem einzigen Satz von Abstandsmetriken abgeleitet sind.
  • Bezugnehmend auf 7 und 8 werden Abstände, die aus der oben beschriebenen Ausführungsform des Verfahrens eines Punktgrößen-variablen Zeichenbeabstandens abgeleitet sind, mit Abständen verglichen, die aus einer Anzahl von handeingestellten Sätzen von linken und rechten Seitenrandwerten und Unterschneidungswerten abgeleitet sind. In jeder dieser Figuren ist der Abstand (vertikale Achse) gegen die Punktgröße (horizontale Achse) aufgetragen bzw. dargestellt. Ein Beabstanden ist auf Einheiten von 1/1000 der Körpergröße eines Zeichens genormt. Die Zeichenpunktgröße ist in Punkten. Die im allgemeinen waagrechte graphische Plot- bzw. Darstellungslinie, markiert bzw. bezeichnet mit "traditionell", zeigt das traditionelle bzw. herkömmliche Beabstanden, das unter Verwendung eines Beabstandens mit 12 Punkt erzeugt wird, welches linear auf größere und kleinere Punktgrößen skaliert ist. Die Darstellungslinie, die mit "Hand eingestellt" markiert ist, zeigt die Ergebnisse eines mit Hand eingestellten Beabstandens über einen Bereich von Punktgrößen, während die Darstellungslinie, die mit "erfundenes bzw. erfindungsgemäßes Verfahren" markiert ist, das Beabstanden zeigt, das durch das vorliegende Verfahren eines Punktgrößen-variablen Zeichenbeabstandens erzeugt wird. 7 zeigt Abstände bzw. Beabstandungen für die Helvetica Schriftart. 8 zeigt Abstände für die Times Roman Schriftart. 7a und 8a zeigen die Trennungen von HH als eine Funktion der Punktgröße. Ähnlich zeigen 7b und 8b die Trennungen von OO; 7c und 8c zeigen die Trennungen von AV; und 7d und 8d zeigen die Trennungen von W. Diese beispielhaften Ergebnisse für die Zeichenpaare HH, OO, AV, und VV zeigen, daß eine Verwendung von drei Punktgrößenwerten eine gute Annäherung an ein handeingestelltes Beabstanden gibt.
  • Obwohl die vorliegende Erfindung in bezug bzw. Hinblick auf eine spezifische Ausführungsform beschrieben worden ist, ist die Erfindung nicht auf diese spezifische Ausführungsform beschränkt. Beispielsweise kann die Interpolation auf Abstandsmetriken-Parameter verschieden von Unterschneidung und Seitenränder, wie beispielsweise optische Ränder, angewandt werden, ohne die Vorteile der vorliegenden Erfindung zu verringern. Andere Formen einer Interpolation, wie beispielsweise nicht lineare Interpolationen (beispielsweise innerhalb eines Bereichs von 6 Punkt bis 72 Punkt) und nicht lineare Extrapolationen (beispielsweise unter 6 Punkt oder über 72 Punkt) können auch verwendet werden. (Wie hier verwendet, schließt der Ausdruck Interpolation Berechnungen ein, die streng genommen als Extrapolationen bezeichnet würden, sofern der Kontext bzw. der Zusammenhang nichts anderes erfordert). Auch kann eine Interpolation nur auf Seitenrandwerte oder nur auf Unterschneidungswerte beschränkt werden, eher als sowohl auf Seitenrandwerte als auch Unterschneidungswerte angewandt zu werden.

Claims (26)

  1. Computer-implementiertes Verfahren zum Beabstanden bzw. Teilen eines Paars von Zeichen bzw. Buchstaben, die von einem digitalen Font bzw. einer digitalen Schriftart für eine benachbarte Anzeige bzw. Darstellung an einer Ausgabepunktgröße gerendert werden, wobei die Schriftart erste Abstandsmaßstäbe bzw. -metriken einer kleinen Punktgröße für eine kleine Punktgröße nicht größer als die Ausgabepunktgröße und erste Abstandsmetriken einer großen Punktgröße für eine unterschiedliche große Punktgröße von nicht weniger als der Ausgabepunktgröße aufweist, umfassend: Berechnen einer Trennung an der Ausgabepunktgröße durch ein Interpolieren der ersten Abstandsmetriken der kleinen Punktgröße und der ersten Abstandsmetriken der großen Punktgröße für das Paar von Zeichen oder eines von diesen; und Beabstanden des Paars als eine Funktion der berechneten Trennung.
  2. Verfahren nach Anspruch 1, wobei die ersten Abstandsmetriken Unterschneidungs- bzw. Kerningwerte sind.
  3. Verfahren nach Anspruch 1, wobei: die ersten Abstandsmetriken der kleinen Punktgröße und die ersten Abstandsmetriken der großen Punktgröße rechte Seitenränder bzw. -begrenzung bzw. Sidebearings sind und der Schritt eines Interpolierens auf die rechten Seitenränder eines Zeichens des Paars angewandt wird; die Schriftart als zweite Abstandsmetriken der kleinen Punktgröße linke Seitenränder für die kleine Punktgröße und zweite Abstandsmetriken der großen Punktgröße linke Seitenränder für die große Punktgröße besitzt; und der Schritt eines Berechnens der Trennung ein Interpolieren der rechten Seitenränder der kleinen Punktgröße und der rechten Seitenränder der großen Punktgröße für eines der Zeichen und ein Interpolieren der linken Seitenränder der kleinen Punktgröße und der linken Seitenränder der großen Punktgröße für das andere der Zeichen beinhaltet.
  4. Verfahren nach Anspruch 1, wobei die kleine Punktgröße nicht größer als 12 Punkt ist und die große Punktgröße nicht weniger als 12 Punkt ist.
  5. Verfahren nach Anspruch 1, wobei die Schriftart erste Abstandsmetriken für wenigstens drei unterschiedliche Punktgrößen besitzt.
  6. Verfahren nach Anspruch 1, wobei die Schriftart erste Abstandsmetriken für Punktgrößen von 6 Punkt, 12 Punkt und 72 Punkt aufweist.
  7. Verfahren nach Anspruch 1, wobei die ersten Abstandsmetriken linke Seitenränder, rechte Seitenränder oder Unterschneidungs- bzw. Kerningwerte sind.
  8. Verfahren nach Anspruch 1, wobei der Schritt eines Interpolierens ein Berechnen einer linearen Interpolation der ersten Abstandsmetriken der kleinen Punktgröße und der großen Punktgröße beinhaltet.
  9. Verfahren nach Anspruch 1, wobei ein Berechnen der Trennung ein Berechnen der Summe eines interpolierten rechten Seitenrands für ein Zeichen des Paars plus einen interpolierten linken Seitenrand für das andere Zeichen des Paars plus einem interpolierten Unterschneidungswert für das Paar beinhaltet.
  10. Verfahren nach Anspruch 1, wobei die Abstandsmetriken mehrere Sätze von linken und rechten Seitenrandwerten beinhalten, wobei jeder Satz zur Ausgabe bei einer unterschiedlichen Punktgröße ist, wobei das Verfahren weiterhin umfaßt: Auswählen für das Zeichenpaar ein erstes Paar von linken und rechten Seitenrandwerten und ein zweites Paar von linken und rechten Seitenrandwerten von den Abstandsmetriken für eine erste Punktgröße bzw. eine zweite Punktgröße, wobei die erste Punktgröße nicht größer als die Ausgabepunktgröße ist und die zweite Punktgröße nicht kleiner als die Ausgabepunktgröße ist; Generieren bzw. Erzeugen eines linken Seitenrandwerts für das Zeichen an der Ausgabepunktgröße durch ein Interpolieren des ersten linken Seitenrandwerts und des zweiten linken Seitenrandwerts zu der Ausgabepunktgröße; und Generieren eines rechten Seitenrandwerts für das Zeichen an der Ausgabepunktgröße durch ein Interpolieren des ersten rechten Seitenrandwerts und des zweiten rechten Seitenrandwerts zu der Ausgabepunktgröße.
  11. Verfahren nach Anspruch 10, wobei die Paare von Seitenrandwerten ein Paar von Seitenrandwerten für eine Ausgabe mit bzw. bei 12 Punkt und ein Paar von Seitenrandwerten für eine Ausgabe bei 6 Punkt oder bei 72 Punkt beinhalten.
  12. Verfahren nach Anspruch 10, wobei die Abstandsmetriken Paare von Seitenrandwerten für wenigstens drei unterschiedliche Punktgrößen umfassen.
  13. Verfahren nach Anspruch 12, wobei die Paare von Seitenrandwerten ein Paar für eine Ausgabe bei 6 Punkt, ein Paar für eine Ausgabe bei 12 Punkt und ein Paar für eine Ausgabe bei 72 Punkt enthalten.
  14. Verfahren nach Anspruch 10, wobei das Interpolieren linear ist.
  15. Verfahren nach Anspruch 1, wobei die Abstandsmetriken mehrere Sätze von Unterschneidungswerten beinhalten, wobei jeder Satz für eine Ausgabe bei einer unterschiedlichen Punktgröße dient, wobei das Verfahren weiterhin umfaßt: Auswählen für das Zeichenpaar eines ersten Unterschneidungswerts bzw. eines zweiten Unterschneidungswerts, wobei die erste Punktgröße nicht größer als die Ausgabepunktgröße ist und die zweite Punktgröße nicht kleiner als die Ausgabepunktgröße ist; und Generieren eines Unterschneidungswerts für das Zeichenpaar durch ein Interpolieren des ersten Unterschneidungswerts und des zweiten Unterschneidungswerts zu der Ausgabepunktgröße.
  16. Verfahren nach Anspruch 15, wobei die Sätze von Unterschneidungswerten einen Satz von Unterschneidungswerten für eine Ausgabe bei 12 Punkt und einen Satz von Unterschneidungswerten für eine Ausgabe bei 6 oder bei 72 Punkt beinhalten.
  17. Verfahren nach Anspruch 15, wobei die Abstandsmetriken Unterschneidungswerte für wenigstens drei unterschiedliche Punktgrößen umfassen.
  18. Verfahren nach Anspruch 17, wobei die Sätze von Unterschneidungswerten einen Satz zur Ausgabe bei 6 Punkt, einen Satz zur Ausgabe bei 12 Punkt und einen Satz zur Ausgabe bei 72 Punkt beinhalten.
  19. Verfahren nach Anspruch 15, wobei das Interpolieren linear ist.
  20. Gegenstand einer Herstellung, umfassend einen digitalen Font bzw. eine digitale Schriftart, der bzw. die in einem Computer-lesbaren Medium verkörpert bzw. ausgebildet ist und weiterhin umfassend: Zeichen- bzw. Buchstabenrenderinstruktionen zum Rendern bzw. Wiedergeben des Aussehens eines ersten Buchstabens bzw. Zeichens; einen Satz von linken Seitenrändern bzw. -begrenzung bzw. Sidebearings bei einer ersten Punktgröße, die einen linken Seitenrand für das erste Zeichen beinhalten; einen Satz von rechten Seitenrändern bzw. -begrenzung bzw. Sidebearings bei der ersten Punktgröße, die einen rechten Seitenrand für das erste Zeichen beinhalten; einen Satz von linken Seitenrändern bei einer unterschiedlichen zweiten Punktgröße, die einen linken Seitenrand für das erste Zeichen beinhalten; und einen Satz von rechten Seitenrändern an der zweiten Punktgröße, die einen rechten Seitenrand für das erste Zeichen beinhalten, wobei der linke Seitenrand für das erste Zeichen, das bei einer Ausgabepunktgröße gerendert bzw. wiedergegeben ist, durch ein Interpolieren des linken Seitenrands an bzw. bei der ersten Punktgröße und des linken Seitenrands an der zweiten Punktgröße bestimmbar ist, und der rechte Seitenrand für das erste Zeichen, das bei einer Ausgabepunktgröße gerendert ist, durch ein Interpolieren des rechten Seitenrands an bzw. bei der ersten Punktgröße und des rechten Seitenrands an der zweiten Punktgröße interpolierbar ist, wobei die erste Punktgröße nicht größer als die Ausgabepunktgröße ist und die zweite Punktgröße nicht kleiner als die Ausgabepunktgröße ist.
  21. Gegenstand nach Anspruch 20, weiterhin umfassend: einen Satz von linken Seitenrändern bei einer unterschiedlichen dritten Punktgröße, beinhaltend einen linken Seitenrand für das erste Zeichen; und einen Satz von rechten Seitenrändern an der dritten Punktgröße, beinhaltend einen rechten Seitenrand für das erste Zeichen.
  22. Gegenstand nach Anspruch 20, weiterhin umfassend: Buchstabenrenderinstruktionen zum Rendern des Aussehens eines zweiten Zeichens; ein Satz von Unterschneidungs- bzw. Kerningwerten an einer ersten Punktgröße, beinhaltend einen Unterschneidungswert für ein Paar, bestehend aus dem ersten Zeichen gefolgt durch das zweite Zeichen; und einen Satz von Unterschneidungswerten an einer unterschiedlichen zweiten Punktgröße, enthaltend einen Unterschneidungswert für das Paar; wobei der Unterschneidungswert für das erste Zeichen und das zweite Zeichen, die bei einer Ausgabepunktgröße gerendert sind, durch ein Interpolieren des Unterschneidungswerts bei der ersten Punktgröße und des Unterschneidungswerts bei der zweiten Punktgröße bestimmbar ist.
  23. Gegenstand nach Anspruch 22, weiterhin umfassend: einen Satz von Unterschneidungswerten bei einer unterschiedlichen dritten Punktgröße, die einen Unterschneidungswert für das Paar beinhaltet.
  24. Gegenstand einer Herstellung, umfassend einen digitalen Font bzw. eine digitale Schriftart, der bzw. die in einem Computer-lesbaren Medium verkörpert bzw. eingebettet ist, und weiterhin umfassend: Zeichen- bzw. Buchstabenrenderinstruktionen, um das Aussehen eines ersten Buchstabens bzw. Zeichens und eines zweiten Zeichens zu rendern; einen Satz von Unterschneidungs- bzw. Kerningwerten bei einer ersten Punktgröße, enthaltend einen Unterschneidungswert für ein Paar, bestehend aus dem ersten Zeichen, gefolgt durch das zweite Zeichen; und einen Satz von Unterschneidungswerten an einer unterschiedlichen zweiten Punktgröße, enthaltend einen Unterschneidungswert für das Paar, wobei der Unterschneidungswert für das erste Zeichen und das zweite Zeichen, der an einer Ausgabepunktgröße gerendert ist, durch ein Interpolieren des Unterschneidungswerts an der ersten Punktgröße und des Unterschneidungswerts an der zweiten Punktgröße bestimmbar ist, wobei die erste Punktgröße nicht größer als die Ausgabepunktgröße ist und die zweite Punktgröße nicht kleiner als die Ausgabepunktgröße ist.
  25. Gegenstand nach Anspruch 24, weiterhin umfassend: einen Satz von Unterschneidungswerten an einer unterschiedlichen dritten Punktgröße, enthaltend einen Unterschneidungswert für das Paar.
  26. Computerprogrammprodukt, das greifbar in einer Computerprogramm-Speichervorrichtung zur Ausführung durch einen Computerprozessor eingebettet ist, wobei das Produkt Instruktionen umfaßt, um: ein Paar von Zeichen bzw. Buchstaben zu beabstanden bzw. zu teilen, die von einem digitalen Font bzw. einer digitalen Schriftart für eine benachbarte Anzeige bei einer Ausgabepunktgröße des Fonts gerendert sind, der erste Abstandsmaßstäbe bzw. -metriken einer kleinen Punktgröße für eine kleine Punktgröße nicht größer als die Ausgabepunktgröße und erste Abstandsmetriken einer großen Punktgröße für eine unterschiedliche große Punktgröße nicht kleiner als die Ausgabepunktgröße aufweist, umfassend: ein Berechnen einer Trennung an bzw. bei der Ausgabepunktgröße durch ein Interpolieren der ersten Abstandsmetriken der kleinen Punktgröße und der erster Abstandsmetriken der großen Punktgröße für das Paar von Zeichen oder eines von diesen; und ein Beabstanden bzw. Teilen des Paars als eine Funktion der berechneten Trennung.
DE69736649T 1996-07-23 1997-07-03 Schriftteilung für verschiedene Zeichengrössen Expired - Lifetime DE69736649T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/686,212 US5937420A (en) 1996-07-23 1996-07-23 Pointsize-variable character spacing
US686212 2003-10-15

Publications (2)

Publication Number Publication Date
DE69736649D1 DE69736649D1 (de) 2006-10-26
DE69736649T2 true DE69736649T2 (de) 2007-09-13

Family

ID=24755400

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69736649T Expired - Lifetime DE69736649T2 (de) 1996-07-23 1997-07-03 Schriftteilung für verschiedene Zeichengrössen

Country Status (5)

Country Link
US (2) US5937420A (de)
EP (1) EP0821312B1 (de)
JP (1) JPH10187135A (de)
CA (1) CA2210266A1 (de)
DE (1) DE69736649T2 (de)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5937420A (en) * 1996-07-23 1999-08-10 Adobe Systems Incorporated Pointsize-variable character spacing
US6043802A (en) * 1996-12-17 2000-03-28 Ricoh Company, Ltd. Resolution reduction technique for displaying documents on a monitor
AU748212B2 (en) * 1998-11-27 2002-05-30 Canon Kabushiki Kaisha Automatic kerning of text
US6829748B1 (en) * 1998-11-27 2004-12-07 Canon Kabushiki Kaisha Automatic kerning of text
US6426751B1 (en) * 1999-04-01 2002-07-30 Adobe Systems Incorporated Font feature file processing
US7030863B2 (en) * 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
US7821503B2 (en) 2003-04-09 2010-10-26 Tegic Communications, Inc. Touch screen and graphical user interface
US7286115B2 (en) * 2000-05-26 2007-10-23 Tegic Communications, Inc. Directional input system with automatic correction
US7750891B2 (en) * 2003-04-09 2010-07-06 Tegic Communications, Inc. Selective input system based on tracking of motion parameters of an input device
US7069508B1 (en) * 2000-07-13 2006-06-27 Language Technologies, Inc. System and method for formatting text according to linguistic, visual and psychological variables
US7346489B1 (en) 1999-07-16 2008-03-18 Language Technologies, Inc. System and method of determining phrasing in text
US7305617B2 (en) * 2000-02-12 2007-12-04 Adobe Systems Incorporated Method for aligning text to baseline grids and to CJK character grids
US7320104B2 (en) 2000-02-12 2008-01-15 Adobe Systems Incorporated Text grid creation tools
US7071941B2 (en) * 2000-02-12 2006-07-04 Adobe Systems Incorporated Method for calculating CJK emboxes in fonts
AU768556B2 (en) * 2000-02-28 2003-12-18 Canon Kabushiki Kaisha Generating a kerning distance
JP3795784B2 (ja) * 2000-09-25 2006-07-12 アドビ システムズ, インコーポレイテッド アイコン表示付き文字組空き量設定装置、文字組空き量設定プログラム及びそれを記録した記録媒体
US6928611B2 (en) 2000-09-25 2005-08-09 Adobe Systems Incorporated Setting text composition spacing amount
US7296227B2 (en) 2001-02-12 2007-11-13 Adobe Systems Incorporated Determining line leading in accordance with traditional Japanese practices
JP3552106B2 (ja) * 2001-06-20 2004-08-11 シャープ株式会社 文字表示装置、文字表示方法、プログラムおよび記録媒体
US7167274B2 (en) * 2001-09-28 2007-01-23 Adobe Systems Incorporated Line leading from an arbitrary point
US7039862B2 (en) * 2002-05-10 2006-05-02 Adobe Systems Incorporated Text spacing adjustment
US20040125107A1 (en) * 2002-12-26 2004-07-01 Mccully Nathaniel M. Coordinating grid tracking and mojikumi spacing of Japanese text
US7123261B2 (en) * 2002-12-26 2006-10-17 Adobe Systems Incorporated Coordinating grid tracking and mojikumi spacing of Japanese text
KR100510145B1 (ko) * 2003-08-04 2005-08-25 삼성전자주식회사 비례 폰트를 지원하는 온 스크린 표시 장치 및 그 방법
US7594171B2 (en) 2004-10-01 2009-09-22 Adobe Systems Incorporated Rule-based text layout
US8201087B2 (en) 2007-02-01 2012-06-12 Tegic Communications, Inc. Spell-check for a keyboard system with automatic correction
US8225203B2 (en) 2007-02-01 2012-07-17 Nuance Communications, Inc. Spell-check for a keyboard system with automatic correction
US8633930B2 (en) * 2007-03-26 2014-01-21 Apple Inc. Non-linear text flow
US8306356B1 (en) 2007-09-28 2012-11-06 Language Technologies, Inc. System, plug-in, and method for improving text composition by modifying character prominence according to assigned character information measures
CN101430679B (zh) * 2007-11-09 2010-08-25 北大方正集团有限公司 一种对符号占用的整体区域进行压缩的方法及装置
US8239763B1 (en) 2009-01-07 2012-08-07 Brooks Ryan Fiesinger Method and apparatus for using active word fonts
GB201216640D0 (en) * 2012-09-18 2012-10-31 Touchtype Ltd Formatting module, system and method for formatting an electronic character sequence
US9208589B2 (en) * 2012-10-22 2015-12-08 Apple Inc. Optical kerning for multi-character sets
US20140281916A1 (en) * 2013-03-15 2014-09-18 Monotype Imaging Inc. Supporting Font Character Kerning
US10275426B1 (en) * 2015-09-22 2019-04-30 Amazon Technologies, Inc. Dynamic kerning pair reduction for digital font rendering
US20210304357A1 (en) * 2020-03-27 2021-09-30 Alibaba Group Holding Limited Method and system for video processing based on spatial or temporal importance

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3712443A (en) * 1970-08-19 1973-01-23 Bell Telephone Labor Inc Apparatus and method for spacing or kerning typeset characters
US4027313A (en) * 1975-06-18 1977-05-31 Eltra Corporation Photocomposing machine and font strip therefor for kerned characters
US4591999A (en) * 1983-09-06 1986-05-27 Gerber Scientific Products, Inc. Method and apparatus for automatically spacing characters during composition
US4783760A (en) * 1985-06-03 1988-11-08 Honeywell Bull Inc. Word processing text justification method
US4833627A (en) * 1986-08-29 1989-05-23 The Toles Group Computerized typesetting correction system
US5257351A (en) * 1987-09-22 1993-10-26 International Business Machines Corporation Selective processing of a data stream based on font format
JPH01196096A (ja) * 1988-02-01 1989-08-07 Canon Inc 出力装置
AU629210B2 (en) * 1988-10-26 1992-10-01 Sun Microsystems, Inc. Method and apparatus for minimizing the visual degradation of digital typefaces
US4933866A (en) * 1988-11-17 1990-06-12 Vital Lasertype, Inc. Method and apparatus for generating aesthetically alterable character designs
JPH073635B2 (ja) * 1988-12-21 1995-01-18 富士通株式会社 白抜き文字の作成方法
JP2756292B2 (ja) * 1989-02-07 1998-05-25 キヤノン株式会社 文書出力装置
EP0465704B1 (de) * 1990-07-11 1995-03-01 URW Software & Type GmbH Verfahren zur Zurichtung von Schriften
US5416898A (en) * 1992-05-12 1995-05-16 Apple Computer, Inc. Apparatus and method for generating textual lines layouts
US5724596A (en) * 1992-08-25 1998-03-03 Lathrop; Stephen P. Algorithmic character-space adjustment computed from character-sequence-based constants and font size
JPH06124078A (ja) * 1992-10-13 1994-05-06 Max Co Ltd 欧文文書処理に於けるカーニング処理方法
TW363158B (en) * 1993-06-25 1999-07-01 Omron Tateisi Electronics Co A system for automatic adjustment of, character spacing
US5825999A (en) * 1993-12-28 1998-10-20 Victor Company Of Japan, Ltd. Minimum character region determining apparatus and method, character string generating apparatus for generating a character string according to the minimum character region determining method
US5623593A (en) * 1994-06-27 1997-04-22 Macromedia, Inc. System and method for automatically spacing characters
US5598520A (en) * 1994-09-26 1997-01-28 Microsoft Corporation Methods and apparatus for hinting a font for controlling stem width as font size and resolution of output device vary
JP3408685B2 (ja) * 1995-12-08 2003-05-19 大日本スクリーン製造株式会社 カーニング処理方法
US5937420A (en) * 1996-07-23 1999-08-10 Adobe Systems Incorporated Pointsize-variable character spacing
US5803629A (en) * 1997-03-14 1998-09-08 Paul H. Neville Method and apparatus for automatic, shape-based character spacing

Also Published As

Publication number Publication date
EP0821312A3 (de) 1999-07-28
JPH10187135A (ja) 1998-07-14
US6624814B1 (en) 2003-09-23
US5937420A (en) 1999-08-10
EP0821312A2 (de) 1998-01-28
EP0821312B1 (de) 2006-09-13
CA2210266A1 (en) 1998-01-23
DE69736649D1 (de) 2006-10-26

Similar Documents

Publication Publication Date Title
DE69736649T2 (de) Schriftteilung für verschiedene Zeichengrössen
DE60036894T2 (de) Erzeugung einer Glyphe
EP0654778B1 (de) Verfahren zur Textdarstellung auf Bildschirmgeräten
DE3806223C2 (de) Verfahren zur Erzeugung von Zeichenmustern
DE69434405T2 (de) Verfahren zur Erzeugung eines visuellen Entwurfs
DE60031337T2 (de) Geräteabhängige Darstellung von Zeichen
DE69826044T2 (de) Vektorkartenplanarisierung und -einfang
DE69133362T2 (de) Dokumentenverarbeitungs-verfahren und -gerät, entsprechende Program und Speichereinheit
DE69629173T2 (de) Automatisches Plazieren eines graphischen Musters
DE3315148C2 (de)
DE10051680A1 (de) Schema zur Darstellung mehrerer Druckauftragsabänderungselemente in einer Drucksoftware-Benutzerschnittstelle
DE4014231A1 (de) Verfahren zum bearbeiten der steuerpunkte eines symbolbildes
DE602005002835T2 (de) Verfahren zur Identifizierung von redundantem Text in elektronischen Dokumenten
DE102005050846A1 (de) Perspektiveneditierwerkzeuge für 2-D Bilder
DE3931128A1 (de) Bilddatenprozessor mit mitteln zur veraenderung der aufloesung von bildern
JPH0687203A (ja) 字体を置換して文字を表示する方法および装置
EP0132456B1 (de) Verfahren und Vorrichtung zur Prüfung der Satzqualität von Druckerzeugnissen, insbesondere Zeitungen
EP1536377B1 (de) Verfahren zur Veränderung der Abmessungen eines elektronisch gespeicherten Bildes
DE19512185B4 (de) Verfahren und Vorrichtung zum Erzeugen von Fontdaten
DE3914905C2 (de)
DE69728918T2 (de) Verfahren und Gerät zur wirkungsvollen Bildinterpolation
EP0304509B1 (de) Bildschirmgerät zur Textdarstellung
EP0667596A1 (de) Verfahren zur Text- und Graphikdarstellung auf Farbbildschirmgeräten
DE2840005C2 (de)
DE102016204044A1 (de) Verfahren und head-up-display zum perspektivischen transformieren und anzeigen eines bildinhalts sowie fahrzeug

Legal Events

Date Code Title Description
8364 No opposition during term of opposition