2016-06-03 15 views
2

Ich habe eine Bestellungsdetailseite, die ich in ein pdf umwandeln möchte. Die Details werden dynamisch auf unserem Backend erstellt, aber ich möchte das Frontend verwenden, um die PDF zu erstellen, also verwende ich jsPDF.jsPDF zurücksenden leeres Dokument

Hier ist mein Code:

<script> 
    function demoFromHTML() { 
    var doc = new jsPDF('p', 'in', 'letter'); 
    var source = $('#open_orders_detail_display_template').first(); 
    var specialElementHandlers = { 
    '#bypassme': function(element, renderer) { 
    return true; 
} 
}; 

doc.fromHTML(
$('#open_orders_detail_display_template').get(0), 
0.5, // x coord 
0.5, // y coord 
{ 
'width': 7.5, // max width of content on PDF 
'elementHandlers': specialElementHandlers 
}); 

doc.output('dataurl'); 
} 
</script> 

Als ich es betreibe ich keine Fehler erhalten, aber eine leere Seite auffüllt. Jede Hilfe würde sehr geschätzt werden. Danke!

Antwort

2
var doc = new jsPDF(); 
// We'll make our own renderer to skip this editor 
    var specialElementHandlers = { 
     '#editor' : function(element, renderer) { 
      return true; 
     } 
    }; 

    // All units are in the set measurement for the document 
    // This can be changed to "pt" (points), "mm" (Default), "cm", "in" 
    doc.fromHTML($('#render_me').get(0), 30, 50, { 
     'width' : 170, 
     'elementHandlers' : specialElementHandlers 
    }); 

    doc.save('sample-file.pdf'); 

Geben Sie id = "render_me" zu div was Sie rendern möchten. zum Beispiel

<table id="render_me"></table>