利用FlashPaper实现php在线预览word文档

来源:互联网 发布:win7 安装ubuntu 编辑:程序博客网 时间:2024/05/23 01:23

很多人都实现在线阅读word的功能,利用com组件也能实现word预览,但由于服务器限制等原因不好实现。

今天我说的是利用FlashPaper这个工具实现在线转换成swf格式并能在线预览,这个主要利用了,用word文档转换成swf格式后,在显示出,swf内容挺好的,但这个也是需要服务器设置后才能利用,也是比较麻烦的!待有权限!呵呵。。。。。。

<?php
 

 
    public function convert($oldfile,$newfile)
    {
  //$command = "C:\\Program Files\\FlashPaper2.2\\FlashPrinter.bat  $newfile  $oldfile";
  //echo $newfile;
  //$command = "C:\\Program Files\\FlashPaper2.2\\FlashPrinter.exe   E:\\aa.doc -o E:\\my.swf ";
  $command = "F:\zgyuyejinji\wwwRoot\flashyd\FlashPaper2.2\FlashPrinter.exe -o  $newfile  $oldfile";
      //echo $command;
   if(!file_exists($newFile)){//swf文件已经存在就不用转换了
      exec($command);//执行转换
   }
   return $newFile;
    }

 $newfile = "F:\zgyuyejinji\wwwRoot\flashyd\yuedouqi\bb.swf";
  //$oldfile = "F:\zgyuyejinji\wwwRoot\tesw.doc";
 $oldfile = realpath("2.doc");
 $path = convert($oldfile,$newfile);   
if(file_exists($path)) {
?>
<script>window.location.href='duquword.php';</script>
<?php

} else {
 echo '文件转换失败!');
}

?>

duquword.php代码如下:

 <?php
$gqq = rand(1,100000);//清除IE中的swf缓存问题
?>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" align="center"
width="830" height="700">
 <param name="movie" value="/bb.swf?grand=<?php echo $gqq ?>">
 <param name="quality" value="high">
 <param name="scale" value="noscale" >
 
<embed src="/bb.swf?grand=<?php echo $gqq ?>" quality="high" scale="noscale" bgcolor="#1A50B8" width="830" height="700" align="center" allowfullscreen="true"
type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">
  </embed>
</object>