我尝试制作一个按钮,将我的HTML页面转换为PDF并下载,但我无法让它工作。有谁知道我怎么能做到这一点?
答案 0 :(得分:2)
首先,你制作一个php文件(或者你想要使用的任何技术)把html变成pdf(对于那些没有完成这一步的人来说,wkHtmlToPdf对此很好)。
下一步是可选的,但建议:
您创建一个download.php
来读取文件,并将其回显到屏幕with the proper headers。此文件可以是安全的(现在或以后),例如,您可能希望用户登录特定文件。现在可以轻松添加。
现在您将html模板链接到它:<a href="/download.php?file=123">download</a>
。因为download.php
向浏览器发送标题(说“你好,我是PDF,下载我”),浏览器知道如何处理它。
如果你想跳过我不推荐的download.php,只需直接链接到convertToPdf.php
并让它输出结果而不是存储它。
答案 1 :(得分:0)
选项1:print()方法打印当前窗口的内容。
<button onclick="window.print()">Download page</button>
选项2:使用一些服务器端技术将html转换为dpf,如Martijn回答。
选项3:使用jsPDF库在客户端处理。查看https://rawgit.com/MrRio/jsPDF/master/,他们有很多例子。
function download() {
var doc = new jsPDF();
// All units are in the set measurement for the document
// This can be changed to "pt" (points), "mm" (Default), "cm", "in"
doc.fromHTML($('body').get(0), 15, 15, {
'width': 170,
});
doc.save();
}
<button onclick="download()">Download page</button>