How to open generated pdf using jspdf in new window
Solution 1:
Based on the source you can use the 'dataurlnewwindow' parameter for output():
doc.output('dataurlnewwindow');
Source in github: https://github.com/MrRio/jsPDF/blob/master/jspdf.js#L914
All possible cases:
doc.output('save', 'filename.pdf'); //Try to save PDF as a file (not works on ie before 10, and some mobile devices)
doc.output('datauristring'); //returns the data uri string
doc.output('datauri'); //opens the data uri in current window
doc.output('dataurlnewwindow'); //opens the data uri in new window
Solution 2:
I have to use this to load the PDF directly. Using doc.output('dataurlnewwindow');
produces an ugly iframe for me. Mac/Chrome.
var string = doc.output('datauristring');
var x = window.open();
x.document.open();
x.document.location=string;
Solution 3:
This solution working for me
window.open(doc.output('bloburl'))
Solution 4:
Or... You can use Blob to achive this.
Like:
pdf.addHTML($('#content'), y, x, options, function () {
var blob = pdf.output("blob");
window.open(URL.createObjectURL(blob));
});
That code let you create a Blob object inside the browser and show it in the new tab.
Solution 5:
-
Search in jspdf.js this:
if(type == 'datauri') { document.location.href ='data:application/pdf;base64,' + Base64.encode(buffer); }
-
Add :
if(type == 'datauriNew') { window.open('data:application/pdf;base64,' + Base64.encode(buffer)); }
- call this option 'datauriNew' Saludos ;)