一、导语

说起 Microsoft Office 办公三件套,想必大家都不会陌生,社畜日常的工作或者生活中,多多少少遇到过这种情况:

  • 本地创建的文档换一台电脑打开,就出现了字体丢失、排版混乱的情况;

  • 客户爸爸发来一个文档,想看内容需要下载,下载后发现和自己工作没有一毛钱关系,无奈之下秒送回收站;

  • 网站上搜索到一篇干货文章,提示下载后才能查看,结果下载包夹带了未知来源的文件;

  • 疫情下移动办公需求激增,而移动端打开文档需要在不同软件之间跳转,体验割裂;

某平台文档预览效果

这种时候,我们往往需要一个能够在线预览文档的靠谱工具,那么有没有不需要运维成本、效果满分、接入方便、并且性价比高的办法呢?是时候介绍COS 的文档预览能力了

COS文档预览效果

二、什么是 COS 文档预览

COS腾讯云对象存储的简称,简单来说,就是存在 COS 上的每一个文件,都有自己的专属下载链接。COS 集成了数据万象 CI 的文档预览能力,只需要在下载链接后拼接简易的参数,就可以将存储在 COS 上的文件转码为图片/PDF 或 转码为 HTML5 页面,支持ppt、doc、xls、txt、html 等50多种格式文件,解决了文档内容的页面展示问题,满足 PC、App 等多个用户端的文档在线浏览需求。

COS文档预览的优势和特性

三、适用场景

(一)在线教育

实现课件、随堂讲义等文档的在线浏览,降低学生使用门槛,增强体验。可在浏览器中完整呈现 PPT 中的动画、公式、触发器等效果,并通过水印、防复制等功能,保护课程的版权。用户还可选择将课件转为图片存至云端,实现资料的轻量化分发。

(二)企业 OA

帮助企业实现 PC、APP 多端下,内部文档资料的在线预览。用户无需将文件下载到本地,即可通过多平台随时访问文档文件内容。实现内部文档公开化、透明化的同时,通过水印、防复制等功能,杜绝泄漏风险。

(三)在线网盘

解决文档内容的网页展示问题,在线浏览时最大程度保留源文档样式,满足 PC、APP 等多端的文档在线浏览需求。

(四)网站转码

网站显示文档内容常受限于浏览器规则和设备性能,并且需要同时适配 PC 和移动端;文档预览功能支持对多种文件类型生成 html 或图片格式预览,实现文档的快速、精准预览

四、接入方案

方案 分类 特点 场景
文档转图片预览 a. 同步转图片预览(推荐) 实时在线预览使用简单 适用于实时的word/pdf预览场景
b. 异步转图片预览 异步转码任务高效持久化 适用于有开发能力,单次转码多次预览的场景
文档转 HTML 预览(推荐) 兼容多文档格式使用简单 高度还原文档样式,适用于文档格式复杂的场景
自定义html预览 兼容多文档格式支持自定义功能 适用于有开发能力,需要高度定制化的预览页面/逻辑的场景

方案一:文档转图片预览

面对多元办公场景,通过 COS 文档预览功能,可以畅通查阅不同类型的文档。您可点击下方链接,进行文档转图片功能的快速接入:

一文带你玩转对象存储 COS 文档预览

方案二:文档转 html 预览(推荐)

同样三步接入:

  1. 将源文件上传至 COS 存储桶中,在源文件的详情获取对象地址,访问对象地址可以下载源文件:

https://ci-h5-demo-1258125638.cos.ap-chengdu.myqcloud.com/defaults/defaultSlides.pptx

  1. 进入存储桶的数据处理页面,开启文档服务。

  2. 在对象地址后加入文档转html参数 ?ci-process=doc-preview&dstType=html 即可预览:

https://ci-h5-demo-1258125638.cos.ap-chengdu.myqcloud.com/defaults/defaultSlides.pptx?ci-process=doc-preview&dstType=html

更多处理一:私有访问

为保证数据安全,我们推荐存储在 COS 上的文件都设置私有访问权限。预览私有文件时需要在请求参数中加上文档签名,注意签名需要进行 urlencode

