Skip to content

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\Jc simple type. - @RomanSyroeshko
  • Introduced the \PhpOffice\PhpWord\SimpleType\JcTable simple 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.ini or \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.php is not found. - @RomanSyroeshko #371
  • Renamed the align option of NumberingLevel, Frame, Table, and Paragraph styles into alignment. - @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

  • getAlign and setAlign methods of NumberingLevel, Frame, Table, and Paragraph styles. Use the correspondent getAlignment and setAlignment methods instead. - @RomanSyroeshko
  • left, right, and justify alignment options for paragraphs (now are mapped to Jc::START, Jc::END, and Jc::BOTH). - @RomanSyroeshko
  • left, right, and justify alignment options for tables (now are mapped to Jc::START, Jc::END, and Jc::CENTER). - @RomanSyroeshko
  • TCPDF due to its limited HTML support. Use DomPDF or MPDF writer 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 (see bootstrap.php). - @RomanSyroeshko
  • \PhpOffice\PhpWord\Shared\Drawing replaced by \PhpOffice\Common\Drawing. - @Progi1984 #658
  • \PhpOffice\PhpWord\Shared\Font. - @Progi1984 #658
  • \PhpOffice\PhpWord\Shared\String replaced by \PhpOffice\Common\Text. - @Progi1984 @RomanSyroeshko #658
  • \PhpOffice\PhpWord\Shared\XMLReader replaced by \PhpOffice\Common\XMLReader. - @Progi1984 #658
  • \PhpOffice\PhpWord\Shared\XMLWriter replaced by \PhpOffice\Common\XMLWriter. - @Progi1984 @RomanSyroeshko #658
  • AbstractContainer::addMemoryImage(). Use AbstractContainer::addImage() instead.

Fixed

  • Undefined property error 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 of TemplateProcessor::fixBrokenMacros(). - @RomanSyroeshko @d-damien #548