java-flexpaper-swftools仿百度文库文档在线预览系统设计与实现.doc
《java-flexpaper-swftools仿百度文库文档在线预览系统设计与实现.doc》由会员分享,可在线阅读,更多相关《java-flexpaper-swftools仿百度文库文档在线预览系统设计与实现.doc(19页珍藏版)》请在咨信网上搜索。
1、Java FlexPaper swfTools_仿百度文库文档在线预览系统设计与实现最近在给客户开发文档管理系统时,客户要求上传到管理系统的文档(包括ppt,word,excel,txt)只能预览不允许下载。想到了百度文库和豆丁网,百度文库和豆丁网的在线预览都是利用flash来播放文档的,在网上查阅了大量资料,终于实现了该项功能,现将自己的设计和实现整理如下,自己可以试试。一、如何将文档转成flash支持的swf文件实现在线播放?1.先用openOffice把ppt、word、excel、txt类型的文档转换成pdf2.用swftools将pdf转换成swf,然后利用FlexPaper插件实现
2、在线播放预览。二、具体实现1.安装必备工具组件(1)安装openoffice,openoffice是开源免费的文字处理软件,它可以将office文档转成pdf文件(笔者安装到D:ProgramFiles),openOffice下载地址http:/www.openoffice.org/download/index.html(2)安装完openoffice后必须启动其server,以命令行方式启动openoffice server。进入cmd命令行提示符D:Program FilesOpenOffice.org 3program键入如下命令:soffice -headless -accept=so
3、cket,host=127.0.0.1,port=8100;urp; nofirststartwizard进入windows任务管理器查看有个进程soffice.bin,说明openoffice启动成功!(3)安装swfTools(安装到 D:Program Files)swftools作用是将pdf转换为swf文件以便flexpaper播放。下载地址:http:/www.swftools.org/download.html(4)下载flexpaper,下载地址:笔者下载的是FlexPaper_1.5.1,下载后将其解压备用。(5)下载OpenDocument文档转换器 JODConverte
4、r,JODConverter是一个java的OpenDucument文件转换器,可以进行许多文件格式的转换,它利用OpenOffice来进行转换工作,它能进行以下的转换工作:a.Microsoft Office格式转换为OpenDucument,以及OpenDucument转换为Microsoft Officeb.OpenDucument转换为PDF,Word、Excel、PowerPoint转换为PDF,RTF转换为PDF等。下载地址:我们后面开发主要用它的jodconverter-2.2.2.jar包2.软件开发过程(1)启动Eclipse,新建web项目名称为ctcesims(2)将上面
5、第4步解压的flexpaper文件中的js文件夹(包含了flexpaper_flash_debug.js,flexpaper_flash.js,jquery.js,这三个js文件主要是预览swf文件的插件)拷贝至网站根目录;将FlexPaperViewer.swf拷贝至网站根目录下(该文件主要是用在网页中播放swf文件的播放器),目录结构如下图(3)创建documentUpload.jsp文件htmlview plaincopy1. 3. 4. 5. 6. 7. 文档在线预览系统8. 9. bodymargin-top:100px;background:#fff;font-family:Ver
6、dana,Tahoma;10. acolor:#CE4614;11. #msg-boxcolor:#CE4614;font-size:0.9em;text-align:center;12. #msg-box.logoborder-bottom:5pxsolid#ECE5D9;margin-bottom:20px;padding-bottom:10px;13. #msg-box.titlefont-size:1.4em;font-weight:bold;margin:0030px0;14. #msg-box.navmargin-top:20px;15. 16. 17. 18. 19. 20. 2
7、1. 22. 请上传要处理的文件,过程可能需要几分钟,请稍候片刻。23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. (4)创建文档转换类DocConverter.javajavaview plaincopy1. packagecom.cectsims.util;2. importjava.io.BufferedInputStream;3. importjava.io.File;4. importjava.io.IOException;5. importjava.io.InputStream;6. 7. importcom.artofsolving.jodc
8、onverter.DocumentConverter;8. importcom.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection;9. importcom.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection;10. importcom.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter;11. 12. /*13.
9、*docdocx格式转换14. */15. publicclassDocConverter16. privatestaticfinalintenvironment=1;/环境1:windows2:linux17. privateStringfileString;/(只涉及pdf2swf路径问题)18. privateStringoutputPath=;/输入路径,如果不设置就输出在默认的位置19. privateStringfileName;20. privateFilepdfFile;21. privateFileswfFile;22. privateFiledocFile;23. 24.
10、publicDocConverter(StringfileString)25. ini(fileString);26. 27. 28. /*29. *重新设置file30. *31. *paramfileString32. */33. publicvoidsetFile(StringfileString)34. ini(fileString);35. 36. 37. /*38. *初始化39. *40. *paramfileString41. */42. privatevoidini(StringfileString)43. this.fileString=fileString;44. fil
11、eName=fileString.substring(0,fileString.lastIndexOf(.);45. docFile=newFile(fileString);46. pdfFile=newFile(fileName+.pdf);47. swfFile=newFile(fileName+.swf);48. 49. 50. /*51. *转为PDF52. *53. *paramfile54. */55. privatevoiddoc2pdf()throwsException56. if(docFile.exists()57. if(!pdfFile.exists()58. Open
12、OfficeConnectionconnection=newSocketOpenOfficeConnection(8100);59. try60. connection.connect();61. DocumentConverterconverter=newOpenOfficeDocumentConverter(connection);62. converter.convert(docFile,pdfFile);63. /closetheconnection64. connection.disconnect();65. System.out.println(*pdf转换成功,PDF输出:+pd
13、fFile.getPath()+*);66. catch(.ConnectExceptione)67. e.printStackTrace();68. System.out.println(*swf转换器异常,openoffice服务未启动!*);69. throwe;70. catch(com.artofsolving.jodconverter.openoffice.connection.OpenOfficeExceptione)71. e.printStackTrace();72. System.out.println(*swf转换器异常,读取转换文件失败*);73. throwe;74.
14、 catch(Exceptione)75. e.printStackTrace();76. throwe;77. 78. else79. System.out.println(*已经转换为pdf,不需要再进行转化*);80. 81. else82. System.out.println(*swf转换器异常,需要转换的文档不存在,无法转换*);83. 84. 85. 86. /*87. *转换成swf88. */89. SuppressWarnings(unused)90. privatevoidpdf2swf()throwsException91. Runtimer=Runtime.getRu
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java flexpaper swftools 百度 文库 文档 在线 预览 系统 设计 实现
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。