PHPPresentation is a library written in pure PHP that provides a set of
classes to write to different presentation file formats, i.e.
Microsoft Office Open XML
(.pptx
) and OASIS Open Document Format for Office Applications (.odp
).
PHPPresentation is an open source project licensed under the terms of LGPL version 3. PHPPresentation is aimed to be a high quality software product by incorporating continuous integration and unit testing. You can learn more about PHPPresentation by reading this Developers' Documentation.
Features
- Create an in-memory presentation representation
- Set presentation meta data (author, title, description, etc)
- Add slides from scratch or from existing one
- Supports different fonts and font styles
- Supports different formatting, styles, fills, gradients
- Supports hyperlinks and rich-text strings
- Add images with different styles (positioning, rotation, shadow)
- Set printing options (header, footer, page margins, paper size, orientation)
- Input from different file formats:
- PowerPoint 97 (.ppt)
- PowerPoint 2007 (.pptx)
- OpenDocument Presentation (.odp)
- Serialized Spreadsheet
- Output to different file formats:
- PowerPoint 2007 (.pptx)
- OpenDocument Presentation (.odp)
- Serialized Spreadsheet
- ... and lots of other things!
File formats
Below are the supported features for each file formats.
Writers
Features | HTML | ODP | PPTX | ||
---|---|---|---|---|---|
Document | Mark as final | ||||
Document Properties | Standard | ||||
Custom | |||||
Slides | |||||
Name | |||||
Element Shape | AutoShape | ||||
Image | |||||
Hyperlink | |||||
Line | |||||
MemoryImage | |||||
RichText | |||||
Table | |||||
Text | |||||
Charts | Area | ||||
Bar | |||||
Bar3D | |||||
Doughnut | |||||
Line | |||||
Pie | |||||
Pie3D | |||||
Radar | |||||
Scatter |
Readers
Features | ODP | PPT | PPTX | |
---|---|---|---|---|
Document | Mark as final | |||
Document Properties | Standard | |||
Custom | ||||
Slides | ||||
Name | ||||
Element Shape | AutoShape | |||
Image | ||||
Hyperlink | ||||
RichText | ||||
Table | ||||
Text | ||||
Charts | Area | |||
Bar | ||||
Bar3D | ||||
Doughnut | ||||
Line | ||||
Pie | ||||
Pie3D | ||||
Radar | ||||
Scatter |
Contributing
We welcome everyone to contribute to PHPPresentation. Below are some of the things that you can do to contribute:
- Read our contributing guide
- Fork us and request a pull to the develop branch
- Submit bug reports or feature requests to GitHub
- Follow @PHPOffice on Twitter