Я работаю с некоторыми файлами TTF в PHP. Я использую это, чтобы получить некоторую информацию из этих файлов: https://github.com/PhenX/php-font-lib
Мне было интересно, есть ли какой-нибудь способ получить имя семейства шрифтов, используя эту библиотеку или любую другую, потому что я не нашел много информации об этом.
В качестве примера, скажем, у меня есть два шрифта TTF-файлов: Roboto Light и Roboto Bold. Я хочу получить «Робото», которое будет фамилией этих шрифтов.
Ура!
Есть метод с именем \FontLib\Font::getFontName
в PHP-купели Пб который возвращает фамилию шрифта.
$font = \FontLib\Font::load('./fonts/OpenSans-Bold.ttf');
$font->parse();
echo $font->getFontName();
// prints: Open Sans
РЕДАКТИРОВАТЬ
В файле TTF хранится имя семейства шрифтов внутри name
столик на ID 1 (как описано здесь). FontLib
анализирует эту таблицу и возвращает вам это значение при вызове getFontName()
метод. В вашем случае ваш файл TTF содержит Roboto Light
строка в Font Family Name
строка. Я предлагаю вам либо использовать это значение, либо убрать дополнительные характеристики шрифта из названия шрифта.
Других решений пока нет …