J'ai besoin d'utiliser des polices google sur une application intranet. Les clients peuvent ou non avoir une connexion Internet. En lisant les termes de la licence, il semble que cela soit légalement autorisé.
fonts
google-font-api
Samarth Bhargava
la source
la source
fonts.googleapis.com/css?
fonction de vos en-têtes UA (lire: votre navigateur)) Ils ne fournissent donc que ce dont le navigateur actuel a besoin. Si l'on veut obtenir toutes les polices nécessaires (ou même seulement les URL), vous aurez besoin de plusieurs chargements du fichier css à partir de différents navigateurs resp. avec différents en-têtes forgés, pour obtenir tout ce dont vous avez besoin.Réponses:
Veuillez garder à l'esprit que ma réponse a beaucoup vieilli.
Il existe d'autres réponses plus sophistiquées techniquement ci-dessous, par exemple:
police localealors ne laissez pas le fait que c'est la réponse actuellement acceptée vous donner l'impression que c'est toujours la meilleure.
Vous pouvez également maintenant également télécharger l'ensemble des polices de google via github dans leur référentiel google / font . Ils fournissent également un instantané ~ 420 Mo de leurs polices .
Vous téléchargez d'abord votre sélection de polices sous forme de package zippé, vous fournissant un tas de polices de type vrai. Copiez-les quelque part public, quelque part, vous pouvez lier à partir de votre CSS.
Sur la page de téléchargement de Google Webfont, vous trouverez un lien d'inclusion comme ceci:
Il relie à un CSS définissant les polices via un tas de
@font-face
définitions.Ouvrez-le dans un navigateur pour les copier et les coller dans votre propre CSS et modifiez les URL pour inclure le bon fichier de police et les bons types de format.
Donc ça:
devient ceci:
Comme vous pouvez le voir, un inconvénient de l'hébergement des polices sur votre propre système de cette façon est que vous vous limitez au véritable format de type, tandis que le service google webfont détermine par l'appareil d'accès quels formats seront transmis.
De plus, j'ai dû ajouter un
.htaccess
fichier dans mon répertoire contenant les polices contenant les types MIME pour éviter que des erreurs n'apparaissent dans Chrome Dev Tools.Pour cette solution, seul le vrai type est nécessaire, mais la définition de plus ne fait pas de mal lorsque vous souhaitez également inclure différentes polices, comme
font-awesome
.la source
Il existe un outil localfont.com pour vous aider à télécharger toutes les variantes de police. Il génère également le CSS correspondant pour l'implémentation.obsolètelocalfont est en panne. Au lieu de cela, comme le suggère Damir , vous pouvez utiliser google-webfonts-helper
la source
La solution idéale est google-webfonts-helper .
Il vous permet de sélectionner plusieurs variantes de police, ce qui vous fait gagner beaucoup de temps.
la source
latin-ext
polices.J'ai écrit un script bash qui récupère le fichier CSS sur les serveurs de Google avec différents agents utilisateurs, télécharge les différents formats de police dans un répertoire local et écrit un fichier CSS en les incluant. Notez que le script nécessite la version 4.x de Bash.
Voir https://neverpanic.de/blog/2014/03/19/downloading-google-web-fonts-for-local-hosting/ pour le script (je ne le reproduis pas ici donc je n'ai qu'à le mettre à jour dans un endroit quand j'en ai besoin).
Modifier: déplacé vers https://github.com/neverpanic/google-font-download
la source
Le contenu du fichier CSS (à partir de l'URL incluse) dépend du navigateur à partir duquel je le visualise. Par exemple, lorsque vous accédez à http://fonts.googleapis.com/css?family=Open+Sans à l' aide de Chrome, le fichier ne contient que des liens WOFF. En utilisant Internet Explorer (ci-dessous), il comprenait à la fois EOT et WOFF. J'ai collé tous les liens dans mon navigateur pour les télécharger.
Lorsque vous hébergez vos propres polices Web, vous devez lier correctement à chaque type de police , gérer les bogues de navigateur hérités, etc. Lorsque vous utilisez Google Web Fonts (hébergé par Google), Google établit automatiquement des liens vers les types de police appropriés pour ce navigateur.
la source
Il est légalement autorisé tant que vous respectez les termes de la licence de la police - généralement l'OFL.
Vous aurez besoin d'un ensemble de formats de polices Web, et le générateur de polices Web Squirrel peut les produire.
Mais l'OFL exigeait que les polices soient renommées si elles étaient modifiées, et l'utilisation du générateur signifie les modifier.
la source
J'ai un script écrit en PHP similaire à celui de @neverpanic qui télécharge automatiquement à la fois le CSS et les polices (avec ou sans indice ) de Google. Il sert ensuite le CSS et les polices corrects à partir de votre propre serveur en fonction de l'agent utilisateur. Il conserve son propre cache, de sorte que les polices et CSS d'un agent utilisateur ne seront téléchargés qu'une seule fois.
C'est à un stade prématuré, mais vous pouvez le trouver ici: DaAwesomeP / php-offline-fonts
la source
Comme vous souhaitez héberger toutes les polices (ou certaines d'entre elles) sur votre propre serveur, vous pouvez télécharger des polices à partir de ce référentiel et les utiliser comme vous le souhaitez: https://github.com/praisedpk/Local-Google-Fonts
Si vous souhaitez simplement résoudre ce problème afin de résoudre le problème de mise en cache du navigateur fourni avec les polices Google, vous pouvez utiliser d'autres polices CDN et inclure des polices telles que:
Ou une police spécifique, comme:
la source
J'ai utilisé grunt-local-googlefont dans une tâche de grognement.
Ensuite, pour les récupérer:
Remarque, j'utilise une fourchette de l'original, qui fonctionne mieux lors de la récupération des polices avec des espaces dans leurs noms.
la source
Vous pouvez réellement télécharger toutes les variantes de format de police directement à partir de Google et les inclure dans votre CSS pour servir à partir de votre serveur. De cette façon, vous n'avez pas à vous soucier du suivi des utilisateurs de votre site par Google. Cependant, l'inconvénient peut ralentir votre propre vitesse de portion. Les polices sont assez exigeantes en ressources. Je n'ai pas encore fait de tests dans ce numéro, et je me demande si quelqu'un a des idées similaires.
la source
Ma solution consistait à télécharger les fichiers TTF à partir des polices Web Google, puis à utiliser onlinefontconverter.com .
la source
J'ai fait un petit script PHP pour obtenir des liens de téléchargement à partir d'une URL d'importation CSS Google Fonts comme: https://fonts.googleapis.com/css?family=Roboto:400,700|Slabo+27px|Lato:400,300italic,900italic
Vous pouvez utiliser cet outil ici: http://nikoskip.me/gfonts.php
Par exemple, si vous utilisez l'URL d'importation ci-dessus, vous obtiendrez ceci:
la source
Si vous utilisez Webpack, vous pourriez être intéressé par ce projet: https://github.com/KyleAMathews/typefaces
Par exemple, dites que vous souhaitez utiliser la police Roboto:
Il suffit ensuite de l'importer dans le point d'entrée de votre application (fichier js principal):
la source
Vous pouvez suivre le script développé en PHP. Où vous pouvez télécharger toutes les polices Google en utilisant le script. Il téléchargera les polices et créera un fichier CSS et une archive à compresser.
Vous pouvez télécharger le code source depuis le GitHub https://github.com/sourav101/google-fonts-downloader
la source
En plus de k0pernicus, je voudrais suggérer le local le mieux servi . Il s'agit également d'un script bash (v4) permettant aux opérateurs de serveurs Web de télécharger et de servir les polices Web Google à partir de leur propre serveur Web. Mais en plus de l'autre script bash, il permet à l'utilisateur d'automatiser entièrement (via cron et autres) la diffusion de fichiers de polices et de fichiers css à jour.
la source
Il existe un script très simple, écrit en simple Java, pour télécharger toutes les polices à partir d'un lien Google Web Font (plusieurs polices prises en charge). Il télécharge également le fichier CSS et l'adapte aux fichiers locaux. L'agent utilisateur peut être adapté pour obtenir également d'autres fichiers que le seul WOFF2. Voir https://github.com/ssc-hrep3/google-font-download
Les fichiers résultants peuvent facilement être ajoutés à un processus de construction (par exemple une construction de type webpack
vue-webpack
).la source
Vous pouvez télécharger les polices sources depuis https://github.com/google/fonts
Après cela, utilisez l'
font-ranger
outil pour diviser votre grande police Unicode en plusieurs sous-ensembles (par exemple latin, cyrillique). Vous devez effectuer les opérations suivantes avec l'outil:Font-Ranger : https://www.npmjs.com/package/font-ranger
PS Vous pouvez également automatiser cela à l'aide de l'API Node.js
la source