phpoffice/phpword
PHPWord - A pure PHP library for reading and writing word processing documents (OOXML, ODF, RTF, HTML, PDF)
1.4.0
42M downloads/mo
#471 most downloaded on Packagist
PHPOffice/PHPWord
What this package is like to depend on
Last release 1 years ago
05 Jun 2025
Ships fairly regularly
a new release about every 9 months
Nearly every release is documented
notes for 25 of 25 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
26 releases · first in 2014
0 releases in the last 12 months
see the full history below
Release timeline
25 releases · Jan 2014 to Jun 2025Releases
latest 26-
1.4.005 Jun 2025Release notes
Open source →Enhancements
- Default Font: Allow specify Asisn font and Latin font separately
- Writer ODText: Support for ListItemRun by @Progi1984 fixing #2159, #2620 in #2669
- Writer HTML: Support for vAlign in Tables by @SpraxDev in #2675
- Writer Word2007: Support for padding in Table Cell by @Azamat8405 in #2697
- Added support for PHP 8.4 by @Progi1984 in #2660
- Autoload : Allow to use PHPWord without Composer fixing #2543, #2552, #2716, #2717 in #2722
- Add Default font color for Word by @Collie-IT in #2700
- Writer HTML: Support Default font color by @MichaelPFrey in #2731
- Writer ODText: Support Default font color by @MichaelPFrey in #2735
- Add basic ruby text (phonetic guide) support for Word2007 and HTML Reader/Writer, RTF Writer, basic support for ODT writing by @Deadpikle in #2727
- Reader HTML: Support font styles for h1/h6 by @Progi1984 fixing #2619 in #2737
- Writer EPub3: Basic support by @Sambit003 fixing #55 in #2724
- Writer Word2007: Added support for background and border color transparency in Text Box element by @Chudy20007 in #2555
- Writer/Reader Word2007: Added support for the firstLineChars for Indentation by @liuzhilinux & @Progi1984 in #2753
Bug fixes
- Writer ODText: Support for images inside a textRun by @Progi1984 fixing #2240 in #2668
- Allow vAlign and vMerge on Style\Cell to be set to null by @SpraxDev fixing #2673 in #2676
- Reader HTML: Support for differents size units for table by @Progi1984 fixing #2384, #2701 in #2725
- Reader Word2007: Respect paragraph indent units by @tugmaks & @Progi1984 fixing #507 in #2726
- Reader Word2007: Support Header elements within Title elements by @SpraxDev fixing #2616, #2426 in #2674
- Reader HTML: Support for inherit value for property line-height by @Progi1984 fixing #2683 in #2733
- Writer HTML: Fixed null string for Text Elements by @armagedon007 and @Progi1984 in #2738
- Template Processor: Fix 0 considered as empty string by @cavasinf, @SnipsMine and @Progi1984 fixing #2572, #2703 in #2748
- Word2007 Writer : Corrected generating TOC to fix page number missing issues @jgiacomello in #2556
- Enhanced error handling in encoding functions @michalschroeder in #2784
Miscellaneous
- Bump dompdf/dompdf from 2.0.4 to 3.0.0 by @dependabot fixing #2621 in #2666
- Add test case to make sure vMerge defaults to 'continue' by @SpraxDev in #2677
- Adding the possibility to use iterate search and replace with setValues by @moghwan in #2632
- Add test cases that test the ODTText and Word2007 reader using the corresponding writer, increasing test coverage by @MichaelPFrey in #2745
- Updated TOCTest to use static HTML content instead of external resource @michalschroeder in #2784
- Bump PHPOffice/math from 0.2.0 to 0.3.0 by @eileenmcnaughton in #2785
Deprecations
- Deprecate
PhpOffice\PhpWord\Style\Paragraph::getIndent(): UsePhpOffice\PhpWord\Style\Paragraph::getIndentLeft() - Deprecate
PhpOffice\PhpWord\Style\Paragraph::setHanging(): UsePhpOffice\PhpWord\Style\Paragraph::setIndentHanging() - Deprecate
PhpOffice\PhpWord\Style\Paragraph::setIndent(): UsePhpOffice\PhpWord\Style\Paragraph::setIndentLeft()
BC Breaks
Notes
- Writer ODText previously used to set 'style:use-window-font-color' to 'true', now it is set to 'false'. (see #2735)
The effect of this attribute is "implementation dependent" (if implemented at all).
Setting it to false allows setting a default font color and improves interoperabilt,
but may break certain specific use cases.
Release notes
Open source →1.4.0
Enhancements
-
Default Font: Allow specify Asisn font and Latin font separately
-
Writer ODText: Support for ListItemRun by @Progi1984 fixing #2159, #2620 in #2669
-
Writer HTML: Support for vAlign in Tables by @SpraxDev in #2675
-
Writer Word2007: Support for padding in Table Cell by @Azamat8405 in #2697
-
Added support for PHP 8.4 by @Progi1984 in #2660
-
Autoload : Allow to use PHPWord without Composer fixing #2543, #2552, #2716, #2717 in #2722
-
Add Default font color for Word by @Collie-IT in #2700
-
Writer HTML: Support Default font color by @MichaelPFrey in #2731
-
Writer ODText: Support Default font color by @MichaelPFrey in #2735
-
Add basic ruby text (phonetic guide) support for Word2007 and HTML Reader/Writer, RTF Writer, basic support for ODT writing by @Deadpikle in #2727
-
Reader HTML: Support font styles for h1/h6 by @Progi1984 fixing #2619 in #2737
-
Writer EPub3: Basic support by @Sambit003 fixing #55 in #2724
-
Writer Word2007: Added support for background and border color transparency in Text Box element by @chudy20007 in #2555
-
Writer/Reader Word2007: Added support for the firstLineChars for Indentation by @liuzhilinux & @Progi1984 in #2753
Bug fixes
- Writer ODText: Support for images inside a textRun by @Progi1984 fixing #2240 in #2668
- Allow vAlign and vMerge on Style\Cell to be set to null by @SpraxDev fixing #2673 in #2676
- Reader HTML: Support for differents size units for table by @Progi1984 fixing #2384, #2701 in #2725
- Reader Word2007: Respect paragraph indent units by @tugmaks & @Progi1984 fixing #507 in #2726
- Reader Word2007: Support Header elements within Title elements by @SpraxDev fixing #2616, #2426 in #2674
- Reader HTML: Support for inherit value for property line-height by @Progi1984 fixing #2683 in #2733
- Writer HTML: Fixed null string for Text Elements by @armagedon007 and @Progi1984 in #2738
- Template Processor: Fix 0 considered as empty string by @cavasinf, @SnipsMine and @Progi1984 fixing #2572, #2703 in #2748
- Word2007 Writer : Corrected generating TOC to fix page number missing issues @jgiacomello in #2556
- Enhanced error handling in encoding functions @michalschroeder in #2784
Miscellaneous
- Bump dompdf/dompdf from 2.0.4 to 3.0.0 by @dependabot fixing #2621 in #2666
- Add test case to make sure vMerge defaults to 'continue' by @SpraxDev in #2677
- Adding the possibility to use iterate search and replace with setValues by @moghwan in #2632
- Add test cases that test the ODTText and Word2007 reader using the corresponding writer, increasing test coverage by @MichaelPFrey in #2745
- Updated TOCTest to use static HTML content instead of external resource @michalschroeder in #2784
- Bump PHPOffice/math from 0.2.0 to 0.3.0 by @eileenmcnaughton in #2785
Deprecations
- Deprecate
PhpOffice\PhpWord\Style\Paragraph::getIndent(): UsePhpOffice\PhpWord\Style\Paragraph::getIndentLeft() - Deprecate
PhpOffice\PhpWord\Style\Paragraph::setHanging(): UsePhpOffice\PhpWord\Style\Paragraph::setIndentHanging() - Deprecate
PhpOffice\PhpWord\Style\Paragraph::setIndent(): UsePhpOffice\PhpWord\Style\Paragraph::setIndentLeft()
BC Breaks
Notes
- Writer ODText previously used to set 'style:use-window-font-color' to 'true', now it is set to 'false'. (see #2735) The effect of this attribute is "implementation dependent" (if implemented at all). Setting it to false allows setting a default font color and improves interoperabilt, but may break certain specific use cases.
-
1.3.030 Aug 2024Release notes
Open source →Full Changelog: 1.2.0...1.3.0
Enhancements
- IOFactory : Added extractVariables method to extract variables from a document @sibalonat in #2515
- PDF Writer : Documented how to specify a PDF renderer, when working with the PDF writer, as well as the three available choices by @settermjd in #2642
- Word2007 Reader: Support for Paragraph Border Style by @damienfa in #2651
- Word2007 Writer: Support for field REF by @crystoline in #2652
- Word2007 Reader : Support for FormFields by @vincentKool in #2653
- RTF Writer : Support for Table Border Style fixing #345 by @Progi1984 in #2656
- Word2007 Reader: Support the page break () by @stanolacko in #2662
- MsDoc Reader: Support for UTF-8 characters by @Progi1984 fixing #881, #1454, #1817, #1927, #2383, #2565 in #2664
- Word2007 Writer: Added support for multiples comment for the same text by @rodrigoq fixing #2109 in #2665
Bug fixes
- MsDoc Reader : Correct Font Size Calculation by @oleibman fixing #2526 in #2531
- Html Reader : Process Titles as Headings not Paragraphs @0b10011 and @oleibman Issue #1692 PR #2533
- Generate Table Cell if Row Doesn't Have Any @oleibman fixing #2505 in #2516
- TemplateProcessor Persist File After Destruct @oleibman fixing #2539 in #2545
- TemplateProcessor Destructor Problem with Php7 @oleibman fixing #2548 in #2554
- bug: TemplateProcessor fix multiline values @gimler fixing #268, #2323 and #2486 in #2522
- 32-bit Problem in PasswordEncoder @oleibman fixing #2550 in #2551
- Typo : Fix hardcoded macro chars in TemplateProcessor method @glafarge in #2618
- XML Reader : Prevent fatal errors when opening corrupt files or "doc" files @mmcev106 in #2626
- Documentation : Updated Comment element by @laminga in #2650
- HTML Reader : Read width & height attributes in points fixing #2589 by @Progi1984 in #2654
- Template Processor : Fixed bad naming of variables fixing #2586 by @Progi1984 in #2655
- Word2007 Writer : Fix first footnote appearing as separator #2634 by @jacksleight in #2635
- Template Processor : Fixed images with transparent backgrounds displaying a white background by @ElwynVdb in #2638
- HTML Writer : Fixed rowspan for tables by @andomiell in #2659
- Word2007 Writer : Fixed StrikeThrough property by @noec764 fixing #1722 & #1693 in #2661
- HTML Reader : Fixed link without href by @asmundstavdahl fixing #1562 in #2663
Miscellaneous
- Bump dompdf/dompdf from 2.0.3 to 2.0.4 by @dependabot in #2530
- Bump phpunit/phpunit from 9.6.13 to 9.6.14 by @dependabot in #2519
- Bump mpdf/mpdf from 8.2.0 to 8.2.2 by @dependabot in #2518
- Bump phpmd/phpmd from 2.14.1 to 2.15.0 by @dependabot in #2538
- Bump phpunit/phpunit from 9.6.14 to 9.6.15 by @dependabot in #2537
- Bump symfony/process from 5.4.28 to 5.4.34 by @dependabot in #2536
- Allow rgb() when converting Html by @oleibman fixing #2508 in #2512
- Improved Issue Template by @Progi1984 in #2609
- Bump phpoffice/math from 0.1.0 to 0.2.0 by @Progi1984 fixing #2559 in #2645
- Bump tecnickcom/tcpdf from 6.6.5 to 6.7.5 by @dependabot in #2646
- Bump mpdf/mpdf from 8.2.2 to 8.2.4 by @dependabot in #2647
- Bump phenx/php-svg-lib from 0.5.1 to 0.5.4 by @dependabot in #2649
- Bump phpstan/phpstan-phpunit from 1.3.15 to 1.4.0 by @dependabot in #2648
New Contributors
- @sibalonat made their first contribution in #2515
- @settermjd made their first contribution in #2642
- @glafarge made their first contribution in #2618
- @mmcev106 made their first contribution in #2626
- @jacksleight made their first contribution in #2635
- @ElwynVdb made their first contribution in #2638
Release notes
Open source →1.3.0
Enhancements
- IOFactory : Added extractVariables method to extract variables from a document @sibalonat in #2515
- PDF Writer : Documented how to specify a PDF renderer, when working with the PDF writer, as well as the three available choices by @settermjd in #2642
- Word2007 Reader: Support for Paragraph Border Style by @damienfa in #2651
- Word2007 Writer: Support for field REF by @crystoline in #2652
- Word2007 Reader : Support for FormFields by @vincentKool in #2653
- RTF Writer : Support for Table Border Style fixing #345 by @Progi1984 in #2656
- Word2007 Reader: Support the page break (<w:lastRenderedPageBreak/>) by @stanolacko in #2662
- MsDoc Reader: Support for UTF-8 characters by [@Progi1984] fixing #881, #1454, #1817, #1927, #2383, #2565 in #2664
- Word2007 Writer: Added support for multiples comment for the same text by @rodrigoq fixing #2109 in #2665
Bug fixes
- MsDoc Reader : Correct Font Size Calculation by @oleibman fixing #2526 in #2531
- Html Reader : Process Titles as Headings not Paragraphs @0b10011 and @oleibman Issue #1692 PR #2533
- Generate Table Cell if Row Doesn't Have Any @oleibman fixing #2505 in #2516
- TemplateProcessor Persist File After Destruct @oleibman fixing #2539 in #2545
- TemplateProcessor Destructor Problem with Php7 @oleibman fixing #2548 in #2554
- bug: TemplateProcessor fix multiline values @gimler fixing #268, #2323 and #2486 in #2522
- 32-bit Problem in PasswordEncoder @oleibman fixing #2550 in #2551
- Typo : Fix hardcoded macro chars in TemplateProcessor method @glafarge in #2618
- XML Reader : Prevent fatal errors when opening corrupt files or "doc" files @mmcev106 in #2626
- Documentation : Updated Comment element by @laminga in #2650
- HTML Reader : Read width & height attributes in points fixing #2589 by @Progi1984 in #2654
- Template Processor : Fixed bad naming of variables fixing #2586 by @Progi1984 in #2655
- Word2007 Writer : Fix first footnote appearing as separator #2634 by @jacksleight in #2635
- Template Processor : Fixed images with transparent backgrounds displaying a white background by @ElwynVdb in #2638
- HTML Writer : Fixed rowspan for tables by @andomiell in #2659
- Word2007 Writer : Fixed StrikeThrough property by @noec764 fixing #1722 & #1693 in #2661
- HTML Reader : Fixed link without href by @asmundstavdahl fixing #1562 in #2663
Miscellaneous
- Bump dompdf/dompdf from 2.0.3 to 2.0.4 by @dependabot in #2530
- Bump phpunit/phpunit from 9.6.13 to 9.6.14 by @dependabot in #2519
- Bump mpdf/mpdf from 8.2.0 to 8.2.2 by @dependabot in #2518
- Bump phpmd/phpmd from 2.14.1 to 2.15.0 by @dependabot in #2538
- Bump phpunit/phpunit from 9.6.14 to 9.6.15 by @dependabot in #2537
- Bump symfony/process from 5.4.28 to 5.4.34 by @dependabot in #2536
- Allow rgb() when converting Html by @oleibman fixing #2508 in #2512
- Improved Issue Template by @Progi1984 in #2609
- Bump phpoffice/math from 0.1.0 to 0.2.0 by @Progi1984 fixing #2559 in #2645
- Bump tecnickcom/tcpdf from 6.6.5 to 6.7.5 by @dependabot in #2646
- Bump mpdf/mpdf from 8.2.2 to 8.2.4 by @dependabot in #2647
- Bump phenx/php-svg-lib from 0.5.1 to 0.5.4 by @dependabot in #2649
- Bump phpstan/phpstan-phpunit from 1.3.15 to 1.4.0 by @dependabot in #2648
BC Breaks
-
1.2.030 Nov 2023Release notes
Open source →Enhancements
- Word2007 Reader/Writer : Added noWrap table cell property by @kernusr in #2359
- HTML Reader : Support for
font-variant: small-capsby @cambraca in #2117 - Improved TextDirection for styling a cell by @terryzwt in #2429
- Word2007 Reader : Added option to disable loading images by @aelliott1485 in #2450
- HTML Writer : Added border-spacing to default styles for table by @kernusr in #2451
- Word2007 Reader : Support for table cell borders and margins by @kernusr in #2454
- PDF Writer : Add config for defining the default font by @MikeMaldini in #2262 & #2468
- Word2007 Reader : Added support for Comments by @shaedrich in #2161 & #2469
- Word2007 Reader/Writer: Permit book-fold printing by @potofcoffee in #2225 & #2470
- Word2007 Writer : Add PageNumber to TOC by @jet-desk in #1652 & #2471
- Word2007 Reader/Writer + ODText Reader/Writer : Add Element Formula in by @Progi1984 in #2477
- Add Support for Various Missing Features in HTML Writer by @oleibman in #2475
- Fixed addHTML (text-align:right in html is not handled correctly) in #2467
- HTML Writer : Added ability to specify generic fallback font
- HTML Writer : Added ability to specify handling of whitespace
- HTML Writer : Added support for Table Border style, color, and size
- HTML Writer : Added support for empty paragraphs (Word writer permits, browsers generally suppress)
- HTML Writer : Paragraph style should support indentation, line-height, page-break-before
- HTML Writer : Removed margin-top/bottom when spacing is null in Paragraph style
- HTML Writer : Added default paragraph style to all paragraphs, as well as class Normal
- HTML Writer : Use css @page and page declarations for sections
- HTML Writer : Wrap sections in div, with page break before each (except first)
- PDF Writer : Added support for PageBreak
- PDF Writer : Added callback for modifying the HTML
- Added Support for Language, both for document overall and individual text elements
- Template : Set a checkbox by @nxtpge in #2509
- ODText / RTF / Word2007 Writer : Add field FILENAME by @milkyway-git in #2510
- ODText Reader : Improve Section Reader by @oleibman in #2507
Bug fixes
- Fixed wrong mimetype for docx files by @gamerlv in #2416
- Word2007 Reader : Read hyperlingks in headings by @hannesdorn in #2433
- PclZip : strtr using empty string by @spl1nes in #2432
- Fixed PHP 8.2 deprecated about Allow access to an undefined property by @DAdq26 in #2440
- Template Processor : Fixed choose dimention for Float Value by @gdevilbat in #2449
- HTML Parser : Fix image parsing from url without extension by @JokubasR in #2459
- Word2007 Reader : Fixed reading of Office365 DocX file by @filippotoso & @lfglopes in #2506
- Word2007 Reader : Check for null on $fontDefaultStyle by @spatialfree in #2513
Miscellaneous
- Added PHPStan by @PowerKiKi in #2405
- Bump symfony/process from 4.4.44 to 5.4.26 by @dependabot in #2431
- Bump phpunit/phpunit from 9.6.8 to 9.6.10 by @dependabot in #2430
- Added Coveralls.io by @Progi1984 in #2452
- Added support for PHP 8.2 & PHP 8.3 by @Progi1984 in #2453
- Moved documention from ReadTheDocs to MkDocs & Github Pages by @Progi1984 in #2465
- Bump phpstan/phpstan-phpunit from 1.3.13 to 1.3.14 by @dependabot in #2457
- Bump symfony/process from 5.4.26 to 5.4.28 by @dependabot in #2456
- Bump phpunit/phpunit from 9.6.10 to 9.6.11 by @dependabot in #2455
- Remove deprecated utf8_encode in PHP 8.2 by @mhcwebdesign in #2447 & #2472
- Bump mpdf/mpdf from 8.1.6 to 8.2.0 by @dependabot in #2480
- Bump phpunit/phpunit from 9.6.11 to 9.6.13 by @dependabot in #2481
- Bump tecnickcom/tcpdf from 6.6.2 to 6.6.5 by @dependabot in #2482
- Bump phpmd/phpmd from 2.13.0 to 2.14.1 by @dependabot in #2483
- Bump phpstan/phpstan-phpunit from 1.3.14 to 1.3.15 by @dependabot in #2494
BC Breaks
- Removed dependency
laminas/laminas-escaper
New Contributors
- @dependabot made their first contribution in #2431
- @terryzwt made their first contribution in #2429
- @gamerlv made their first contribution in #2416
- @hannesdorn made their first contribution in #2433
- @spl1nes made their first contribution in #2432
- @DAdq26 made their first contribution in #2440
- @JokubasR made their first contribution in #2459
Full Changelog: 1.1.0...1.2.0
Release notes
Open source →1.2.0
Enhancements
- Word2007 Reader/Writer : Added noWrap table cell property by @kernusr in GH-2359
- HTML Reader : Support for
font-variant: small-capsby @cambraca in GH-2117 - Improved TextDirection for styling a cell by @terryzwt in GH-2429
- Word2007 Reader : Added option to disable loading images by @aelliott1485 in GH-2450
- HTML Writer : Added border-spacing to default styles for table by @kernusr in GH-2451
- Word2007 Reader : Support for table cell borders and margins by @kernusr in GH-2454
- PDF Writer : Add config for defining the default font by @MikeMaldini in #2262 & #2468
- Word2007 Reader : Added support for Comments by @shaedrich in #2161 & #2469
- Word2007 Reader/Writer: Permit book-fold printing by @potofcoffee in #2225 & #2470
- Word2007 Writer : Add PageNumber to TOC by @jet-desk in #1652 & #2471
- Word2007 Reader/Writer + ODText Reader/Writer : Add Element Formula in by @Progi1984 in #2477
- Add Support for Various Missing Features in HTML Writer by @oleibman in #2475
- Fixed addHTML (text-align:right in html is not handled correctly) in #2467
- HTML Writer : Added ability to specify generic fallback font
- HTML Writer : Added ability to specify handling of whitespace
- HTML Writer : Added support for Table Border style, color, and size
- HTML Writer : Added support for empty paragraphs (Word writer permits, browsers generally suppress)
- HTML Writer : Paragraph style should support indentation, line-height, page-break-before
- HTML Writer : Removed margin-top/bottom when spacing is null in Paragraph style
- HTML Writer : Added default paragraph style to all paragraphs, as well as class Normal
- HTML Writer : Use css @page and page declarations for sections
- HTML Writer : Wrap sections in div, with page break before each (except first)
- PDF Writer : Added support for PageBreak
- PDF Writer : Added callback for modifying the HTML
- Added Support for Language, both for document overall and individual text elements
- Template : Set a checkbox by @nxtpge in #2509
- ODText / RTF / Word2007 Writer : Add field FILENAME by @milkyway-git in #2510
- ODText Reader : Improve Section Reader by @oleibman in #2507
Bug fixes
- Fixed wrong mimetype for docx files by @gamerlv in GH-2416
- Word2007 Reader : Read hyperlingks in headings by @hannesdorn in GH-2433
- PclZip : strtr using empty string by @spl1nes in GH-2432
- Fixed PHP 8.2 deprecated about Allow access to an undefined property by @DAdq26 in GH-2440
- Template Processor : Fixed choose dimention for Float Value by @gdevilbat in GH-2449
- HTML Parser : Fix image parsing from url without extension by @JokubasR in GH-2459
- Word2007 Reader : Fixed reading of Office365 DocX file by @filippotoso & @lfglopes in #2506
- Word2007 Reader : Check for null on $fontDefaultStyle by @spatialfree in #2513
Miscellaneous
- Added PHPStan by @PowerKiKi in GH-2405
- Bump symfony/process from 4.4.44 to 5.4.26 by @dependabot in GH-2431
- Bump phpunit/phpunit from 9.6.8 to 9.6.10 by @dependabot in GH-2430
- Added Coveralls.io by @Progi1984 in GH-2452
- Added support for PHP 8.2 & PHP 8.3 by @Progi1984 in GH-2453
- Moved documention from ReadTheDocs to MkDocs & Github Pages by @Progi1984 in GH-2465
- Bump phpstan/phpstan-phpunit from 1.3.13 to 1.3.14 by @dependabot in #2457
- Bump symfony/process from 5.4.26 to 5.4.28 by @dependabot in #2456
- Bump phpunit/phpunit from 9.6.10 to 9.6.11 by @dependabot in #2455
- Remove deprecated utf8_encode in PHP 8.2 by @mhcwebdesign in #2447 & #2472
- Bump mpdf/mpdf from 8.1.6 to 8.2.0 by @dependabot in #2480
- Bump phpunit/phpunit from 9.6.11 to 9.6.13 by @dependabot in #2481
- Bump tecnickcom/tcpdf from 6.6.2 to 6.6.5 by @dependabot in #2482
- Bump phpmd/phpmd from 2.13.0 to 2.14.1 by @dependabot in #2483
- Bump phpstan/phpstan-phpunit from 1.3.14 to 1.3.15 by @dependabot in #2494
BC Breaks
- Removed dependency
laminas/laminas-escaper - Unintended Break TemplateProcessor Does Not Persist File After Destruct. #2539 To be fixed by [#2545](https://github.com/PHPOffice/PHPWord/pull/2545
-
1.2.0-beta.1no date pre-releaseRelease notes
Open source →Enhancements
- Word2007 Reader/Writer : Added noWrap table cell property by @kernusr in #2359
- HTML Reader : Support for
font-variant: small-capsby @cambraca in #2117 - Improved TextDirection for styling a cell by @terryzwt in #2429
- Word2007 Reader : Added option to disable loading images by @aelliott1485 in #2450
- HTML Writer : Added border-spacing to default styles for table by @kernusr in #2451
- Word2007 Reader : Support for table cell borders and margins by @kernusr in #2454
- PDF Writer : Add config for defining the default font by @MikeMaldini in #2262 & #2468
- Word2007 Reader : Added support for Comments by @shaedrich in #2161 & #2469
- Word2007 Reader/Writer: Permit book-fold printing by @potofcoffee in #2225 & #2470
- Word2007 Writer : Add PageNumber to TOC by @jet-desk in #1652 & #2471
- Word2007 Reader/Writer + ODText Reader/Writer : Add Element Formula in by @Progi1984 in #2477
- Add Support for Various Missing Features in HTML Writer by @oleibman in #2475
- Fixed addHTML (text-align:right in html is not handled correctly) in #2467
- HTML Writer : Added ability to specify generic fallback font
- HTML Writer : Added ability to specify handling of whitespace
- HTML Writer : Added support for Table Border style, color, and size
- HTML Writer : Added support for empty paragraphs (Word writer permits, browsers generally suppress)
- HTML Writer : Paragraph style should support indentation, line-height, page-break-before
- HTML Writer : Removed margin-top/bottom when spacing is null in Paragraph style
- HTML Writer : Added default paragraph style to all paragraphs, as well as class Normal
- HTML Writer : Use css @page and page declarations for sections
- HTML Writer : Wrap sections in div, with page break before each (except first)
- PDF Writer : Added support for PageBreak
- PDF Writer : Added callback for modifying the HTML
- Added Support for Language, both for document overall and individual text elements
- Template : Set a checkbox by @nxtpge in #2509
- ODText / RTF / Word2007 Writer : Add field FILENAME by @milkyway-git in #2510
- ODText Reader : Improve Section Reader by @oleibman in #2507
Bug fixes
- Fixed wrong mimetype for docx files by @gamerlv in #2416
- Word2007 Reader : Read hyperlingks in headings by @hannesdorn in #2433
- PclZip : strtr using empty string by @spl1nes in #2432
- Fixed PHP 8.2 deprecated about Allow access to an undefined property by @DAdq26 in #2440
- Template Processor : Fixed choose dimention for Float Value by @gdevilbat in #2449
- HTML Parser : Fix image parsing from url without extension by @JokubasR in #2459
- Word2007 Reader : Fixed reading of Office365 DocX file by @filippotoso & @lfglopes in #2506
- Word2007 Reader : Check for null on $fontDefaultStyle by @spatialfree in #2513
Miscellaneous
- Added PHPStan by @PowerKiKi in #2405
- Bump symfony/process from 4.4.44 to 5.4.26 by @dependabot in #2431
- Bump phpunit/phpunit from 9.6.8 to 9.6.10 by @dependabot in #2430
- Added Coveralls.io by @Progi1984 in #2452
- Added support for PHP 8.2 & PHP 8.3 by @Progi1984 in #2453
- Moved documention from ReadTheDocs to MkDocs & Github Pages by @Progi1984 in #2465
- Bump phpstan/phpstan-phpunit from 1.3.13 to 1.3.14 by @dependabot in #2457
- Bump symfony/process from 5.4.26 to 5.4.28 by @dependabot in #2456
- Bump phpunit/phpunit from 9.6.10 to 9.6.11 by @dependabot in #2455
- Remove deprecated utf8_encode in PHP 8.2 by @mhcwebdesign in #2447 & #2472
- Bump mpdf/mpdf from 8.1.6 to 8.2.0 by @dependabot in #2480
- Bump phpunit/phpunit from 9.6.11 to 9.6.13 by @dependabot in #2481
- Bump tecnickcom/tcpdf from 6.6.2 to 6.6.5 by @dependabot in #2482
- Bump phpmd/phpmd from 2.13.0 to 2.14.1 by @dependabot in #2483
- Bump phpstan/phpstan-phpunit from 1.3.14 to 1.3.15 by @dependabot in #2494
BC Breaks
- Removed dependency
laminas/laminas-escaper
New Contributors
- @dependabot made their first contribution in #2431
- @terryzwt made their first contribution in #2429
- @gamerlv made their first contribution in #2416
- @hannesdorn made their first contribution in #2433
- @spl1nes made their first contribution in #2432
- @DAdq26 made their first contribution in #2440
- @JokubasR made their first contribution in #2459
Full Changelog: 1.1.0...1.2.0-beta.1
-
1.1.030 May 2023Release notes
Open source →Enhancements
- Introduce deleteRow() method for TemplateProcessor
- HTML Reader: Add basic support for CSS Style Tag
- Allow customizing macro syntax in TemplateProcessor
- Add background color support for textboxes
- Add softhyphen support to word reader
- Add support table row height when importing HTML
- Add support for fractional font sizes
- Added image quality support, with the maximum quality as default
- Support for reading nested tables
Bug fixes
- DOCX reader: Read empty vmerge
- Fixed setting width of Cell Style
Miscellaneous
masteris the new default branch
Release notes
Open source →1.1.0 (2023-05-30)
Enhancements
- Introduce deleteRow() method for TemplateProcessor
- HTML Reader: Add basic support for CSS Style Tag
- Allow customizing macro syntax in TemplateProcessor
- Add background color support for textboxes
- Add softhyphen support to word reader
- Add support table row height when importing HTML
- Add support for fractional font sizes
- Added image quality support, with the maximum quality as default
- Support for reading nested tables
Bug fixes
- DOCX reader: Read empty vmerge
- Fixed setting width of Cell Style
Miscellaneous
masteris the new default branch
-
1.0.015 Nov 2022Release notes
Open source →BREAKING CHANGE
Most deprecated things were dropped. See details in
b9f1151.Dropped classes:
PhpOffice\PhpWord\Template
Dropped constants:
PhpOffice\PhpWord\Style\Font::UNDERLINE_DOTHASHPhpOffice\PhpWord\Style\Font::UNDERLINE_DOTHASHHEAVYPhpOffice\PhpWord\Style\Cell::VALIGN_TOPPhpOffice\PhpWord\Style\Cell::VALIGN_CENTERPhpOffice\PhpWord\Style\Cell::VALIGN_BOTTOMPhpOffice\PhpWord\Style\Cell::VALIGN_BOTHPhpOffice\PhpWord\Style\TOC::TABLEADER_DOTPhpOffice\PhpWord\Style\TOC::TABLEADER_UNDERSCOREPhpOffice\PhpWord\Style\TOC::TABLEADER_LINEPhpOffice\PhpWord\Style\TOC::TABLEADER_NONEPhpOffice\PhpWord\Style\Table::WIDTH_AUTOPhpOffice\PhpWord\Style\Table::WIDTH_PERCENTPhpOffice\PhpWord\Style\Table::WIDTH_TWIPPhpOffice\PhpWord\PhpWord::DEFAULT_FONT_NAMEPhpOffice\PhpWord\PhpWord::DEFAULT_FONT_SIZEPhpOffice\PhpWord\PhpWord::DEFAULT_FONT_COLORPhpOffice\PhpWord\PhpWord::DEFAULT_FONT_CONTENT_TYPE
Dropped methods:
PhpOffice\PhpWord\Ekement\AbstractContainer::createTextRun()PhpOffice\PhpWord\Ekement\AbstractContainer::createFootnote()PhpOffice\PhpWord\Ekement\Footnote::getReferenceId()PhpOffice\PhpWord\Ekement\Footnote::setReferenceId()PhpOffice\PhpWord\Ekement\Image::getIsWatermark()PhpOffice\PhpWord\Ekement\Image::getIsMemImage()PhpOffice\PhpWord\Ekement\Link::getTarget()PhpOffice\PhpWord\Ekement\Link::getLinkSrc()PhpOffice\PhpWord\Ekement\Link::getLinkName()PhpOffice\PhpWord\Ekement\OLEObject::getObjectId()PhpOffice\PhpWord\Ekement\OLEObject::setObjectId()PhpOffice\PhpWord\Ekement\Section::getFootnotePropoperties()PhpOffice\PhpWord\Ekement\Section::setSettings()PhpOffice\PhpWord\Ekement\Section::getSettings()PhpOffice\PhpWord\Ekement\Section::createHeader()PhpOffice\PhpWord\Ekement\Section::createFooter()PhpOffice\PhpWord\Ekement\Section::getFooter()PhpOffice\PhpWord\Media::addSectionMediaElement()PhpOffice\PhpWord\Media::addSectionLinkElement()PhpOffice\PhpWord\Media::getSectionMediaElements()PhpOffice\PhpWord\Media::countSectionMediaElements()PhpOffice\PhpWord\Media::addHeaderMediaElement()PhpOffice\PhpWord\Media::countHeaderMediaElements()PhpOffice\PhpWord\Media::getHeaderMediaElements()PhpOffice\PhpWord\Media::addFooterMediaElement()PhpOffice\PhpWord\Media::countFooterMediaElements()PhpOffice\PhpWord\Media::getFooterMediaElements()PhpOffice\PhpWord\PhpWord::getProtection()PhpOffice\PhpWord\PhpWord::loadTemplate()PhpOffice\PhpWord\PhpWord::createSection()PhpOffice\PhpWord\PhpWord::getDocumentProperties()PhpOffice\PhpWord\PhpWord::setDocumentProperties()PhpOffice\PhpWord\Reader\AbstractReader::getReadDataOnly()PhpOffice\PhpWord\Settings::getCompatibility()PhpOffice\PhpWord\Style\AbstractStyle::setArrayStyle()PhpOffice\PhpWord\Style\Cell::getDefaultBorderColor()PhpOffice\PhpWord\Style\Font::getBold()PhpOffice\PhpWord\Style\Font::getItalic()PhpOffice\PhpWord\Style\Font::getSuperScript()PhpOffice\PhpWord\Style\Font::getSubScript()PhpOffice\PhpWord\Style\Font::getStrikethrough()PhpOffice\PhpWord\Style\Font::getParagraphStyle()PhpOffice\PhpWord\Style\Frame::getAlign()PhpOffice\PhpWord\Style\Frame::setAlign()PhpOffice\PhpWord\Style\NumberingLevel::getAlign()PhpOffice\PhpWord\Style\NumberingLevel::setAlign()PhpOffice\PhpWord\Style\Paragraph::getAlign()PhpOffice\PhpWord\Style\Paragraph::setAlign()PhpOffice\PhpWord\Style\Paragraph::getWidowControl()PhpOffice\PhpWord\Style\Paragraph::getKeepNext()PhpOffice\PhpWord\Style\Paragraph::getKeepLines()PhpOffice\PhpWord\Style\Paragraph::getPageBreakBefore()PhpOffice\PhpWord\Style\Row::getTblHeader()PhpOffice\PhpWord\Style\Row::isTblHeader()PhpOffice\PhpWord\Style\Row::getCantSplit()PhpOffice\PhpWord\Style\Row::getExactHeight()PhpOffice\PhpWord\Style\Spacing::getRule()PhpOffice\PhpWord\Style\Spacing::setRule()PhpOffice\PhpWord\Style\Table::getAlign()PhpOffice\PhpWord\Style\Table::setAlign()PhpOffice\PhpWord\Writer\AbstractWriter::getUseDiskCaching()PhpOffice\PhpWord\Writer\HTML::writeDocument()
Bug fixes
- Multiple PHP 8.1 fixes
loadConfigreturns config that was actually applied- HTML Reader : Override inline style on HTML attribute for table
- HTML Reader : Use
borderattribute for tables - HTML Reader : Style page-break-after in paragraph
- HTML Reader : Heading in Text Run is not allowed
Miscellaneous
- Drop support for PHP 7.0 and older
Release notes
Open source →1.0.0 (2022-11-15)
BREAKING CHANGE
Most deprecated things were dropped. See details in https://github.com/PHPOffice/PHPWord/commit/b9f1151bc6f90c276153c3c9dca10a5fc7f355fb.
Dropped classes:
PhpOffice\PhpWord\Template
Dropped constants:
PhpOffice\PhpWord\Style\Font::UNDERLINE_DOTHASHPhpOffice\PhpWord\Style\Font::UNDERLINE_DOTHASHHEAVYPhpOffice\PhpWord\Style\Cell::VALIGN_TOPPhpOffice\PhpWord\Style\Cell::VALIGN_CENTERPhpOffice\PhpWord\Style\Cell::VALIGN_BOTTOMPhpOffice\PhpWord\Style\Cell::VALIGN_BOTHPhpOffice\PhpWord\Style\TOC::TABLEADER_DOTPhpOffice\PhpWord\Style\TOC::TABLEADER_UNDERSCOREPhpOffice\PhpWord\Style\TOC::TABLEADER_LINEPhpOffice\PhpWord\Style\TOC::TABLEADER_NONEPhpOffice\PhpWord\Style\Table::WIDTH_AUTOPhpOffice\PhpWord\Style\Table::WIDTH_PERCENTPhpOffice\PhpWord\Style\Table::WIDTH_TWIPPhpOffice\PhpWord\PhpWord::DEFAULT_FONT_NAMEPhpOffice\PhpWord\PhpWord::DEFAULT_FONT_SIZEPhpOffice\PhpWord\PhpWord::DEFAULT_FONT_COLORPhpOffice\PhpWord\PhpWord::DEFAULT_FONT_CONTENT_TYPE
Dropped methods:
PhpOffice\PhpWord\Ekement\AbstractContainer::createTextRun()PhpOffice\PhpWord\Ekement\AbstractContainer::createFootnote()PhpOffice\PhpWord\Ekement\Footnote::getReferenceId()PhpOffice\PhpWord\Ekement\Footnote::setReferenceId()PhpOffice\PhpWord\Ekement\Image::getIsWatermark()PhpOffice\PhpWord\Ekement\Image::getIsMemImage()PhpOffice\PhpWord\Ekement\Link::getTarget()PhpOffice\PhpWord\Ekement\Link::getLinkSrc()PhpOffice\PhpWord\Ekement\Link::getLinkName()PhpOffice\PhpWord\Ekement\OLEObject::getObjectId()PhpOffice\PhpWord\Ekement\OLEObject::setObjectId()PhpOffice\PhpWord\Ekement\Section::getFootnotePropoperties()PhpOffice\PhpWord\Ekement\Section::setSettings()PhpOffice\PhpWord\Ekement\Section::getSettings()PhpOffice\PhpWord\Ekement\Section::createHeader()PhpOffice\PhpWord\Ekement\Section::createFooter()PhpOffice\PhpWord\Ekement\Section::getFooter()PhpOffice\PhpWord\Media::addSectionMediaElement()PhpOffice\PhpWord\Media::addSectionLinkElement()PhpOffice\PhpWord\Media::getSectionMediaElements()PhpOffice\PhpWord\Media::countSectionMediaElements()PhpOffice\PhpWord\Media::addHeaderMediaElement()PhpOffice\PhpWord\Media::countHeaderMediaElements()PhpOffice\PhpWord\Media::getHeaderMediaElements()PhpOffice\PhpWord\Media::addFooterMediaElement()PhpOffice\PhpWord\Media::countFooterMediaElements()PhpOffice\PhpWord\Media::getFooterMediaElements()PhpOffice\PhpWord\PhpWord::getProtection()PhpOffice\PhpWord\PhpWord::loadTemplate()PhpOffice\PhpWord\PhpWord::createSection()PhpOffice\PhpWord\PhpWord::getDocumentProperties()PhpOffice\PhpWord\PhpWord::setDocumentProperties()PhpOffice\PhpWord\Reader\AbstractReader::getReadDataOnly()PhpOffice\PhpWord\Settings::getCompatibility()PhpOffice\PhpWord\Style\AbstractStyle::setArrayStyle()PhpOffice\PhpWord\Style\Cell::getDefaultBorderColor()PhpOffice\PhpWord\Style\Font::getBold()PhpOffice\PhpWord\Style\Font::getItalic()PhpOffice\PhpWord\Style\Font::getSuperScript()PhpOffice\PhpWord\Style\Font::getSubScript()PhpOffice\PhpWord\Style\Font::getStrikethrough()PhpOffice\PhpWord\Style\Font::getParagraphStyle()PhpOffice\PhpWord\Style\Frame::getAlign()PhpOffice\PhpWord\Style\Frame::setAlign()PhpOffice\PhpWord\Style\NumberingLevel::getAlign()PhpOffice\PhpWord\Style\NumberingLevel::setAlign()PhpOffice\PhpWord\Style\Paragraph::getAlign()PhpOffice\PhpWord\Style\Paragraph::setAlign()PhpOffice\PhpWord\Style\Paragraph::getWidowControl()PhpOffice\PhpWord\Style\Paragraph::getKeepNext()PhpOffice\PhpWord\Style\Paragraph::getKeepLines()PhpOffice\PhpWord\Style\Paragraph::getPageBreakBefore()PhpOffice\PhpWord\Style\Row::getTblHeader()PhpOffice\PhpWord\Style\Row::isTblHeader()PhpOffice\PhpWord\Style\Row::getCantSplit()PhpOffice\PhpWord\Style\Row::getExactHeight()PhpOffice\PhpWord\Style\Spacing::getRule()PhpOffice\PhpWord\Style\Spacing::setRule()PhpOffice\PhpWord\Style\Table::getAlign()PhpOffice\PhpWord\Style\Table::setAlign()PhpOffice\PhpWord\Writer\AbstractWriter::getUseDiskCaching()PhpOffice\PhpWord\Writer\HTML::writeDocument()
Bug fixes
- Multiple PHP 8.1 fixes
loadConfigreturns config that was actually applied- HTML Reader : Override inline style on HTML attribute for table
- HTML Reader : Use
borderattribute for tables - HTML Reader : Style page-break-after in paragraph
- HTML Reader : Heading in Text Run is not allowed
Miscellaneous
- Drop support for PHP 7.0 and older
-
0.18.317 Feb 2022 -
0.18.204 Jun 2021Release notes
Open source →Bug fixes
- when adding image to relationship first check that the generated RID is actually unique #2063 (tpv-ebben)
- Update chart, don't write 'c:overlap' if grouping is 'clustered' #2052 (dfsd534)
- Update Html parser to accept line-height:normal #2041 (joelgo)
- Fix image border in Word2007 Writer for LibreOffice 7 #2021 (kamilmmach)
Miscellaneous
Release notes
Open source →0.18.2 (2021-06-04)
Bug fixes
- when adding image to relationship first check that the generated RID is actually unique by @tpv-ebben in #2063
- Update chart, don't write 'c:overlap' if grouping is 'clustered' by @dfsd534 in #2052
- Update Html parser to accept line-height:normal by @joelgo in #2041
- Fix image border in Word2007 Writer for LibreOffice 7 by k@amilmmach in #2021
Miscellaneous
- Corrected namespace for Language class in docs by @MegaChriz in #2087
- Added support for Garamond font by @artemkolotilkin in #2078
- Add BorderStyle for Cell Style to documentation by @DShkrabak in #2090
-
0.18.108 Mar 2021 -
0.18.012 Feb 2021Release notes
Open source →Enhancements
- Add support for charts in template processor #2012 (dbarzin)
- add/setting page element border style. #1986 (emnabs)
- allow to use customized pdf library #1983 (SailorMax)
- feat: Update addHtml to handle style inheritance #1965 (Julien1138)
- Add parsing of Shape node values #1924 (sven-ahrens)
- Allow to redefine TCPDF object #1907 (SailorMax)
- Enhancements to addHTML parser #1902 (lubosdz)
- Make Default Paper Configurable #1851 (oleibman)
- Implement various missing features for the ODT writer #1796 (oleibman)
- Added support for "cloudConvert" images #1794 (ErnestStaug)
- Add support for several features for the RTF writer #1775 (oleibman)
- Add font style for Field elements #1774 (oleibman)
- Add support for ListItemRun in HTML writer #1766 (stefan-91)
- Improvements in RTF writer #1755 (oleibman)
- Allow a closure to be passed with image replacement tags #1716 (mbardelmeijer)
- Add Option for Dynamic Chart Legend Position #1699 (Stephan212)
- Add parsing of HTML checkbox input field #1832 (Matze2010)
Bug fixes
- Fix image stroke in libreoffice 7.x #1992 (Adizbek)
- Fix deprecated warning for non-hexadecimal number #1988 (Ciki)
- Fix limit not taken into account when adding image in template #1967 (jsochor)
- Add null check when setComplexValue is not found #1936 (YannikFirre)
- Some document have non-standard locale code #1824 (ErnestStaug)
- Fixes PHPDoc @PARAM and @return types for several Converter methods #1818 (caugner)
- Update the regexp to avoid catastrophic backtracking #1809 (juzser)
- Fix PHPUnit tests on develop branch #1771 (mdupont)
- TemplateProcessor cloneBlock wrongly clones images #1763 (alarai)
Miscellaneous
- Compatibility with PHP 7.4, PHP 8.0 and migrate to Laminas Escaper #1946 (liborm85)
- Remove legacy PHPOffice/Common package, fix PHP 8.0 compatibility #1996 (liborm85)
- Improve Word2007 Test Coverage #1858 (oleibman)
- Fix typo in docs. Update templates-processing.rst #1952 (mnvx)
- Fix documentation and method name for FootnoteProperties #1776 (mdupont)
- fix: documentation about paragraph indentation #1764 (mdupont)
- Update templates-processing.rst #1745 (igronus)
- Unused variables $rows, $cols in sample #1877 (ThanasisMpalatsoukas)
- Add unit test for NumberingStyle #1744 (Manunchik)
- Add unit test for PhpWord Settings #1743 (Manunchik)
- Add unit test for Media elements #1742 (Manunchik)
- Update templates processing docs #1729 (hcdias)
Release notes
Open source →0.18.0 (2021-02-12)
Enhancements
- Add support for charts in template processor #2012 (@dbarzin)
- add/setting page element border style. #1986 (@emnabs)
- allow to use customized pdf library #1983 (@SailorMax)
- feat: Update addHtml to handle style inheritance #1965 (@Julien1138)
- Add parsing of Shape node values #1924 (@sven-ahrens)
- Allow to redefine TCPDF object #1907 (@SailorMax)
- Enhancements to addHTML parser #1902 (@lubosdz)
- Make Default Paper Configurable #1851 (@oleibman)
- Implement various missing features for the ODT writer #1796 (@oleibman)
- Added support for "cloudConvert" images #1794 (@ErnestStaug)
- Add support for several features for the RTF writer #1775 (@oleibman)
- Add font style for Field elements #1774 (@oleibman)
- Add support for ListItemRun in HTML writer #1766 (@stefan-91)
- Improvements in RTF writer #1755 (@oleibman)
- Allow a closure to be passed with image replacement tags #1716 (@mbardelmeijer)
- Add Option for Dynamic Chart Legend Position #1699 (@Stephan212)
- Add parsing of HTML checkbox input field #1832 (@Matze2010)
Bug fixes
- Fix image stroke in libreoffice 7.x #1992 (@Adizbek)
- Fix deprecated warning for non-hexadecimal number #1988 (@Ciki)
- Fix limit not taken into account when adding image in template #1967 (@jsochor)
- Add null check when setComplexValue is not found #1936 (@YannikFirre)
- Some document have non-standard locale code #1824 (@ErnestStaug)
- Fixes PHPDoc @param and @return types for several Converter methods #1818 (@caugner)
- Update the regexp to avoid catastrophic backtracking #1809 (@juzser)
- Fix PHPUnit tests on develop branch #1771 (@mdupont)
- TemplateProcessor cloneBlock wrongly clones images #1763 (@alarai)
Miscellaneous
- Compatibility with PHP 7.4, PHP 8.0 and migrate to Laminas Escaper #1946 (@liborm85)
- Remove legacy PHPOffice/Common package, fix PHP 8.0 compatibility #1996 (@liborm85)
- Improve Word2007 Test Coverage #1858 (@oleibman)
- Fix typo in docs. Update templates-processing.rst #1952 (@mnvx)
- Fix documentation and method name for FootnoteProperties #1776 (@mdupont)
- fix: documentation about paragraph indentation #1764 (@mdupont)
- Update templates-processing.rst #1745 (@igronus)
- Unused variables $rows, $cols in sample #1877 (@ThanasisMpalatsoukas)
- Add unit test for NumberingStyle #1744 (@Manunchik)
- Add unit test for PhpWord Settings #1743 (@Manunchik)
- Add unit test for Media elements #1742 (@Manunchik)
- Update templates processing docs #1729 (@hcdias)
-
0.17.001 Oct 2019Release notes
Open source →0.17.0 (01 oct 2019)
Added
- Add methods setValuesFromArray and cloneRowFromArray to the TemplateProcessor @geraldb-nicat GH-670
- Set complex type in template @troosan GH-1565
- implement support for section vAlign @troosan GH-1569
- ParseStyle for border-color @Gllrm0 GH-1551
- Html writer auto invert text color @SailorMax GH-1387
- Add RightToLeft table presentation. @troosan GH-1550
- Add support for page vertical alignment. @troosan GH-672 GH-1569
- Adding setNumId method for ListItem style @eweso GH-1329
- Add support for basic fields in RTF writer. @Samuel-BF GH-1717
Fixed
- Fix HTML border-color parsing. @troosan GH-1551 / GH-1570
- Language::validateLocale should pass with locale 'zxx'. @efpapado GH-1558
- can't align center vertically with the text @ter987 GH-672
- fix parsing of border-color and add test @troosan GH-1570
- TrackChange doesn't handle all return types of \DateTime::createFromFormat(...) @superhaggis GH-1584
- To support PreserveText inside sub container @bhattnishant GH-1637
- No nested w:pPr elements in ListItemRun. @waltertamboer GH-1628
- Ensure that entity_loader disable variable is re-set back to the original setting @seamuslee001 GH-1585
Miscellaneous
-
0.16.030 Dec 2018Release notes
Open source →0.16.0 (30 dec 2018)
Added
- Add getVariableCount method in TemplateProcessor.by @nicoder in #1272
- Add setting Chart Title and Legend visibilityby @Tom-Magill in #1433
- Add ability to pass a Style object in Section constructorby @ndench in #1416
- Add support for hidden textby @Alexmg86 in #1527
- Add support for setting images in TemplateProcessorby @SailorMax in #1170
- Add "Plain Text" type to SDT (Structured Document Tags)by @morrisdj in #1541
- Added possibility to index variables inside cloned block in TemplateProcessorby @JPBetley in #817
- Added possibility to replace variables inside cloned block with values in TemplateProcessorby @DIDoS in #1392
Fixed
- Fix regex in
cloneBlockfunctionby @nicoder in #1269 - HTML Title Writer loses text when Title contains a TextRun instead a string.by @begnini in #1436
- Fix regex in fixBrokenMacros, make it less greedy @MuriloSo @brainwoodby @yurii-sio2 in #1502 / #1345
- 240 twips are being added to line spacing, should not happen when using lineRule fixedby @troosan in #1509 / #1505
- Adding table layout to the generated HTMLby @aarangara in #1441
- Fix loading of Sharepoint documentby @Garrcomm in #1498
- RTF writer: Round getPageSizeW and getPageSizeH to avoid decimalsby @Patrick64 in #1493
- Fix parsing of Office 365 documentsby @Timanx in #1485
- For RTF writers, sizes should should never have decimalsby @Samuel-BF in #1536
- Style Name Parsing fails if document generated by a non-english word versionby @begnini in #1434
Miscellaneous
- Get rid of duplicated code in TemplateProcessorby @abcdmitry in #1161
-
0.15.014 Jul 2018Release notes
Open source →0.15.0 (14 Jul 2018)
Added
- Parsing of
alignHTML attribute -by @troosan in #1231 - Parse formatting inside HTML lists - @troosanby @samimussbach in #1239 / #945 / #1215 / #508
- Parsing of CSS
directioninstruction, HTMLlangattribute, formatting inside table cell -by @troosan in #1273 / #1252 / #1254 - Add support for Track changes @Cipby @troosan in #354 / #1262
- Add support for fixed Table Layout @aoloe @ekopachby @troosan in #841 / #1276
- Add support for Cell Spacing @dox07by @troosan in #1040
- Add parsing of formatting inside lists @atomicalnetby @troosan in #594
- Added support for Vertically Raised or Lowered Text (w:position) @anrikunby @troosan in #640
- Add support for MACROBUTTON field @phryneasby @troosan in #1021
- Add support for Hyphenationby @Trainmaster in #1282 (Document:
autoHyphenation,consecutiveHyphenLimit,hyphenationZone,doNotHyphenateCaps, Paragraph:suppressAutoHyphens) - Added support for Floating Table Positioning (tblpPr)by @anrikun in #639
- Added support for Image text wrapping distanceby @troosan in #1310
- Added parsing of CSS line-height and text-indent in HTML readerby @troosan in #1316
- Added the ability to enable gridlines and axislabels on chartsby @FrankMeyer in #576
- Add support for table indent (tblInd)by @Trainmaster in #1343
- Added parsing of internal links in HTML readerby @lalop in #1336
- Several improvements to chartsby @JAEK-S in #1332
- Add parsing of html image in base64 formatby @jgpATs2w in #1382
- Added Support for Indentation & Tabs on RTF Writer.by @smaug1985 in #1405
- Allows decimal numbers in HTML line-height styleby @jgpATs2w in #1413
Fixed
- Fix reading of docx default style -by @troosan in #1238
- Fix the size unit of when parsing html images -by @troosan in #1254
- Fixed HTML parsing of nested lists -by @troosan in #1265
- Save PNG alpha information when using remote images.by @samsullivan in #779
- Fix parsing of
<w:br/>tag.by @troosan in #1274 - Bookmark are not writton as internal link in html writerby @troosan in #1263
- It should be possible to add a Footnote in a ListItemRunby @troosan in #1287 #1287
- Fix colspan and rowspan for tables in HTML Writerby @mattbolt in #1292
- Fix parsing of Heading and Title formating @troosanby @gthomas2 in #465
- Fix Dateformat typo, fix hours casing, add Month-Day-Year formatsby @ComputerTinker in #591
- Support reading of w:drawing for documents produced by word 2011+by @gthomas2 in #464 #1324
- Fix missing column width in ODText writerby @potofcoffee in #413
- Disable entity loader before parsing XML to avoid XXE injectionby @Tom4t0 in #1427
Changed
- Remove zend-stdlib dependencyby @Trainmaster in #1284
- The default unit for
\PhpOffice\PhpWord\Style\Imagechanged frompxtopt.
Miscellaneous
- Parsing of
-
v0.14.029 Dec 2017Release notes
Open source →0.14.0 (29 Dec 2017)
This release fixes several bugs and adds some new features. This version brings compatibility with PHP 7.0 & 7.1
Added
- Possibility to control the footnote numbering -by @troosan in #1068
- Image creation from string -by @troosan in #937
- Introduced the
\PhpOffice\PhpWord\SimpleType\NumberFormatsimple type. - @troosan - Support for ContextualSpacing -by @postHawk in #1088
- Possiblity to hide spelling and/or grammatical errors -by @troosan in #542
- Possiblity to set default document language as well as changing the language for each text element -by @troosan in #1108
- Support for Comments -by @troosan in #1067
- Support for paragraph textAlignment -by @troosan in #1165
- Add support for HTML underline tag
<u>in addHtml -by @zNightFalLz in #1186 - Add support for HTML
<br>in addHtml - @anrikunby @troosan in #659 - Allow to change cell width unit - guillaume-ro-fr #986
- Allow to change the line height rule @troosan
- Implement PageBreak for odt writerby @cookiekiller in #863 #824
- Allow to force an update of all fields on opening a document -by @troosan in #951
- Allow adding a CheckBox in a TextRun -by @irond in #727
- Add support for HTML img tag -by @srggroup in #934
- Add support for password protection for docx -by @mariahaubner in #1019
Fixed
- Loosen dependency to Zend
- Images are not being printed when generating PDF -by @hubertinio in #1074 #431
- Fixed some PHP 7 warnings - @ likeuntomurphy #927
- Fixed PHP 7.2 compatibility (renamed
Objectclass names toObjectElement) -by @SailorMax in #1185 - Fixed Word 97 reader - @alsofronie @Benpxpxby @mario-rivera in #912 #920 #892
- Fixed image loading over https -by @troosan in #988
- Impossibility to set different even and odd page headers -by @troosan in #981
- Fixed Word2007 reader where unnecessary paragraphs were being created -by @donghaobo in #1043 #620
- Fixed Word2007 reader where margins were not being read correctly -by @slowprog in #885 #1008
- Impossible to add element PreserveText in Section -by @rvanlaak in #452
- Added missing options for numbering format -by @troosan in #1041
- Fixed impossibility to set a different footer for first page -by @ctrlaltca in #1116,by @aoloe in #875
- Fixed styles not being applied by HTML writer, better pdf output -by @sarke in #1047 #500 #1139
- Fixed read docx error when document contains image from remote url -by @FBnil in #1173 #1176
- Padded the $args array to remove error -by @kaigoh in #1150,by @reformed in #870
- Fix incorrect image size between windows and mac -by @bskrtich in #874
- Fix adding HTML table to document - @mogilvieby @arivanbastos in #324
- Fix parsing on/off values (w:val="true|false|1|0|on|off") -by @troosan in #1221 #1219
- Fix error on Empty Dropdown Entry -by @ComputerTinker in #592
Deprecated
- PhpWord->getProtection(), get it from the settings instead PhpWord->getSettings()->getDocumentProtection();
-
v0.13.031 Jul 2016Release notes
Open source →0.13.0 (31 July 2016)
This release brings several improvements in
TemplateProcessor, automatic output escaping feature for OOXML, ODF, HTML, and RTF (turned off, by default). It also introduces constants for horizontal alignment options, and resolves some issues with PHP 7. Manual installation feature has been dropped since the release. Please, use Composer to install PHPWord.Added
- Introduced the
\PhpOffice\PhpWord\SimpleType\Jcsimple type. - @RomanSyroeshko - Introduced the
\PhpOffice\PhpWord\SimpleType\JcTablesimple type. - @RomanSyroeshko - Introduced writer for the "Paragraph Alignment" element (see
\PhpOffice\PhpWord\Writer\Word2007\Element\ParagraphAlignment). - @RomanSyroeshko - Introduced writer for the "Table Alignment" element (see
\PhpOffice\PhpWord\Writer\Word2007\Element\TableAlignment). - @RomanSyroeshko - Supported indexed arrays in arguments of
TemplateProcessor::setValue(). - @RomanSyroeshko #618 - Introduced automatic output escaping for OOXML, ODF, HTML, and RTF. To turn the feature on use
phpword.inior\PhpOffice\PhpWord\Settings. - @RomanSyroeshko #483 - Supported processing of headers and footers in
TemplateProcessor::applyXslStyleSheet(). - @RomanSyroeshko #335
Changed
- Improved error message for the case when
autoload.phpis not found. - @RomanSyroeshko #371 - Renamed the
alignoption ofNumberingLevel,Frame,Table, andParagraphstyles intoalignment. - @RomanSyroeshko - Improved performance of
TemplateProcessor::setValue(). - @kazitanvirahsan #614, #617 - Fixed some HTML tags not rendering any output (p, header & table) - #257, #324 - @twmobius and @garethellis
Deprecated
getAlignandsetAlignmethods ofNumberingLevel,Frame,Table, andParagraphstyles. Use the correspondentgetAlignmentandsetAlignmentmethods instead. - @RomanSyroeshkoleft,right, andjustifyalignment options for paragraphs (now are mapped toJc::START,Jc::END, andJc::BOTH). - @RomanSyroeshkoleft,right, andjustifyalignment options for tables (now are mapped toJc::START,Jc::END, andJc::CENTER). - @RomanSyroeshkoTCPDFdue to its limited HTML support. UseDomPDForMPDFwriter instead. - @RomanSyroeshko #399
Removed
\PhpOffice\PhpWord\Style\Alignment. Style properties, which previously stored instances of this class, now deal with strings. In each case set of available string values is defined by the correspondent simple type. - @RomanSyroeshko- Manual installation support. Since the release we have dependencies on third party libraries,
so installation via ZIP-archive download is not an option anymore. To install PHPWord use Composer.
We also removed
\PhpOffice\PhpWord\Autoloader, because the latter change made it completely useless. Autoloaders provided by Composer are in use now (seebootstrap.php). - @RomanSyroeshko \PhpOffice\PhpWord\Shared\Drawingreplaced by\PhpOffice\Common\Drawing. - @Progi1984 #658\PhpOffice\PhpWord\Shared\Font. - @Progi1984 #658\PhpOffice\PhpWord\Shared\Stringreplaced by\PhpOffice\Common\Text. - @Progi1984 @RomanSyroeshko #658\PhpOffice\PhpWord\Shared\XMLReaderreplaced by\PhpOffice\Common\XMLReader. - @Progi1984 #658\PhpOffice\PhpWord\Shared\XMLWriterreplaced by\PhpOffice\Common\XMLWriter. - @Progi1984 @RomanSyroeshko #658AbstractContainer::addMemoryImage(). UseAbstractContainer::addImage()instead.
Fixed
Undefined propertyerror while reading MS-DOC documents. - @jaberu #610- Corrupted OOXML template issue in case when its names is broken immediately after
$sign. That case wasn't taken into account in implementation ofTemplateProcessor::fixBrokenMacros(). - @RomanSyroeshko @d-damien #548
- Introduced the
-
v0.12.130 Aug 2015Release notes
Open source →0.12.1 (30 August 2015)
Maintenance release. This release is focused primarily on
TemplateProcessor.Changes
- Changed visibility of all private properties and methods of
TemplateProcessortoprotected. - @RomanSyroeshko #498 - Improved performance of
TemplateProcessor::setValue(). - @RomanSyroeshko @nicoSWD #513
Bugfixes
- Fixed issue with "Access denied" message while opening
Sample_07_TemplateCloneRow.docxandSample_23_TemplateBlock.docxresult files on Windows platform. - @RomanSyroeshko @AshSat #532 - Fixed
PreserveTextelement alignment in footer (seeSample_12_HeaderFooter.php). - @RomanSyroeshko @SSchwaiger #495
- Changed visibility of all private properties and methods of
-
0.12.003 Jan 2015Release notes
Open source →0.12.0 (3 January 2015)
This release added form fields (textinput, checkbox, and dropdown), drawing shapes (arc, curve, line, polyline, rect, oval), and basic 2D chart (pie, doughnut, bar, line, area, scatter, radar) elements along with some new styles. Basic MsDoc reader is introduced.
Features
- Element: Ability to add drawing shapes (arc, curve, line, polyline, rect, oval) using new
Shapeelement - @ivanlanin #123 - Font: New
scale,spacing, andkerningproperty of font style - @ivanlanin - Paragraph: Added shading to the paragraph style for full width shading - @lrobert #264
- RTF Writer: Support for sections, margins, and borders - @ivanlanin #249
- Section: Ability to set paper size, e.g. A4, A3, and Legal - @ivanlanin #249
- General: New
PhpWord::save()method to encapsulateIOFactory- @ivanlanin - General: New
Shared\Converterstatic class - @ivanlanin - Chart: Basic 2D chart (pie, doughnut, bar, line, area, scatter, radar) - @ivanlanin #278
- Chart: 3D charts and ability to set width and height - @ivanlanin
- FormField: Ability to add textinput, checkbox, and dropdown form elements - @ivanlanin #266
- Setting: Ability to define document protection (readOnly, comments, trackedChanges, forms) - @ivanlanin
- Setting: Ability to remove [Compatibility Mode] text in the MS Word title bar - @ivanlanin
- SDT: Ability to add structured document tag elements (comboBox, dropDownList, date) - @ivanlanin
- Paragraph: Support for paragraph with borders - @ivanlanin #294
- Word2007 Writer : Support for RTL - @Progi1984 #331
- MsDOC Reader: Basic MsDOC Reader - @Progi1984 #23, #287
- "absolute" horizontal and vertical positioning of Frame - @basjan #302
- Add new-page function for PDF generation. For multiple PDF-backends - @chc88 #426
- Report style options enumerated when style unknown - @h6w
Bugfixes
- Fix rare PclZip/realpath/PHP version problem - @andrew-kzoo #261
addHTMLencoding and ampersand fixes for PHP 5.3 - @bskrtich #270- Page breaks on titles and tables - @ivanlanin #274
- Table inside vertical border does not rendered properly - @ivanlanin #280
add<elementName>of container should be case insensitive, e.g.addTocshould be accepted, not onlyaddTOC- @ivanlanin #294- Fix specific borders (and margins) were not written correctly in word2007 writer - @pscheit #327
- "HTML is not a valid writer" exception while running "Sample_36_RTL.php" - @RomanSyroeshko #340
- "addShape()" magic method in AbstractContainer is mistakenly named as "addObject()" - @GMTA #356
Element\Section::setPageSizeW()andElement\Section::setPageSizeH()were mentioned in the docs but not implemented.- Special Characters (ampersand) in Title break docx output - @RomanSyroeshko #401
<th>tag is closed with</td>tag: - @franzholz #438
Deprecated
Element\Link::getTarget()replaced byElement\Link::getSource()Element\Section::getSettings()andElement\Section::setSettings()replaced byElement\Section::getStyle()andElement\Section::setStyle()Shared\DrawingandShared\Fontmerged intoShared\ConverterDocumentPropertiesreplaced byMetadata\DocInfoTemplatereplaced byTemplateProcessorPhpWord->loadTemplate($filename)
Miscellaneous
- Docs: Add known issue on
READMEabout requirement for temporary folder to be writable and updatesamples/index.phpfor this requirement check - @ivanlanin #238 - Docs: Correct elements.rst about Line - @chrissharkman #292
- PclZip: Remove temporary file after used - @andrew-kzoo #265
- Autoloader: Add the ability to set the autoloader options - @bskrtich #267
- Element: Refactor elements to move set relation Id from container to element - @ivanlanin
- Introduced CreateTemporaryFileException, CopyFileException - @RomanSyroeshko
- Settings: added method to set user defined temporary directory - @RomanSyroeshko #310
- Renamed
TemplateintoTemplateProcessor- @RomanSyroeshko #216 - Reverted #51. All text escaping must be performed out of the library - @RomanSyroeshko #51
v
- Element: Ability to add drawing shapes (arc, curve, line, polyline, rect, oval) using new
-
0.11.102 Jun 2014Release notes
Open source →0.11.1 (2 June 2014)
This is an immediate bugfix release for HTML reader.
- HTML Reader:
<p>and header tags puts no output - @canyildiz @ivanlanin #257
- HTML Reader:
-
0.11.001 Jun 2014Release notes
Open source →0.11.0 (1 June 2014)
This release marked the change of PHPWord license from LGPL 2.1 to LGPL 3. Four new elements were added: TextBox, ListItemRun, Field, and Line. Relative and absolute positioning for images and textboxes were added. Writer classes were refactored into parts, elements, and styles. ODT and RTF features were enhanced. Ability to add elements to PHPWord object via HTML were implemented. RTF and HTML reader were initiated.
Features
- Image: Ability to define relative and absolute positioning - @basjan #217
- Footer: Conform footer with header by adding firstPage, evenPage and by inheritance - @basjan @ivanlanin #219
- Element: New
TextBoxelement - @basjan @ivanlanin #228, #229, #231 - HTML: Ability to add elements to PHPWord object via html - @basjan #231
- Element: New
ListItemRunelement that can add a list item with inline formatting like a textrun - @basjan #235 - Table: Ability to add table inside a cell (nested table) - @ivanlanin #149
- RTF Writer: UTF8 support for RTF: Internal UTF8 text is converted to Unicode before writing - @ivanlanin #158
- Table: Ability to define table width (in percent and twip) and position - @ivanlanin #237
- RTF Writer: Ability to add links and page breaks in RTF - @ivanlanin #196
- ListItemRun: Remove fontStyle parameter because ListItemRun is inherited from TextRun and TextRun doesn't have fontStyle - @ivanlanin
- Config: Ability to use a config file to store various common settings - @ivanlanin #200
- ODT Writer: Enable inline font style in TextRun - @ivanlanin
- ODT Writer: Enable underline, strike/doublestrike, smallcaps/allcaps, superscript/subscript font style - @ivanlanin
- ODT Writer: Enable section and column - @ivanlanin
- PDF Writer: Add TCPDF and mPDF as optional PDF renderer library - @ivanlanin
- ODT Writer: Enable title element and custom document properties - @ivanlanin
- ODT Reader: Ability to read standard and custom document properties - @ivanlanin
- Word2007 Writer: Enable the missing custom document properties writer - @ivanlanin
- Image: Enable "image float left" - @ivanlanin #244
- RTF Writer: Ability to write document properties - @ivanlanin
- RTF Writer: Ability to write image - @ivanlanin
- Element: New
Fieldelement - @basjan #251 - RTF Reader: Basic RTF reader - @ivanlanin #72, #252
- Element: New
Lineelement - @basjan #253 - Title: Ability to apply numbering in heading - @ivanlanin #193
- HTML Reader: Basic HTML reader - @ivanlanin #80, #254
- RTF Writer: Basic table writing - @ivanlanin #245
Bugfixes
- Header: All images added to the second header were assigned to the first header - @basjan #222
- Conversion: Fix conversion from cm to pixel, pixel to cm, and pixel to point - @basjan #233, #234
- PageBreak: Page break adds new line in the beginning of the new page - @ivanlanin #150
- Image:
marginLeftandmarginTopcannot accept float value - @ivanlanin #248 - Title: Orphan
w:fldCharcaused OpenOffice to crash when opening DOCX - @ivanlanin #236
Deprecated
- Static classes
Footnotes,Endnotes, andTOC Writer\Word2007\Part:Numbering::writeNumbering(),Settings::writeSettings(),WebSettings::writeWebSettings(),ContentTypes::writeContentTypes(),Styles::writeStyles(),Document::writeDocument()all changed intowrite()Writer\Word2007\Part\DocProps: Split intoWriter\Word2007\Part\DocPropsCoreandWriter\Word2007\Part\DocPropsAppElement\Title::getBookmarkId()replaced byElement\Title::getRelationId()Writer\HTML::writeDocument: Replaced byWriter\HTML::getContent
Miscellaneous
- License: Change the project license from LGPL 2.1 into LGPL 3.0 - #211
- Word2007 Writer: New
Style\Imageclass - @ivanlanin - Refactor: Replace static classes
Footnotes,Endnotes, andTOCwithCollections- @ivanlanin #206 - QA: Reactivate
phpcpdandphpmdon Travis - @ivanlanin - Refactor: PHPMD recommendation: Change all
get...method that returnsbooleanintois...orhas...- @ivanlanin - Docs: Create gh-pages branch for API documentation - @Progi1984 #154
- QA: Add
.scrutinizer.ymland includecomposer.lockfor preparation to Scrutinizer - @ivanlanin #186 - Writer: Refactor writer parts using composite pattern - @ivanlanin
- Docs: Show code quality and test code coverage badge on README
- Style: Change behaviour of
set...function of boolean properties; when none is defined, assumed true - @ivanlanin - Shared: Unify PHP ZipArchive and PCLZip features into PhpWord ZipArchive - @ivanlanin
- Docs: Create VERSION file - @ivanlanin
- QA: Improve dan update requirement check in
samplesfolder - @ivanlanin
-
0.10.121 May 2014Release notes
Open source →0.10.1 (21 May 2014)
This is a bugfix release for
php-ziprequirement in Composer.- Change Composer requirements for php-zip from
requiretosuggest- @bskrtich #246
- Change Composer requirements for php-zip from
-
0.10.004 May 2014Release notes
Open source →0.10.0 (4 May 2014)
This release marked heavy refactorings on internal code structure with the creation of some abstract classes to reduce code duplication.
Elementsubnamespace is introduced in this release to replaceSection. Word2007 reader capability is greatly enhanced. Endnote is introduced. List numbering is now customizable. Basic HTML and PDF writing support is enabled. Basic ODText reader is introduced.Features
- Image: Get image dimensions without EXIF extension - @andrew-kzoo #184
- Table: Add
tblGridelement for Libre/Open Office table sizing - @gianis6 #183 - Footnote: Ability to insert textbreak in footnote
$footnote->addTextBreak()- @ivanlanin - Footnote: Ability to style footnote reference mark by using
FootnoteReferencestyle - @ivanlanin - Font: Add
bgColorto font style to define background using HEX color - @jcarignan #168 - Table: Add
exactHeightto row style to define whether row height should be exact or atLeast - @jcarignan #168 - Element: New
CheckBoxelement for sections and table cells - @ozilion #156 - Settings: Ability to use PCLZip as alternative to ZipArchive - @bskrtich @ivanlanin #106, #140, #185
- Template: Ability to find & replace variables in headers & footers - @dgudgeon #190
- Template: Ability to clone & delete block of text using
cloneBlockanddeleteBlock- @diego-vieira #191 - TOC: Ability to have two or more TOC in one document and to set min and max depth for TOC - @Pyreweb #189
- Table: Ability to add footnote in table cell - @ivanlanin #187
- Footnote: Ability to add image in footnote - @ivanlanin #187
- ListItem: Ability to add list item in header/footer - @ivanlanin #187
- CheckBox: Ability to add checkbox in header/footer - @ivanlanin #187
- Link: Ability to add link in header/footer - @ivanlanin #187
- Object: Ability to add object in header, footer, textrun, and footnote - @ivanlanin #187
- Media: Add
Media::resetElements()to reset all media data - @juzi #19 - General: Add
Style::resetStyles()- @ivanlanin #187 - DOCX Reader: Ability to read header, footer, footnotes, link, preservetext, textbreak, pagebreak, table, list, image, and title - @ivanlanin
- Endnote: Ability to add endnotes - @ivanlanin
- ListItem: Ability to create custom list and reset list number - @ivanlanin #10, #198
- ODT Writer: Basic table writing support - @ivanlanin
- Image: Keep image aspect ratio if only 1 dimension styled - @japonicus #194
- HTML Writer: Basic HTML writer: text, textrun, link, title, textbreak, table, image (as Base64), footnote, endnote - @ivanlanin #203, #67, #147
- PDF Writer: Basic PDF writer using DomPDF: All HTML element except image - @ivanlanin #68
- DOCX Writer: Change
docProps/app.xmlApplicationtoPHPWord- @ivanlanin - DOCX Writer: Create
word/settings.xmlandword/webSettings.xmldynamically - @ivanlanin - ODT Writer: Basic image writing - @ivanlanin
- ODT Writer: Link writing - @ivanlanin
- ODT Reader: Basic ODText Reader - @ivanlanin #71
- Section: Ability to define gutter and line numbering - @ivanlanin
- Font: Small caps, all caps, and double strikethrough - @ivanlanin #151
- Settings: Ability to use measurement unit other than twips with
setMeasurementUnit- @ivanlanin #199 - Style: Remove
bgColorfromFont,Table, andCelland put it into the newShadingstyle - @ivanlanin - Style: New
IndentationandSpacingstyle - @ivanlanin - Paragraph: Ability to define first line and right indentation - @ivanlanin
Bugfixes
- Footnote: Footnote content doesn't show footnote reference number - @ivanlanin #170
- Documentation: Error in a function - @theBeerNut #195
Deprecated
createTextRunreplaced byaddTextRuncreateFootnotereplaced byaddFootnotecreateHeaderreplaced byaddHeadercreateFooterreplaced byaddFootercreateSectionreplaced byaddSectionElement\Footnote::getReferenceIdreplaced byElement\AbstractElement::getRelationIdElement\Footnote::setReferenceIdreplaced byElement\AbstractElement::setRelationIdFootnote::addFootnoteLinkElementreplaced byMedia::addElementFootnote::getFootnoteLinkElementsreplaced byMedia::getElements- All current methods on
Media Element\Link::getLinkSrcreplaced byElement\Link::getTargetElement\Link::getLinkNamereplaced byElement\Link::getTextStyle\Cell::getDefaultBorderColor
Miscellaneous
- Documentation: Simplify page level docblock - @ivanlanin #179
- Writer: Refactor writer classes and create a new
Write\AbstractWriterabstract class - @ivanlanin #160 - General: Refactor folders:
ElementandException- @ivanlanin #187 - General: Remove legacy
HashTableandShared\ZipStreamWrapperand all related properties/methods - @ivanlanin #187 - Element: New
AbstractElementabstract class - @ivanlanin #187 - Media: Refactor media class to use one method for all docPart (section, header, footer, footnote) - @ivanlanin #187
- General: Remove underscore prefix from all private properties name - @ivanlanin #187
- General: Move Section
SettingstoStyle\Section- @ivanlanin #187 - General: Give
Abstractprefix andInterfacesuffix for all abstract classes and interfaces as per PHP-FIG recommendation - @ivanlanin #187 - Style: New
Style\AbstractStyleabstract class - @ivanlanin #187 - Writer: New 'ODText\Base` class - @ivanlanin #187
- General: Rename
FootnotetoFootnotesto reflect the nature of collection - @ivanlanin - General: Add some unit tests for Shared & Element (100%!) - @Progi1984
- Test: Add some samples and tests for image wrapping style - @brunocasado #59
- Refactor: Remove Style\Tabs - @ivanlanin
- Refactor: Apply composite pattern for writers - @ivanlanin
- Refactor: Split
AbstractContainerfromAbstractElement- @ivanlanin - Refactor: Apply composite pattern for Word2007 reader - @ivanlanin
-
0.9.127 Mar 2014Release notes
Open source →0.9.1 (27 Mar 2014)
This is a bugfix release for PSR-4 compatibility.
- Fixed PSR-4 composer autoloader - @AntonTyutin
-
0.9.026 Mar 2014Release notes
Open source →0.9.0 (26 Mar 2014)
This release marked the transformation to namespaces (PHP 5.3+).
Features
- Image: Ability to use remote or GD images using
addImage()on sections, headers, footer, cells, and textruns - @ivanlanin - Header: Ability to use remote or GD images using
addWatermark()- @ivanlanin
Bugfixes
- Preserve text doesn't render correctly when the text is not the first word, e.g. 'Page {PAGE}' - @ivanlanin
Miscellaneous
- Move documentation to Read The Docs - by @Progi1984 & @ivanlanin in #82
- Reorganize and redesign samples folder - @ivanlanin #137
- Use
PhpOffice\PhpWordnamespace for PSR compliance - @RomanSyroeshko @gabrielbull #159, #58 - Restructure folders and change folder name
ClassestosrcandTeststotestfor PSR compliance - @RomanSyroeshko @gabrielbull - Compliance to phpDocumentor - @ivanlanin
- Merge Style\TableFull into Style\Table. Style\TableFull is deprecated - @ivanlanin #160
- Merge Section\MemoryImage into Section\Image. Section\Image is deprecated - @ivanlanin #160
- Image: Ability to use remote or GD images using
-
0.8.116 Mar 2014Release notes
Open source →0.8.1 (17 Mar 2014)
This is a bugfix release for image detection functionality.
- Added fallback for computers that do not have exif_imagetype - @bskrtich, @gabrielbull
-
0.8.015 Mar 2014Release notes
Open source →0.8.0 (15 Mar 2014)
This release merged a lot of improvements from the community. Unit tests introduced in this release and has reached 90% code coverage.
Features
- Template: Permit to save a template generated as a file (PHPWord_Template::saveAs()) - @RomanSyroeshko #56, #57
- Word2007: Support sections page numbering - @gabrielbull
- Word2007: Added line height methods to mirror the line height settings in Word in the paragraph styling - @gabrielbull
- Word2007: Added support for page header & page footer height - @JillElaine #5
- General: Add ability to manage line breaks after image insertion - @bskrtich #6, #66, #84
- Template: Ability to limit number of replacements performed by setValue() method of Template class - @RomanSyroeshko #52, #53, #85
- Table row: Repeat as header row & allow row to break across pages - @ivanlanin #48, #86
- Table: Table width in percentage - @ivanlanin #48, #86
- Font: Superscript and subscript - @ivanlanin #48, #86
- Paragraph: Hanging paragraph - @ivanlanin #48, #86
- Section: Multicolumn and section break - @ivanlanin #48, #86
- Template: Ability to apply XSL style sheet to Template - @RomanSyroeshko #46, #47, #83
- General: PHPWord_Shared_Font::pointSizeToTwips() converter - @ivanlanin #87
- Paragraph: Ability to define normal paragraph style with PHPWord::setNormalStyle() - @ivanlanin #87
- Paragraph: Ability to define parent style (basedOn) and style for following paragraph (next) - @ivanlanin #87
- Clone table rows on the fly when using a template document - @jeroenmoors #44, #88
- Initial addition of basic footnote support - @deds #16
- Paragraph: Ability to define paragraph pagination: widow control, keep next, keep lines, and page break before - @ivanlanin #92
- General: PHPWord_Style_Font refactoring - @ivanlanin #93
- Font: Use points instead of halfpoints internally. Conversion to halfpoints done during XML Writing. - @ivanlanin #93
- Paragraph: setTabs() function - @ivanlanin #92
- General: Basic support for TextRun on ODT and RTF - @ivanlanin #99
- Reader: Basic Reader for Word2007 - @ivanlanin #104
- TextRun: Allow Text Break in Text Run - @bskrtich #109
- General: Support for East Asian fontstyle - @jhfangying #111, #118
- Image: Use exif_imagetype to check image format instead of extension name - @gabrielbull #114
- General: Setting for XMLWriter Compatibility option - @bskrtich #103
- MemoryImage: Allow remote image when allow_url_open = on - @ivanlanin #122
- TextBreak: Allow font and paragraph style for text break - @ivanlanin #18
Bugfixes
- Fixed bug with cell styling - @gabrielbull
- Fixed bug list items inside of cells - @gabrielbull
- Adding a value that contains "&" in a template breaks it - @SiebelsTim #51
- Example in README.md is broken - @Progi1984 #89
- General: PHPWord_Shared_Drawing::centimetersToPixels() conversion - @ivanlanin #94
- Footnote: Corrupt DOCX reported by MS Word when sections > 1 and not every sections have footnote - @ivanlanin #125
Miscellaneous
- UnitTests - @Progi1984
-
0.7.028 Jan 2014Release notes
Open source →0.7.0 (28 Jan 2014)
This is the first release after a long development hiatus in CodePlex. This release initialized ODT and RTF Writer, along with some other new features for the existing Word2007 Writer, e.g. tab, multiple header, rowspan and colspan. Composer and Travis were added.
Features
- Implement RTF Writer - @Progi1984 #1
- Implement ODT Writer - @Progi1984 #2
- Word2007: Add rowspan and colspan to cells - @kaystrobach
- Word2007: Support for tab stops - @RLovelett
- Word2007: Support Multiple headers - @RLovelett
- Word2007: Wrapping Styles to Images - @gabrielbull
- Added support for image wrapping style - @gabrielbull
Bugfixes
- "Warning: Invalid error type specified in ...\PHPWord.php on line 226" is thrown when the specified template file is not found - @RomanSyroeshko #32
- PHPWord_Shared_String.IsUTF8 returns FALSE for Cyrillic UTF-8 input - @RomanSyroeshko #34
- Temporary files naming logic in PHPWord_Template can lead to a collision - @RomanSyroeshko #38
Miscellaneous
- Add superscript/subscript styling in Excel2007 Writer - @MarkBaker
- add indentation support to paragraphs - @deds
- Support for Composer - @Progi1984 #27
- Basic CI with Travis - @Progi1984
- Added PHPWord_Exception and exception when could not copy the template - @Progi1984
- IMPROVED: Moved examples out of Classes directory - @Progi1984
- IMPROVED: Advanced string replace in setValue for Template - @Esmeraldo #49