phpword中文开发手册:php处理word文档,php可以直接处理word文件,可以插入图片,文字,导出word文档,实现word自动分页。
PHPWord是一个用纯PHP编写的库,它提供了一组用于读写不同文档文件格式的类。当前版本的PHPWord支持Microsoft Office Open XML(OOXML或OpenXML),用于Office应用程序的 OASIS 开放文档格式(OpenDocument或ODF),富文本格式(RTF),HTML和PDF。
PHPWord是根据LGPL版本3的条款许可的开源项目。通过合并持续集成和单元测试, PHPWord旨在成为一种高质量的软件产品。
使用PHPWord,您可以使用PHP 5.3.3+脚本动态创建OOXML,ODF或RTF文档。以下是您可以使用PHPWord库执行的一些操作:
设置文档属性,例如标题,主题和创建者。
使用不同的设置创建文档部分,例如纵向/横向,页面大小和页码
为每个部分创建页眉和页脚
设置默认字体类型,字体大小和段落样式
使用UTF-8和东亚字体/字符
定义自定义字体样式(例如,粗体,斜体,颜色)和段落样式(例如,居中,多列,间距)为命名样式或文本内联
插入段落,可以是包含其他元素的简单文本或复杂文本(文本运行)
插入标题(标题)和目录
插入文本分隔符和分页符
插入和格式化图像(本地,远程或作为页面水印)
插入二进制OLE对象,例如Excel或Visio
使用每行(例如,重复作为标题行)和单元格(例如,背景色,行跨度,列跨度)的自定义属性插入并格式化表格
插入列表项目为项目符号,编号或多层
插入超链接
插入脚注和尾注
插入图形形状(弧形,曲线,线,折线,矩形,椭圆形)
插入图表(饼图,甜甜圈,条形图,折线图,面积图,散点图,雷达图)
插入表单字段(文本输入,复选框和下拉列表)
从模板创建文档
使用XSL 1.0样式表来转换OOXML模板的标题,主文档部分和页脚
...以及更多正在开发的功能
PHPWord需要以下内容:
PHP 5.3.3以上
XML分析器扩展
Zend \ Escaper组件
Zend \ Stdlib组件
邮编扩展名(可选,用于编写OOXML和ODF)
GD扩展名(可选,用于添加图像)
XMLWriter扩展(可选,用于编写OOXML和ODF)
XSL扩展名(可选,用于将XSL样式表应用于模板)
dompdf库(可选,用于编写PDF)
PHPWord是通过Composer安装的。要将依赖项添加到项目中的PHPWord,
运行以下命令以使用最新的稳定版本
作曲家需要phpoffice / phpword
或者如果您想要最新的主版本
作曲家需要phpoffice / phpword:dev-master
当然,您也可以手动编辑composer.json文件
{ “ require ”:{“ phpoffice / phpword ”:“ v0.16。* ” }}
初级:
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. */