Подтвердить что ты не робот

Ошибка doc.save() с jspdf

Когда я пытаюсь использовать функцию save() для jsPDF, она бросает следующую ошибку:

ReferenceError: saveAs не определен

Я просто пробую очень простой пример:

var doc = new jsPDF();
doc.text(20, 20, 'Hello world!');
doc.text(20, 30, 'This is client-side Javascript, pumping out a PDF.');
doc.addPage();
doc.text(20, 20, 'Do you like that?');

doc.save('test.pdf');

У кого-нибудь есть идеи, что неправильно?

4b9b3361

Ответ 1

Узнал, в чем проблема. Функция saveAs является частью FileSaver.js, поэтому мне просто нужно было включить это, и все сработало.

Ответ 2

Мне не хватает комментариев, поэтому я добавляю это как ответ... saveAs() - это интерфейс w3c. Если добавление FileSaver исправляет вашу проблему, это означает, что вы использовали старый браузер; FileSaver.js используется как прокладка для jsPDF для поддержки старых браузеров, которые не имеют этой функции изначально.

Ответ 3

Вы также можете использовать jspdf.debug.js, который содержит все плагины в одном файле. Таким образом, вы охвачены, если что-то еще нужно.

-Cheers

Ответ 4

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Hello world</title>
</head>
<body>
    <h1>Hello world</h1>
    <script type="text/javascript" src="jspdf.min.js"></script>
    <script type="text/javascript">
        var pdf = new jsPDF();
        pdf.text(30, 30, 'Hello world!');
        pdf.save('hello_world.pdf');
    </script>
</body>
</html>