diff --git a/CHANGELOG.md b/CHANGELOG.md index f457da7..599e4fa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,10 @@ # Changelog +## 1.2.16 (2022-08-06) +* added modTemplate( $path, $custom_xml ) for customize generated XML +```php +$xlsx->modTemplate('xl/worksheets/sheet1.xml', ''); +``` + ## 1.2.15 (2022-07-05) * added wrap words in long strings `long long line` diff --git a/README.md b/README.md index 0af088b..ce83b04 100644 --- a/README.md +++ b/README.md @@ -104,6 +104,10 @@ $xlsx->addSheet( $books, 'Catalog 2021' ); $xlsx->addSheet( $books2, 'Stephen King catalog'); $xlsx->downloadAs('books_2021.xlsx'); exit(); + +// Customize XML +$xlsx->modTemplate('xl/worksheets/sheet1.xml', ''); + ``` ### JS array to Excel (AJAX) ```php diff --git a/src/SimpleXLSXGen.php b/src/SimpleXLSXGen.php index ebc54cf..f7154f2 100644 --- a/src/SimpleXLSXGen.php +++ b/src/SimpleXLSXGen.php @@ -768,6 +768,11 @@ class SimpleXLSXGen { $this->defaultFontSize = $size; return $this; } + public function modTemplate( $path, $custom_xml ) { + $t = $this->template[ $path ]; + $p = strrpos($t,'template[ $path ] = substr($t, 0, $p) . $custom_xml . substr($t,$p); + } public function mergeCells( $range ) { $this->sheets[$this->curSheet]['mergecells'][] = $range; return $this;