前端展示pdf、office等文件

262 阅读1分钟

首先,以下每一个都是大工程,不是专门做这个的建议就不要尝试自己写了。

以下所有文件,都可以使用第三方在线服务展示,或通过类似iframe的方式嵌入到页面中,比如微软、wps、百度等,都有对应的服务但是要收费。

PDF

  1. 浏览器打开新页面,地址是pdf文件地址。
  2. 想在页面内嵌入则使用iframe。另外iframe可以做到外壳样式完全自定义,更好的嵌入到其他区页面。<iframe src="./test.pdf" height="900px;" width="800px"></iframe>
  3. embed、object标签有兼容问题也可以作为DOM元素嵌入到页面<embed src="./test.pdf" type="application/pdf" width="100%" height="100%" /><object data="./test.pdf" type="application/pdf" width="100%" height="100%" ></object>
  4. pdfjs接受网络文件,并将其解析用canvas绘制到网页。并且pdfjs还提供自定义页面pdf相关工具展示。
  5. PDFObject没使用过。
  6. 使用在线的第三方服务。

Excel

  1. SheetJS,可定制性非常高使用很灵活兼容性好,自己用它包装过公司的库使其使用更加方便美观。33.9k star
  2. canvas-datagrid没用过。1.3k star
  3. handsontable没用过。18.5k star
  4. 使用在线的第三方服务。

Word

  1. 前端最好的展示方式是通过服务端转为pdf展示在前端。
  2. 使用在线的第三方服务。
  3. 另外之前在公司调研的展示方案里面,wps可以支持预设字段并填写到对应文档位置,应该是比较有用的一个功能。当然还有很多其他功能,比如划词注释等。

PPT

  1. 建议直接使用在线的第三方服务。

Txt

  1. 直接使用FileReader对象可以获取内容展示。