Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.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 如何将HTML表格另存为PDF中的图像_Javascript_Php_Html_Pdf Generation - Fatal编程技术网

Javascript 如何将HTML表格另存为PDF中的图像

Javascript 如何将HTML表格另存为PDF中的图像,javascript,php,html,pdf-generation,Javascript,Php,Html,Pdf Generation,我有一个问题,试图导出一个HTML表到PDF与所有画布它有 问题是,我可以将画布作为图像导出到PDF,但我似乎无法对表格执行同样的操作 代码如下: echo '<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.3/jspdf.min.js"></script>'; echo"<script> download.addEventListene

我有一个问题,试图导出一个HTML表到PDF与所有画布它有

问题是,我可以将画布作为图像导出到PDF,但我似乎无法对表格执行同样的操作

代码如下:

echo '<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.3/jspdf.min.js"></script>';    
    echo"<script>
                download.addEventListener('click', function () {
                    var imgData = document.getElementsByTagName('canvas')[0].toDataURL('image/png', 1.0);
                    var imgData2 = document.getElementsByTagName('canvas')[1].toDataURL('image/png', 1.0);

                    var imgData_table = document.getElementsByTagName('table')[0].toDataURL('image/png', 1.0);

                    var pdf = new jsPDF('p', 'px', 'a4');

                    var i = new Image();

                    var pageHeight = pdf.internal.pageSize.height;
                    var pageWidth = pdf.internal.pageSize.width;

                    console.log(pageHeight + ', ' + pageWidth);

                    i.src = imgData; 

                    setTimeout(function(){
                        pdf.addImage(imgData_table, 'png', 0, 0,);
                        pdf.addPage();
                        //console.log(i.width + ', ' + i.height);
                        pdf.addImage(imgData2, 'png', 0, 0,);
                        pdf.addPage();
                        pdf.addImage(imgData, 'png', 0,0);
                        pdf.save('download.pdf');
                    },600);




                }, false);

            </script>";

            echo "<div class='col-sm-6'>
                <button id='download'>download</button>
            </div>
            ";
echo';
回声“
download.addEventListener('click',函数(){
var imgData=document.getElementsByTagName('canvas')[0].toDataURL('image/png',1.0);
var imgData2=document.getElementsByTagName('canvas')[1].toDataURL('image/png',1.0);
var imgData_table=document.getElementsByTagName('table')[0].toDataURL('image/png',1.0);
var pdf=新的jsPDF('p','px','a4');
var i=新图像();
var pageHeight=pdf.internal.pageSize.height;
var pageWidth=pdf.internal.pageSize.width;
log(pageHeight+','+pageWidth);
i、 src=imgData;
setTimeout(函数(){
pdf.addImage(imgData_表,'png',0,0,);
pdf.addPage();
//控制台.日志(i.宽度+','+i.高度);
pdf.addImage(imgData2,'png',0,0,);
pdf.addPage();
pdf.addImage(imgData,'png',0,0);
pdf.save('download.pdf');
},600);
},假);
";
回声“
下载
";
有人知道在这种情况下可以做什么吗?
谢谢

试试这个例子:使用pdf.fromHTML()是的,它只填充了15页的空白内容(我想pdf阅读器不会读取它)试试这个例子:使用pdf.fromHTML()是的,它只填充了15页的空白内容(我想pdf阅读器不会读取它)