https://ci-h5-demo-1258125638.cos.ap-chengdu.myqcloud.com/defaults/defaultSlides.pptx?ci-process=doc-preview&dstType=html&sign=urlencode(请求签名)

更多处理二:文档水印

为加强文档可控性和可追溯性,我们提供了文档水印功能,预览文档时添加水印参数即可实现自定义水印。

https://ci-h5-demo-1258125638.cos.ap-chengdu.myqcloud.com/defaults/defaultSlides.pptx?ci-process=doc-preview&dstType=html
&htmlwaterword=Q09T5paH5qGj6aKE6KeI // 水印内容:Base64.encode('COS文档预览')
&htmlfillstyle=cmdiYSgxOTIsMTkyLDE5MiwwLjYp // 水印颜色和透明度:Base64.encodeUrl('rgba(192,192,192,0.6)')
&htmlfront=Ym9sZCAxOHB4IFNlcmlm // 水印文字样式:Base64.encodeUrl('bold 18px Serif')
&htmlrotate=320 // 旋转角度:320度
&htmlhorizontal=100 // 水印的水平间距:100px
&htmlvertical=120 // 水印的垂直间距:120px

文档水印效果

更多处理三:禁止复制

防止文档内容被随意截取,可以加入参数 &copyable=0 开启禁止复制功能。

https://ci-h5-demo-1258125638.file.myqcloud.com/defaults/defaultSlides.pptx?ci-process=doc-preview&dstType=html&copyable=0

如果你还想自定义预览页面 UI、通过接口操作翻页/播放、拦截页面上的跳转链接等,我们也提供了下述方案。

方案三:自定义 html 预览

文档转 html 的 JS SDK 提供了自定义界面显示、控制页面状态、监听回调事件等能力,以便于开发人员结合自己的业务来使用预览功能。方案三实质上也是使用了一个配置好的 SDK 模板,对用户隐藏了代码配置,方便大多数场景下的快速使用。

下面是使用自定 html 预览的交互流程:

SDK 提供了多种规范的包,满足各种开发场景。

模块化规范 下载 使用
非模块化 JS-SDK包 直接在html页面引入js文件
AMD JS-SDK包 将js文件放到项目目录下

SDK 支持界面定制、功能定制、事件监听和高级操作四大功能,具体配置参考说明文档。

五、客户案例

腾讯乐享

腾讯乐享为教育、零售、制造、互联网等泛行业提供了组织内部成员交流的一站式平台,服务了20W+企业客户。基于 COS 自定义 html 预览方案构建了完善的知识库搭建、分享流程,让用户无需将文件下载到本地,即可通过多平台随时访问文档文件内容,并在实现内部文档公开化、透明化的同时,通过防复制功能,杜绝泄漏风险。更多信息点开下方链接查看

口袋里有个“知识库”,是什么样的体验?

六、欢迎体验

欢迎使用文档预览功能,您可通过下方链接或小程序,快速体验 COS 的文档预览能力~功能体验入口:https://cloud.tencent.com/act/pro/ciExhibition?tab=docPreview

— END —

