JSPDF adicionar quebra de página
Boa tarde,
estou precisando importar uma tabela HTML e gerar PDF, estou usando JSPDF e funciona perfeitamente quando tenho apenas uma página. Quando o relatório gera mais de uma página (no PDF) ele gera umas 3 páginas em branco e não imprime parte do código.
estou usando dessa forma:
$(function () {
$('#pdf').click(function () {
var specialElementHandlers = {
'#editor': function (element, renderer) {
return true;
}
};
var doc = new jsPDF('p', 'pt');
var header = function (data) {
doc.fromHTML($('#cabe').get(0), 37, 50, {
'width': 550,
'elementHandlers': specialElementHandlers
});
};
var footer = function (data) {
var str = "Página " + data.pageCount;
doc.text(str, data.settings.margin.left, doc.internal.pageSize.height - 30);
};
var options = {
beforePageContent: header,
afterPageContent: footer,
margin: { top: 80 , button: 100},
startY: 100,
};
var res = doc.autoTableHtmlToJson(document.getElementById("body"));
doc.autoTable(res.columns, res.data, options);
doc.fromHTML($('#legenda').get(0), 37, doc.autoTableEndPosY() + 20, {
'elementHandlers': specialElementHandlers
});
doc.fromHTML($('#aceite').get(0), 37, doc.autoTableEndPosY() + 130, {
'width': 550,
'elementHandlers': specialElementHandlers
});
doc.setLineWidth(1);
doc.setFontSize(10);
doc.line(37, doc.autoTableEndPosY() + 200, 250, doc.autoTableEndPosY() + 200);
doc.text('Assinatura do servidor', 90, doc.autoTableEndPosY() + 210);
doc.line(324, doc.autoTableEndPosY() + 200, 550, doc.autoTableEndPosY() + 200);
doc.text('Assinatura/Carimbo chefia imediata', 367, doc.autoTableEndPosY() + 210);
doc.fromHTML($('#final').get(0), 200, doc.autoTableEndPosY() + 250, {
'width': 170,
'elementHandlers': specialElementHandlers
});
doc.save('Espelho de ponto.pdf');
});
});
A parte que pode mudar de tamanho na página é a tabela que será inserida na variável res (linha 35). e dá erro mesmo que a quebra de página não esteja na tabela.
se alguém puder me ajudar ficarei muito agradecido.
Discussão (0)
Carregando comentários...