通過智能媒體管理的文檔格式轉換功能,您可以靈活地處理各種文檔類型,將其轉換為適合自身需求的輸出文檔類型,并根據需要將轉換后的文檔保存在指定的OSS路徑中,以便后續的應用和使用。
使用場景
在線預覽優化:用戶上傳不同格式的文檔,如PDF、Word、Excel、PPT等至OSS,為了方便用戶直接在網頁端或者移動端應用中預覽這些文檔,無需下載到本地再打開,可以調用智能媒體管理服務提供的文檔轉換接口。文檔會被轉換成圖片以適合在線展示。
跨平臺兼容性:不同設備和操作系統對各種文件格式支持程度不一,通過OSS文檔轉換服務,可以讓所有用戶無論使用何種設備都能順暢地查看文檔。
功能簡介
支持的文件轉換類型
文檔格式轉換功能支持的轉換類型如下:
輸入文檔類型 | 輸出文檔類型 | 說明 |
Word、Excel、PPT | 支持以圖片方式生成PDF。 | |
Word、Excel、PPT、PDF | PNG、JPEG | 無 |
Word、Excel、PPT | TXT | 無 |
JPEG | 無 |
支持的輸入文件類型
文件類型 | 文件后綴 |
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 |
相關說明
根據請求中指定的輸出文檔類型會有不同的輸出內容。關于輸出內容的示例信息,請參見輸出內容示例。
對于JPEG、PNG格式的輸出文檔類型,根據輸入文檔類型是否為表格文檔(Excel),輸出內容不同。
當輸入文檔類型為表格文檔(Excel)時,按表格中的頁簽生成對應數量的文件夾后,再按預覽頁面大小生成對應數量的文件。
當輸入文檔類型為非表格文檔,例如文字文檔(Word)、演示文檔(PPT)時,按文檔樣式每頁生成一個文件。
對于PDF和TXT格式的輸出文檔類型,無論輸入文檔類型是否為表格文檔(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參數數值越大圖片越清晰。
輸出內容示例
如下以請求中指定輸出路徑前綴TargetURIPrefix為OSS路徑oss://test-bucket/target/
為例說明轉換為不同輸出文檔類型時的輸出內容。
當輸入文檔類型為表格文檔時,輸出內容示例如下所示。
oss://test-bucket/target/{sheetname}_{sheetindex}_{sheetsubindex}.{autoext}
當輸入文檔類型為非表格文檔時,輸出內容示例如下所示。
oss://test-bucket/target/{index}.{autoext}
相關參數說明如下表所示:
輸入文件為Word、PDF、PPT時,表示頁碼。
輸入文件為Excel時,表示sheetindex_sheetsubindex。
sheetindex:從1開始。表示第幾個sheet頁。
sheetsubindex:從1開始。一個sheet可能會轉換出多張圖片,表示當前sheet的第幾張圖片。
變量名 | 說明 | 示例值 |
index | 輸出下標,從1開始。 | 6_12 |
sheetname | 輸入文件為Excel時,表示Sheet工作表的名稱。 | sheet1 |
autoext | 輸出文件的后綴。 | jpg |