PHPExcel a generování .pdf
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- webmb
- Člen | 4
Ahoj,
mám knihovnu PHPExcel a potřebuju do šablony přidat nějaká data a pak list
uložit v .pdf ukážu na příkladu
$dokument = \PHPExcel_IOFactory::load($this->context->parameters['wwwDir'] . '/documents/template/' . $templateName);
$dokument->setActiveSheetIndex(0);
$list = $dokument->getActiveSheet();
$list->setCellValue('A1', "test");
$writer = \PHPExcel_IOFactory::createWriter($dokument, 'PDF');
$writer->save($this->context->parameters['wwwDir'] . '/documents/files/' . $this->number . '.pdf');
tohle mi vyhodí chybu :
PDF Rendering library has not been defined.
Podle Google bych si měl nainstalovat knihovnu pro generování PDF?
když do PDF.php v knihovně PHPExcel přidám natvrdo
$rendererName = PHPExcel_Settings::PDF_RENDERER_MPDF;
$rendererLibrary = 'MPDF57';
$rendererLibraryPath = 'C:/server/www/nazev-webu/vendor/' . $rendererLibrary;
tak je to pořád stejné… už si nevím rady možná někde dělám triviální blbost nebo jsem to pochopil úplně špatně opravdu nevím
Za každou radu budu vděčný,
Milan
- iguana007
- Člen | 970
Ahoj,
nikdy jsem to nepouzil, ale dle google ti tam podstatna cast kodu chybi. Sice
definujes promenne s hodnotami nutnymi ke konfiguraci exportu do PDF, ale jiz
je nikam nepredavas. Ta druha cast kodu, kterou si uvedl by mela pokracovat cca
takto (jen si tam dopln spravne hodnoty):
// Tell PHPExcel that you're planning on using the tcPDF library
// and where the tcPDF library is installed on your server
$rendererName = PHPExcel_Settings::PDF_RENDERER_TCPDF
$rendererLibrary = 'tcPDF5.9';
$rendererLibraryPath = '/php/libraries/PDF/' . $rendererLibrary;
if (!PHPExcel_Settings::setPdfRenderer(
$rendererName,
$rendererLibraryPath
)) {
die(
'NOTICE: Please set the $rendererName and $rendererLibraryPath values' .
EOL .
'at the top of this script as appropriate for your directory structure'
);
}
// Create a Writer for PDF, which will automatically pick up the settings that you've defined
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');
// And write the spreadsheet to a PDF file
$objWriter->save('myPDFSpreadsheet.pdf');