Добрый вечер, в моем приложении я использовал jsPDF для экспорта данных в Adobe PDF формате, в частности мне нужно экспортировать таблицу, и в контексте я использовал следующий код:
// This, in a function in part
var doc = new jsPDF();
var specialElementHandlers = {
'#editor': function (element, renderer) {
return true;
}
};
$('#pdf' + NomeMezzo).click(function () {
var table = tableToJson($('#TblStr' + 0 + NomeMezzo).get(0))
var doc = new jsPDF('p', 'pt', 'a4', true);
doc.cellInitialize();
$.each(table, function (i, row) {
console.debug(row);
$.each(row, function (j, cell) {
doc.cell(10, 50, 120, 50, cell, i);
})
})
doc.save();
});
function tableToJson(table) {
var data = [];
// first row needs to be headers
var headers = [];
for (var i = 0; i < table.rows[0].cells.length; i++) {
headers[i] = table.rows[0].cells[i].innerHTML.toLowerCase().replace(/ /gi, '');
}
// go through cells
for (var i = 0; i < table.rows.length; i++) {
var tableRow = table.rows[i];
var rowData = {};
for (var j = 0; j < tableRow.cells.length; j++) {
rowData[headers[j]] = tableRow.cells[j].innerHTML;
}
data.push(rowData);
}
return data;
}
И в начале импорт трех файлов fil js:
<script src="assets/jspdf.js"> </ script>
<script src="assets/jspdf.plugin.cell.js"> </ script>
<script src="assets/FileSaver.js"> </ script>
При выполнении этого кода возвращает мне ошибку: Непринятый ReferenceError: adler32cs не определен. вы можете импортировать таблицу в формате pdf?
Вы должны использовать один из файлов dist, который включает все готовые к производству, либо jspdf.debug.js
либо jspdf.min.js
Выберите один из них из https://github.com/MrRio/jsPDF/tree/master/dist
Я встретил ту же проблему, и я решил, добавив ниже в голову. Похоже, что иногда добавление jspdf.js и файлов плагинов js недостаточно:
<script src="../libs/Deflate/adler32cs.js"></script>