Warum sehen Schriften unter Mac OS X manchmal „fett“ aus?

19

Beim Fortsetzen nach dem Anhalten sehen die Schriftarten unter Mac OS X manchmal "fetter" aus als normal. Leider kann ich mein Macbook Pro derzeit nicht dazu bringen, das "normale" Verhalten zum Vergleich zu zeigen. Es war gestern und heute abnormal. Wenn ich Screenshots von dem bekomme, was ich für "normal" halte, füge ich sie hinzu.

"Fixing" das war zufällig. Ich verwende einen externen Monitor, und manchmal hat es funktioniert, wenn ich den Stecker herausgezogen und wieder eingesteckt habe oder ihn aus- und wieder eingeschaltet habe. Manchmal funktioniert das Erkennen von Displays, wenn das Display angeschlossen ist (oder nicht). Manchmal ist es erforderlich, sich abzumelden oder einen Neustart durchzuführen.

Verwendete Displays:

Software, bei der ich dies sehe, zumindest am deutlichsten:

  • Firefox (Screenshots unten)
  • iTerm
  • Dinge
  • MacIrssi (Screenshots unten)

Ich verwende Mac OS X 10.5.8.

"Abnormale" Ansicht von MacIrssi mit Inconsolata 16 pt.

abnormal (Macirssi)

"Abnormal" -Ansicht von Firefox.

anormal (Firefox)

Schließlich bekam es zurück zu wechseln, obwohl nach dem Fortsetzen von seinem Rücken zu "Fett" :-(.

normal (Macirssi)

Und "normal" in Firefox:

normal (Firefox)

jtimberman
quelle
Wie bringen Sie die Schriftarten dazu, wieder normal zu werden? Neustart?
Stephen Jennings
Bisher war es zufällig. Manchmal funktioniert das Erkennen von Bildschirmen, wenn ich meinen externen Monitor ein- oder ausschalte oder das Abziehen und Anschließen von Werken durchführe. Deshalb stelle ich diese Frage, nehme ich an :-).
JTIMBERMAN
@Arjan, ich habe den Beitrag aktualisiert. Es ist im Moment "abnormal".
Jtimberman
1
Können Sie jetzt einen Screenshot der "abnormalen" Version hinzufügen?
Brian Campbell
Weil sie glücklicher sind und sich bei Apple wohler fühlen ... und sozusagen "alles hängen lassen" und in ihrer angenehmen Fettigkeit schmollen. Und deshalb sehen einige Schriften auf einem Mac fetter aus ...

Antworten:

21

Das Problem tritt auf, wenn Sie die Bilder vergrößern:

Vergrößerter Screenshot von "fetten" Schriftarten mit farbigen Pixeln
Vergrößerter Screenshot von "dünnen" Schriftarten mit Graustufenpixeln

Wie Sie sehen können, ist die dünne Version vollständig in Graustufen gehalten, während die fette Version einige Pixel aufweist, die leicht rötlich und einige leicht bläulich sind.

Dies tritt aufgrund von Subpixel-Anti-Aliasing auf . Ein LCD-Bildschirm enthält eigentlich keine quadratischen Pixel, die eine beliebige Farbe haben können. stattdessen hat es drei dünne rechteckige Elemente, die rot, grün und blau sind. (Bilder unten aus Wikipedia).

Pixelmuster auf verschiedenen Displays

Beim Antialiasing von Schriftarten können Sie anstelle von einfachen Graustufen die Intensität jeder der drei Farben variieren, damit Sie mit der dreifachen horizontalen Auflösung rendern können, die Sie durch einfaches Antialiasing mit Graustufen erzielen. Die vergrößerten Bilder, die ich zur Verfügung gestellt habe, stellen nicht wirklich dar, was Sie sehen; Stattdessen sollten die Schriftarten aufgrund der Form und Platzierung der Pixel wesentlich glatter aussehen. Es wäre genauer, es so zu rendern:

Beispiel für Anti-Aliasing-Text mit Subpixeln

Sie sehen also, dass die Schrift manchmal mit Subpixel-Anti-Aliasing und manchmal mit normalem Anti-Aliasing gerendert wird. Ich würde vermuten, dass die verwendeten Subpixel-Antialiasing-Algorithmen für schwarzen Text auf weißem Hintergrund optimiert sind, was möglicherweise erklärt, warum der Text als weißer Text auf schwarzem Hintergrund etwas "fett" aussieht.

Andererseits kann es sich einfach um eine genauere Wiedergabe der tatsächlichen Schriftart handeln. Wenn Sie sich eine richtig vergrößerte Version der gleichen Schriftart ansehen, sieht sie etwas kühner und weniger verworren aus als die oben gezeigte "dünne" Version:

Beispieltext mit höherer Schriftgröße

