1、前端实现pdf文件在线预览功能

方式一、pdf文件理论上可以在浏览器直接打开预览但是需要打开新页面。在仅仅是预览pdf文件且UI要求不高的情况下可以直接通过a标签href属性实现预览

<a href="文档地址"></a>

方式二、通过jquery插件jquery.media.js实现 这个插件可以实现pdf预览功能(包括其他各种媒体文件)但是对word等类型的文件无能为力。 实现方式: js代码:

<script type="text/javascript" src="jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="jquery.media.js"></script>

html结构:

      <body><div id="handout_wrap_inner"></div></body>

调用方式:

<script type="text/javascript">  $('#handout_wrap_inner').media({width: '100%',height: '100%',autoplay: true,src:'http://storage.xuetangx.com/public_assets/xuetangx/PDF/PlayerAPI_v1.0.6.pdf',});
</script>

方式三、直接通过页面内嵌iframe

$("<iframe src='"+ this.previewUrl +"' width='100%' height='362px' frameborder='1'>").appendTo($(".video-handouts-preview"));

此外还可以在iframe标签之间提供一个提示类似这样

<iframe :src="previewUrl" width="100%" height="100%">This browser does not support PDFs. Please download the PDF to view it: <a :href="previewUrl">Download PDF</a></iframe>

方式四、通过标签嵌入内容

<embed :src="previewUrl" type="application/pdf" width="100%" height="100%">

此标签h5特性中包含四个属性:高、宽、类型、预览文件src! 与< iframe > < / iframe > 不同,这个标签是自闭合的的,也就是说如果浏览器不支持PDF的嵌入,那么这个标签的内容什么都看不到!

方式五、标签和iframe使用差别较小

<object :src="previewUrl" width="100%" height="100%">This browser does not support PDFs. Please download the PDF to view it: <a :href="previewUrl">Download PDF</a></object>

除方式二以外其他都是直接通过标签将内容引入页面实现预览

方式六、PDFObject

PDFObject实际上也是通过标签实现的直接上代码

