| .. _intro:
Introduction
============
PHPWord is a library written in pure PHP that provides a set of classes
to write to and read from different document file formats. The current
version of PHPWord supports Microsoft `Office Open
XML <http://en.wikipedia.org/wiki/Office_Open_XML>`__ (OOXML or
OpenXML), OASIS `Open Document Format for Office
Applications <http://en.wikipedia.org/wiki/OpenDocument>`__
(OpenDocument or ODF), and `Rich Text
Format <http://en.wikipedia.org/wiki/Rich_Text_Format>`__ (RTF).
PHPWord is an open source project licensed under the terms of `LGPL
version 3 <https://github.com/PHPOffice/PHPWord/blob/develop/COPYING.LESSER>`__.
PHPWord is aimed to be a high quality software product by incorporating
`continuous integration <https://travis-ci.org/PHPOffice/PHPWord>`__ and
`unit testing <http://phpoffice.github.io/PHPWord/coverage/develop/>`__.
You can learn more about PHPWord by reading this Developers'
Documentation and the `API
Documentation <http://phpoffice.github.io/PHPWord/docs/develop/>`__.
Features
--------
-  Set document properties, e.g. title, subject, and creator.
-  Create document sections with different settings, e.g.
   portrait/landscape, page size, and page numbering
-  Create header and footer for each sections
-  Set default font type, font size, and paragraph style
-  Use UTF-8 and East Asia fonts/characters
-  Define custom font styles (e.g. bold, italic, color) and paragraph
   styles (e.g. centered, multicolumns, spacing) either as named style
   or inline in text
-  Insert paragraphs, either as a simple text or complex one (a text
   run) that contains other elements
-  Insert titles (headers) and table of contents
-  Insert text breaks and page breaks
-  Insert right-to-left text
-  Insert and format images, either local, remote, or as page watermarks
-  Insert binary OLE Objects such as Excel or Visio
-  Insert and format table with customized properties for each rows
   (e.g. repeat as header row) and cells (e.g. background color,
   rowspan, colspan)
-  Insert list items as bulleted, numbered, or multilevel
-  Insert hyperlinks
-  Insert footnotes and endnotes
-  Insert drawing shapes (arc, curve, line, polyline, rect, oval)
-  Insert charts (pie, doughnut, bar, line, area, scatter, radar)
-  Insert form fields (textinput, checkbox, and dropdown)
-  Create document from templates
-  Use XSL 1.0 style sheets to transform main document part of OOXML
   template
-  ... and many more features on progress
File formats
------------
Below are the supported features for each file formats.
Writers
~~~~~~~
+---------------------------+----------------------+--------+-------+-------+--------+-------+
| Features                  |                      | DOCX   | ODT   | RTF   | HTML   | PDF   |
+===========================+======================+========+=======+=======+========+=======+
| **Document Properties**   | Standard             | ✓      | ✓     | ✓     | ✓      | ✓     |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Custom               | ✓      | ✓     |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
| **Element Type**          | Text                 | ✓      | ✓     | ✓     | ✓      | ✓     |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Text Run             | ✓      | ✓     | ✓     | ✓      | ✓     |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Title                | ✓      | ✓     |       | ✓      | ✓     |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Link                 | ✓      | ✓     | ✓     | ✓      | ✓     |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Preserve Text        | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Text Break           | ✓      | ✓     | ✓     | ✓      | ✓     |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Page Break           | ✓      |       |  ✓    |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | List                 | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Table                | ✓      | ✓     | ✓     | ✓      | ✓     |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Image                | ✓      | ✓     | ✓     | ✓      |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Object               | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Watermark            | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Table of Contents    | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Header               | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Footer               | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Footnote             | ✓      |       |       | ✓      |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Endnote              | ✓      |       |       | ✓      |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
| **Graphs**                | 2D basic graphs      | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | 2D advanced graphs   |        |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | 3D graphs            | ✓      |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
| **Math**                  | OMML support         |        |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | MathML support       |        |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
| **Bonus**                 | Encryption           |        |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
|                           | Protection           |        |       |       |        |       |
+---------------------------+----------------------+--------+-------+-------+--------+-------+
Readers
~~~~~~~
+---------------------------+----------------------+--------+-------+-------+-------+-------+
| Features                  |                      | DOCX   | DOC   | ODT   | RTF   | HTML  |
+===========================+======================+========+=======+=======+=======+=======+
| **Document Properties**   | Standard             | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Custom               | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
| **Element Type**          | Text                 | ✓      | ✓     | ✓     | ✓     | ✓     |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Text Run             | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Title                | ✓      |       | ✓     |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Link                 | ✓      | ✓     |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Preserve Text        | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Text Break           | ✓      | ✓     |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Page Break           | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | List                 | ✓      |       | ✓     |       | ✓     |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Table                | ✓      |       |       |       | ✓     |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Image                | ✓      | ✓     |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Object               |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Watermark            |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Table of Contents    |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Header               | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Footer               | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Footnote             | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Endnote              | ✓      |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
| **Graphs**                | 2D basic graphs      |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | 2D advanced graphs   |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | 3D graphs            |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
| **Math**                  | OMML support         |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | MathML support       |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
| **Bonus**                 | Encryption           |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
|                           | Protection           |        |       |       |       |       |
+---------------------------+----------------------+--------+-------+-------+-------+-------+
Contributing
------------
We welcome everyone to contribute to PHPWord. Below are some of the
things that you can do to contribute.
-  Read `our contributing
   guide <https://github.com/PHPOffice/PHPWord/blob/master/CONTRIBUTING.md>`__.
-  `Fork us <https://github.com/PHPOffice/PHPWord/fork>`__ and `request
   a pull <https://github.com/PHPOffice/PHPWord/pulls>`__ to the
   `develop <https://github.com/PHPOffice/PHPWord/tree/develop>`__
   branch.
-  Submit `bug reports or feature
   requests <https://github.com/PHPOffice/PHPWord/issues>`__ to GitHub.
-  Follow `@PHPWord <https://twitter.com/PHPWord>`__ and
   `@PHPOffice <https://twitter.com/PHPOffice>`__ on Twitter.
 |