使用jsPDF从Iframe内容下载PDF文件

时间:2013-05-07 09:21:55

标签: javascript pdf jspdf

我想保存包含IFrame内容的PDF文件。我使用jsPDF Javascript库。

这是我的代码:

function toPDF(){       
        var pdf = new jsPDF('p', 'in', 'letter');

    // source can be HTML-formatted string, or a reference
    // to an actual DOM element from which the text will be scraped.
    source = $('#iframeid')[0]

    // we support special element handlers. Register them with jQuery-style 
    // ID selector for either ID or node name. ("#iAmID", "div", "span" etc.)
    // There is no support for any other type of selectors 
    // (class, of compound) at this time.
    specialElementHandlers = {
        // element with id of "bypass" - jQuery style selector
        '#emptyid': function(element, renderer){
            // true = "handled elsewhere, bypass text extraction"
            return true
        }
    }

    // all coords and widths are in jsPDF instance's declared units
    // 'inches' in this case
    pdf.fromHTML(
        source // HTML string or DOM elem ref.
        , 0.5 // x coord
        , 0.5 // y coord
        , {
            'width':7.5 // max width of content on PDF
             ,'elementHandlers': specialElementHandlers
        }
    )

    pdf.save('Test.pdf');
}

当我尝试这个时,我在Chrome中出现此错误:

  

未捕获的TypeError:无法读取未定义的属性“widths”

可能是什么问题?

1 个答案:

答案 0 :(得分:9)

添加jspdf.plugin.standard_fonts_metrics.js