jsPDF从.html创建PDF并在新窗口中打开



我正在尝试使用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');

最新更新