Задача: Необходимо на PHP определить длину текстовой строки в Пикселах. Строка расположена горизонтально.
Под PHP есть функция imagettfbox, однако в моей программе не предусмотрено использование библиотеки PHP GD. Да и функция imagettfbox выдает неправлеьный размер блока текста (немного обрезает).
В следствии чего было написано приложение разберающее ttf файл и подсчитывающее длину стоки. Значения получаются ближе но все равно не точные. Длину строки определяю как сумму длин символов (глифов) + кернинг. Далее размер в пискелах определяю поформуле
РазмерШрифта — задаю в поинтах
РазмерОбластиСимвола вычитывается из ttf файла
Однако при проведение тестов, в GDI Windows (под C++), показало что функция GetTextExtent возвращает точные значения.
Вопрос первый: Если кто ненароком знает как роботать с ttf файлом, подскажите может я что делаю не так.
Вопрос второй: Может кто знает как работают функции imagettfbox и GetTextExtent (интересен сам принцип) и в чем отличия?
Вопрос третий: Может есть еще какой способ как на PHP расчитать длину строки в пикселах.