79ab852bf5
We used to have some kind of wrapper that didn't do much except forward methods to the real instance. That unnecessary complexity made it harder to work with the real writer instance.
62 lines
1.9 KiB
PHP
62 lines
1.9 KiB
PHP
<?php
|
||
|
||
use PhpOffice\PhpSpreadsheet\Helper\Sample;
|
||
use PhpOffice\PhpSpreadsheet\IOFactory;
|
||
use PhpOffice\PhpSpreadsheet\Settings;
|
||
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
||
|
||
require_once __DIR__ . '/../../src/Bootstrap.php';
|
||
|
||
$helper = new Sample();
|
||
if ($helper->isCli()) {
|
||
$helper->log('This example should only be run from a Web Browser' . PHP_EOL);
|
||
|
||
return;
|
||
}
|
||
|
||
// Change these values to select the Rendering library that you wish to use
|
||
// and its directory location on your server
|
||
$rendererName = \PhpOffice\PhpSpreadsheet\Writer\Pdf\MPDF::class;
|
||
|
||
// Create new Spreadsheet object
|
||
$spreadsheet = new Spreadsheet();
|
||
|
||
// Set document properties
|
||
$spreadsheet->getProperties()->setCreator('Maarten Balliauw')
|
||
->setLastModifiedBy('Maarten Balliauw')
|
||
->setTitle('PDF Test Document')
|
||
->setSubject('PDF Test Document')
|
||
->setDescription('Test document for PDF, generated using PHP classes.')
|
||
->setKeywords('pdf php')
|
||
->setCategory('Test result file');
|
||
|
||
// Add some data
|
||
$spreadsheet->setActiveSheetIndex(0)
|
||
->setCellValue('A1', 'Hello')
|
||
->setCellValue('B2', 'world!')
|
||
->setCellValue('C1', 'Hello')
|
||
->setCellValue('D2', 'world!');
|
||
|
||
// Miscellaneous glyphs, UTF-8
|
||
$spreadsheet->setActiveSheetIndex(0)
|
||
->setCellValue('A4', 'Miscellaneous glyphs')
|
||
->setCellValue('A5', 'éàèùâêîôûëïüÿäöüç');
|
||
|
||
// Rename worksheet
|
||
$spreadsheet->getActiveSheet()->setTitle('Simple');
|
||
$spreadsheet->getActiveSheet()->setShowGridLines(false);
|
||
|
||
// Set active sheet index to the first sheet, so Excel opens this as the first sheet
|
||
$spreadsheet->setActiveSheetIndex(0);
|
||
|
||
Settings::setDefaultPdfWriter($rendererName);
|
||
|
||
// Redirect output to a client’s web browser (PDF)
|
||
header('Content-Type: application/pdf');
|
||
header('Content-Disposition: attachment;filename="01simple.pdf"');
|
||
header('Cache-Control: max-age=0');
|
||
|
||
$writer = IOFactory::createWriter($spreadsheet, 'Pdf');
|
||
$writer->save('php://output');
|
||
exit;
|