font-details
TypeScript icon, indicating that this package has built-in type declarations

0.1.0 • Public • Published

font-details

About

This package allows for easy testing of what size a string from a font will be when it is rendered

Usage

import { getFontDetails } from "font-details";
function main(): TextMetrics {
 const details = getFontDetails(10, "monospace");
 //Gets the details of "10px monospace" with the character 'a'
 return details;
}
// Returns
{
  "actualBoundingBoxAscent": 5,
  "actualBoundingBoxDescent": 0,
  "actualBoundingBoxLeft": 0,
  "actualBoundingBoxRight": 5,
  "fontBoundingBoxAscent": 9,
  "fontBoundingBoxDescent": 3,
  "width": 5.498046875
}

Properties can just be directly returned

function getWidthExample(): number {
 const details = getFontDetails(10, "monospace");
 //Gets the details of "10px monospace" with the character 'a'
 return details.width; // 5.498046875, in this case
}

Custom strings can also be used

The default string used for measuring text is simply "a"

function customStringExample(): number {
 const details = getFontDetails(10, "monospace", "ab");
 //Gets the details of "10px monospace" with the character 'a'
 return details.width; // 10.99609375, in this case
}

As this font is monospace, the width of "ab" is double the width of "a", as each glyph has the same width. This isn't the case for most fonts, where different letters have different widths

If you like this package, leave it a star on github:

Tommypop2 - font-details stars - font-details

Readme

Keywords

none

Package Sidebar

Install

npm i font-details

Weekly Downloads

20

Version

0.1.0

License

MIT

Unpacked Size

5.35 kB

Total Files

7

Last publish

Collaborators

  • thomas_beer