1

我正在尝试使用 jspdf javascript 库将图像加载到 PDF 中。我可以成功获取图像数据,但是输出 PDF 没有显示任何图像。

下面是完整的代码片段。

<script type="text/javascript" src="js/jspdf/base64.js"></script>
<script type="text/javascript" src="js/jspdf/sprintf.js"></script>
<script type="text/javascript" src="js/jspdf/jspdf.js"></script>


 var createPDF = function(imgData) {
    var doc = new jsPDF();
    alert("before create pdf ::::"); 
    doc.addImage(imgData, 'JPEG', 10, 10, 500, 500);
    //doc.addImage(imgData, 'JPEG', 70, 10, 100, 120);

    // Output as Data URI
    doc.output('datauri');
 }




  var darthImgData;
  function childCanvas()
  {
      var canvas = document.createElement('canvas');
      var context = canvas.getContext('2d');
      var imageObj = new Image();

      imageObj.onload = function() {
        context.drawImage(imageObj, 69, 50);
        darthImgData = canvas.toDataURL('image/jpeg').slice('data:image/jpeg;base64,'.length);
        // Convert the data to binary form
        darthImgData = atob(darthImgData);
        alert(darthImgData);
        createPDF(darthImgData);
      };
      imageObj.src = 'thinking-monkey.jpg';


  }

请在这方面帮助我。

4

1 回答 1

2

最后,我找到了上述问题的解决方案。JSPDF团队添加了javascript插件,用于在客户端JavaScript中生成的PDF文件中添加图像。

我在我的代码中添加了下面的 jspdf 脚本,能够生成带有图像的 PDF。

<script type="text/javascript" src="js/jspdf/jspdf.plugin.addimage.js"></script>
于 2014-03-01T04:52:21.690 回答