Как исправить ‘jsPDFAPI не определен’

#jspdf

#jspdf

Вопрос:

Я добавляю шрифт calibri.ttf в файл jsPDF в соответствии с использованием UTF-8 / TTF: раздел, приведенный в этой ссылке на github

Я следил за этой страницей, и сгенерированный файл * .js включен в мой проект следующим образом.

 <script src="~/Scripts/jspdf.min.js"></script>
<script src="~/Scripts/calibri-normal.js"></script>
  

а затем попытался использовать шрифт как :

 var option = {
    orientation: 'l',
    unit: 'in',
    format: [9, 6.9],
    putOnlyUsedFonts: false
}
var lx = 0.5, ly = 1;
var gap = 0.3;
var doc = new jsPDF(option)
//doc.addFont('calibri-normal.ttf', 'calibri', 'normal');
doc.setFontStyle('calibri')
doc.setFontSize(8)
   .text('Custom Font Family Used', lx   1.0, ly - 0.05);
  

с добавлением / удалением строки здесь;

 doc.addFont('calibri-normal.ttf', 'calibri', 'normal');
  

однако не реализует шрифт calibri

 doc.getFontList()
  

показывает включенный шрифт ‘calibri’, пользовательский шрифт не реализован. По-прежнему используется шрифт по умолчанию.

затем при проверке custom-font.js сгенерировано сообщение об ошибке: «jsPDFAPI не определен».

Сообщение об ошибке, выданное custome-font.js Во время осмотра

Как я могу исправить эту проблему ‘jsPDFAPI не определен’? Что я пропустил здесь, чтобы реализовать пользовательский шрифт в jsPDF.

Заранее благодарю вас.

Комментарии:

1. Возможно, вам следует заменить jspdf.min.js по jspdf.debug.js ?

Ответ №1:

В моем случае я скачал библиотеку отсюда, и это была версия 1.3.2. После этого я использовал версию cdn. В настоящее время используется 1.5.3, и он работает нормально. Похоже, что файлы, загруженные с исходного веб-сайта, не обновлялись, и, скорее utf-8 всего, поддержка не была включена в версию 1.3.2.

Поэтому вместо использования этого веб-сайта просто включите последнюю версию из cdn; https://unpkg.com/jspdf@1.5.3/dist/jspdf.min.js