Я создаю приложение в Android Studio, храня файлы html в папке ресурсов. Один из файлов html использует jspdf для печати содержимого всей страницы в виде изображения в формате PDF. Когда я запускаю приложение и нажимаю на кнопку, вызывающую функцию jspdf, приложение вылетает. Может кто-нибудь помочь, пожалуйста?
function CreatePDFfromHTML(){
var name = document.getElementById('name').value;
var loc = document.getElementById('loc').value;
var num = document.getElementById('num').value;
var cars = [name, loc , num];
var HTML_Width = $("#tab-2").width();
var HTML_Height = $("#tab-2").height();
var top_left_margin = 15;
var PDF_Width = HTML_Width+(top_left_margin*2);
var PDF_Height = (PDF_Width*1.5)+(top_left_margin*8);
var canvas_image_width = HTML_Width;
var canvas_image_height = HTML_Height;
var totalPDFPages = Math.ceil(HTML_Height/PDF_Height)-1;
html2canvas($("#tab-2")[0],{allowTaint:true}).then(function(canvas) {
canvas.getContext('2d');
console.log(canvas.height+" "+canvas.width);
var imgData = canvas.toDataURL("image/jpeg", 1.0);
var pdf = new jsPDF('p', 'pt', [PDF_Width, PDF_Height]);
pdf.addImage(imgData, 'JPG', top_left_margin, top_left_margin,canvas_image_width,canvas_image_height);
pdf.setFontSize(10);
pdf.setTextColor(38, 59, 129);
pdf.text(20, 29, 'Cust. Name:');
pdf.text(90, 29, cars[0]);
pdf.text(20, 39, 'Cust. Location:');
pdf.text(90, 39, cars[1]);
pdf.text(20, 49, 'Cust. Number:');
pdf.text(90, 49, cars[2]);
for (var i = 1; i <= totalPDFPages; i++) {
pdf.addPage(PDF_Width, PDF_Height);
pdf.addImage(imgData, 'JPG', top_left_margin, -(PDF_Height*i)+(top_left_margin*5),canvas_image_width,canvas_image_height);
}
pdf.save("RoadMaster_Summary.pdf");
}); };