PHPWord v0.12.0 Release Notes

Release Date: 2015-01-03 // over 9 years ago
  • ๐Ÿš€ 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 Shape element - @ivanlanin #123
    • ๐Ÿ’… Font: New scale, spacing, and kerning property 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 encapsulate IOFactory - @ivanlanin
    • General: New Shared\Converter static 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
    • ๐Ÿ›  addHTML encoding 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. addToc should be accepted, not only addTOC - @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() and Element\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 by Element\Link::getSource()
    • ๐Ÿ’… Element\Section::getSettings() and Element\Section::setSettings() replaced by Element\Section::getStyle() and Element\Section::setStyle()
    • ๐Ÿ”€ Shared\Drawing and Shared\Font merged into Shared\Converter
    • ๐Ÿ“‡ DocumentProperties replaced by Metadata\DocInfo
    • Template replaced by TemplateProcessor
    • PhpWord->loadTemplate($filename)

    Miscellaneous

    • ๐Ÿ“„ Docs: Add known issue on README about requirement for temporary folder to be writable and update samples/index.php for 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 Template into TemplateProcessor - @RomanSyroeshko #216
    • โช Reverted #51. All text escaping must be performed out of the library - @RomanSyroeshko #51