Von asdfghjkl am Mi, 14. September 2016 um 10:35 #
Die Schriftdarstellung unter Linux ist noch immer verbesserungswürdig. Ich würde mich freuen, wenn es nun qualitativ nahe an die Schriftdarstellung unter Windows herankommt.
Von manjarone am Mi, 14. September 2016 um 11:09 #
Kann ich nur zustimmen. Besonders die Schriften von Windows 10 in den neuen "Apps" sehen grauenhaft aus. Gegen die Schriften der "Desktop Apps" ist dabei gar nichts zu sagen.
Von schmidicom am Mi, 14. September 2016 um 12:09 #
Eventuell hast du in den Anzeigeeinstellungen eine Skalierung abweichend von 100% eingestellt, dann wirft es unter Windows schon länger so einiges (nicht nur Schriften) über den Haufen.
Von Font-täne am Mi, 14. September 2016 um 14:56 #
Nein, unter Linux das Optimum rausgeholt, so ähnlich wie jemand es weiter unten beschrieben hat.
Kann sein dass der default in einer frischen Linuxinstallation je nach Distro auch Kacke aussieht. Wenn man aber entspr. Schriften auswählt die ein gutes Hinting haben sieht das besser aus als unter Windows mit Cleartype.
Firefox unter Windows sieht auch scheisse aus, selbst wenn man da manuell in den settings herumbastelt. Allerdings habe ich das nicht weiter vertieft da ich selten unter Windows arbeite.
Mit Freetype 2.7 wurde ja ein ClearType-ähnliches Verfahren standardmäßig eingeschaltet. Der Knackpunkt dabei ist folgender:
Nahezu alle Distributionen standardmäßig das "slight" bzw. "leichte" Hinting aktiviert haben. Selbst wenn diese dann auf Freetype 2.7 aktualisieren, bekommt man als Anwender davon nichts mit, da nahezu alle Distributionen standardmäßig die "slight hinting"-Einstellung benutzen. Der neue Interpreter wird aber erst aktiviert, wenn man das Hinting auf "medium" oder "full" setzt. Das muss dann auch noch an zwei Stellen geschehen, damit alle Anwendungen etwas davon mitbekommen.
Im Verzeichnis "/etc/fonts/conf.d/ muss der Link auf die Datei "10-hinting-slight.conf" gelöscht werden und ein neuer per "ln -s /etc/fonts/conf.avail/10-hinting-full.conf /etc/fonts/conf.d/10-hinting-full.conf" gesetzt werden.
Je nach Desktopoberfläche muss man dort das Hinting explizit verändern. Unter GNOME macht man das am schnellsten per gsettings set org.gnome.settings-daemon.plugins.xsettings hinting "full"
Man muss die Änderung an zwei Stellen vornehmen, da z.B. Firefox und Chrome die Desktopeinstellungen ignorieren und sich auf die systemweiten Fontconfig-Einstellungen verlassen.
Ein weiterer Punkt warum die Schriftdarstellung vor allem im Browser unter Linux oft so bescheiden wirkt, hängt mit der Auswahl der Schriften des Webseite zusammen. Ein Beispiel:
Facebook legt per CSS folgende Schriften für die Darstellung der Webseite fest:
font-family: helvetica, arial, sans-serif;
Der Code bedeutet folgendes:
Der Browser soll zuerst versuchen die Seite mit "Helvetica", dann mit "Arial" und zum Schluß mit "sans-serif" darzustellen. Letztere wird vom Browser dann gegen die Schriftart ersetzt, die man in den Browsereinstellungen bei den Schriftarten unter "Sans Serif" bzw. "Serifenlos" eingestellt hat.
Unter Linux geschieht wegen Fontconfig jetzt folgendes:
Standardmäßig ist Fontconfig so konfiguriert, dass "Helvetica" gegen die Postscript-Schriftart "Nimbus Sans" substituiert wird. Fordert ein Programm also "Helvetica" an, bekommt es "Nimbus Sans" geliefert. Da "Nimbus Sans" aber aus der Urzeit stammt, enthält sie keinerlei Hinting-Informationen und sieht dementsprechend bescheiden auf dem Bildschirm aus (Sie wirkt im Vergleich zu anderen Schriftarten sehr unscharf). Der Effekt wird noch verstärkt, wenn man (wie ich) das "full"-Hinting benutzt. Dadurch, dass "Helvetica" die Standardschrift von MacOS ist, gibt es auch dementsprechend sehr viele Webseiten die Helvetica benutzen. Windows-Benutzer bekommen davon nichts mit, da dort keine Substitution für Helvetica eingerichtet ist und automatisch "Arial" benutzt wird.
Um Fontconfig zu zwingen auf "Nimbus Sans" zu verzichten, gibt es nur zwei Möglichkeiten:
Man installiert eine qualitativ hochwertigere Version von "Helvetica"
Man gewöhnt Fontconfig die Substitution ab
Option 1 ist nur dann eine Wahl, wenn man entweder Zugriff auf ein großes Schriftartenportfolio und/oder zuviel Geld übrig hat. Option 2 dürfte für die meisten Anwender die bessere Wahl sein:
Man durchsucht das Verzeichnis "/etc/fonts/conf.avail" nach allen Vorkommen von "Nimbus" (Sind in der Regel drei Dateien) und löscht dann alle Zeilen die für die Substitution sorgen. Die meiste Arbeit hat man mit der Datei "30-metric-aliases.conf". Hier muss man alle Zeilen zwischen den Kommentaren "Postscript" und "Microsoft" löschen (Sind mehrere Blöcke). In den anderen Dateien ist die Arbeit einfacher.
Nach dieser Änderung werden keine Schriften mehr ersetzt und die Darstellung sieht deutlich angenehmer aus.
Danke für die Erklärung! Warum ist sowas nicht standardmäßig in den Distros? Wo müsste man anfragen, um die standardmäßige Font-Konfiguration anzupassen?
Danke für die Erklärung! Warum ist sowas nicht standardmäßig in den Distros?
Was die Sache mit den "Nimbus"-Schriftarten betrifft? Keine Ahnung, warum diese immer noch als Standard für Helvetica definiert sind. Sinnvoller wäre hier z.B. "Liberation Sans" zu verwenden, da diese Schriftart eine freie Version von "Arial" ist und letztere eine (freche) Kopie von Helvetica. Soll heißen die Schriften sehen sehr ähnlich aus und haben bei gleicher Größe die nahezu identische Breite. Und das "Liberation Sans" grundsätzlich bei den Distributionen vorinstalliert ist, dürfte es keine Probleme geben.
Wo müsste man anfragen, um die standardmäßige Font-Konfiguration anzupassen?
Das Thema ist nicht ganz einfach, da einem Fontconfig sehr vielfältige Einstellmöglichkeiten erlaubt.
Edit:
Ich spiele gerade mal mit den Fontconfig-Dateien herum. Ich habe die Dateien jetzt bei mir mal so abgeändert, dass anstatt der "Nimbus"-Schriftfamilie die "Liberation-Fonts" benutzt werden. Hier mal ein Link zu den Dateien:
Von hieregalandieserstelle am Do, 15. September 2016 um 09:13 #
Vielleicht eine naive Frage, aber wenn die FontEngine "Helvetica" erwartet, kann ich dann nicht einfach einen symbolischen Link (oder eine Kopie) von "Liberation Sans" (oder Arial oder Calibri so Lizenz vorhanden) auf "Helvetica"?
also soetwas wie: copy liberation sans.ttf helvetica.ttf ?
Der Dateiname muss nicht dem Namen der Schrift entsprechen. In der Schriftart sind Metadaten hinterlegt, die deren Namen festlegen. Ein einfacher symbolischer Link würde also nicht helfen.
das Interessante an dieser Nachricht ist für mich, dass die Programmierer eine neue Technik entwickelt haben um das patentierte Subpixel hinting zu ersetzten: "Freies Projekt schlägt proprietäre Software".
Die Schriftdarstellung unter Linux ist noch immer verbesserungswürdig. Ich würde mich freuen, wenn es nun qualitativ nahe an die Schriftdarstellung unter Windows herankommt.
Ich finde es immer genau umgekehrt wenn ich an einem Windowsrechner sitzen muss und die hässlichen Fonts als erstes auffallen.
Kann ich nur zustimmen. Besonders die Schriften von Windows 10 in den neuen "Apps" sehen grauenhaft aus. Gegen die Schriften der "Desktop Apps" ist dabei gar nichts zu sagen.
Eventuell hast du in den Anzeigeeinstellungen eine Skalierung abweichend von 100% eingestellt, dann wirft es unter Windows schon länger so einiges (nicht nur Schriften) über den Haufen.
Nein, unter Linux das Optimum rausgeholt, so ähnlich wie jemand es weiter unten beschrieben hat.
Kann sein dass der default in einer frischen Linuxinstallation je nach Distro auch Kacke aussieht. Wenn man aber entspr. Schriften auswählt die ein gutes Hinting haben sieht das besser aus als unter Windows mit Cleartype.
Firefox unter Windows sieht auch scheisse aus, selbst wenn man da manuell in den settings herumbastelt. Allerdings habe ich das nicht weiter vertieft da ich selten unter Windows arbeite.
Ich finde es immer genau umgekehrt wenn ich an einem Windowsrechner sitzen muss und die hässlichen Fonts als erstes auffallen.
Mit Freetype 2.7 wurde ja ein ClearType-ähnliches Verfahren standardmäßig eingeschaltet. Der Knackpunkt dabei ist folgender:
Nahezu alle Distributionen standardmäßig das "slight" bzw. "leichte" Hinting aktiviert haben. Selbst wenn diese dann auf Freetype 2.7 aktualisieren, bekommt man als Anwender davon nichts mit, da nahezu alle Distributionen standardmäßig die "slight hinting"-Einstellung benutzen. Der neue Interpreter wird aber erst aktiviert, wenn man das Hinting auf "medium" oder "full" setzt. Das muss dann auch noch an zwei Stellen geschehen, damit alle Anwendungen etwas davon mitbekommen.
Man muss die Änderung an zwei Stellen vornehmen, da z.B. Firefox und Chrome die Desktopeinstellungen ignorieren und sich auf die systemweiten Fontconfig-Einstellungen verlassen.
Ein weiterer Punkt warum die Schriftdarstellung vor allem im Browser unter Linux oft so bescheiden wirkt, hängt mit der Auswahl der Schriften des Webseite zusammen. Ein Beispiel:
Facebook legt per CSS folgende Schriften für die Darstellung der Webseite fest:
font-family: helvetica, arial, sans-serif;
Der Code bedeutet folgendes:
Der Browser soll zuerst versuchen die Seite mit "Helvetica", dann mit "Arial" und zum Schluß mit "sans-serif" darzustellen. Letztere wird vom Browser dann gegen die Schriftart ersetzt, die man in den Browsereinstellungen bei den Schriftarten unter "Sans Serif" bzw. "Serifenlos" eingestellt hat.
Unter Linux geschieht wegen Fontconfig jetzt folgendes:
Standardmäßig ist Fontconfig so konfiguriert, dass "Helvetica" gegen die Postscript-Schriftart "Nimbus Sans" substituiert wird. Fordert ein Programm also "Helvetica" an, bekommt es "Nimbus Sans" geliefert. Da "Nimbus Sans" aber aus der Urzeit stammt, enthält sie keinerlei Hinting-Informationen und sieht dementsprechend bescheiden auf dem Bildschirm aus (Sie wirkt im Vergleich zu anderen Schriftarten sehr unscharf). Der Effekt wird noch verstärkt, wenn man (wie ich) das "full"-Hinting benutzt. Dadurch, dass "Helvetica" die Standardschrift von MacOS ist, gibt es auch dementsprechend sehr viele Webseiten die Helvetica benutzen. Windows-Benutzer bekommen davon nichts mit, da dort keine Substitution für Helvetica eingerichtet ist und automatisch "Arial" benutzt wird.
Um Fontconfig zu zwingen auf "Nimbus Sans" zu verzichten, gibt es nur zwei Möglichkeiten:
Option 1 ist nur dann eine Wahl, wenn man entweder Zugriff auf ein großes Schriftartenportfolio und/oder zuviel Geld übrig hat. Option 2 dürfte für die meisten Anwender die bessere Wahl sein:
Man durchsucht das Verzeichnis "/etc/fonts/conf.avail" nach allen Vorkommen von "Nimbus" (Sind in der Regel drei Dateien) und löscht dann alle Zeilen die für die Substitution sorgen. Die meiste Arbeit hat man mit der Datei "30-metric-aliases.conf". Hier muss man alle Zeilen zwischen den Kommentaren "Postscript" und "Microsoft" löschen (Sind mehrere Blöcke). In den anderen Dateien ist die Arbeit einfacher.
Nach dieser Änderung werden keine Schriften mehr ersetzt und die Darstellung sieht deutlich angenehmer aus.
Danke für die Erklärung! Warum ist sowas nicht standardmäßig in den Distros? Wo müsste man anfragen, um die standardmäßige Font-Konfiguration anzupassen?
https://wiki.archlinux.org/index.php/font_configuration
oder
https://wiki.ubuntuusers.de/Schriften/
Das Thema ist nicht ganz einfach, da einem Fontconfig sehr vielfältige Einstellmöglichkeiten erlaubt.
Edit:
Ich spiele gerade mal mit den Fontconfig-Dateien herum. Ich habe die Dateien jetzt bei mir mal so abgeändert, dass anstatt der "Nimbus"-Schriftfamilie die "Liberation-Fonts" benutzt werden. Hier mal ein Link zu den Dateien:
30-metric-aliases.conf
45-latin.conf
60-latin.conf
Diese Dateien einfach nach "/etc/fonts/conf.available" kopieren. Vorher sollte man aber die Original-Dateien sichern.
Dieser Beitrag wurde 1 mal editiert. Zuletzt am 14. Sep 2016 um 12:55.Klappt danke!
~/.config/fontconfig/conf.d geht übrigens auch, dann braucht man auch nicht die Original-Dateien sichern.
Könnte man nicht nen Bug report bei den distros erstellen?
Vielleicht eine naive Frage, aber wenn die FontEngine "Helvetica" erwartet, kann ich dann nicht einfach einen symbolischen Link (oder eine Kopie) von "Liberation Sans" (oder Arial oder Calibri so Lizenz vorhanden) auf "Helvetica"?
also soetwas wie:
copy liberation sans.ttf helvetica.ttf
?
Der Dateiname muss nicht dem Namen der Schrift entsprechen. In der Schriftart sind Metadaten hinterlegt, die deren Namen festlegen. Ein einfacher symbolischer Link würde also nicht helfen.
das Interessante an dieser Nachricht ist für mich, dass die Programmierer eine neue Technik entwickelt haben um das patentierte Subpixel hinting zu ersetzten: "Freies Projekt schlägt proprietäre Software".
Es ist für mich ein Unding, dass so was notwendig ist...