从html dom创建可打印的PDF
Create printable PDF from html dom
我有一个网页,其中有相当多的内容是动态构建的(jquery ajax等),并要求提供它的可打印版本。
我遇到了关于html/printing的所有常见问题,我可能(在一定的时间内)可以解决这些问题,但这让我思考——有没有一种方法可以使用javascript提取DOM并从中生成PDF。这可能是一个有点愚蠢的问题——听起来有点棘手,我也不太确定,即使我可以使用javascript构建一个PDF文件,然后如何将其呈现给用户
人们怎么想?
var doc = new jsPDF();
doc.text(20, 20, 'Hello world!');
doc.text(20, 30, 'This is client-side Javascript, pumping out a PDF.');
doc.addPage();
doc.text(20, 20, 'Do you like that?');
// Output as Data URI
doc.output('datauri');
https://parall.ax/products/jspdf,我认为这将帮助您
这是我几天前问的一个关于类似站点/问题的问题。
我的解决方案是:(1)在Javascript中,设置一个cookie,然后使用location.href = ...;
(而不是AJAX)调用一个PHP脚本,然后(2)让PHP脚本访问cookie,以确定所需的报告类型,然后回显一个表单,提示用户使用正确的头下载文件。PHP如下所示:
header("Content-type: application/vnd.ms-word");
header("Content-Disposition: attachment;Filename=test.doc");
echo "<html>";
echo "<meta http-equiv='"Content-Type'" content='"text/html; charset=Windows-1252'">";
echo "<body>";
echo "Testing-2-3!";
echo "</body>";
echo "</html>";
事实证明,使用AJAX不可能实现我想要的结果,因为AJAX从不允许您提示用户。
你可以使用这种方法做类似的事情,但在你的情况下,你会生成一个PDF文件,而不是.doc文件(或者下载一个预先准备好的文件)。
当然,这种方法的一个优点是不需要重新加载页面。
相关文章:
- 使用 JavaScript 打印 PDF
- IE9 在 iframe 中打印 PDF 时出现“无效调用对象”
- 如何从 InAppBrowser (PhoneGap) 打印 PDF 数据
- 在不打开打印对话框的情况下打印 pdf 文档
- JS打印pdf文件
- 使用 javascript 在 IFrame 中打印 PDF 文件,仅获取一页
- 从 iframe 打印 pdf 文件
- 从 javascript 嵌入标记打印 Pdf
- 从 aspx 页面内部打印 PDF
- 在jsp中查看和打印pdf文件
- 使用嵌入式javascript自动打印pdf
- 直接从web在本地驱动器中打印pdf文件
- 在IFrame中打印PDF后自动关闭窗口
- 使用window.Print在IE中打印PDF
- 使用Jquery打印PDF而不是页面
- iPad:如何在javascript的iframe中打印pdf
- 在火狐中打印 PDF
- 可能的方式来加载和打印PDF按钮上点击使用javascript
- PHP打印PDF文件到指定的网络打印机而不打开对话框
- 如何在页面加载时打印pdf文件,使用javascript或jquery