当我不想使用 PHPExcel 将文件另存为 PDF 时出错
Error when i wont to save file as PDF using PHPExcel
我在我的项目中使用 PHPExcel 库,当我不想保存文件格式时它工作正常 (xls/xlsx)。但我需要将文件另存为 PDF 格式,我找到了一些示例,但其中 none 对我有用。
这是我用来生成 pdf 格式文件的代码
<?php
error_reporting(E_ALL);
ini_set('include_path', ini_get('include_path').';../Classes/');
include 'PHPExcel/Classes/PHPExcel/IOFactory.php';
$inputFileName = 'file.xls';
try {
$inputFileType = PHPExcel_IOFactory::identify($inputFileName);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);
} catch(Exception $e) {
die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());
}
$objPHPExcel->setActiveSheetIndex(0);
$row = $objPHPExcel->getActiveSheet()->getHighestRow()+1;
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');
$objSheet = $objPHPExcel->getActiveSheet();
$objPHPExcel->getActiveSheet()->SetCellValue('A1', 'test test');
$objWriter->save('test100.pdf');
?>
这是浏览器向我显示的内容
( ! ) Fatal error: Uncaught exception 'PHPExcel_Writer_Exception' with message 'PDF Rendering library has not been defined.' in C:\wamp\www\projet\PHPExcel\Classes\PHPExcel\Writer\PDF.php on line 56
我做错了什么
PHPExcel 没有作为 code/distribution 的一部分的内置 PDF 渲染库。相反,它允许您使用 3 个不同的第 3 方 PDF 库(tcPDF、DomPDF 或 mPDF)中的任何一个。
您必须单独安装该 PDF 渲染库,然后您需要告诉 PHPExcel 您安装了哪个 PDF 库,然后才能将文件另存为 PDF。
这在 PHPExcel documentation 中进行了解释,并在 21pdf.php
等示例中显示
我在我的项目中使用 PHPExcel 库,当我不想保存文件格式时它工作正常 (xls/xlsx)。但我需要将文件另存为 PDF 格式,我找到了一些示例,但其中 none 对我有用。 这是我用来生成 pdf 格式文件的代码
<?php
error_reporting(E_ALL);
ini_set('include_path', ini_get('include_path').';../Classes/');
include 'PHPExcel/Classes/PHPExcel/IOFactory.php';
$inputFileName = 'file.xls';
try {
$inputFileType = PHPExcel_IOFactory::identify($inputFileName);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);
} catch(Exception $e) {
die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());
}
$objPHPExcel->setActiveSheetIndex(0);
$row = $objPHPExcel->getActiveSheet()->getHighestRow()+1;
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');
$objSheet = $objPHPExcel->getActiveSheet();
$objPHPExcel->getActiveSheet()->SetCellValue('A1', 'test test');
$objWriter->save('test100.pdf');
?>
这是浏览器向我显示的内容
( ! ) Fatal error: Uncaught exception 'PHPExcel_Writer_Exception' with message 'PDF Rendering library has not been defined.' in C:\wamp\www\projet\PHPExcel\Classes\PHPExcel\Writer\PDF.php on line 56
我做错了什么
PHPExcel 没有作为 code/distribution 的一部分的内置 PDF 渲染库。相反,它允许您使用 3 个不同的第 3 方 PDF 库(tcPDF、DomPDF 或 mPDF)中的任何一个。
您必须单独安装该 PDF 渲染库,然后您需要告诉 PHPExcel 您安装了哪个 PDF 库,然后才能将文件另存为 PDF。
这在 PHPExcel documentation 中进行了解释,并在 21pdf.php
等示例中显示