
Security News
ECMAScript 2025 Finalized with Iterator Helpers, Set Methods, RegExp.escape, and More
ECMAScript 2025 introduces Iterator Helpers, Set methods, JSON modules, and more in its latest spec update approved by Ecma in June 2025.
@capsizecss/unpack
Advanced tools
Unpack the capsize font metrics directly from a font file.
npm install @capsizecss/unpack
fromBuffer
Takes a buffer and returns the resolved font metrics.
import { fromBuffer } from '@capsizecss/unpack';
const metrics = await fromBuffer(buffer);
fromBlob
Takes a file blob and returns the resolved font metrics.
import { fromBlob } from '@capsizecss/unpack';
const metrics = await fromBlob(file);
fromUrl
Takes a url string and returns the resolved font metrics.
import { fromUrl } from '@capsizecss/unpack';
const metrics = await fromUrl(url);
fromFile
Takes a file path string and returns the resolved font metrics.
import { fromFile } from '@capsizecss/unpack';
const metrics = await fromFile(filePath);
All of the above APIs accept an optional second parameter with the following options:
postscriptName
Capsize can extract the metrics for a single font from a TrueType Collection (TTC) file by providing the postscriptName
.
import { fromFile } from '@capsizecss/unpack';
const metrics = await fromFile('AvenirNext.ttc', {
postscriptName: 'AvenirNext-Bold',
});
The font metrics object returned contains the following properties:
Property | Type | Description |
---|---|---|
familyName | string | The font’s family name as authored by font creator |
fullName | string | The font’s full name as authored by font creator |
postscriptName | string | The font’s unique PostScript name as authored by font creator |
category | string | The style of the font: serif, sans-serif, monospace, display, or handwriting. |
capHeight | number | The height of capital letters above the baseline |
ascent | number | The height of the ascenders above baseline |
descent | number | The descent of the descenders below baseline |
lineGap | number | The amount of space included between lines |
unitsPerEm | number | The size of the font’s internal coordinate grid |
xHeight | number | The height of the main body of lower case letters above baseline |
xWidthAvg | number | The average width of character glyphs in the font for the selected unicode subset. Calculated based on character frequencies in written text, falling back to the built in xAvgCharWidth from the OS/2 table. |
subsets | { [subset]: { xWidthAvg: number } } | A lookup of the xWidthAvg metric by subset (see supported subsets) |
MIT.
FAQs
Unpack capsize font metrics from fonts
The npm package @capsizecss/unpack receives a total of 344,271 weekly downloads. As such, @capsizecss/unpack popularity was classified as popular.
We found that @capsizecss/unpack demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
ECMAScript 2025 introduces Iterator Helpers, Set methods, JSON modules, and more in its latest spec update approved by Ecma in June 2025.
Security News
A new Node.js homepage button linking to paid support for EOL versions has sparked a heated discussion among contributors and the wider community.
Research
North Korean threat actors linked to the Contagious Interview campaign return with 35 new malicious npm packages using a stealthy multi-stage malware loader.