1.0.16 • Published 5 years ago

fonts-loader v1.0.16

Weekly downloads
3
License
ISC
Repository
github
Last release
5 years ago

Fonts Loader

Fonts Loader is a small package that simplifies the process of fonts loading. This package uses native CSS Font Loading API in browsers that support it. In other browsers Font Face Observer, a small @font-face loader, is used under the hood.

Installation

Use the package manager npm to install this package.

npm install fonts-loader

Usage

Fonts can be supplied by either a font service or be self-hosted.

import { FontsLoader } from fonts-loader'

const loader = new FontsLoader([
        {
            name: 'Hack', 
            source: 'https://cdnjs.cloudflare.com/ajax/libs/hack-font/3.003/web/fonts/hack-regular.woff',
            descriptor: {
                family:'Hack',
                style: 'normal',
                weight: 'normal'
            }
        },
        {
            name: 'Hanalei',
            source: './fonts/Hanalei-Regular.ttf',
        }
    ]
)

The FontsLoader constructor takes 2 arguments. The first one is list of fonts. You can give both an array of fonts and separate font object.

The element of the array is an object, that contains name, source and descriptor properties. Descriptor can contain next options:

These are used by font machine algorithm, have no other effect.

  • family
  • style
  • weight
  • stretch
  • unicodeRange

These turn on / off specific features in fonts that support them. Underhood package Font Face Observer does not support these.

  • variant
  • featureSettings
  • variantionsettings
  • display

The second optional argument is config. Config can contain such properties as silent (log), error (errors), timer (the default timeout for giving up on font loading is 3 seconds).

Newly created instance of FontsLoader class is thenable object.

Browser support

  • Chrome (desktop)
  • Firefox
  • Edge
  • IE
  • Opera

License

ISC

1.0.16

5 years ago

1.0.15

5 years ago

1.0.14

5 years ago

1.0.13

5 years ago

1.0.12

5 years ago

1.0.11

5 years ago

1.0.10

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago