Конвертация шрифта TCPDF приводит к отсутствию глифов - PullRequest
2 голосов
/ 19 июля 2011

Я использую библиотеку TCPDF для ежедневного создания серверных PDF-файлов в режиме cronjob. Эта библиотека берет строки UTF8 из БД и записывает их в PDF-файл, используя шрифт Arial Unicode MS (также встраивая его в PDF-файл).

Чтобы использовать этот шрифт, мне пришлось преобразовать его в дружественный к PHP формат, следуя этим инструкциям: http://www.tcpdf.org/fonts.php

Однако, хотя большинство языков кажутся правильными (глифы правильны на иврите, китайском, японском, португальском и т. Д.), Корейские глифы отображаются в виде квадратов в PDF.

Я заметил много (сотни) ошибок при запуске двоичного файла ttf2ufm, описанного по ссылке выше:

Previous entry type: M
Warning: **** closepath on empty path in glyph "_d_8235" ****

Я подозреваю, что это связано с этой проблемой (неспособность правильно преобразовать эти пару сотен глифов, что приводит к неправильному файлу шрифта).

Я что-то не так делаю? Или это всего лишь ограничение этой библиотеки?

1 Ответ

0 голосов
/ 02 октября 2011

Последняя версия TCPDF автоматически конвертирует шрифты в формат TCPDF с помощью метода addTTFfont (). Старые шрифтовые программы и скрипты были удалены.

Например:

// convert TTF font to TCPDF format and store it on the fonts folder
$fontname = $pdf->addTTFfont('/path-to-font/FreeSerifItalic.ttf', 'TrueTypeUnicode', '', 96);

// use the font
$pdf->SetFont($fontname, '', 14, '', false);
...