相关专题链接

PDF解决方案(1)--文件上传

PDF解决方案(2)--文件转PDF

PDF解决方案(3)--PDF转SWF

PDF解决方案(4)--在线浏览

前言:上一篇主要提到了PDF在线浏览的各种方案的优劣和如何把PDF转换为SWF文件,这一篇主要介绍SWF文件的在线浏览。

SWF在线浏览

SWF在线浏览选择的是FlexPaper,一个轻量级的开源(又是开源,开源万岁!)组件,可以在浏览器中显示各种文档。

下载地址:http://flexpaper.devaldi.com/

在自己的页面中引入FlexPaper的JS和CSS文件以及jquery文件,在页面中定义一个DIV使用FlexPaperViewer方法指定swf文件路径和其它参数渲染这个div就可以了,FlexPaper的使用比较简单就不再详细描述了,代码如下:

<head>
<link rel="stylesheet" type="text/css" href="js/FlexPaper/css/flexpaper.css">
<script type="text/javascript" src="js/jquery-1.8.0.min.js"></script>
<script type="text/javascript" src="js/FlexPaper/js/flexpaper.js"></script>
<script type="text/javascript" src="js/FlexPaper/js/flexpaper_handlers.js"></script>
</head>
<body>
<div style="position: absolute; left: 10px; top: 10px;">
<div id="documentViewer" class="flexpaper_viewer"></div>
<script type="text/javascript">
var swfPath = "<%=basePath %>";
(function getSwfPath()
{
swfPath += ("file/upload/" + Request("path"));
initViewer();
})(window); function Request(argname)
{
var url = document.location.href;
var arrStr = url.substring(url.indexOf("?") + 1).split("&");
for (var i = 0; i < arrStr.length; i++)
{
var loc = arrStr[i].indexOf(argname + "=");
if (loc != -1)
{
return arrStr[i].replace(argname + "=", "").replace("?", "");
break;
}
}
return "";
} function initViewer()
{
$('#documentViewer').FlexPaperViewer(
{
config : { SWFFile : swfPath,//swf文件路径 //FitPageOnLoad : true,//自适应页面
FitWidthOnLoad : true,//自适应宽度
InitViewMode : 'Portrait',//启动模式
RenderingOrder : 'flash',//
StartAtPage : '',//初始化页面,默认首页
jsDirectory : '<%=path + "/js/FlexPaper/js/"%>',//FlexPaper js路径
WMode : 'window',
localeChain: 'zh_CN'//语言
}
});
$('#documentViewer').width($('body').width()-20);
$('#documentViewer').height($('body').height()-20);
}
</script>
</body>

FlexPaper配置有很多参数,这里有参数的中文介绍,可以用来参考:http://ajava.org/article-685-1.html

结语

这个专题主要介绍了PDF相关的文件处理,包括文件上传,文件转换为PDF,PDF转换为SWF,SWF的在线浏览,其中用到openoffice、itext、xpdf、swftools、FlexPaper等开源工具和jar包,这些工具都非常的强大提供了很多的功能,这里用到的只是其中很小很简单的功能,供大家参考吧!

作文是我的硬伤,经常抓不住重点,辞不达意,本末倒置,这几篇文章也写的很吃力,不知道如何把自己想表达的意思表述情书,所有文中会很有多说了一堆非常却没讲到点子上的情况,欢迎大家批评指正,互相学习!

相关文件下载:

PDF解决方案demo: http://pan.baidu.com/s/1i3mmwux

swftools、xpdf:http://pan.baidu.com/s/1dDu1Yoh(注:解压放在C盘根目录即可)

