簡體   English   中英

有沒有辦法打印出網頁的特定div為pdf?

[英]Is there a way to print out a specific div of a webpage as pdf?

我希望能夠打印出特定的div作為PDF和JPG。 我在運行phantomjs時使用了以下代碼:

var bb = page.evaluate(function() {
  return document.getElementsByTagName("fieldset")[7].getBoundingClientRect();
});

page.clipRect = {
  top: bb.top,
  left: bb.left,
  width: bb.width,
  height: bb.height
};

這適用於PNG,但對於PDF,它只打印整個頁面。 有誰知道為什么會這樣,以及如何解決它? 如果有人知道解決這個問題的任何其他方法,即使是不涉及幻影或某些前端解決方案的事情,如果他們分享,我將非常感激。

編輯我正在尋找解決這個問題的方法,任何前端或后端解決方案都是可以接受的。但是之前關於這個主題的一些問題提供了涉及html2canvas或jsPdf的建議,但那些解決方案有問題,所以任何其他答案解決方案將不勝感激。

我需要將div發送到PDF,我使用此代碼並為我工作正常。 (需要JQuery)。

  function testPdf(){ //send the div to PDF html2canvas($("#DIV_ID_HERE"), { // DIV ID HERE onrendered: function(canvas) { var imgData = canvas.toDataURL('image/png'); var doc = new jsPDF('landscape'); doc.addImage(imgData, 'PDF', 10, 10); doc.save('sample-file.pdf'); //SAVE PDF FILE } }); } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.3/jspdf.debug.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js"></script> <div id="DIV_ID_HERE"> Test - This div to pdf <br><input type="button" value="print" onclick="testPdf();"> <div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM