Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 下载pdf格式的PHP、HTML编码页面。_Javascript_Php_Jquery_Html_Css - Fatal编程技术网

Javascript 下载pdf格式的PHP、HTML编码页面。

Javascript 下载pdf格式的PHP、HTML编码页面。,javascript,php,jquery,html,css,Javascript,Php,Jquery,Html,Css,我的页面上有“下载pdf”按钮。该页面包含php和html代码。我想下载pdf格式的页面(不在浏览器窗口中打开)。我尝试了一个使用jspdf的代码,它将div内容转换为pdf格式,但不应用css和与原始页面相同的格式 js代码: <script type="text/javascript" src="https://parall.ax/parallax/js/jspdf.js"></script> var doc = new jsPDF(); var specialEle

我的页面上有“下载pdf”按钮。该页面包含php和html代码。我想下载pdf格式的页面(不在浏览器窗口中打开)。我尝试了一个使用jspdf的代码,它将div内容转换为pdf格式,但不应用css和与原始页面相同的格式

js代码:

<script type="text/javascript" src="https://parall.ax/parallax/js/jspdf.js"></script>
var doc = new jsPDF();
var specialElementHandlers = {
    '#editor': function (element, renderer) {
        return true;
 }
};

$('#cmd').click(function () {
    doc.fromHTML($('#div-bill').html(), 15, 15, {
             'width': 170,
             'elementHandlers': specialElementHandlers
});
doc.save('sample-file.pdf');
});

var doc=new jsPDF();
变量specialElementHandlers={
“#编辑器”:函数(元素、渲染器){
返回true;
}
};
$('#cmd')。单击(函数(){
doc.fromHTML($('#div bill').html(),15,15{
“宽度”:170,
“elementHandlers”:specialElementHandlers
});
doc.save('sample-file.pdf');
});
按钮:
生成PDF

页面分区:

//此处的页面元素

您应该查看哪些网站可以呈现为pdf格式。Wkhtmltopdf还将等待JavaScript生成元素。

看看,它在将网页呈现为PDF文档方面做得非常好。它基本上是一个基于webkit的浏览器,支持CSS、Canvas和SVG

可执行文件将在Windows、Linux或OSX服务器上运行,您可以用javascript编写操作脚本

因此,您可以让“下载PDF”按钮转到一个PHP文件,该文件启动phantomjs可执行文件,该文件请求将要转换为PDF文档的文件保存在服务器磁盘上。然后,使用php再次读取该pdf文件,并将其作为下载提示发送回用户,例如:

header('Content-disposition: attachment; filename=somename.pdf');
header('Content-type: application/pdf');
readfile($file);

您可以通过url生成pdf/use wkhtmltopdf并使其下载文件,以便访问者停留在当前页面上。