PDF解决方案(4)--在线浏览的更多相关文章

  1. JAVA实现word doc docx pdf excel的在线浏览 - 仿百度文库 源码

    我们具体实现思路是这样的 首先下载并安装openoffice和swftools openoffice下载地址:http://www.openoffice.org/download/index.html ...

  2. ASP.NET实现在线浏览Word文档另一种解决方案(Word转PDF)

    ASP.NET实现在线浏览Word文档另一种解决方案(Word转PDF)      上述博文里提到的在线浏览pdf的方案不错,但word转pdf的那个dll只支持doc不支持docx,附上最新的下载链 ...

  3. 根据传入的文件名称动态从moglifs图片服务器拿到pdf文档并在线浏览

    1.通过百度编辑器上传pdf文档等附件时,在上传方法中将返回的url进行设定,以达到后期点击后可进行浏览的效果: public static final State save(HttpServletR ...

  4. java实现在线浏览PDF文档功能

    实现在线浏览pdf文档功能(本代码适用于项目服务中固定的并且少量的pdf浏览,比如注册时的注册条款在线浏览等): //设置响应内容类型为PDF类型 response.setContentType(&q ...

  5. https://github.com/Lushenggang/show-pdf在线浏览pdf文件在线浏览pdf文件

    在线浏览pdf文件 https://github.com/Lushenggang/show-pdf https://github.com/Lushenggang/show-pdf

  6. pdf转换成可在线浏览的电子杂志zmaker_pdf

    zmaker是曾经国内最流行的电子杂志制作软件,可惜可惜,不过幸好有人给发布了 最新版的 其实主要是2个流程 一个是软件的安装 软件的下载和安装请参考 官方教材 http://bbs.emaghome ...

  7. 实现pdf word在线浏览和下载

    这篇实现的是在线展示pdf和word并且不能显示下载和打印按钮 一 下载功能: 因为html5给a标签新添加了一个属性download,这个属性可以直接实现下载文件的功能:<a href=&qu ...

  8. vue 中PDF实现在线浏览,禁止下载,打印

    需求:在线浏览pdf文件,并且禁止掉用户下载打印的效果. 分析:普通的iframe.embed标签都只能实现在线浏览pdf的功能,无法禁止掉工具栏的下载打印功能.只能尝试使用插件,pdfobject. ...

  9. PDF解决方案(3)--PDF转SWF

    相关专题链接 PDF解决方案(1)--文件上传 PDF解决方案(2)--文件转PDF PDF解决方案(3)--PDF转SWF PDF解决方案(4)--在线浏览 前言:上一篇中介绍了上传的文件转PDF, ...

随机推荐

  1. DBA查询命令积累——不断更新

    原文:DBA查询命令积累--不断更新 一.服务器配置: 1.兼容级别:兼容级别只影响指定数据库中的行为,而不会影响整个服务器上的行为. 1.1.查看数据库兼容级别及更改兼容级别: SELECT com ...

  2. Serializable 作用

    Serializable 作用 序列化的attribute,是为了利用序列化的技术 准备用于序列化的对象必须设置 [System.Serializable] 标签,该标签指示一个类能够序列化. 便于在 ...

  3. jekyll博客安装

    摘要: 一直用Mac,换了新公司使用的电脑是windows,网上粗略的看了一下Jekyll的安装.简略的实现了一遍 首先安装Ruby "Ruby安装文件下载地址" 下载对应版本,我 ...

  4. 策略模式设计模式(Strategy)摘录

    23种子GOF设计模式一般分为三类:创建模式.结构模型.行为模式. 创建模式抽象的实例.一个系统独立于怎样创建.组合和表示它的那些对象.一个类创建型模式使用继承改变被实例化的类,而一个对象创建型模式将 ...

  5. Entity Framework笔记(一)

    最近在看MVC方面的资料,看了几个教程都在使用Entity Framework做数据持久化.之前也听说过这个东西,在微软的网站上看过一个演示视频,但都没怎么去仔细研究.MVC的东西太庞大了,先慢慢熟悉 ...

  6. 前端插件@user

    分享一个 @user 前端插件   开源地址:https://github.com/yuezhongxin/Mention.js 插件效果:类似于微博或 github 中 @user 列表效果. 这是 ...

  7. Intelli idea 常用快捷键汇总

    To navigate to the implementation(s) of an abstract method, position the caret at its usage or its n ...

  8. [Cocos2d-x]Cocos2d-x 3.2 学习笔记

    获取屏幕大小(Visible) Size visibleSize = Director::getInstance()->getVisibleSize(); Vec2 origin = Direc ...

  9. from声明

    在整个应用程序,只有三行声明.这是最短单WIN32应用,但它的功能是非常有限,简单地显示一个消息框,示出来,其他什么事情也没有做.以下就来分析这三行语句了.别小看这三行语句.其实是隐藏着非常多知识点在 ...

  10. Hadoop 2.2.0 HA构造

    在这篇文章中<Ubuntu和CentOS分布式配置Hadoop-2.2.0>介绍hadoop 2.2.0最主要的配置.hadoop 2.2.0中提供了HA的功能,本文在前文的基础上介绍ha ...