繁体   English   中英

Javascript:如何从HTML表单或div创建pdf文件

[英]Javascript: How to create pdf file from HTML form or div

我是Javascript / jQuery的新手,我正在寻找一种方法来向页面添加一个按钮,允许用户从预定义的表单或div 创建一个pdf (例如通过添加一个类)。

我做了一些研究,但在JS或jQuery中找不到这样做的方法。

有没有办法通过Javascript / jQuery在客户端实现这一点,或者有人能告诉我一个支持这个的免费软件插件?

我找到的唯一一个插件是TCPDF,但这似乎相当大,我没有看到一种方法,我可以将其限制为页面上的某个窗体或div(而不是打印整个页面)。

注意:我不需要覆盖图像,只需要像表单字段或表格和文本那样的纯HTML。

迈克,非常感谢您提供任何帮助

你可以试试jsPDF

它是免费的和客户端。

您可以从他们的“HTML渲染”示例中看到,您可以从HTML的一部分创建PDF

编辑

可能jsPDF不支持CSS

如果你需要它,你可以尝试作为替代phantomJS ,但它是一个命令行工具,它捕获一个网页作为截图。 不确定这是不是你要搜索的内容

与之前的答案一样,我建议使用小而强大且安全的js库Print.js

例:

 <form method="post" action="#" id="printJS-form">
    ...
 </form>

 <button type="button" onclick="printJS('printJS-form', 'html')">
    Print Form
 </button>

相当容易

也是一个很好的,简单的是pdfmake

从HTML创建pdf是简单而干净的库,您可以决定以后打印它,

下面的基本用法示例

    var docDefinition = {
    content: [
        'First paragraph',
        'Another paragraph, this time a little bit longer to make sure, this line will be divided into at least two lines'
    ]
};

var pdfDoc = printer.createPdfKitDocument(docDefinition);
pdfDoc.pipe(fs.createWriteStream('pdfs/basics.pdf'));
pdfDoc.end();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM