类似百度文库pdf2swf+flexpaper解决pdf在线阅读的效果,pdf2swfflexpaper_PHP教程

php中文网
发布: 2016-07-13 10:16:59
原创
1005人浏览过

类似百度文库pdf2swf+flexpaper解决pdf在线阅读的效果,pdf2swfflexpaper

1:工具准备
swftools.exe 下载
http://www.swftools.org/download.html 
安装至d盘
swftools提供了一系列将各种文件转成swf的工具:
font2swf.exe 
gif2swf.exe 
jpeg2swf.exe 
pdf2swf.exe 
png2swf.exe 
wav2swf.exe 
这里我们只使用pdf2swf.exe

flexpaper下载
http://code.google.com/p/flexpaper/ 
这里我们使用已经编译好的FlexPaper的flash版本

2:示例语言,这里我使用的两种开发环境做示例
   php示例
   由pdf生成swf文件

[php] view plaincopyprint?  
  1. /* 
  2.  * Created on 2010-11-17 
  3.  * 
  4.  * To change the template for this generated file go to 
  5.  * Window - Preferences - PHPeclipse - PHP - Code Templates 
  6.  */  
  7.  //获取文件所在目录  
  8.  $dir=dirname(__FILE__) ;  
  9.  //删除测试文件  
  10.  @unlink( $dir."\test.swf" );  
  11.  //使用pdf2swf转换命令  
  12.  $command= "D:/SWFTools/pdf2swf.exe  -t "".$dir."\test.pdf" -o  "".$dir."\test.swf" -s flashversion=9 ";  
  13.  //创建shell对象  
  14.  $WshShell   = new COM("WScript.Shell");  
  15.  //执行cmd命令  
  16.  $oExec      = $WshShell->Run("cmd /C ". $command, 0, true);  
  17. ?>  

 java示例

 

小绿鲸英文文献阅读器
小绿鲸英文文献阅读器

英文文献阅读器,专注提高SCI阅读效率

小绿鲸英文文献阅读器 199
查看详情 小绿鲸英文文献阅读器

立即学习PHP免费学习笔记(深入)”;

 

立即学习PHP免费学习笔记(深入)”;

[java] view plaincopyprint?  
  1. /* 
  2.  * Created on 2010-11-17 
  3.  */  
  4.  //获取文件所在目录  
  5.   String path=request.getRealPath("/");  
  6.  //使用pdf2swf转换命令  
  7.  String command= "D:/SWFTools/pdf2swf.exe  -t ""+path+"\test.pdf" -o  ""+path+"\test.swf" -s flashversion=9 ";  
  8.  //执行cmd命令  
  9.  Runtime.getRuntime().exec("cmd /c "+command);  
  10. %>  


以上是php,java将pdf转换成swf方式,那显示呢,这样我们会使用到flexpaper,以下是flexpaper的使用
   使用flexpaper展现swf

 

立即学习PHP免费学习笔记(深入)”;

 

立即学习PHP免费学习笔记(深入)”;

[javascript] view plaincopyprint?  
  1.   
  2.  
  3.          var swfVersionStr = "10.0.0";  
  4.          var xiSwfUrlStr = "playerProductInstall.swf";  
  5.          var flashvars = {  
  6.                SwfFile : escape("test.swf"),  
  7.    Scale : 0.6,  
  8.    ZoomTransition : "easeOut",  
  9.    ZoomTime : 0.5,  
  10.      ZoomInterval : 0.1,  
  11.      FitPageOnLoad : false,  
  12.      FitWidthOnLoad : true,  
  13.      PrintEnabled : true,  
  14.      FullScreenAsMaxWindow : false,  
  15.      ProgressiveLoading : true,  
  16.      PrintToolsVisible : true,  
  17.      ViewModeToolsVisible : true,  
  18.      ZoomToolsVisible : true,  
  19.      FullScreenVisible : true,  
  20.      NavToolsVisible : true,  
  21.      CursorToolsVisible : true,  
  22.    SearchToolsVisible : true,  
  23.      localeChain: "zh_CN"  
  24.    };  
  25.   
  26.  var params = {  
  27.   
  28.     }  
  29.          params.quality = "high";  
  30.          params.bgcolor = "#ffffff";  
  31.          params.allowscriptaccess = "sameDomain";  
  32.          params.allowfullscreen = "true";  
  33.          var attributes = {};  
  34.          attributes.id = "FlexPaperViewer";  
  35.          attributes.name = "FlexPaperViewer";  
  36.          swfobject.embedSWF(  
  37.              "FlexPaperViewer.swf", "flashContent",  
  38.              "650", "500",  
  39.              swfVersionStr, xiSwfUrlStr,  
  40.              flashvars, params, attributes);  
  41. swfobject.createCSS("#flashContent", "display:block;text-align:left;");  
  42.        
  43.   
  44.    
  45.   
    "position:absolute;left:10px;top:10px;">  
  46.       
    "flashContent">  
  47.       
  
  •      
  •   
  •   

  • 通过上述方式我们可以将pdf转换成相应的swf文件,并通过flexpaper显示,防止用户下载,或copy。

     

    立即学习PHP免费学习笔记(深入)”;

     

    立即学习PHP免费学习笔记(深入)”;

    pdf2swf的详细参数说明,上网百度或者Google都能查到,但是注意的最好指定flashversion 为9,防止出现一些意外的错误。
    pdf2swf 中并不是所有的pdf都能转换,加密的pdf pdf2swf转换不了


    flexpaper 的参数详细说明请参考 http://code.google.com/p/flexpaper/wiki/Parameters

    flexpaper 常用的API  http://code.google.com/p/flexpaper/wiki/API

     

    立即学习PHP免费学习笔记(深入)”;

     

    立即学习PHP免费学习笔记(深入)”;

    如果出现乱码问题可能是字符集,网上有很多的相关解决方法可以查询【我没有碰到字符集堵的问题】。

    还有pdf中含有图片可能转换成swf后图片不大清晰。

     

    立即学习PHP免费学习笔记(深入)”;

    word,wps,txt等文档也可以采用该方式转换,但工具不一定为swftools

    上传的flexpaper附件中已经包含flexpaper中相关文件不用重新下载,只要下载swftools,并安装。
    flexpaper附件中包含了pdf2swf.jsp与pdf2swf.php两个文件及flexpaper相关的组件可以在java或php环境中运行。

    :PDF2SWF转换只有一页的PDF文档,在FlexPaper没显示

    版本问题,建议卸载重装
     

    Java+FlexPaper+swfTools仿百度文库文档在线预览系统设计与实现

    用FlexPaper这个插件显示,先把word转成pdf再把pdf转成swf文件,上传上去就可以用FlexPaper播放了。注意服务器系统是不一样的,所以间隔符不一样,希望对你思路有所帮助
     

    www.bkjia.comtruehttp://www.bkjia.com/PHPjc/894770.htmlTechArticle类似百度文库pdf2swf+flexpaper解决pdf在线阅读的效果,pdf2swfflexpaper 1:工具准备 swftools.exe 下载 http://www.swftools.org/download.html 安装至D盘 SWFToo...
    WPS零基础入门到精通全套教程!
    WPS零基础入门到精通全套教程!

    全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等

    下载
    来源:php中文网
    收藏 点赞
    上一篇:php生成百度sitemap站点地图类函数实例,sitemap站点地图_PHP教程 下一篇:php输出xml必须header的解决方法,phpxmlheader_PHP教程
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    最新问题
    相关专题
    更多>
    热门推荐
    开源免费商场系统广告
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习

    Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号