php实现ppt转图片,php调用com组件问题
PHP 调用com组件将ppt转为图片。
需要在php.ini中开启
com.allow_dcom = true
<?php
$powerpnt = new COM("powerpoint.application") or die("Unable to instantiate Powerpoint");
$file='1.ppt';
echo realpath($file); $addr = $_SERVER['DOCUMENT_ROOT'].'/ppt/1.ppt';
echo $addr;
$presentation = $powerpnt->Presentations->Open($addr, false, false, false) or die("Unable to open presentation"); $presentation->Fonts->Replace('黑体','幼圆');
$presentation->Fonts->Replace('MS Gothic','幼圆');
$presentation->Fonts->Replace('方正粗倩简体','幼圆');
$presentation->Fonts->Replace('方正小标宋简体','幼圆');
$presentation->Fonts->Replace('Arial Black','幼圆');
$presentation->Fonts->Replace('华文中宋','幼圆');
$presentation->Fonts->Replace('Arial Unicode MS','幼圆');
$presentation->Fonts->Replace('方正细圆简体','幼圆');
$presentation->Fonts->Replace('Times New Roman','幼圆'); foreach($presentation->Fonts as $c)
{
echo $c->name."<br />";
//echo $c->Replace('','');
} foreach($presentation->Slides as $slide)
{
$slideName = "Slide_" . $slide->SlideNumber;
$uploadsFolder = 'iii';
$exportFolder = realpath($uploadsFolder);
$slide->Export($exportFolder."//".$slideName.".jpg", "jpg", "1920", "1080");
}
$presentation->Close();
$powerpnt->Quit();
$powerpnt = null;
?>
在win7上跑,没问题,放到2008上面出现错误,有一种exception叫unknown...

解决方案:
cmd -》 dcomcnfg

参考网址:
http://blog.csdn.net/bleurever/article/details/50783133
2018年2月26日续
按照上述方法解决后发现交互式用户有以下问题,必须要有用户登录系统才能使用,否则报错如下:
PHP Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `powerpoint.application': 因为配置标识不正确,系统无法开始服务器进程。请检查用户名和密码。
解决方法,指定用户,还不能是administrator用户,必须新建一个。

在安全,选项卡中,所有权限选自定义,给上面选择的用户授予全部权限。

搞定!
--------------------------------------------------------------------------------
交互式用户(The interactive user): 这是推荐的选项, 以当前登录到系统的用户确定对象的身份(当前必须有用户登录到系统, 如果用户注销那么对象也会被销毁);
启动用户(The launching user): 以调用的客户端的用户确定对象的身份, 一个缺点就是这个对象不能再进行远程调用;
php实现ppt转图片,php调用com组件问题的更多相关文章
- C#实现 word、pdf、ppt 转为图片
office word文档.pdf文档.powerpoint幻灯片是非常常用的文档类型,在现实中经常有需求需要将它们转换成图片 -- 即将word.pdf.ppt文档的每一页转换成一张对应的图片,就像 ...
- word、pdf、ppt 转为图片
office word文档.pdf文档.powerpoint幻灯片是非常常用的文档类型,在现实中经常有需求需要将它们转换成图片 -- 即将word.pdf.ppt文档的每一页转换成一张对应的图片,就像 ...
- 重要:关于PPT转图片需要注意的问题
关于PPT转图片的问题需要注意的问题 我们有一个项目做过直接上传ppt的功能,但是网页不可能显示ppt,所以只能把ppt转成pdf或者图片来显示,我们的做法是转成了图片,然后使用swiper做成类 ...
- 实现PPT在线预览,PPT转图片方案
一.PPT转图片可行方案探索历程 PPT转图片方案 方案具体步骤及分析 已放弃方案 poi(失真度太高):Aspose直接转图片(收费,效果较好,备选):微软Office Online(需要基于Win ...
- jq demo 轮播图,图片可调用,向左,自动+鼠标点击切换
<!doctype html> <html> <head> <meta http-equiv="Content-Type" content ...
- jq demo 轮播图,图片可调用,向上,自动+鼠标点击切换
1 <!doctype html> <html> <head> <meta http-equiv="Content-Type" conte ...
- Android 实例解说加入本地图片和调用系统拍照图片
在项目的开发过程我们离不开图片.而有时候须要调用本地的图片,有时候须要调用拍照图片.同一时候实现拍照的方法有两种,一种是调用系统拍照功能.还有一种是自己定义拍照功能. 而本博文眼下仅仅解说第一种方法, ...
- Java 转PPT为图片、PDF、SVG、XPS、ODP以及PPT和PPTX互转
同一文档,在不同的文档查看器或者编译环境中,需要对该文档进行相应的格式转换.下面的内容中,将介绍通过Java编程来实现PPT文档格式转换的方法. 使用工具: Spire.Presentation fo ...
- 利用简洁的图片预加载组件提升h5移动页面的用户体验
在做h5移动页面,相信大家一定碰到过页面已经打开,但是里面的图片还未加载出来的情况,这种问题虽然不影响页面的功能,但是不利于用户体验.抛开网速的原因,解决这个问题有多方面的思路:最基本的,要从http ...
随机推荐
- 2017百度web前端实习生在线笔试题
代码: import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner s ...
- Springmvc的工作流程
1.向服务器发送http请求,请求被前端控制器DispatcherServlet捕获. 2.DispatcherServlet根据servlet.xml中的配置进行URL解析后,得到(URL),然后根 ...
- Java中的多线程Demo
一.关于Java多线程中的一些概念 1.1 线程基本概念 从JDK1.5开始,Java提供了3中方式来创建.启动多线程: 方式一(不推荐).通过继承Thread类来创建线程类,重写run()方法作为线 ...
- 系统启动 之 Linux系统启动概述(1)
随着智能终端功能的越来越庞大,与之,硬件配置越来越高,开机时间却越来越长.人们在享受强大功能的同时,对冗长的智能终端的开机时间却越来越缺乏耐心. 为了"取悦"用户,需要提供较好的用 ...
- 在myeclipse下安装svn插件,出现了Could not generate DH keypair,这么一个错误。
解决方法: window-->preferences-->Team-->SVN-->SVN接口 选择:JavaHL 去https://sliksvn.com/download/ ...
- Play再识 - 不放弃的执着
从写Play初识时,前面各种称赞play如何如何解放java web开发,最后因为网络被墙而无法正常编译,从而想到放弃.从来都有成为web开发高手的想法,今天又再一次进行尝试,惊喜的是有新的进展. 首 ...
- Thinkphp3.2———配置模块
一.配置格式 Thinkphp框架中的所有配置都是数组形式定义的的格式为: //项目配置 return array( 'DEFAULT_MODULE'=>'Index',//默认模块 'URL_ ...
- poj1011 搜索+剪枝
DFS+剪枝 POJ2362的强化版,重点在于剪枝 令InitLen为所求的最短原始棒长,maxlen为给定的棒子堆中最长的棒子,sumlen为这堆棒子的长度之和,那么InitLen必定在范围[max ...
- Java 通过先序后序序列生成二叉树
题目 二叉树的前序以及后续序列,以空格间隔每个元素,重构二叉树,最后输出二叉树的三种遍历方式的序列以验证. 输入: 1 2 3 4 5 6 7 8 9 10 3 2 5 4 1 7 8 6 10 9 ...
- myeclipse10.7安装git插件
如果想把github上的一些开源项目导入到myeclipse中,一种方法是从github网站上将开源项目下载下来,另一种是使用myeclipse的egit插件直接从github网站上down下来,下面 ...