2010-08-03 3 views

Antwort

8

FYI, das passiert auch in Firefox unter Linux (und nicht in Chrom). Ich habe versucht, Ihre Schrift in FontForge zu laden und bekam sofort eine Warnung:

Die folgende Tabelle (n) in der Schrift von Fontforge wurde ignoriert
Ignorieren ‚LTSH‘ lineare Schwellenwerttabelle
Ignorieren ‚VDMX "vertikale Vorrichtung Metriken Tabelle
Ignoriert‚hdmx‘horizontal Gerät Metriken Tabelle

ich denke, das Problem ist, dass die Tabelle ist VDMX (Vertical Device Metrics) defec t:

Um zu vermeiden grid Einpassen des gesamte Schrift die richtige Höhe zu bestimmen, hat sich die VDMX Tabelle gewesen definiert.

Das sieht genau so aus, was in Firefox passiert: irgendwo wird die minimale und maximale Höhe falsch berechnet. Dies wird auch deutlich, wenn Sie den Text auswählen: Das Auswahlfeld erstreckt sich bis zum äußersten oberen und unteren Rand der Linie. Wenn das Element h1 wirklich über eine Füllung verfügte, würden Sie eine Lücke zwischen dem oberen und unteren Rand der Linie und dem Auswahlfeld sehen.

Auch Validierung ergab, dass fast jeder Glyphe „missing points at extrema“ ist:

Sowohl PostScript- und Truetype würde wie Sie Punkte an den Maxima und Minima (die Extrema) eines Weges zu haben.

Ein kurzen search zeigte:

Das einzige andere Problem, das ich ein ziemlich unangenehmer Zustand "Missing Punkte bei Extrema" genannt hatte, war. Bei einer Schriftart muss ein Punkt (oder ein Knoten, wie heißen Inkscape) unter ganz links, rechts, oben und unten von eine Glyphe sein.Normalerweise sind sie da sowieso nur wegen der Art und Weise Ihre Glyphe gebaut, aber diagonale Linien mit abgerundeten Enden verursachen oft Probleme [source, including picture (scroll down)]

+0

Danke für eine sehr gute Antwort! Ich benutze auch GNU/Linux. Ich weiß nicht, wie es in anderen Systemen aussieht. Wie kann ich diese fehlende Information jedoch der Schriftart hinzufügen? Wie Chrome eigentlich richtig rät, sollte es genug Informationen in der Schriftart geben, die es ziemlich einfach zu definieren machen. Aber wie? – Johan

+0

@Johan - Ich bin mir nicht sicher. Wenn die EULA der Schrift erlaubt, können Sie versuchen, die Schriftart mit FontForge selbst zu bearbeiten und sehen, ob dies hilft. Ich bin kein FontForge-Experte, aber meine Antwort ist nur eine fundierte Vermutung. –

+0

Wie auch immer, deine Antwort ist zu gut, um nicht angenommen zu werden. Ich habe versucht, es in fontforge zu laden und zu speichern und dann sieht es in FF und Chrome gleich aus. Beide machen es wie FF von Anfang an. Es gibt Tonnen und Tonnen von Parametern in fontforge. Ich werde eine Weile mit ihnen spielen, dann werde ich aufgeben. :) – Johan

0

Just Add:

line-height:1; 

auf Ihre CSS-Regeln

+0

Obwohl dies nicht die Antwort zu sein scheint, ist es eine gültige Aussage: Firefox kann Zeilenhöhen unter 1 rendern, während Chrome nicht kann, was (mit geerbten Zeilenhöhen) auch zu ähnlichen Situationen führen kann. – Paracetamol