Wie bereits erwähnt, werden Extrema für das Rendern von Schriftarten und insbesondere für Hinweise benötigt.
Um dies zu verstehen, schauen wir uns zunächst an, was ungefähr passiert, wenn eine Glyphe mit Extrema als Anker (grün) in einem regulären Pixelraster automatisch angezeigt wird¹: Damit eine Schrift schön und klar aussieht, sollten vertikale und horizontale Striche genau in das Pixelraster fallen. Ein willkürlich platziertes Glyphen² erfüllt dieses Kriterium normalerweise nicht, und daher verzerrt der Renderer es leicht zu diesem Zweck, nämlich durch Verschieben der Extrema, da sie die vertikalen und horizontalen Striche definieren:
Dieser Prozess erfordert eine Vermutung durch den Renderer, weshalb der Designer eine Reihe von Dingen definieren kann (markierte Stämme, blaue Werte), die den Renderer bei diesem Prozess unterstützen. Beachten Sie, dass dies nur einer der ersten Schritte ist und danach viel los ist, worüber wir uns bei dieser Frage nicht kümmern müssen.
Nehmen wir zunächst an, wir hätten nicht nur Extrema verwendet, um die Glyphe zu definieren, sondern auch einige diagonale Anker dazwischen. Dann müssten diese Anker schrittweise verschoben werden, wenn die Extrema verschoben werden, was wiederum Rätselraten erfordert. Im Gegensatz zum Verschieben der Extrema kann der Schriftdesigner aufgrund der Komplexität der Situation jedoch nicht viel tun, um dies zu unterstützen. Das Verschieben dieser überschüssigen Anker ist daher eine erhebliche Fehlerquelle, insbesondere wenn sich die Anker in der Nähe der Extrema befinden.
Schließlich können wir auf die Frage zurückkommen und überlegen, was passiert, wenn wir keine Anker an den Extrema definieren. In diesem Fall muss der Renderer die Extrema automatisch bestimmen (was leicht möglich ist), bevor er sie und alle anderen Anker mit sich bewegt. Da das, was Sie natürlich als Anker wählen würden, für viele Arten von Schriften nahe am Extrem liegt, besteht aus den oben genannten Gründen die Gefahr von Vermutungen.
Um das Obige etwas zusammenzufassen: Extrema spielt beim Rendern sowieso eine entscheidende Rolle und daher ist es besser, wenn Ihre Glyphe darauf aufgebaut ist, damit der Renderer nicht raten muss.
Zitate
Aus dem Patent US 7068276 B2 - Verfahren und Systeme zum Hinweis auf Schriftarten :
Der nachstehend beschriebene algorithmische Ansatz versucht, explizite Kurvenknoten unter Verwendung von Merkmalen wie Konturrichtung und Vorhandensein von Extrema abzugleichen.
Aus FontForges Wiki zum Hinweis :
Konturen müssen die richtige Richtung haben, sonst wird das Einrasten in blaue Zonen beeinträchtigt. Je weniger Punkte die (genaue) Form bilden, desto besser. Mit H / V-Stielen angedeutete Kurven sollten jedoch Punkte an den Extrema aufweisen, da sie sonst nicht gerissen werden. Es ist nicht relevant, wenn ein solcher Punkt "implizit" ist.
¹ Bei Subpixel-Hinweisen
ist es nicht viel anders. ² Dies ist eine umfassende Vereinfachung, da die Platzierung von Glyphen mit Hinweisen komplizierter ist. aber es reicht für dieses Beispiel