Der Grund für das Hin- und Herwechseln zwischen den beiden Versionen liegt wahrscheinlich an Ihrem zweiten Monitor. Ich weiß nicht genau, wann oder wie das Betriebssystem dies entscheidet, aber es erkennt wahrscheinlich ein LCD mit einem unbekannten Subpixel-Layout. Da das Layout der Pixel nicht bekannt ist, wird das sicherere Standard-Anti-Aliasing verwendet (da das Anti-Aliasing von Subpixeln auf einem LCD-Bildschirm mit falschem Layout sehr seltsam aussehen kann). Es scheint so, als ob Sie manchmal eine Entscheidung treffen und manchmal die andere. Ich glaube, dass sich eine Anwendung, die in einem bestimmten Rendering-Modus gestartet wurde, erst ändert, wenn Sie sie beenden und erneut starten. Dies erklärt, warum Sie ein fehlerhaftes Verhalten feststellen.

Wenn Sie dies einfach für alle Anwendungen konsistent machen möchten, unabhängig davon, ob Sie das zweite LCD verwenden oder nicht, und immer die schmalen Schriftarten verwenden möchten, können Sie die Schriftartenglättung in der Systemeinstellung "Darstellung" einfach deaktivieren:

Markieren Sie in der Systemeinstellung "Darstellung" die Option "LCD-Schriftglättung verwenden, wenn verfügbar"

Natürlich verliert man dann überall Subpixel-Anti-Aliasing. Wie John Rudy betont, können Sie die Steuerung etwas feiner gestalten, indem Sie die Anweisungen zum manuellen Einstellen des Pegels mit dem defaultsProgramm befolgen. Wenn Sie noch nicht mit Snow Leopard arbeiten, sollten Sie in den Systemeinstellungen über detailliertere Steuerelemente verfügen.

Brian Campbell
quelle
Zu Ihrer Information: Ich erziele die besten Ergebnisse auf meinen Laptop-Bildschirmen, wenn ich das Kontrollkästchen "LCD-Schriftglättung verwenden, wenn verfügbar" deaktiviere.
Jtimberman
12

Es sieht nach Unterschieden beim Anti-Aliasing aus. Dies kann sinnvoll sein, wenn Sie dieses Verhalten beim Anhalten / Fortsetzen und beim Verbinden / Trennen des externen Monitors beobachten. Möglicherweise löst Ihr Dell-Monitor eine Änderung des vom System verwendeten Anti-Aliasing-Modus aus.

Abhängig von Ihrer Version von Mac OS X haben Sie möglicherweise Optionen zum Steuern der vom System verwendeten Schriftartenglättung im Fenster "Systemeinstellungen für das Erscheinungsbild". (Ab Snow Leopard wird nur ein Kontrollkästchen zum Verwenden der LCD-Schriftglättung angezeigt, wenn verfügbar. Dies scheint der alten Einstellung "Automatisch - Optimal für Hauptanzeige" zu entsprechen.)

Sie können dies weiterhin über Systemeigenschaften in Terminal.app konfigurieren. Dieser Artikel erklärt die Details, die ich unten zusammenfassen werde:

Es gibt fünf Einstellungen für die Schriftglättung:

  1. Automatisch - Am besten für Hauptanzeige
  2. Standard - Optimal für CRT (Option 1)
  3. Licht (Option 2)
  4. Mittel - Optimal für Flachbildschirme (Option 3)
  5. Stark (Option 4)

Verwenden Sie Terminal.app, um diese Eigenschaft systemweit zu ändern, damit Sie sich nicht mehr in der automatischen Welt befinden. Ich vermute, wenn Sie dies tun, sollte das Umschalten der Anzeige (zwischen Monitoren und ich vermute, dass Ihr Bildschirmschoner für das Anhalten / Fortsetzen) nicht mehr mit Ihren Einstellungen in Konflikt geraten.

Geben Sie in Terminal.app Folgendes ein:

    defaults -currentHost write -globalDomain AppleFontSmoothing -int 2

Ändern Sie die 2gewünschte Option (verwenden Sie in der obigen Liste die Optionsnummern nach dem Text).

John Rudy
quelle
Großartige Referenz! Sein „statt LCDs basieren auf berichten , welche Einstellungen verwendet werden sollte , “ könnte in der Tat verursachen plötzliche Veränderungen, denke ich.
Arjan
Ich verwende iTerm, nicht Terminal.app, und die Monospace-Screenshots stammen von Macirssi.
Jtimberman
Da ich Leopard und nicht Snow Leopard verwende, ist die Option in den Systemeinstellungen -> Darstellung verfügbar. "Standard ... CRT" sieht auf dem MacBook-Display "normal" aus, obwohl ich warten muss, bis ich morgen wieder im Büro bin, um das externe LCD zu überprüfen.
jtimberman
2
@jtimberman, da ich iTerm und nicht Terminal verwende. Beachten Sie, dass der von John gegebene Befehl nur Terminal nicht beeinflusst. Sie können es auch mit iTerm ausführen.
Arjan
0

Wenn Sie eine CRT verwenden, können Sie in der Zeit bis zum vollständigen Aufwärmen der CRT mit einer gewissen Verzerrung von Farben, Helligkeit und Seitenverhältnis rechnen. Welchen Monitor benutzen Sie?

Charles Stewart
quelle
Internes MacBook-LCD-Display. Ich besitze nicht einmal mehr eine CRT.
Jtimberman