秒级接入、效果满分的文档预览方案——COS文档预览的更多相关文章

  1. 一文带你玩转对象存储COS文档预览

    随着"互联网+"的发展,各行各业纷纷"去纸化",商务合同.会议纪要.组织公文.商品图片.培训视频.学习课件.随堂讲义等电子文档无处不在.而要查看文档一般需要先下 ...

  2. 百度地图Canvas实现十万CAD数据秒级加载

    背景 前段时间工作室接到一个与地图相关的项目,我作为项目组成员主要负责地图方面的设计和开发.由于地图部分主要涉及的是前端页面的显示,作为一名Java后端的小白,第一次写了这么多HTML和JavaScr ...

  3. C# 导出word文档及批量导出word文档(4)

          接下来是批量导出word文档和批量打印word文件,批量导出word文档和批量打印word文件的思路差不多,只是批量打印不用打包压缩文件,而是把所有文件合成一个word,然后通过js来调用 ...

  4. Freeline--Android平台上的秒级编译方案

    Freeline 技术揭秘 Freeline是什么? Freeline是蚂蚁金服旗下一站式理财平台蚂蚁聚宝团队15年10月在Android平台上的量身定做的一个基于动态替换的编译方案,5月阿里集团内部 ...

  5. Android秒级编译工具Freeline

    Freeline 是 Android 平台上的秒级编译方案,Instant Run 的替代品,由蚂蚁聚宝Android 团队开发,它可以充分利用缓存文件,在几秒钟内迅速地对代码的改动进行编译并部署到设 ...

  6. 软件架构自学笔记-- 转载“虎牙在全球 DNS 秒级生效上的实践”

    虎牙在全球 DNS 秒级生效上的实践 这次分享的是全球 DNS 秒级生效在虎牙的实践,以及由此产生的一些思考,整体上,分为以下 5 各部分: 背景介绍: 方案设计和对比: 高可用: 具体实践和落地: ...

  7. Swoft 2.0.5 更新,新增高效秒级定时任务、异常管理组件

    什么是 Swoft ? Swoft 是一款基于 Swoole 扩展实现的 PHP 微服务协程框架.Swoft 能像 Go 一样,内置协程网络服务器及常用的协程客户端且常驻内存,不依赖传统的 PHP-F ...

  8. 《DNS稳定保障系列3--快如闪电,域名解析秒级生效》

    在刚刚过去的双十一,又是一个全民狂欢的盛宴,天猫双十一的成交量高达2684亿.无数小伙伴在淘宝.天猫里买买买,今年你又剁手了多少?言归正传,在你疯狂秒杀的时候,有没有发现,今年的购物体验一如既往的好, ...

  9. 虎牙在全球 DNS 秒级生效上的实践

    本文整理自虎牙中间件团队在 Nacos Meetup 的现场分享,阿里巴巴中间件受权发布. 这次分享的是全球 DNS 秒级生效在虎牙的实践,以及由此产生的一些思考,整体上,分为以下5各部分: 背景介绍 ...

随机推荐

  1. 状态码1xx-6xx的含义

    1xx (临时响应)表示临时响应并需要请求者继续执行操作的状态代码. 100 (继续) 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101 (切换协议) 请 ...

  2. Longhorn 云原生容器分布式存储 - Python Client

    内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...

  3. centos7 Tomcat 多项目配置

    2021-07-30 1. Tomcat 各目录功能说明 bin :脚本文件目录,存放启动和关闭 Tomcat 的脚本文件conf:存放 Tomcat 的配置文件,server.xml 尤其重要log ...

  4. Robot framework随机文件

    *** Variables *** @{Example} One Two Three *** Test Cases *** Example ${value}= Evaluate random.choi ...

  5. vue + WangEnduit

    components 注册组件 <template lang="html"> <div class="editor"> <div ...

  6. 批量修改Linux密码脚本(Python)

    搭建环境 centos 7.4 使用脚本 python 批量修改connect用户的密码 生成密码为随机密码 保存为xls文档 #!/usr/bin/env python # -*- coding: ...

  7. 根据短链生成二维码并上传七牛云(Java)

    通过短链生成二维码并上传七牛云(Java) 前言 网上这种帖子其实也是很多,大部分搜出来的是CSDN的,然后点进去一看都几乎一样:所以这次给个自己实践的例子记录. 这次也是通过搜索得到的一部分能实现这 ...

  8. TypeScript 中函数的理解?与 JavaScript 函数的区别?

    一.是什么 函数是JavaScript 应用程序的基础,帮助我们实现抽象层.模拟类.信息隐藏和模块 在TypeScript 里,虽然已经支持类.命名空间和模块,但函数仍然是主要定义行为的方式,Type ...

  9. Java基础(二)——内部类

    一.内部类 内部类(Inner Class)就是定义在一个类里面的类.与之对应,包含内部类的类被称为外部类.内部类可以用private修饰. 1.为什么要定义内部类?或者内部类的作用是什么? 内部类提 ...

  10. docker数据卷(Data Volumes)

    Docker宿主机和容器之间文件拷贝docker copy 前言: Docker 数据管理 在生产环境中使用 Docker ,往往需要对数据进行持久化,或者需要在多个容器之间进行 数据共享,这必然涉及 ...