Skip to content

Commit 98cd5e0

Browse files
KacerCZPowerKiKi
authored andcommitted
Temporary directory is passed to mPDF (#248)
Temporary directory set to PDF writer is passed to mPDF object in constructor. mPDF 7.0 changed temporary directory configuration from constant to constructor parameter. Without this change it is not possible to change default temporary directory. See: https://mpdf.github.io/installation-setup/folders-for-temporary-files.html
1 parent add064e commit 98cd5e0

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

src/PhpSpreadsheet/Helper/Sample.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
use PhpOffice\PhpSpreadsheet\IOFactory;
66
use PhpOffice\PhpSpreadsheet\Spreadsheet;
77
use PhpOffice\PhpSpreadsheet\Writer\IWriter;
8+
use PhpOffice\PhpSpreadsheet\Writer\Pdf;
89
use RecursiveDirectoryIterator;
910
use RecursiveIteratorIterator;
1011
use RecursiveRegexIterator;
@@ -118,6 +119,11 @@ public function write(Spreadsheet $spreadsheet, $filename, array $writers = ['Xl
118119
foreach ($writers as $writerType) {
119120
$path = $this->getFilename($filename, mb_strtolower($writerType));
120121
$writer = IOFactory::createWriter($spreadsheet, $writerType);
122+
if ($writer instanceof Pdf) {
123+
// PDF writer needs temporary directory
124+
$tempDir = $this->getTemporaryFolder();
125+
$writer->setTempDir($tempDir);
126+
}
121127
$callStartTime = microtime(true);
122128
$writer->save($path);
123129
$this->logWrite($writer, $path, $callStartTime);

src/PhpSpreadsheet/Writer/Pdf/MPDF.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,8 @@ public function save($pFilename)
5555
}
5656

5757
// Create PDF
58-
$pdf = new \Mpdf\Mpdf();
58+
$config = ['tempDir' => $this->tempDir];
59+
$pdf = new \Mpdf\Mpdf($config);
5960
$ortmp = $orientation;
6061
$pdf->_setPageSize(strtoupper($paperSize), $ortmp);
6162
$pdf->DefOrientation = $orientation;

0 commit comments

Comments
 (0)