Скачание сценария CSS -файла с помощью шрифтов и адаптировать его к работе в закрытой среде/офлайн. Полезно, например, когда проект должен работать в сети без подключения к Интернету или когда вы делаете приложение на основе таких проектов, как электрон.
Сценарий может быть «установлен» вручную путем клонирования ./main.js файл или с NPM:
npm install get-google-fonts
Например, CSS с шрифтами, используемыми подобным образом:
< link href =' https://fonts.googleapis.com/css?family=Roboto:400,700&subset=cyrillic ' rel =' stylesheet ' >Можно заменить на:
< link href =' fonts/fonts.css ' rel =' stylesheet ' > Используя в командной строке это возможно, когда сценарий установлен как global или вы знаете полный путь к файлу cli.js По умолчанию NPM предпочтет устанавливать скрипт как глобальный, и после того, как эти сценарии поделились файлом в каталоге Bin с именем get-google-fonts . Тогда вы можете просто использовать эту команду в любом месте.
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
Чтобы получить результат, как в примере, просто введите команду в папке с помощью файла HTML:
get-google-fonts -i "https://fonts.googleapis.com/css?family=Roboto:400,700&subset=cyrillic"
Глупные фигуры могут потребоваться в качестве модуля.
const GetGoogleFonts = require ( 'get-google-fonts' ) ; Чтобы получить результат, как в примере, просто создайте объект и запустите метод download .
new GetGoogleFonts ( ) . download ( 'https://fonts.googleapis.com/css?family=Roboto:400,700&subset=cyrillic' )
// => PromiseВо всех модуле есть три полезных метода.
Параметры:
config позволяет вам предварительно сконфигурировать все загрузки, выполненные этим объектом. Смотрите больше ... [Необязательно]Пример:
let ggf_ttf = new GetGoogleFonts ( {
userAgent : 'Wget/1.18'
} )
let ggf_defaults = new GetGoogleFonts ( )Параметры:
url URL для CSS в виде объекта шрифтов или простой строки. Может быть множество аргументов, ведьма будет передаваться через getgooglefonts.constructurl ().config позволяет настроить эту загрузку. Смотрите больше ... [Необязательно]Пример:
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!' )
} )Сгенерировать URL -адрес Google шрифтов с использованием заданных параметров.
Параметры:
families объекты имен и веса шрифтовsubsets подмножестваПример:
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 Объекты будут рассмотрены следующим образом: Загрузить конфигурация> getGoogleFonts объект конфигурация> конфигурация по умолчанию
// 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
} В шаблоне можно использовать следующие переменные:
{comment} текст из комментария, размещенного до @font-face. Google Place там название подмножества, например, латин{family} Фонт-семью, например, источник Sans Pro{_family} font-family (пробел будет заменен подчеркиванием), например, Source_sans_pro{weight} Font-Weight Eg 400{filename} Имя исходного файла eg odeli1ahbydbqgeiah2zlc2q8seg17bfdxyr_jusrzg{ext} исходное расширение, например, woff2{i} число, которое увеличивается один за другим каждый раз, когда добавляется файл шрифта. Полезно сохранить уникальность имен шрифтов, если вы не уверены, достаточно ли предыдущих переменных. Это начинается с 1. Этот проект лицензирован по лицензии Apache -2.0 - см. Файл License.md для получения подробной информации