JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 253502
  • Score
    100M100P100Q191806F
  • License MIT

Parse or stringify CSS font property.

Package Exports

  • css-font
  • css-font/stringify

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (css-font) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

css-font unstable Travis Build Status

Parse or stringify the CSS font property string.

Usage

npm install css-font

var font = require('css-font');

var obj = font.parse('small-caps 1rem/1.2 "Roboto Condensed", sans-serif');

/*
{
    size: '1rem',
    lineHeight: 1.2,
    variant: 'small-caps',
    family: ['Roboto Condensed', 'sans-serif']
}
*/

font.stringify(obj)

// '1rem "Roboto Condensed", sans-serif'

See the tests for more scenarios.

API

obj = font.parse(str)

Return object with font properties from the CSS font string. Detected properties:

Property Meaning
style Font-style detected by css-font-style-keywords.
variant Font-variant, one of normal or small-caps.
weight Font-weight detected by css-font-weight-keywords.
stretch Font-stretch detected by css-font-stretch-keywords.
size Font-size detected by css-font-size-keywords.
lineHeight Line-height value.
family Font-family array of values.

str = font.stringify(obj)

Return string from the object with font properties by the CSS font syntax.

Stringified properties:

Property Meaning
style, fontStyle, distrinction Font-style value.
variant, fontVariant, capitalization Font-variant value, one of normal or small-caps.
weight, fontWeight Font-weight value, one of the set of weights (see above).
stretch, fontStretch, width Font-stretch value, one of the set (see above).
size fontSize, height Font-size value, number or a string. Number is considered a px units. If undefined, 1rem is used.
lineHeight, leading Line-height value, number or string. Number is considered a unitless ratio value.
family, fontFamily, face Font-family, string or a list with strings. Not default strings are wrapped to quotes.
system Reserved system word.

Testing

$ npm test

This will run tests and generate a code coverage report. Anything less than 100% coverage will throw an error.

Acknowledgement

License

© 2018 Dmitry Yv. MIT License

Development supported by plot.ly.