Как масштабировать шрифты в web?

Добрый день уважаемое сообщество.

Задача следующая. Есть блок заданных размеров. В него вставлен тег с текстом. Нужно масштабировать размер шрифта так чтобы он не вылазил за края родительского блока. Сколько бы не поместили текста он должен уменьшатся вплоть до абсурда (когда прочитать его будет невозможно).

5e316444601d6587338912.png

Такого быть не должно:

5e3165050a315003466797.png

Соответственно текст будет добавляться в блок динамически и так же динамически он должен подстраиваться. Возможно ли такое сделать? Есть готовые библиотеки? Или каков алгоритм действий?
  • Вопрос задан
  • 335 просмотров
Пригласить эксперта
Ответы на вопрос 2
Если стоит именно такая задача, то вам придётся изучить много нового и интересного. Почитайте про рендеринг шрифтов для начала. Например вот эту статью на Хабре.

Но вообще, зная количество букв и размеры блока, можно рассчитать высоту одной строки. Много будет зависеть от самого шрифта.

Например, если принять, что блок квадратный и имеет размер a на a, а текст имеет длину в N символов (с пробелами и знаками препинания), и каждая буква в шрифте ограничена квадратом с размерами b на b, то размер шрифта S можно прикинуть следующей формулой:

S = b = a / sqrt(N)
Ответ написан
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы