2015-04-22 46 views
8

我已经包括以下文件:图像不使用jsPDF在PDF上呈现?

<script type="text/javascript" src="libs/png_support/zlib.js"></script> 
<script type="text/javascript" src="libs/png_support/png.js"></script> 
<script type="text/javascript" src="jspdf.plugin.addimage.js"></script> 
<script type="text/javascript" src="jspdf.plugin.png_support.js"></script> 
<script type="text/javascript" src="jspdf/jspdf.plugin.standard_fonts_metrics.js"></script> 
<script type="text/javascript" src="jspdf/jspdf.plugin.split_text_to_size.js"></script> 
<script type="text/javascript" src="jspdf/jspdf.plugin.from_html.js"></script> 
<script type="text/javascript" src="jspdf.js"></script> 

,我只是测试它是否可以通过HTML渲染图像:

var doc = new jsPDF(); 
    var elementHandler = { 
    '#ignorePDF': function (element, renderer) { 
     return true; 
    } 
    }; 
    var source = '<img src="/assets/common/image/BG.jpg"/>'; 
    doc.fromHTML(
     source, 
     15, 
     15, 
     { 
     'width': 180,'elementHandlers': elementHandler 
     }); 

    doc.output("dataurlnewwindow"); 

它轻视控制台这个错误,说:

jsPDF Warning: rendering issues? provide a callback to fromHTML! (anonymous function) 

我已经使用PNG格式,因为它不工作我也尝试过JPG格式,仍然没有运气! 我在做什么错? 在此先感谢。

回答

1

有fromHTML()

doc.fromHTML(
    source, 
    15, 
    15, { 
     'width': 180, 
     'elementHandlers': elementHandler 
    }, 

    function(dispose) { 
     // dispose: object with X, Y of the last line add to the PDF 
     //   this allow the insertion of new lines after html 
     // pdf.save('Test.pdf'); 

     if (navigator.msSaveBlob) { 
      var string = doc.output('datauristring'); 
     } else { 
      var string = doc.output('bloburi'); 
     } 

     $('.previewIFRAME').attr('src', string); 
    }) 
+0

PDF是未定义在'VAR字符串= pdf.output( 'bloburi')多了一个参数;' – Jaanus

+0

应该是doc变量,更新 – klihelp

+0

我没有得到错误所以它确实改变了一些东西,但是生成的PDF是空白的。 – Jaanus