我正在尝试使用jsPDF将.html文件转换为PDF,并在新窗口中打开它。
我的PDF格式如下:
function PDFFromHTML() {
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('ticket.html', 15, 15, {
'width': 170,
'elementHandlers': specialElementHandlers
});
}
我需要像window.open这样的东西在新窗口中打开这个pdf文件,但我找不到方法。
问候,
据我所知,除了直接查看代码和现有示例之外,没有太多关于API的文档。
通过在doc.fromHTML(..)
之后添加对output
API的调用,指定dataurlnewwindow
参数如下所示,我可以在新窗口中打开PDF文件:
doc.output('dataurlnewwindow');
至于为什么doc.fromHTML('ticket.html')
不起作用,再次参考代码,source
参数需要是:
HTML格式的字符串或对实际DOM元素的引用。
因此,您可能需要使用jquery $.get()
方法来加载ticket.html
的内容。本质上,看起来像:
$.get('ticket.html', function(content){
doc.fromHTML(content), 15, 15, {'width': 170, 'elementHandlers': specialElementHandlers});
doc.output('dataurlnewwindow');
}, 'html');