文档格式转换

通过智能媒体管理的文档格式转换功能,您可以灵活地处理各种文档类型,将其转换为适合自身需求的输出文档类型,并根据需要将转换后的文档保存在指定的OSS路径中,以便后续的应用和使用。

使用场景

  • 在线预览优化:用户上传不同格式的文档,如PDF、Word、Excel、PPT等至OSS,为了方便用户直接在网页端或者移动端应用中预览这些文档,无需下载到本地再打开,可以调用智能媒体管理服务提供的文档转换接口。文档会被转换成图片以适合在线展示。

  • 跨平台兼容性:不同设备和操作系统对各种文件格式支持程度不一,通过OSS文档转换服务,可以让所有用户无论使用何种设备都能顺畅地查看文档。

功能简介

支持的文件转换类型

文档格式转换功能支持的转换类型如下:

输入文档类型

输出文档类型

说明

Word、Excel、PPT

PDF

支持以图片方式生成PDF。

Word、Excel、PPT、PDF

PNG、JPEG

Word、Excel、PPT

TXT

JPEG

PDF

支持的输入文件类型

文件类型

文件后缀

Word

doc、docx、wps、wpss、docm、dotm、dot、dotx、html

PPT

pptx、ppt、pot、potx、pps、ppsx、dps、dpt、pptm、potm、ppsm、dpss

Excel

xls、xlt、et、ett、xlsx、xltx、csv、xlsb、xlsm、xltm、ets

PDF

pdf

相关说明

  • 根据请求中指定的输出文档类型会有不同的输出内容。关于输出内容的示例信息,请参见输出内容示例

  • 对于JPEG、PNG格式的输出文档类型,根据输入文档类型是否为表格文档(Excel),输出内容不同。

    • 当输入文档类型为表格文档(Excel)时,按表格中的页签生成对应数量的文件夹后,再按预览页面大小生成对应数量的文件。

    • 当输入文档类型为非表格文档,例如文字文档(Word)、演示文档(PPT)时,按文档样式每页生成一个文件。

  • 对于PDFTXT格式的输出文档类型,无论输入文档类型是否为表格文档(Excel),均直接生成一个文件。

  • 可以通过TargetURI指定输出地址,并支持变量渲染,更多信息,请参见TargetURI模板。也可以通过TargetURIPrefix指定输出地址的前缀,默认输出地址请参见输出内容示例

使用说明

文档格式转换所需的时间依赖于文档大小、文档页数、文档字数等因素,典型情况下在秒级可以完成请求,但是大文件、多页数、多字数的文档可能需要几十秒的时间。为了降低请求的应用等待时间,智能媒体管理提供了异步请求接口CreateOfficeConversionTask - 创建文档转换任务用于文档格式转换。

重要

任务开始执行后,任务信息只保存7天,超过7天则无法再获取。您可以通过以下几种方式及时获取任务信息:

  • 调用GetTask - 获取任务信息ListTasks - 列出任务接口获取返回的TaskId,查看任务信息。

  • 在与智能媒体管理相同的地域下开通MNS服务,并配置订阅关系,及时获取任务信息通知,异步通知消息格式请参见异步通知消息格式。关于MNS SDK的更多信息,请参见步骤四:接收和删除消息

  • 在与智能媒体管理相同的地域下开通RocketMQ服务,并创建RocketMQ 4.0实例、Topic、Group,及时获取任务信息通知,异步通知消息格式请参见异步通知消息格式。关于RocketMQ使用的更多信息,请参见调用HTTP协议的SDK收发普通消息

  • 在与智能媒体管理相同的地域下开通并接入事件总线EventBridge服务,及时获取任务信息通知。更多信息,请参见智能媒体管理IMM事件

  • 如在使用文档转换功能后出现文档清晰度降低的情况,您可以尝试在调用CreateOfficeConversionTask接口时,通过调整ImageDPI参数来控制分辨率大小,ImageDPI参数数值越大图片越清晰。

输出内容示例

如下以请求中指定输出路径前缀TargetURIPrefixOSS路径oss://test-bucket/target/为例说明转换为不同输出文档类型时的输出内容。

  • 当输入文档类型为表格文档时,输出内容示例如下所示。

    oss://test-bucket/target/{sheetname}_{sheetindex}_{sheetsubindex}.{autoext}

  • 当输入文档类型为非表格文档时,输出内容示例如下所示。

    oss://test-bucket/target/{index}.{autoext}

  • 相关参数说明如下表所示:

  • 变量名

    说明

    示例值

    index

    输出下标,从1开始。

    • 输入文件为Word、PDF、PPT时,表示页码。

    • 输入文件为Excel时,表示sheetindex_sheetsubindex。

      • sheetindex:从1开始。表示第几个sheet页。

      • sheetsubindex:从1开始。一个sheet可能会转换出多张图片,表示当前sheet的第几张图片。

    6_12

    sheetname

    输入文件为Excel时,表示Sheet工作表的名称。

    sheet1

    autoext

    输出文件的后缀。

    jpg

相关文档