<!DOCTYPE html>
<html>
<head><title>Show PDF</title><meta charset="utf-8" /><script type="text/javascript" src='pdfobject.min.js'></script><style type="text/css">html,body,#pdf_viewer{width: 100%;height: 100%;margin: 0;padding: 0;}</style>
</head>
<body><div id="pdf_viewer"></div>
</body>
<script type="text/javascript">if(PDFObject.supportsPDFs){// PDF嵌入到网页PDFObject.embed("index.pdf", "#pdf_viewer" );} else {location.href = "/canvas";}
</script>
</html>
复制代码

还可以通过以下代码进行判断是否支持PDFObject预览

if(PDFObject.supportsPDFs){console.log("Yay, this browser supports inline PDFs.");
} else {console.log("Boo, inline PDFs are not supported by this browser");
}

方式七、PDF.js

PDF.js可以实现在html下直接浏览pdf文档,是一款开源的pdf文档读取解析插件,非常强大,能将PDF文件渲染成Canvas。PDF.js主要包含两个库文件,一个pdf.js和一个pdf.worker.js,一个负责API解析,一个负责核心解析。

2、word、xls、ppt文件在线预览功能

word、ppt、xls文件实现在线预览的方式比较简单可以直接通过调用微软的在线预览功能实现 (预览前提:资源必须是公共可访问的)

<iframe src='https://view.officeapps.live.com/op/view.aspx?src=http://storage.xuetangx.com/public_assets/xuetangx/PDF/1.xls' width='100%' height='100%' frameborder='1'>
</iframe>

src就是要实现预览的文件地址 具体文档看这微软接口文档

补充:google的文档在线预览实现同微软(资源必须是公共可访问的)

<iframe :src="'https://docs.google.com/viewer?url="fileurl"></iframe>

3、word文件

XDOC可以实现预览以DataURI表示的DOC文档,此外XDOC还可以实现文本、带参数文本、html文本、json文本、公文等在线预览,具体实现方法请看官方文档

下面这种方式可以实现快速预览word但是对文件使用的编辑器可能会有一些限制

<a href="http://www.xdocin.com/xdoc?_func=to&amp;_format=html&amp;_cache=1&amp;_xdoc=http://www.xdocin.com/demo/demo.docx" target="_blank" rel="nofollow">XDOC</a>

4、excel文件

目前excel文件已经有了类似pdf.js那样的解析sheet.js

总结:

1、免费纯前端方式实现在线预览word、excel、ppt最优选择微软在线预览(不可编辑)

2、利用后端将文件转为图片,前端以图片形式预览(可行方案)

3、购买在线预览服务例如百度DOC文档服务、永中、I DOC VIEW等

html js 在线预览 pdf word xls等相关推荐

  1. js在线预览pdf,doc,xls,jpg等文件

    由于项目需要,需要在上传文件后在线预览所上传的文件.最开始我的思路就是想到各种插件什么的.比如说pdf.js.pdfobject,但最后都没能达到我所想要的效果. 最后我发现,原来,只需要一个很简单的 ...

  2. js在线预览pdf文件

    js在线预览PDF文件 一.效果预览 二.实现代码: <html> <head> <meta http-equiv="Content-Type" co ...

  3. pdf.js在线预览PDF文件实现

    pdf.js是一款功能比较强大的在线预览PDF插件,自带"打印","搜索","翻页"等功能,强大且实现方便,并且兼容性比较好(兼容ie10及 ...

  4. 前端(vue)js在线预览PDF、Word、Excel、ppt等office文件

    js解決 window.open("https://view.xdocin.com/view?src=" + encodeURIComponent(url) + '&too ...

  5. vue版pdf.js 在线预览pdf文件流

    1.简介 由于我使用的是若依版的vue前端框架(ElementUI二开),因此不知道为什么在前端配置pdf.js一直无法生效,所以换了一个思路,将pdf.js相关文件放置在后台代码中,以访问后台页面的 ...

  6. spring boot2.X word在线预览 pdf.js

    最近公司项目需求需要在线预览word文档,并且不能在在线下载和编辑.在此记录我是如何做的. 针对word的在线预览网上大多给的解决方案就是先把word文件转成pdf,然后通过pdf.js在线预览pdf ...

  7. 在线浏览pdf doc html,前端实现在线预览pdf、word、xls、ppt等文件

    1.前端实现pdf文件在线预览功能 方式一: 通过a标签href属性实现 pdf文件理论上可以在浏览器直接打开预览但是需要打开新页面.在仅仅是预览pdf文件且UI要求不高的情况下可以直接通过a标签hr ...

  8. 前端【vue】实现文档在线预览功能,在线预览pdf、word、xls、ppt等office文件

    前端江太公 前端实现文档在线预览功能 最直接的就是使用XDOC 文档云服务 XDOC可以实现预览以DataURI表示的DOC文档,此外XDOC还可以实现文本.带参数文本.html文本.json文本.公 ...

  9. 加载js文件,在线预览pdf文档

    加载js文件,在线预览pdf文档 效果演示 环境要求 JS文件下载 Jsp页面导入js文件 jquery.media.js源码 效果演示 首先,先展示效果图 环境要求 Tomcat8.5 [注意]:T ...

最新文章

  1. Linux-unit12
  2. ASP.NET页面通过URL传递参数(一)(转载)
  3. 物料分类账的基本原理
  4. 玻璃体液化研究(控制)
  5. Docker精华问答 | Consul是什么?
  6. idea自动导包_IDEA已经世界第一了,听说你还不会?
  7. 海康Ehome协议java开发
  8. 最最简单的使用DW编程软件
  9. 扫码枪 android EditText
  10. 清华计算机自主招生试题,清华、北大等高校历年自主招生试题及答案汇总
  11. 程序员之死——致所有重压下的你
  12. 龙之谷2服务器维护,龙之谷2更新后进不去游戏解决方法
  13. uniapp预览pdf安卓打不开,可以直接新建commonwebview来跳转外部链接浏览pdf
  14. Python爬虫,爬取51job上有关大数据的招聘信息
  15. 中国超级计算机神威 上市公司,中国拟研发百亿亿级超级计算机 秒杀目前最快神威...
  16. 银行招计算机专业算什么岗,银行计算机专业岗位全方位分析
  17. openldap用法
  18. rio隐藏的团队列表
  19. Linux - 虚拟网络设备 - 链路聚合,bond,team
  20. 分享画中画制作剪辑技巧

热门文章

  1. 原创|为什么说要功利性学习?
  2. 1299: 【二分查找】找球号
  3. linux安装福昕PDF阅读器
  4. 最新友盟微信,QQ与微博分享集成方案
  5. JAVA 设计模式(三)—— 设计模式之工厂模式
  6. 突发!incaseformat蠕虫病毒来袭,警惕文件遭删除
  7. steam在matlab是什么,什么是STEAM,和STEM有何区别?
  8. 河北工业大学数据挖掘实验四 贝叶斯决策分类算法
  9. 河北工业大学数据挖掘实验一 数据预处理
  10. 认知学派用计算机来比拟人,心理学基础习题解答.doc