我可以使用 PHPSpreadsheet 读取 xlsx 文件就好了。问题是,当我尝试将其写入 PDF 时,当我在 Acrobat 中打开它时,结果是空白的,即使 PDF 文件大约为 840K。
我尝试过 Mpdf 和 Dompdf,但它们要么耗时太长且超时,要么内存不足。
.xlsx 文件只有 161K。
这是我的代码的要点:
$full_file_path = "/full/path/to/my/file.xlsx";
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReaderForFile($full_file_path);
$excelSpreadsheet = $reader->load($full_file_path);
$PDFWriter = new \PhpOffice\PhpSpreadsheet\Writer\Pdf\Tcpdf($excelSpreadsheet);
$PDFWriter->writeAllSheets();
$PDFWriter->save("blarg.pdf");
当我运行此代码时,blarg.pdf 得到更新并且大小约为 843K。但是,当我在 Acrobat 中打开它时,它显示为空白。
日志中没有出现错误。
在一个单独的测试中,我能够将 Excel 文件写成(丑陋的)HTML 就好了。
知道我做错了什么吗?
随机事实:
- Excel 文件有多个工作表。
- Excel for Mac 版本 15.28 创建的 Excel 文件
- Mac OSX Sierra 10.12.6
- PHP 5.6.28
- phpoffice/php电子表格:1.1.0
- tecnick.com/tcpdf:6.2.13