Script Téléchargement du fichier CSS avec des polices et adaptez-le au travail dans un environnement fermé / hors ligne. Utile par exemple lorsque le projet doit être exécuté en réseau sans connexion avec Internet ou lorsque vous créez une application en fonction de projets comme Electron.
Le script peut être "installé" manuellement par le fichier de clonage ./main.js ou avec NPM:
npm install get-google-fonts
Par exemple CSS avec des polices utilisées comme ceci:
< link href =' https://fonts.googleapis.com/css?family=Roboto:400,700&subset=cyrillic ' rel =' stylesheet ' >Peut être remplacé par:
< link href =' fonts/fonts.css ' rel =' stylesheet ' > En utilisant dans la ligne de commande, il est possible lorsque le script est installé comme global ou que vous connaissez le chemin complet vers le fichier cli.js Par défaut, NPM préférera installer le script en tant que global et après ces scripts partagera le fichier dans le répertoire bin nommé get-google-fonts . Ensuite, vous pouvez juste utiliser cette commande n'importe où.
Usage:
get-google-fonts [OPTIONS] [ARGS]
Options:
-i, --input URL Input URL of CSS with fonts
-o, --output [STRING] Output directory (Default is ./fonts)
-p, --path [STRING] Path placed before every source of font in CSS (Default is ./)
-c, --css [STRING] Name of CSS file (Default is fonts.css)
-t, --template [STRING] Template of font filename (Default is {_family}-{weight}-{comment}{i}.{ext})
-u, --useragent STRING User-agent used at every connection
-q, --quiet Don't displays a lot of useful information
-b, --base64 Save fonts inside CSS file as base64 URIs
--non-strict-ssl Force to accepts only valid SSL certificates; in some
cases,such proxy or self-signed certificates
should be turned off
-w, --overwriting Allows overwrite existing files
--print-options Shows result options object without performing any
action
-s, --simulate Simulation; No file will be saved
-h, --help Display help and usage details
Pour obtenir un résultat comme l'exemple, entrez simplement la commande dans le dossier avec le fichier html:
get-google-fonts -i "https://fonts.googleapis.com/css?family=Roboto:400,700&subset=cyrillic"
Les portes Get-Google peuvent être nécessaires en tant que module.
const GetGoogleFonts = require ( 'get-google-fonts' ) ; Pour obtenir des résultats comme par exemple, créez simplement l'objet et exécutez la méthode download .
new GetGoogleFonts ( ) . download ( 'https://fonts.googleapis.com/css?family=Roboto:400,700&subset=cyrillic' )
// => PromiseIl existe trois méthodes utiles dans tous les modules.
Paramètres:
config vous permet de préconger tous les téléchargements effectués par cet objet. Voir plus ... [Facultatif]Exemple:
let ggf_ttf = new GetGoogleFonts ( {
userAgent : 'Wget/1.18'
} )
let ggf_defaults = new GetGoogleFonts ( )Paramètres:
url URL vers CSS en tant qu'objet polices ou chaîne ordinaire. Peut être un éventail d'arguments que la sorcière sera transmise par GetGooglefonts.ContructUrl ().config vous permet de configurer celle-ci les téléchargements. Voir plus ... [Facultatif]Exemple:
ggf . download ( [
{
Roboto : [ 400 , 700 ]
} ,
[ 'cyrillic' ]
] ) . then ( ( ) => {
console . log ( 'Done!' )
} ) . catch ( ( ) => {
console . log ( 'Whoops!' )
} )
// or
ggf . download ( 'https://fonts.googleapis.com/css?family=Roboto:400,700&subset=cyrillic' , {
userAgent : 'Wget/1.18'
} ) . then ( ( ) => {
console . log ( 'Done!' )
} ) . catch ( ( ) => {
console . log ( 'Whoops!' )
} )Générez l'URL des polices Google en utilisant des paramètres donnés.
Paramètres:
families Objet des noms et des poids des policessubsets de sous-ensembles de sous-ensemblesExemple:
GetGoogleFonts . constructUrl (
{
Roboto : [ '400' , 700 ] ,
'Roboto' : [ 400 , '700i' ] ,
'Alegreya Sans SC' : [ 300 ]
} ,
[ 'cyrillic' ]
)
// => https://fonts.googleapis.com/css?family=Roboto:400,700,700i|Alegreya+Sans+SC:300&subset=cyrillic Les objets seront pris en compte comme suit: Télécharger la configuration> GetGoogleFonts Config Config> Configage par défaut
// Default config object
{
// Output directory when where all files will be saved.
// According to this path, relative paths will be resolved.
outputDir : './fonts' ,
// Path placed before every source of font in CSS.
// It's also can be URL of your website.
path : './' ,
// Template of font filename.
template : '{_family}-{weight}-{comment}{i}.{ext}' ,
// Name of CSS file. Like other files
// will be placed relative to output directory
cssFile : 'fonts.css' ,
// User-agent used at every connection. Accordingly, Google Fonts will
// send the appropriate fonts. For example, providing a wget's
// user-agent will end with the download of .ttf fonts.
// Default user-agent downloads .woff2 fonts.
userAgent : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 ' +
'(KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36' ,
// Save fonts inside CSS file as base64 URIs
base64 : false ,
// Force to accepts only valid SSL certificates; in some cases,
// such proxy or self-signed certificates should be turned off
strictSSL : true ,
// Allows overwrite existing files.
overwriting : false ,
// Displays a lot of useful information.
verbose : false ,
// Simulation; No file will be saved.
simulate : false
} Les variables suivantes peuvent être utilisées dans le modèle:
{comment} Texte du commentaire placé avant @ font-face. Google place le nom du sous-ensemble par exemple latin{family} Font-Family Eg Source Sans Pro{_family} Font-Family (Whitespace sera remplacé par un soulignement).{weight} Police-poids par exemple 400{filename} Nom du fichier d'origine par exemple ODELI1AHBYDBQGEIAH2ZLC2Q8SEG17BFDXYR_JUSRZG{ext} Extension originale par exemple Woff2{i} Un nombre incrémenté un par un à chaque fois qu'un fichier de police est ajouté. Utile pour préserver le caractère unique des noms de police au cas où vous ne soyez pas sûr si les variables précédentes suffisent. Il commence à partir de 1. Ce projet est sous licence sous la licence Apache-2.0 - voir le fichier licence.md pour plus de détails