如何在pdfmake中获得完整的网页pdf?

时间:2016-01-08 05:41:00

标签: javascript html pdf jspdf pdfmake

我正在开发一个Web应用程序,我必须将HTML页面(具有多个表和数据表)转换为PDF。我使用pdfmake将页面内容转换为PDF

这是我正在使用的脚本

<script type="text/javascript" >
var docDefinition = { content: "This is a sample PDF" };
alert("Will this work ");
pdfMake.createPdf(docDefinition).download('test.pdf');      
</script>

现在,我想将完整HTML page转换为PDF,但我不知道如何在pdfmake中执行此操作。

在jsPDF中有这样的东西

<script>
     function demoFromHTML() {
         var pdf = new jsPDF('p','pt','a4');
         pdf.addHTML(document.body,{pagesplit:true},function() {
                  pdf.save('Test.pdf');
              }); 
           document.getElementById('buttons').style.visibility = 'hidden';

    }
</script>

即,document.body将完整网页转换为PDF。 pdfmake中是否也有类似的代码。

除了jsPdf以及使用javascript之外,还有其他方法可以将整个网页转换为pdf吗?

1 个答案:

答案 0 :(得分:1)

此时AFAIK原始pdfmake项目或插件上没有html解析器引擎,可以满足将html内容呈现为pdf的需要。我认为你应该为此寻找jspdf。我个人使用两个库取决于我想要实现的东西。它们彼此之间并不存在冲突。 JSPDF目前比pdfmake更完整,功能和插件更多。 jspdf非常适合制作任何目的pdf,你甚至可以制作图形和绘制对象。如果您只想要一个包含文本,图像和表格的简单文档,pdfmake会更好。我知道jspdf在你想要一些文字和图片的时候总是玩X和Y会有点痛苦。

更新:似乎有计划支持这一点。请遵循此主题以获取此功能。 https://github.com/bpampuch/pdfmake/issues/205

还有一个插件(我还没有测试过): https://github.com/ymkins/html2pdfmake/blob/master/html2pdfmake.js