## 采用 PhpPresentation 插件生成PPT

下载方式 composer , composer.json里面增加, 然后 composer update

```

"require": {

"phpoffice/phppresentation": "dev-master"

},

```

git 地址: [https://github.com/PHPOffice/PHPPresentation](https://link.jianshu.com/?t=https%3A%2F%2Fgithub.com%2FPHPOffice%2FPHPPresentation)

手册地址:[http://phppowerpoint.readthedocs.io/en/latest/](https://link.jianshu.com/?t=http%3A%2F%2Fphppowerpoint.readthedocs.io%2Fen%2Flatest%2F)

demo

```

~~~

use PhpOffice\PhpPresentation\PhpPresentation;

use PhpOffice\PhpPresentation\IOFactory;

use PhpOffice\PhpPresentation\Style\Color;

use PhpOffice\PhpPresentation\Style\Alignment;

class PhpOffice1

{

public function index()

{

// 2.创建ppt对象

$objPHPPowerPoint = new PhpPresentation();

// 3.设置属性

$objPHPPowerPoint->getDocumentProperties()->setCreator('PHPOffice')

->setLastModifiedBy('PHPPresentation Team')

->setTitle('Sample 02 Title')

->setSubject('Sample 02 Subject')

->setDescription('Sample 02 Description')

->setKeywords('office 2007 openxml libreoffice odt php')

->setCategory('Sample Category');

// 4.删除第一页(多页最好删除)

$objPHPPowerPoint->removeSlideByIndex(0);

//根据需求 调整for循环

for ($i = 1; $i <= 3; $i++) {

//创建幻灯片并添加到这个演示中

$slide = $objPHPPowerPoint->createSlide();

//创建一个形状(图)

$shape = $slide->createDrawingShape();

$shape->setName('内容图片name')

->setDescription('内容图片 描述')

->setPath(WEB_PATH . '/uploads/img/background.jpg')

->setResizeProportional(false)

->setHeight(720)

->setWidth(960);

//创建一个形状(文本)

$shape = $slide->createRichTextShape()

->setHeight(60)

->setWidth(960)

->setOffsetX(10)

->setOffsetY(50);

$shape->getActiveParagraph()->getAlignment()->setHorizontal(Alignment::HORIZONTAL_CENTER);

$textRun = $shape->createTextRun('以后这个就是标题了');

$textRun->getFont()->setBold(true)

->setSize(20)

->setColor(new Color('FFE06B20'));

// 创建一个形状(文本)

$shape = $slide->createRichTextShape()

->setHeight(60)

->setWidth(960)

->setOffsetX()

->setOffsetY(700);

$shape->getActiveParagraph()->getAlignment()->setHorizontal(Alignment::HORIZONTAL_RIGHT);

$textRun = $shape->createTextRun('时间:2017年10月19号');

$textRun->getFont()->setBold(true)

->setSize(10)

->setColor(new Color('FFE06B20'));

}

$oWriterPPTX = IOFactory::createWriter($objPHPPowerPoint, 'PowerPoint2007');

//路径 /uploads/ppt/ 必须存在

$url = WEB_PATH . "/uploads/ppt/" . time() . ".pptx";

//生成PPT

$oWriterPPTX->save($url);

//下载PPT

download($url);

//删除PPT

deldir($url);

exit;

}

}

function download($file)

{

if(file_exists($file)){

header("Content-type:application/octet-stream");

$filename = basename($file);

header("Content-Disposition:attachment;filename = ".$filename);

header("Accept-ranges:bytes");

header("Accept-length:".filesize($file));

readfile($file);

}else{

echo "";

}

}

//删除文件

function deldir($dir)

{

unlink($dir);

closedir($dir);

}

~~~

```

php ppt read_PHP生成PPT相关推荐

  1. php ppt read_PHP读取PPT文件的方法

    本文实例讲述了PHP读取PPT文件的方法.分享给大家供大家参考,具体如下: 最近做一个和FLASH有关的东西,其中就要用到在网站上看PPT就像百度,豆丁网那样可以直接在网站上读,在网上搜了半天没搜到, ...

  2. 用python自动生成ppt

    在日常工作中,PPT制作是常见的工作,如果制作创意类PPT,则无法通过自动化的形式生成,因为创意本身具有随机性,而自动化解决的是重复性工作,两者有所冲突. python-pptx是python处理PP ...

  3. excel中如何et vb根据数据自动生成表格_如何实现excel与PPT互联互通(动态生成PPT)...

    因为经常要做周报.月报PPT,每次重复的的操作效率很低,这里整理了一套可以自动生成PPT的办法. 首先,大概思路是这样的.周报.月报这类经营分析类PPT一般都是由表格.图表以及分析文字组成的,整体结构 ...

  4. 借助ChatGPT自动生成PPT

    借助ChatGPT自动生成PPT 首先让GPT生成一段markdown格式的PPT内容,尽量描述全面,以什么语言,什么格式,排版等等. 打开mindshow网址,点击import and create ...

  5. Word导入与发送、一键生成PPT文案

    Word导入与发送.一键生成PPT文案 1.Word原始文字 2.PPT模板 3.具体实施手法 4.优化 1.Word原始文字 文字 励志文字 1.尽管我知道我会摔倒.但我仍会站起.继续前行 2.小苗 ...

  6. ppt拼图 批量生成 N多ppt一键生成拼图

    我们办公中经常用到PPT插件islide里的PPT拼图,可以一个个手工把ppt生成ppt拼图效果,如果想批量把几十上百个ppt一次性生成拼图效果,islide就实现不了. 这是开发的PPT批量执行拼图 ...

  7. python ppt自动生成_实战 | Python自动生成PPT调研报告

    原标题:实战 | Python自动生成PPT调研报告 原文: 全文约 3821 字,读完可能需要 5 分钟. 文/JSong @2017.02.28 在数据分析里面有一句话是说,80%的时间要用于数据 ...

  8. c#生成PPT总结(Microsoft.Office.Interop)

    引用自:https://bbs.csdn.net/topics/391937345 1.在项目中添加引用 Microsoft PowerPoint 14.0 Object Library 2. usi ...

  9. C#使用Microsoft.office.interop.PowerPoint生成PPT

    文章目录 前言 一.步骤 1.引入库 2.创建PPT 3.创建PPT中的幻灯片 4.生成标题 5.生成目录 5.创建表格 6.保存 总结 前言 开发的一个系统需要用到自动生成ppt,网上的例子比较少, ...

最新文章

  1. spring配置datasource三种方式
  2. python算法与数据结构-单链表
  3. javascript第三天(2)
  4. WCF的用户名+密码认证方式
  5. avalon框架,简单的MVVM
  6. foreach 用法例子
  7. 一顿操作猛如虎!云原生应用为何如此优秀?
  8. java script 下载_JavaScript下载
  9. JZOJ7月18日提高组T1 Family
  10. java word 图片_java导出word(带图片)
  11. 汽车电子设计之SBC芯片简单认识
  12. 什么是收集服务器配置信息,配置rsyslog服务器收集Cisco交换机日志信息操作指引...
  13. vue中事件修饰符,stop,prevent,capture,self,once
  14. bootstrap-datepicker属性和方法
  15. 图形学-着色(Blinn-Phong模型)
  16. 计算机图形学直线算法程序,计算机图形学直线生成算法实现.doc
  17. 微信发支付宝红包(花呗)
  18. PTA题目 到底是不是太胖了
  19. MIUI系统 无法从非官方渠道安装系统应用
  20. 同事的评价:你的思维跳跃性太大!

热门文章

  1. 1000卡路里计算器_Excel卡路里燃烧计算器
  2. DBA生活篇之休闲:不做宅男!
  3. php读取word文件并解析图片,PHP读取office word文档内容及图片
  4. 1070: 小汽车的位置 Python
  5. 做为一名大数据新手,如何成为大数据工程师?附上学习路线
  6. 6个Excel操作技巧,期待明年更好的自己
  7. PostgreSQL 从备份原理 到 PG_PROBACKUP
  8. 源码阅读|怒肝了9道 HashMap经典面试题,需要的快速来取(不包邮哦)
  9. Asciidoctor基础语法
  10. V2X-ViT:基于Vision Transformer的V2X协同感知