From 519f341a44572c100d002f5ad773f30b52668dc1 Mon Sep 17 00:00:00 2001 From: Jephte Clain <Jephte.Clain@univ-reunion.fr> Date: Tue, 4 Mar 2025 12:15:58 +0400 Subject: [PATCH] application patch page_order --- .../src/Writer/XLSX/Helper/FileSystemHelper.php | 4 ++++ openspout4/src/Writer/XLSX/Options/PageOrder.php | 11 +++++++++++ openspout4/src/Writer/XLSX/Options/PageSetup.php | 1 + 3 files changed, 16 insertions(+) create mode 100644 openspout4/src/Writer/XLSX/Options/PageOrder.php diff --git a/openspout4/src/Writer/XLSX/Helper/FileSystemHelper.php b/openspout4/src/Writer/XLSX/Helper/FileSystemHelper.php index c9803d1..5539b6a 100644 --- a/openspout4/src/Writer/XLSX/Helper/FileSystemHelper.php +++ b/openspout4/src/Writer/XLSX/Helper/FileSystemHelper.php @@ -517,6 +517,10 @@ final class FileSystemHelper implements FileSystemWithRootFolderHelperInterface $xml .= " paperSize=\"{$pageSetup->paperSize->value}\""; } + if (null !== $pageSetup->pageOrder) { + $xml .= " pageOrder=\"{$pageSetup->pageOrder->value}\""; + } + if (null !== $pageSetup->fitToHeight) { $xml .= " fitToHeight=\"{$pageSetup->fitToHeight}\""; } diff --git a/openspout4/src/Writer/XLSX/Options/PageOrder.php b/openspout4/src/Writer/XLSX/Options/PageOrder.php new file mode 100644 index 0000000..ceb716b --- /dev/null +++ b/openspout4/src/Writer/XLSX/Options/PageOrder.php @@ -0,0 +1,11 @@ +<?php + +declare(strict_types=1); + +namespace OpenSpout\Writer\XLSX\Options; + +enum PageOrder: string +{ + case DOWN_THEN_OVER = 'downThenOver'; + case OVER_THEN_DOWN = 'overThenDown'; +} diff --git a/openspout4/src/Writer/XLSX/Options/PageSetup.php b/openspout4/src/Writer/XLSX/Options/PageSetup.php index 860312c..42fec69 100644 --- a/openspout4/src/Writer/XLSX/Options/PageSetup.php +++ b/openspout4/src/Writer/XLSX/Options/PageSetup.php @@ -13,6 +13,7 @@ final readonly class PageSetup public ?PaperSize $paperSize, public ?int $fitToHeight = null, public ?int $fitToWidth = null, + public ?PageOrder $pageOrder = null, ) { $this->fitToPage = null !== $fitToHeight || null !== $fitToWidth; }