`

flexpaper组件中关于隐藏真实的swf 地址下载

阅读更多
   flexpaper是个不错的将pdf,word之类的文件转化为swf的开源工具,关于这个其实网上说了不少了,它做出来的效果有点象百度文库的效果了,但最近发现一个问题,就是在
    SwfFile : escape("xxxx.swf");
这里,可能会造成很容易通过绝对路径下载到swf的地址,于是可以下载到swf,那么有什么好的方法保护之呢?当然,要搞到很复杂是不大可能的,除非有百度的能力,但简单的保护还是有办法的.
办法就是,其实flexpaper的SwfFile是支持以文件流的方式读文件的,所以,
可以简单写一个action或者servlet来读取,代码如下:


try
		{
		ServletOutputStream out = 
	        this.getResponse().getOutputStream (); 
		
		this.ismsdocversion = this.docversionsService
		.getswfnamebydocumentId(documentId);
		
		String realPath =ServletActionContext.getServletContext().getRealPath("swffiles")+"/"+this.ismsdocversion.getAttachmentflashname();
		logger.info("swrealpath is"+realPath);
		InputStream ips = null;
		OutputStream ops = null;
		
		  this.getResponse().reset();
		 this.getResponse().setContentType("application/swf");
		File file = new File(realPath);
		ops =  this.getResponse().getOutputStream();
		ips = new FileInputStream(file);
		 this.getResponse().addHeader("Content-Length", new Long(file.length()).toString());
		 
		int i = 0;
		byte[] buffer = new byte[1024];
		i = ips.read(buffer);
		while (i != -1) {
			ops.write(buffer, 0, i);
			i = ips.read(buffer);
		}
		 
		ips.close();
		ops.flush();
		ops.close();
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
		


  然后在flexpaper中,指定为:
  SwfFile : escape('<%=basePath%>docview/docview!getSwffile.action?documentId=${ismsdocversion.documentId}'),
   其实就是指定为这个servlet输出,这样就可以达到不能直接下载SWF的目的了.
   另外,在网上发现一位北京兄弟搞的专门对flexpaper进行二次发开的
网站产品,功能比较强大,也受到这位兄弟的指点,特别感谢,
他的网站是:
  http://flexpaper.studylead.com/

支持的功能有:
  1、单页异步加载-速度奇快!!!
2、自定义在线播放器界面、可放上自己的公司Logo,或者换想要的皮肤。
3、word、ppt、excel、pdf、txt、wps等后台转换为swf功能。
4、可以使用OpenOffice和FlashPaper 两种方式转换 文件。
5、在线浏览文件格式:
MS Office文档: doc,docx ppt,pptx xls,xlsx vsd,vsdx pot,potx pps,ppsx rtf;
WPS office系列: wps et dps
图片: jpg png gif bmp
PDF: pdf
纯文本: txt
6、系统已经实现了关键字查询定位;可设置多个初始搜索关键字,以"|"分割,详见示例 关键字定位。
7、系统实现了控制文档显示页数,可用于收费文档使用,详见示例 控制文档显示页数。
8、系统实现了播放器加载广告,可用于文档添加广告使用,详见示例 播放器加载广告。
9、系统实现了播放器内按页插入广告,可自定义广告内容和插入位置;本站文档均添加了广告示例,请查看。
10、系统实现了全文检索,对文档建立索引,跟百度搜索类似,详见网站搜索。
   有兴趣的朋友可以看看
5
1
分享到:
评论
4 楼 jackyrong 2015-06-05  
u010770087 写道
并不可以用


我现在的项目就是在用了呀
3 楼 u010770087 2015-06-05  
并不可以用
2 楼 fackyou200 2014-04-29  
请教,分页怎么实现文件流加载??
1 楼 zean 2013-01-12  
vsd可以?openoffice不支持吧,我现在还头疼呢.

相关推荐

    FlexPaper.swf 去除右键功能,水印,logo等,按原文件一样配置即可运行

    这个文件就是经过源文件修改过后的文件,已经去除了右键、水印、logo等不必要的东西,方便了我们在web项目中集成开发。只需下载放到项目中,把flexpaper.js中的src改为这个文件名即可使用。

    FlexPaper_1.0_swc.zip -----flexPaper组件

    在FlexPaper的上下文中,这个SWC文件包含了FlexPaper组件的所有源代码、图形元素和元数据,使得开发者能够轻松地将这一功能集成到他们的Web应用程序中。 FlexPaper组件的核心功能包括: 1. **文档预览**:用户无需...

    Flex在线预览文档组件FlexPaper_swc

    FlexPaper是一款功能强大的在线文档预览组件,专为Flex开发者设计,用于在Web应用程序中实现PDF和Word文档的无缝预览。本组件分为两个版本,即SDK3.5和SDK4.0,以适应不同Flex开发环境的需求。 1. Flex平台介绍 ...

    .net+swftools+flexpaper pdf转swf实现在线预览 在线文库效果 可运行

    2. **配置FlexPaper**:下载并引用FlexPaper的Flash版本,将转换得到的SWF文件上传至服务器,并在FlexPaper的配置文件中指定该SWF的URL。 3. **页面集成**:在网页中嵌入FlexPaper提供的JavaScript和SWF资源,设置...

    flexpaper+openoffice+pdf2swf.exe

    2. 部署FlexPaper:将FlexPaper的相关库和资源上传到服务器,并根据官方文档配置设置,包括API密钥、服务器地址等。 3. 文件转换:使用OpenOffice的pdf2swf.exe或其他类似工具,将需要预览的文档转换为SWF格式。这个...

    flexpaper_swf

    最经做文档在线阅读(类似百度文库那种的),将pdf文件转换为swf,然后通过flexpaper展现出来。此源码部分主要是如何通过flexpaper将swf文件展现出来的实现,有用到网友的一些方法,在此一并感谢。 通过在改写编译...

    flexpaper源码下载

    描述中提到,为了实现高级别的在线阅读安全性,我们需要对Flexpaper和SWF文件进行双重加密。Flexpaper的加密处理是在网络层面上进行的,这通常意味着它涉及服务器端的配置和API调用,以确保数据在传输过程中的安全。...

    FlexPaper Demo 二次开发 去除打印、关于、logo、能转swf

    在Web应用程序中,FlexPaper 可以作为一个组件进行集成,以实现文档预览、导航和交互功能。这个压缩包文件提供了一个FlexPaper的Demo,用于展示如何进行二次开发,特别是如何去除打印、关于界面、Logo以及将PDF转换...

    (Linux,window)openOffice+pdf2swf+flexpaper

    在这个项目中,我们利用了三个关键组件:OpenOffice,pdf2swf,以及FlexPaper。下面将详细介绍这三个工具及其在项目中的应用。 首先,OpenOffice是一个开源的办公套件,它可以处理多种格式的文档,包括Word、Excel...

    FlexPaper 下载包

    5. **嵌入式集成**:FlexPaper 的SWF文件可以直接嵌入到网页中,使得文档能够在任何支持Flash的浏览器中浏览,无需安装额外插件。 6. **安全性**:由于FlexPaper 在服务器端完成转换过程,用户的原始文件得以保护,...

    flexPaper包+使用指南

    FlexPaper的核心是其SWC库文件,如压缩包中的"FlexPaper.swc",这是一个Flex组件库,可以直接导入到Flex项目中。 1. **FlexPaper的特性**: - **开源**:FlexPaper遵循MIT许可证,允许开发人员自由使用、修改和...

    FlexPaper_1.5.0_flash

    2. **Paper.swf** - 可能是FlexPaper的核心组件,用于处理文档的显示和交互,它是由Adobe Flash编译的SWF文件。 3. **FlexPaperViewer.swf** - FlexPaper的视图组件,可能包含用户界面和文档渲染引擎,允许用户滚动...

    pdf2swf+flexpaper解决pdf在线阅读(类百度文库)

    3. **FlexPaper**: FlexPaper是一款强大的JavaScript库,用于在网页上展示SWF或PDF文档,提供类似真实PDF的阅读体验。它支持多种交互功能,如缩放、旋转、书签、搜索等,并且可以高度自定义以适应不同的设计风格和...

    FlexPaper用来浏览各种文档的一款组件

    FlexPaper 是一款强大的开源组件,专门用于在网页环境中浏览各种文档。它以其轻量级的特性赢得了广泛的赞誉,尤其适合那些需要在线展示文档但又不希望用户安装额外软件的场合。FlexPaper 支持多种文档格式,使得网页...

    flexpaper1.4.5含带swf转换工具

    FlexPaper是一款功能强大的在线文档查看和转换工具,主要用于将PDF、DjVu、Tiff等格式的文件转换为可在Web浏览器中流畅查看的SWF(Flash)格式。标题提到的"flexpaper1.4.5含带swf转换工具"指的是FlexPaper软件的...

    JSP中实现FlexPaper的demo

    FlexPaper是一个开源的JavaScript库,它可以将PDF、SWF、图像等多种格式的文档转换为在线可阅读的翻页效果,类似于真实的纸质书籍。这个技术对于那些希望在网页上提供高质量文档阅读体验的开发者来说非常有用。 ...

    Flexpaper二次开发入门教程.pdf

    自2009年初版发布以来,Flexpaper经历了多次迭代,截至最新版本1.5.0,提供了多种不同的版本供开发者选择,包括用于集成到工程中的swc组件包,以及包含示例、JS文件和SWF文件的flash版本。后者因其易于集成和使用,...

    FlexPaper 实现百度文库效果

    FlexPaper 提供了将PDF转为SWF的工具,这样可以在浏览器中通过Flash插件播放,提供类似于真实翻页的用户体验。转换工具可能包括FlexPaper SDK或者其他的第三方转换服务。 在前端,FlexPaper 提供了JavaScript库和...

Global site tag (gtag.js) - Google Analytics