多页pdf使用jspdf

时间:2016-07-22 23:58:00

标签: html image electron jspdf

我是Javascript初学者和桌面应用程序(使用电子)我试图收集几个div的内容(只有图片jpeg),以便在用户点击&#34时创建一个pdf ;下载"按钮。

我已获得此HTML代码:

<div class="flipbook" id="flipbook">
    <div class="page"><img src="pages/1.jpg"></div>
    <div class="page"><img src="pages/2.jpg"></div>
    <div class="page"><img src="pages/3.jpg"></div>
    <div class="page"><img src="pages/4.jpg"></div>
    <div class="page"><img src="pages/5.jpg"></div>
    <div class="page"><img src="pages/6.jpg"></div>
    <div class="page"><img src="pages/7.jpg"></div>
    <div class="page"><img src="pages/8.jpg"></div>
    <div class="page"><img src="pages/9.jpg"></div>
    <div class="page"><img src="pages/10.jpg"></div>
    <div class="page"><img src="pages/11.jpg"></div>
    <div class="page"><img src="pages/12.jpg"></div>
    <div class="page"><img src="pages/13.jpg"></div>
    ...
</div>

<button onclick="downloadContent()" type="button" 
class="button"><span class="glyphicon glyphicon-download-alt" 
id="download" title="Télécharger le fichier"></span></button>

我想抓住每个内容(jpg图片)并生成一个pdf&#34; onClick&#34;每页一个图像。图像尺寸应为&#34; A4&#34;就像pdf文件一样。我无法将jpeg文件转换为数据网址,因为它在https://parall.ax/products/jspdf/doc/symbols/jsPDF.html#处被询问,因为我不想在我的应用中使用外部网址。所以我使用html2canvas。

Javascript:

function downloadContent() {
var flipbook = getElementById('flipbook');
    for (var i = 0; i = flipbook.length; i++) {
        html2canvas('.page'); {
            onrendered: function (canvas) {
                var img = canvas.toDataURL('image/jpeg', 1.0);
                var doc = new jsPDF('p', 'mm', 'a4');
                doc.addImage(img, 'JPEG', 0, 0);
                doc.save('My_doc.pdf');
            }
        });

    }

}

或者

 function downloadContent() {
        html2canvas(getElementById('#flipbook'); {
            onrendered: function (canvas) {
                var img = canvas.toDataURL('image/jpeg', 1.0);
                var doc = new jsPDF('p', 'mm', 'a4');
                doc.addImage(img, 'JPEG', 0, 0);
                doc.save('My_doc.pdf');
            }
        });

    }

 }

感谢您的帮助!

0 个答案:

没有答案