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

- Quelques trucs intéressants (05/09/2010) par CoqBlog le il y a 14 heures et 37 minutes

- EnumerableCollection par Matthieu MEZIL le 09-03-2010, 23:23

- [HS] Chrome 6 + Moi = Coup de gueule ! par Blog de Jérémy Jeanson le 09-03-2010, 12:12

- [WP7] Utiliser un WrapPanel dans une application Windows Phone 7 par Blog Technique d'Audrey PETIT le 09-01-2010, 22:40

- [WP7] Besoin d’avoir des données en cache par Nicolas Humann le 09-01-2010, 15:12

- [TFS] Comment forcer la saisie d’un Area ou Iteration par Atteint de JavaScriptite Aiguë [Cyril Durand] le 09-01-2010, 02:01

- SQL : Fonctions d'agrégation MIN/MAX et valeurs NULL par CoqBlog le 09-01-2010, 00:04

- Votez pour Warnygo par Nicolas Humann le 08-31-2010, 11:58

- [SharePoint 2010] L'administration toolkit V1 est disponible par Julien Chable le 08-31-2010, 01:42

- Développement Windows Mobile 6.x : Gestion des Forms & Machines d'états par Le Blog de Pi-R (Pierre Cambier) le 08-30-2010, 13:20