Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Julien Chable

He blogs, you blog, I blog ...

[Open XML] Générer des documents PowerPoint avec PHP : PHPPowerPoint CTP 0.1

PHPPowerPoint logo Pour les amateurs de PHP désireux de pouvoir créer des documents Open XML pour leurs applications, Maarten Balliauw vient tout juste d’annoncer la réponse : PHPPowerPoint 0.1.0 (CTP1) released! Après PHPExcel, Maarten s’attaque aujourd'hui à PowerPoint, un domaine beaucoup plus complexe au vu de la structure du format.

Pour résumer rapidement cette nouvelle librairie PHP, PHPPowerPoint permet de générer des documents Open XML directement depuis une application PHP. Vous pouvez créer une présentation en mémoire et ensuite l’écrire sur le disque ou dans une base de données.

Voici un exemple de code qui génère la présentation située sur la droite :

Simple PHPPowerPoint demo/* Create new PHPPowerPoint object */
$objPHPPowerPoint = new PHPPowerPoint();

/* Create slide */
$currentSlide = $objPHPPowerPoint->getActiveSlide();

/* Create a shape (drawing) */
$shape = $currentSlide->createDrawingShape();
$shape->setName('PHPPowerPoint logo');
$shape->setDescription('PHPPowerPoint logo');
$shape->setPath('./images/phppowerpoint_logo.gif');
$shape->setHeight(36);
$shape->setOffsetX(10);
$shape->setOffsetY(10);
$shape->getShadow()->setVisible(true);
$shape->getShadow()->setDirection(45);
$shape->getShadow()->setDistance(10);

/* Create a shape (text) */
$shape = $currentSlide->createRichTextShape();
$shape->setHeight(300);
$shape->setWidth(600);
$shape->setOffsetX(170);
$shape->setOffsetY(180);
$shape->getAlignment()->setHorizontal( PHPPowerPoint_Style_Alignment::HORIZONTAL_CENTER );
$textRun = $shape->createTextRun('Thank you for using PHPPowerPoint!');
$textRun->getFont()->setBold(true);
$textRun->getFont()->setSize(60);
$textRun->getFont()->setColor( new PHPPowerPoint_Style_Color( 'FFC00000' ) );

/* Save PowerPoint 2007 file */
$objWriter = PHPPowerPoint_IOFactory::createWriter($objPHPPowerPoint, 'PowerPoint2007');
$objWriter->save(str_replace('.php', '.pptx', __FILE__));

Vous pouvez dés à présent télécharger la librairie et un exemple beaucoup plus évolué sur le site officiel du projet : http://www.phppowerpoint.net.

Maarten, see you in London for the next DII.

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :
Posted: mardi 28 avril 2009 12:30 par neodante
Classé sous : ,

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- WP7 5K Belgium Challenge par Le Blog (Vert) d'Arnaud JUND le il y a 8 heures et 28 minutes

- Les Monades pour les Nuls par Hello World :-) le il y a 9 heures et 11 minutes

- [WP7] Ajouter des images dans la Media Library d'un Windows Phone 7 par Blog Technique d'Audrey PETIT le 07-29-2010, 14:00

- Vive les mocks et les POCOs par Le Blog de Vincent Labatut le 07-28-2010, 22:30

- [WF4] Workflow and Custom Activities - Best Practices (4/5) par Blog de Jérémy Jeanson le 07-28-2010, 15:09

- Développement mobile : .NET Compact Framework & Limitations par Le Blog de Pi-R (Pierre Cambier) le 07-28-2010, 15:06

- IPhone versus WP7 Coding par Nicolas Humann le 07-27-2010, 23:48

- SharePoint : Optimisation des performances de sites sous MOSS – Le Blob Cache par Blog Technique de Romelard Fabrice le 07-27-2010, 17:01

- [WF4] Réaliser une activité i++ en respectant les bonnes pratiques par Blog de Jérémy Jeanson le 07-27-2010, 15:20

- [WF4] La galère du designer d’activités générique avec arguments génériques par Blog de Jérémy Jeanson le 07-27-2010, 12:04