Ich muss einige Google-Schriftarten in einer Intranet-Anwendung verwenden. Die Kunden können eine Internetverbindung haben oder nicht. Beim Lesen der Lizenzbedingungen scheint dies gesetzlich zulässig zu sein.
fonts
google-font-api
Samarth Bhargava
quelle
quelle
fonts.googleapis.com/css?
je nach UA-Header (sprich: Ihr Browser) unterschiedliche Antworten zurück. ➝ Sie liefern also nur das, was der aktuelle Browser benötigt. Wenn Sie alle benötigten Schriftarten (oder auch nur die URLs) erhalten möchten, benötigen Sie mehrere Ladevorgänge der CSS-Datei von verschiedenen Browsern bzw.. mit verschiedenen gefälschten Headern, um alles zu bekommen, was benötigt wird.Antworten:
Bitte denken Sie daran, dass meine Antwort sehr gealtert ist.
Im Folgenden finden Sie weitere technisch anspruchsvollere Antworten, z.
localfontLassen Sie sich also nicht von der Tatsache, dass dies die derzeit akzeptierte Antwort ist, den Eindruck erwecken, dass dies immer noch die beste ist.
Sie können jetzt auch den gesamten Schriftsatz von Google über github in dessen Google / Font- Repository herunterladen . Sie bieten auch eine ~ 420 MB Zip-Momentaufnahme ihrer Schriftarten .
Sie laden Ihre Schriftartenauswahl zunächst als komprimiertes Paket herunter und erhalten eine Reihe von echten Schriftarten. Kopieren Sie sie an einen öffentlichen Ort, auf den Sie von Ihrem CSS aus verlinken können.
Auf der Download-Seite für Google Webfont finden Sie einen Include-Link wie folgt:
Es ist über eine Reihe von Definitionen mit einem CSS verknüpft, das die Schriftarten
@font-face
definiert.Öffnen Sie es in einem Browser, um sie zu kopieren und in Ihr eigenes CSS einzufügen, und ändern Sie die URLs so, dass sie die richtigen Schriftdatei- und Formattypen enthalten.
Also das:
wird dies:
Wie Sie sehen können, besteht ein Nachteil beim Hosten der Schriftarten auf Ihrem eigenen System darin, dass Sie sich auf das wahre Schriftformat beschränken, während der Google Webfont-Dienst vom Zugriffsgerät bestimmt, welche Formate übertragen werden.
Außerdem musste ich
.htaccess
meinem Verzeichnis eine Datei hinzufügen , die die Schriftarten enthält, die MIME-Typen enthalten, um zu verhindern, dass Fehler in Chrome Dev Tools auftauchen.Für diese Lösung wird nur der wahre Typ benötigt, aber das Definieren von mehr schadet nicht, wenn Sie auch verschiedene Schriftarten einschließen möchten, wie z
font-awesome
.quelle
Es gibt ein Tool localfont.com, mit dem Sie alle Schriftvarianten herunterladen können. Es generiert auch das entsprechende CSS für die Implementierung.veraltetlocalfont ist ausgefallen. Stattdessen können Sie, wie Damir vorschlägt , den Google-Webfonts-Helper verwenden
quelle
Gute Lösung ist Google-Webfonts-Helfer .
Sie können mehr als eine Schriftvariante auswählen, was viel Zeit spart.
quelle
latin-ext
Schriftarten.Ich habe ein Bash-Skript geschrieben , das die CSS-Datei auf den Servern von Google mit verschiedenen Benutzeragenten abruft, die verschiedenen Schriftformate in ein lokales Verzeichnis herunterlädt und eine CSS-Datei mit diesen schreibt. Beachten Sie, dass das Skript Bash Version 4.x benötigt.
Das Skript finden Sie unter https://neverpanic.de/blog/2014/03/19/downloading-google-web-fonts-for-local-hosting/ (ich reproduziere es hier nicht, daher muss ich es nur aktualisieren ein Ort, an dem ich muss).
Bearbeiten: Verschoben nach https://github.com/neverpanic/google-font-download
quelle
Der Inhalt der CSS-Datei (von der Include-URL) hängt davon ab, in welchem Browser ich sie ansehe. Wenn Sie beispielsweise mit Chrome zu http://fonts.googleapis.com/css?family=Open+Sans navigieren, enthielt die Datei nur WOFF-Links. Mit dem Internet Explorer (unten) wurden sowohl EOT als auch WOFF eingeschlossen. Ich habe alle Links in meinen Browser eingefügt, um sie herunterzuladen.
Wenn Sie Ihre eigenen Web-Schriftarten hosten, müssen Sie eine korrekte Verknüpfung zu jedem Schrifttyp herstellen , ältere Browserfehler beheben usw. Wenn Sie Google Web Fonts (von Google gehostet) verwenden, verknüpft Google automatisch die richtigen Schriftarten für diesen Browser.
quelle
Es ist gesetzlich zulässig, solange Sie sich an die Bedingungen der Lizenz der Schriftart halten - normalerweise an die OFL.
Sie benötigen eine Reihe von Web-Schriftformaten, die vom Font Squirrel Webfont Generator erstellt werden können.
Das OFL verlangte jedoch, dass die Schriftarten umbenannt werden, wenn sie geändert werden. Wenn Sie den Generator verwenden, müssen Sie sie ändern.
quelle
Ich habe ein Skript in PHP geschrieben, das dem von @neverpanic ähnelt und automatisch sowohl das CSS als auch die Schriftarten ( sowohl angedeutet als auch nicht angedeutet ) von Google herunterlädt . Es liefert dann das richtige CSS und die richtigen Schriftarten von Ihrem eigenen Server basierend auf dem User Agent. Es behält seinen eigenen Cache bei, sodass Schriftarten und CSS eines Benutzeragenten nur einmal heruntergeladen werden.
Es ist in einem frühen Stadium, aber es kann hier gefunden werden: DaAwesomeP / php-offline-fonts
quelle
Da Sie alle Schriftarten (oder einige davon) auf Ihrem eigenen Server hosten möchten, laden Sie Schriftarten von diesem Repo herunter und verwenden Sie sie wie gewünscht: https://github.com/praisedpk/Local-Google-Fonts
Wenn Sie dies nur tun möchten, um das mit Google Fonts verbundene Problem beim Zwischenspeichern des Browsers zu beheben, können Sie alternative CDN-Schriftarten verwenden und folgende Schriftarten einschließen:
Oder eine bestimmte Schriftart wie:
quelle
Ich habe grunt-local-googlefont in einer Grunzaufgabe verwendet .
Um sie dann abzurufen:
Beachten Sie, dass ich eine Verzweigung aus dem Original verwende, die beim Abrufen von Schriftarten mit Leerzeichen im Namen besser funktioniert.
quelle
Sie können tatsächlich alle Schriftformatvarianten direkt von Google herunterladen und in Ihr CSS aufnehmen, um sie von Ihrem Server aus bereitzustellen. Auf diese Weise müssen Sie sich keine Sorgen machen, dass Google die Nutzer Ihrer Website verfolgt. Der Nachteil kann jedoch die eigene Serviergeschwindigkeit verlangsamen. Schriftarten sind sehr ressourcenintensiv. Ich habe in dieser Ausgabe noch keine Tests durchgeführt und frage mich, ob jemand ähnliche Gedanken hat.
quelle
Meine Lösung bestand darin, die TTF-Dateien von Google Web-Schriftarten herunterzuladen und dann onlinefontconverter.com zu verwenden .
quelle
Ich habe ein winziges PHP-Skript erstellt, um Download-Links von einer Google Fonts CSS-Import-URL zu erhalten, z. B.: Https://fonts.googleapis.com/css?family=Roboto:400,700|Slabo+27px|Lato:400,300italic,900italic
Sie können dieses Tool hier verwenden: http://nikoskip.me/gfonts.php
Wenn Sie beispielsweise die obige Import-URL verwenden, erhalten Sie Folgendes:
quelle
Wenn Sie Webpack verwenden, könnte Sie dieses Projekt interessieren: https://github.com/KyleAMathews/typefaces
Angenommen, Sie möchten die Roboto-Schriftart verwenden:
Importieren Sie es dann einfach in den Einstiegspunkt Ihrer App (Haupt-JS-Datei):
quelle
Sie können dem Skript folgen, das mit PHP entwickelt wurde. Hier können Sie mithilfe des Skripts Google-Schriftarten herunterladen. Es werden die Schriftarten heruntergeladen und eine CSS-Datei erstellt und in zip archiviert.
Sie können den Quellcode vom GitHub https://github.com/sourav101/google-fonts-downloader herunterladen
quelle
Zusätzlich zu k0pernicus möchte ich Best- Served -Local vorschlagen . Es ist auch ein Bash (v4) -Skript, mit dem Webserver-Betreiber Google-Web-Schriftarten von ihrem eigenen Webserver herunterladen und bereitstellen können. Zusätzlich zu dem anderen Bash-Skript kann der Benutzer die Bereitstellung aktueller Schriftdateien und CSS-Dateien (über Cron und dergleichen) vollständig automatisieren.
quelle
Es gibt ein sehr einfaches Skript, das in einfachem Java geschrieben ist, um alle Schriftarten von einem Google Web Font-Link herunterzuladen (mehrere Schriftarten werden unterstützt). Außerdem wird die CSS-Datei heruntergeladen und an lokale Dateien angepasst. Der Benutzeragent kann angepasst werden, um auch andere Dateien als nur WOFF2 abzurufen. Siehe https://github.com/ssc-hrep3/google-font-download
Die resultierenden Dateien können einfach zu einem Erstellungsprozess hinzugefügt werden (z. B. einem Webpack-Build
vue-webpack
).quelle
Sie können Quellschriftarten von https://github.com/google/fonts herunterladen
Verwenden Sie danach das
font-ranger
Tool, um Ihre große Unicode-Schriftart in mehrere Teilmengen (z. B. Latein, Kyrillisch) aufzuteilen. Mit dem Tool sollten Sie Folgendes tun:Font-Ranger : https://www.npmjs.com/package/font-ranger
PS Sie können dies auch mithilfe der Node.js-API automatisieren
quelle