Maestro de sucursal:
PHPWord es una biblioteca escrita en PHP puro que proporciona un conjunto de clases para escribir y leer desde diferentes formatos de archivos de documentos. La versión actual de PHPWord es compatible con Microsoft Office Open XML (OOXML u OpenXML), el formato de documento abierto OASIS para aplicaciones de Office (OpenDocument u ODF), el formato de texto enriquecido (RTF), HTML y PDF.
PHPWord es un proyecto de código abierto con licencia según los términos de LGPL versión 3. PHPWord pretende ser un producto de software de alta calidad mediante la incorporación de integración continua y pruebas unitarias. Puede obtener más información sobre PHPWord leyendo la documentación para desarrolladores.
Si tiene alguna pregunta, pregunte en StackOverFlow
Lea más sobre PHPWord:
Con PHPWord, puede crear documentos OOXML, ODF o RTF dinámicamente utilizando sus scripts PHP. A continuación se muestran algunas de las cosas que puede hacer con la biblioteca PHPWord:
PHPWord requiere lo siguiente:
PHPWord se instala a través de Composer. Para agregar una dependencia a PHPWord en su proyecto, ya sea
Ejecute lo siguiente para usar la última versión estable
composer require phpoffice/phpword
o si quieres la última versión inédita
composer require phpoffice/phpword:dev-master
El siguiente es un ejemplo de uso básico de la biblioteca PHPWord.
require_once ' bootstrap.php ' ;
// Creating the new document...
$ phpWord = new PhpOffice PhpWord PhpWord ();
/* Note: any element you append to a document must reside inside of a Section. */
// Adding an empty Section to the document...
$ section = $ phpWord -> addSection ();
// Adding Text element to the Section having font styled by default...
$ section -> addText (
' "Learn from yesterday, live for today, hope for tomorrow. '
. ' The important thing is not to stop questioning." '
. ' (Albert Einstein) '
);
/*
* Note: it's possible to customize font style of the Text element you add in three ways:
* - inline;
* - using named font style (new font style object will be implicitly created);
* - using explicitly created font style object.
*/
// Adding Text element with font customized inline...
$ section -> addText (
' "Great achievement is usually born of great sacrifice, '
. ' and is never the result of selfishness." '
. ' (Napoleon Hill) ' ,
array ( ' name ' => ' Tahoma ' , ' size ' => 10 )
);
// Adding Text element with font customized using named font style...
$ fontStyleName = ' oneUserDefinedStyle ' ;
$ phpWord -> addFontStyle (
$ fontStyleName ,
array ( ' name ' => ' Tahoma ' , ' size ' => 10 , ' color ' => ' 1B2232 ' , ' bold ' => true )
);
$ section -> addText (
' "The greatest accomplishment is not in never falling, '
. ' but in rising again after you fall." '
. ' (Vince Lombardi) ' ,
$ fontStyleName
);
// Adding Text element with font customized using explicitly created font style object...
$ fontStyle = new PhpOffice PhpWord Style Font ();
$ fontStyle -> setBold ( true );
$ fontStyle -> setName ( ' Tahoma ' );
$ fontStyle -> setSize ( 13 );
$ myTextElement = $ section -> addText ( ' "Believe you can and you ' re halfway there." (Theodor Roosevelt) ' );
$ myTextElement -> setFontStyle ( $ fontStyle );
// Saving the document as OOXML file...
$ objWriter = PhpOffice PhpWord IOFactory :: createWriter ( $ phpWord , ' Word2007 ' );
$ objWriter -> save ( ' helloWorld.docx ' );
// Saving the document as ODF file...
$ objWriter = PhpOffice PhpWord IOFactory :: createWriter ( $ phpWord , ' ODText ' );
$ objWriter -> save ( ' helloWorld.odt ' );
// Saving the document as HTML file...
$ objWriter = PhpOffice PhpWord IOFactory :: createWriter ( $ phpWord , ' HTML ' );
$ objWriter -> save ( ' helloWorld.html ' );
/* Note: we skip RTF, because it's not XML-based and requires a different example. */
/* Note: we skip PDF, because "HTML-to-PDF" approach is used to create PDF documents. */
Se proporcionan más ejemplos en la carpeta de ejemplos. Para acceder fácilmente a esos ejemplos, inicie php -S localhost:8000
en el directorio de ejemplos y luego busque http://localhost:8000 para ver los ejemplos. También puede leer la documentación de los desarrolladores para obtener más detalles.
Invitamos a todos a contribuir a PHPWord. A continuación se detallan algunas de las cosas que puede hacer para contribuir.