FlexPaper是一个被设计用来与PDF2SWF一起使用,开源轻量级的在浏览器上显示各种文档的组件, 使在Flex中显示PDF成为可能,而这个过程并无需PDF软件环境的支持。它可以被当做Flex的库来使用。也可以通过将一些例如Word、PPT等文档转成PDF,然后实现在线浏览。
一. 使用PDF2SWF转化你的pdf文件
首先要将PDF转成SWF,这步可以使用开源的SwfTools自动完成
1.到http://www.swftools.org/download.html下载安装 SwfTools,当前最新版本是0.9.1
2.转换PDF到SWF,可以通过命令行的方式,例如将Paper3.pdf转换成Paper3.swf
C:\SWFTools\pdf2swf Paper3.pdf -o Paper3.swf
我写了一个方法,可以利用JAVA转化pdf为swf。
-
publicstaticintConvertPdfToSwf(StringfileName,StringdestPath){
-
StringdestName="",fileExt="";
-
StringBuffercommand=newStringBuffer();
-
fileExt=fileName.split("\\.")[fileName.split("\\.").length-1].toLowerCase();
-
try{
-
Filefile=newFile(fileName);
-
if(!file.exists()){
-
return-1;
-
}elseif(!fileExt.equals("pdf")){
-
return-2;
- }
-
else{
-
StringswftoolsPath="D:\\SWFTools";
-
if(!swftoolsPath.substring(swftoolsPath.length()-1,swftoolsPath.length()).equals("\\")){
-
swftoolsPath=swftoolsPath+"\\";//在目录后加"\"
- }
-
if(!destPath.substring(destPath.length()-1,destPath.length()).equals("\\")){
-
destPath=destPath+"\\";//在目录后加"\"
- }
-
FiledestFile=newFile(destPath);
-
if(!destFile.exists()){
- destFile.mkdirs();
- }
-
destName=file.getName().substring(0,file.getName().length()-4)+".swf";
-
command.append(swftoolsPath).append("pdf2swf.exe").append(fileName).append("-o").append(destPath).append(destName);
- Processpro=Runtime.getRuntime().exec(command.toString());
-
BufferedReaderbuffer=newBufferedReader(newInputStreamReader(pro.getInputStream()));
-
while(buffer.readLine()!=null);
-
returnpro.exitValue();
- }
-
}catch(Exceptione){
- e.printStackTrace();
-
return-3;
- }
- }
二. 使用已经编译好的FlexPaper的flash版本浏览你的文档
下载并解压FlexPaper-flash版本的zip文件,将解压出的文件放到你的项目下面,如tomcat的webapps目录下,并用转化后生成的swf文件替换原有的paper.swf文件,或者修改FlexPaperViewer.html中的paper.swf文件为你生成的swf文件,重新发布项目即可。
如此,便可在线浏览pdf文件,再也不用安装pdf阅读器了。
分享到:
相关推荐
《.NET + SWFTools + FlexPaper:PDF转SWF实现在线预览的全面解析》 在数字化时代,为了提供方便快捷的文档查看体验,许多网站和应用开始采用在线预览功能,尤其对于PDF文档。本文将深入探讨如何利用.NET框架、...
2. **SWFTools**: SWFTools是一系列用于处理SWF文件的开源工具集合,包括pdf2swf、image2swf、rafl等等。这些工具可以用来转换、提取或者操作SWF文件,以适应不同场景的需求。 3. **FlexPaper**: FlexPaper是一款...
最后,将SWF文件上传到服务器,并配置FlexPaper的设置,使其指向这些SWF文件,从而实现在线浏览。 在实际应用中,这个过程可能会涉及到文件上传、错误处理、文件存储路径管理等多个环节。此外,为了提升用户体验,...
在本项目中,pdf2swf的作用是将转换后的PDF文档转化为可以在网页上流式播放的SWF文件。这样做的好处是可以使得文档在网络上传输时更加高效,同时用户可以在不离开浏览器的情况下预览文档内容。 最后,FlexPaper是一...
FlexPaper 是一个强大的开源工具,专门用于在Adobe Flex应用程序中展示文档,特别是PDF格式的文件。这个组件以其轻量级和高效性著称,能够提供流畅的PDF阅读体验。FlexPaper通常与PDF2SWF工具结合使用,该工具将PDF...
总结来说,仿百度文库的文档转换流程包括以下几个关键步骤:选择合适的PDF生成工具将文档转换为PDF,使用PDF到SWF转换工具将PDF转为SWF,最后通过FlexPaper的JavaScript库在前端展示SWF文件。这一系列技术的应用,...
转换完成后,生成的SWF文件可以在FlexPaper中加载,供用户在线浏览。 综上所述,这个技术实现包括了跨平台的PDF文件转换和在线展示,涉及了PDF、SWF格式、转换工具、操作系统适应性以及Web应用程序的集成。这对于...
总结来说,"flexpaper+openoffice+pdf2swf.exe"组合提供了从多种格式的文档到适合在线预览的SWF文件的转换解决方案。通过合理部署和集成,可以构建一个高效、安全的在线文档预览系统。在线预览不仅简化了用户操作,...
首先,FlexPaper的核心是它的Flash组件,它能将PDF文件转换为可交互的、高清晰度的在线查看体验。FlexPaper支持多种格式的文档,包括PDF、DJVU等,这使得它在各种场景下都能派上用场。其界面简洁,用户友好,提供了...
2. **FlexPaper**: FlexPaper是一款开源的文档查看和发布工具,它可以显示PDF和SWF格式的文档,并提供类似于真实纸质文档的翻页效果。在Web应用中,FlexPaper通过JavaScript库与服务器端的Java服务进行交互,获取和...
总结来说,"java pdf转swf,最后在页面显示实例(类似百度文库)"涉及的技术包括PDF解析、图像处理、SWF编码、网页展示、用户交互设计、安全策略以及性能优化。通过熟练掌握这些技术,可以构建出一个功能完善且用户...
显示 PDF 文件,将 PDF 文件转换成 SWF,再用 Adobe Flash 插件播放。另外,如果是 Word 文档,那么客户可以先利用 Office 插件或其他三方工具将 Word 文档转换成 PDF,再上传,也可以利用 Office COM 组件编写代码...
swftools 是在开发FlexPaper项目时使用到的,可以有效的将pdf转换为swf文件在线浏览。
使用SWFTools的pdf2swf命令,可以将PDF转换为SWF,然后在FlexPaper中加载这个SWF文件,实现无损的PDF预览。 在压缩包中的FlexPaperDemo,包含了演示代码和已测试的配置,你可以直接运行此示例来观察这些自定义功能...
4. **库文件**:包含 FlexPaper 的 JavaScript 库或者 SWF 文件,这些是实现在线文档查看功能所必需的。 5. **许可证文件**:说明了 FlexPaper 的使用许可条款,这对于商业使用至关重要。 6. **资源文件**:可能包括...
最经做文档在线阅读(类似百度文库那种的),将pdf文件转换为swf,然后通过flexpaper展现出来。此源码部分主要是如何通过flexpaper将swf文件展现出来的实现,有用到网友的一些方法,在此一并感谢。 通过在改写编译...
后台服务定时扫描文件夹PdfPath,如果发现Pdf文件,则调用Pdf2Swf.exe,将PDF逐页转换成Swf文件,存入SwfPath中的与文件名称对应的文件夹里。 在线浏览 FlexPaper支持分页加载,采用{filename[*,padding],total ...
运行这段JavaScript后,FlexPaper将在指定的容器中加载并显示SWF文件,实现在线浏览PDF的功能。 需要注意的是,由于Flash技术逐渐被淘汰,现代浏览器对Flash的支持越来越有限。因此,虽然FlexPaper仍然是一个可行的...
`FlexPaperViewer.swf` 是FlexPaper的核心组件,是一个SWF(Shockwave Flash)文件,负责在Web页面上呈现PDF内容。由于它是基于Flash技术的,因此在Flash支持的浏览器上可以提供流畅的阅读体验。然而,需要注意的是...