Как использовать "setFont" в jsPDF с UTF-8? - PullRequest
0 голосов
/ 11 февраля 2019

Мой проект: Angular 7

Я хочу добавить свой шрифт (UTF-8) в мой сервис, который генерирует PDF.Я использую jsPDF.Я нашел много примеров, но у меня все не работает.В документации по GitHub jsPDF сказано (глава Использование UTF-8 / TTF): https://github.com/MrRio/jsPDF

Это означает, что я могу это сделать.Поэтому я сгенерировал этот файл (шрифт Roboto-Regular.tff).Но куда мне вставить этот файл и как его использовать?

1 Ответ

0 голосов
/ 29 апреля 2019

Если вы внимательно посмотрите на документы, он попросит вас обработать ваш ttf-файл и использовать сгенерированный js-файл вместе с кодом вашего приложения.

14 стандартных шрифтов в PDF ограничены ASCII-codepage.Если вы хотите использовать UTF-8, вам нужно интегрировать пользовательский шрифт, который обеспечивает необходимые символы.jsPDF поддерживает .ttf-файлы.Так что если вы хотите, например, чтобы китайский текст был в вашем PDF, ваш шрифт должен иметь необходимые китайские глифы.Поэтому проверьте, поддерживает ли ваш шрифт нужные глифы, иначе вместо текста будет отображаться пробел.

Чтобы добавить шрифт в jsPDF, используйте наш fontconverter в /fontconverter/fontconverter.html.Преобразователь шрифтов создаст js-файл с содержимым предоставленного ttf-файла в виде строки в кодировке base64 и дополнительного кода для jsPDF.Вам просто нужно добавить этот сгенерированный js-файл в ваш проект.После этого вы готовы использовать метод setFont в своем коде и написать текст в кодировке UTF-8.

ссылка: https://github.com/MrRio/jsPDF#use-of-utf-8--ttf

Надеюсь, это решит вашу проблему!

...