halten will ich Schriftart Laden auf meiner Website von deferred font loading logic for Smashing Magazine inspiriert verschieben.Konvertierung und Rendering-Webfonts zu base64 - original Look
Hauptteil dieser wird Schriften Base64 konvertieren und Ihre CSS-Datei mit der Vorbereitung. Meine Schritte so weit:
- Wählen Sie Schriftarten auf Google Web Fonts und laden Sie sie herunter.
- Verwenden Font Squirrel Webfont Generator in der Download-TTF-Dateien in CSS-Datei mit Base64 eingebettet WOFF-Schriften (Expertenoptionen -> CSS -> Base64 Encode) zu konvertieren.
- Laden Sie die CSS-Datei asynchron (nicht wichtig hier).
CSS-Schnipsel für Open Sans Bold:
@font-face {
font-family: 'Open Sans';
src: url(data:application/x-font-woff;charset=utf-8;base64,<base64_encoded>) format('woff');
font-weight: 700;
font-style: normal;
}
Das Problem ist, die Schriftarten umgewandelt sieht anders aus. Z.B. hier Open Sans Bold:
Vor allem bemerken Akzente weg und absolut schrecklichen Buchstaben 'a'. Andere Schriftfamilien und -varianten sehen auch sehr merklich anders aus (Verformungen von Größe und Form usw.).
Die Frage ist also: Wie codieren Sie richtig TTF-Dateien von Google Web Fonts (oder einer anderen Quelle) zu base64-Format und es verwenden, um das Ergebnis auf die Originaldatei identisch ist?
ich versuche, genau das gleiche zu tun. Ich habe deine Anweisungen befolgt, aber es funktioniert immer noch nicht. Die Schriftart rendert schlechter als das von Google bediente WOFF. Ich habe auch verschiedene andere Möglichkeiten ausprobiert. Gibt es eine andere Art und Weise? –
Antwort aktualisiert mit der Erklärung, wie man base64 selbst macht und in CSS verwendet. – djangodude
Ich denke, es gibt einen Syntaxfehler im Beispiel. Es sollte ein Komma anstatt ein Semikolon nach Base64 sein also: base64, << kopiert base64 String >> Ansonsten wirklich hilfreich. Vielen Dank. – swervo