Lessons

Font Optimization

Font files contain a vector description of each character and metadata. They also often contain various subtle visual settings.

That's how fine-tuning affects font displays. All these settings are needed for designers, not for websites.
That’s how fine-tuning affects font displays. All these settings are needed for designers, not for websites.

To optimize the font, you need to:

  • Leave only the letters of the alphabet used on the site in the file. The font can contain more than 10 languages, but 2 will be enough for you: the language of your site and the English alphabet to display foreign names of sites, brands, and other things.
  • Remove extra characters. For example, fractions, complex mathematical signs and other rarely used symbols.
  • Remove all the fine-tuning embedded in the font by its author. They can’t be used on the site anyway.
  • Use the woff2 format.

You can do all this in our service.

Useful materials:

  • You can find out how the fine-tuning of font files works and what is affected in the service [https://fontdrop.info /](https://fontdrop.info /).
  • A complete list of similar settings described here.
  • Our article on font optimization.

Below is an example of how many unused characters the standard Roboto Regular font file contains:

Demonstration
PHP code
<?php
// Получаем список глифов, доступных в файле
$data = exec("fc-query --format='%{charset}\\n' Roboto-Regular.ttf", $output);
$data = array_pop($output);
$data = explode(' ', $data);
$glyphs = [];
foreach($data as $range) {
    $range = explode('-', $range);
    $range[1] = hexdec($range[1] ?? $range[0]);
    $range[0] = hexdec($range[0]);
    for($i = $range[0]; $i <= $range[1]; $i++) {
        $glyphs[] = $i;
    }
}
?><!DOCTYPE html>
<html>
    <head>
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <style>
            @font-face {
                font-family: 'Roboto';
                src: url('./Roboto-Regular.ttf') format('truetype');
                font-style: normal;
                font-weight: 400;
            }
            body {
                font-family: Roboto;
            }
            div {
                border: 1px solid #000;
                margin: 2px;
                padding: 3px;
                border-radius: 3px;
                display: inline-block;
                min-width: 20px;
                text-align: center;
            }
        </style>
    </head>
    <body>
        <h1>В шрифте Roboto.ttf <?=sizeof($glyphs)?> символов. Обычно используется не более 120.</h1>
        <?php foreach($glyphs as $glyph) { ?>
            <div>&#<?=$glyph?>;</div>
        <?php } ?>
    </body>
</html>

PRO subscription for working with the service

Promo
To prepare a commercial offer.
190 ₽
50 pages for 10 days
  • 1 page gives 1 tool launch Checking the page.
  • Purchased for a specific site
  • Restrictions on other tools remain the same
PRO subscription
For regular work on a site or a group of sites.
1 580 ₽
3,500 pages per week. The subscription period is 1 month.
Wallet
A separate page balance that complements the PRO subscription balance.
190 ₽
Number of pages
  • An active PRO subscription is required to use the wallet balance
We use cookies. By continuing to use the site, you agree to the processing of personal data in accordance with privacy policy. I agree