phpspreadsheet - 如何将excel文件转换为pdf文件
问题描述
如何将excel文件转换为pdf文件。我安装了 phpspreadsheet 和 tcpdf。但是如何让 phpspreadsheet 使用 Tcpdf 。收到此错误
致命错误:在第 21 行的 /home3/user1/public_html/site.com/downloads/phpspreadsheet/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Pdf/Tcpdf.php 中找不到类 'TCPPDF'
这是我的代码
require '../phpspreadsheet/vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load('testxl.xlsx');
$class = \PhpOffice\PhpSpreadsheet\Writer\Pdf\Tcpdf::class;
\PhpOffice\PhpSpreadsheet\IOFactory::registerWriter('Pdf', $class);
$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Pdf');
$writer = new \PhpOffice\PhpSpreadsheet\Writer\Pdf\Tcpdf($spreadsheet);
$writer->save("demo.pdf");
解决方案
您需要将 $spreadsheet 和 writer 类型传递给 createWriter()。可以在 phpspreadsheet 中使用的 pdf writer 类型的示例是 Dompdf、Mpdf 和 Tcpdf。
$writer =\PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Tcpdf');
//$writer =\PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Dompdf');
//$writer =\PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Mpdf');
$pdf_path ='output/tcpdf_output.pdf';
$writer->save($pdf_path);
推荐阅读
- python - pymongo 在值中查找字符串
- javascript - 使用js的进度条
- powershell - 在 PowerShell 脚本的 While($true) 循环中使用作业
- c++ - std::string_view data() 可以在分配和复制之间进行指针比较吗?
- python - MacOS上python3中的导入密码错误
- python - 被代码忽略的函数,如果写在另一个函数中
- cypress - 如何在赛普拉斯中识别跨度下的元素
- python - Python 中的分析最高密度区间(最好用于 Beta 分布)
- python - Python 打包。多次发布后指定python版本要求
- bash - bash for 循环不会按预期循环