Einige Nutzer, die die Hinting-Methode „hintfull“ verwenden, haben möglicherweise bemerkt, dass beim Wechsel von Pango 1.43 auf 1.44 einiger Schriftfamilien oder .
Das Problem wird durch die Tatsache verursacht, dass die Bibliothek auf die Verwendung von zur Gewinnung von Kerning-Informationen (Abstände zwischen Glyphen) von Schriftarten umgestiegen ist, und die Entwickler letzterer beschlossen haben, kein Antialiasing für die „hintfull“-Methode mehr zu unterstützen. Es wird festgestellt, dass bei Bildschirmen mit hoher Pixeldichte (Hi-DPI) keine Probleme mit der Anzeige von Schriften auftreten, wenn andere Hinting-Methoden verwendet werden. сглаживание шрифтов по методу «hintfull». Отмечается, что на экранах с высокой плотностью пикселей (Hi-DPI) проблемы с отображением шрифтов при использовании методов хинтинга, отличного от «hintfull», не возникают.
Entwickler von HarfBuzz (Behdad Esfahbod) aus der entsprechenden Problemdiskussion:
Ich habe versucht, andere Hinting-Stile als hintfull zu verwenden, aber nur dieser gibt eine Schriftanzeige, die nahe an ClearType v2 in Windows 7 ist, die meiner Meinung nach das beste Rendering aller bestehenden Lösungen hat.
Richtig. Daher haben wir beschlossen, ihn nicht mehr zu unterstützen. Sie können versuchen, sich an das „neblige“ Rendering zu gewöhnen oder etwas anderes zu finden. Sie verwenden Open Source, verstehen Sie?
Ergänzung nach weiterer Diskussion:
In den folgenden Kommentaren gibt der Entwickler an , dass Open Source die Möglichkeit zur Auswahl bietet und diejenigen, die mit dem aktuellen Zustand unzufrieden sind, ein Pango-Fork erstellen können. Die Entwickler von HarfBuzz können jedoch nicht auf dessen Pflege und die dort getroffenen Entscheidungen Einfluss nehmen. Behdad Esfahbod, der derzeitige Betreuer von HarfBuzz, der die meisten Commits in
, erwähnte, dass er seit über 10 Jahren nicht mehr mit Red Hat verbunden ist und nicht der Betreuer von Pango ist. Seit 2010 arbeitet er bei Google und beschäftigt sich dort ausschließlich mit HarfBuzz, das früher sein persönliches Projekt war. HarfBuzz den Renderprozess und Pango kann angeforderte Hinting-Modi auf seiner Seite überschreiben.
Ein anderer HarfBuzz-Entwickler , dass das Problem bei Pango liegt, da HarfBuzz kein Schriftsystem ist und aufgrund seiner Architektur kein Hinting unterstützt. Wenn Pango das Hinting beibehalten möchte, ist der Umstieg auf HarfBuzz nicht die Wahl, auf die man hinsichtlich seiner Unterstützung zählen kann. In Der Grund für die Ablösung des Hintings in HarfBuzz ist, dass bestimmte Hinting-Modi die ursprüngliche Breite des Glyphen verändern können, und diese Veränderung vom Pixelmaß abhängt. Früher führte Pango ähnliche Operationen über FreeType aus, das Hinting unterstützt, wechselte jedoch später zu HarfBuzz, das die Verarbeitung von Glyphen unabhängig von ihrer Größe ermöglicht. Daher liegt die Verantwortung für die bei der Verwendung von Pango aufgetretenen Probleme bei Pango selbst und nicht bei HarfBuzz.
Letztendlich Behdad Esfahbod eine große Retrospektive der Entwicklung des Schriftstapels von Linux. Nach seinem Weggang zu Google wurden die Bibliotheken Pango und Cairo nahezu verlassen und fielen in eine Stagnation. In HarfBuzz lag der Fokus auf der Unterstützung von adaptiven variablen Schriften (variable-font), während Red Hat sich auf GTK und Glib konzentrierte. Im Laufe der Zeit wurden Fortschritte im Bereich variabler Schriften in FreeType, fontconfig und Cairo integriert, blieben jedoch in Pango aufgrund eines Mangels an Entwicklern unvollendet. Der Zugang zu neuen APIs in Pango wurde über die Abstraktion FontMap bereitgestellt und nur für Backends auf FreeType-Basis unterstützt. Backends für Windows und macOS sind seit mehr als 10 Jahren ohne Unterstützung.
Nach der Expansion mobiler Geräte und Browser stellte Microsoft in Windows 8 die Unterstützung für subpixelbasiertes Font-Rendering und GDI-Stil-Darstellung ein. macOS hingegen hat die Darstellung, die in dieser Diskussion als "unschärfer" bezeichnet wird, immer unterstützt. Seit 2018 haben mehrere Entwickler von HarfBuzz versucht, die in den letzten Jahren hinzugefügten Funktionen von HarfBuzz nach Pango zu portieren. Parallel dazu wurde bei der Entwicklung von GTK4 auf eine OpenGL-basierte Rendering-Technologie umgestiegen, die eine lineare Skalierung des Textes impliziert, was den Konflikt zwischen pixelbasierter Darstellung und skalierbarer Layoutgestaltung verschärfte.
LibreOffice, Chrome und Firefox sind auf die Verwendung von HarfBuzz als einheitliche Shaping-Engine umgestiegen, was den Preis des Wegfalls der Unterstützung für Bitmap-Schriften und das Format Type1 bedeutete. Für diejenigen, die Bitmap-Schriften benötigen, wurde die Umwandlung in ein OpenType-Container vorgeschlagen. An Adobe wurde eine Anfrage zur Implementierung von Type1 für HarfBuzz gesendet, aber sie antworteten, dass dies keinen Sinn mache, da sie selbst in diesem Jahr die Unterstützung für Type1 einstellen.
Um mit den fortschrittlichen Technologien Schritt zu halten, wurde eine ähnliche Entscheidung zum Umstieg auf HarfBuzz auch für die Pango-Bibliothek getroffen. Der Preis dafür war die Einstellung der Unterstützung einiger veralteter Technologien aus den letzten 20 Jahren. Aufgrund begrenzter Ressourcen der Entwickler wurde darauf hingewiesen, dass es nicht genug Hände für alles gibt, und Interessierte an der Erhaltung der alten Technologien könnten versuchen, jemanden zu finden, der bereit ist, die fehlenden Funktionen zu pflegen. Zum Vergleich wird GNOME3 angeführt, nach dessen Einführung Unzufriedene die Entwicklung der veralteten Technologien von GNOME2 innerhalb der Projekte Mate und Cinnamon fortsetzen konnten. Das Gleiche gilt für Pango, aber es gab bisher keine Interessierten.
Quelle: opennet.ru
