按购买渠道选择接口参考

全能转

Office、PDF、图片、网页等格式的转换接口,按输入与输出选择对应参数。

选择购买渠道

不同渠道的主机、认证、请求字段和接口版本独立。请在当前渠道内查阅和复制示例。

阿里云接口参考

独立接口 · 主机、参数与认证按本渠道正文

本渠道认证说明

概述

80+种格式互转,70+个自定义参数!能进行各种常见格式之间的互相转换,不仅是word等office文件和pdf互转。拥有强大的OCR支持,对扫描件、拍照件可识别成可编辑 Word/Excel、可改可搜PDF,拍照表格可进 Excel,网址可导出正式文件等。提供了丰富的自定义参数,支持水印、压缩,加解密、页面大小范围等等。按次计费、不按页数。

使用流程

  1. 调用文档格式转换接口,提交输入文件和转换参数。
  2. 接口立即返回 token,表示任务已创建成功。
  3. 后续通过以下任一方式获取结果: 调用查询结果接口轮询任务状态;或在 options 中传入 callbackUrl,等待系统回调,详细见回调URL。

调用文档格式转换 API 需要签名,详细见文档附录:阿里签名。


阿里云支持从OSS内网直接下载文件,节约流量,见:阿里云独有部分

文档格式转换

https://all2doc.market.alicloudapi.com/convert_async

HTTP方式: POST

Header中的Content-Type传入application/json

Body是JSON格式

必须签名才能调用成功,签名见阿里签名规则:

https://help.aliyun.com/zh/api-gateway/traditional-api-gateway/use-cases/call-apis

支持的输出格式

类型 扩展名(outputFormat 取值) 备注
PDF pdf
图片 jpg, png 通过 options.imageOutputMode 选择每页一图、长图或动图;动图固定输出 GIF,与 outputFormat 无关
HTML html 默认适合阅读;需要适合编辑(如放入网页编辑器)时,通过 options.htmlOutputMode 设置
微软 Office docx, pptx, xlsx
开放版式文档 ofd
文本文件 txt
Markdown md
CAD 图纸 dwg, dxf 仅支持 PDF 输入

支持的输入格式

类型 扩展名(inputFormat 取值) 备注
PDF文件 pdf
微软Office文档 doc, docx, ppt, pptx, xls, xlsx, pot, pps, ppsx, csv
WPS文档 wps, wpt, dps, dpt, et, ett
苹果iWork文档 pages, key, numbers
开放版式文档 ofd
电子刊物 caj, nh, kdh
电子书 epub, chm, mobi, azw, azw3, fb2, cbr, cbz, djvu
Markdown md
SVG svg
CAD文档 dwg, dxf, dwt, dws, dwf, dwfx, dxb, dgn, plt, cf2, cgm
3D模型 obj, 3ds, stl, gltf, glb, fbx, dae, ifc, step, stp, iges, igs, fcstd, brep, ply 静态预览(平面示意图,按 6 个视角展示:等轴测 / 前 / 右 / 顶 / 后 / 左,便于快速查看模型外观;非可旋转的交互式 3D)
Figma和Sketch fig, sketch
网页文件 html, htm, mht, eml
图片文件 png, jpg, jpeg, gif, tif, tiff, bmp, webp, ai 等 可统一传 img
文本文件 txt, rtf, java, js, c, cpp, jsp, css, xml, properties, log 等 可统一传 txt
网址网页 url 输入必须是单个 HTTP/HTTPS URL

请求参数

参数 类型 备注 默认值
input string 或 string数组 输入文件。字符串:单个 URL(最大 1500M)或 Base64(最大 8M);数组:多张图片(URL / Base64 可混合) 必须发送
outputFormat string 目标格式,见上方输出格式表 必须发送
inputFormat string 源文件类型。可省略,由系统自动识别;网页抓取必须显式传 url 自动识别
options dictionary 可选转换参数,不传则用系统默认值;完整参数见附录 options 参数 无

多数场景只需传 input 与 outputFormat 即可完成转换。需要精细控制时,可在 options 中传入可选参数,例如:

  • Office / PDF / 图片 / 网页 / EPUB / CAD:页码范围、OCR、密码、审阅标记、Excel 页边距与工作表、PPT 讲义布局、图片纠偏与背景、网页视口与边距、CAD 图层与品质等
  • 输出控制:文件名、回调 URL、PDF 压缩/加密/线性化、图片每页一图/长图/动图、HTML 大纲与嵌入模式、Word/Excel/Txt 布局策略、水印等

请求示例

  • 例1: Word 转 PDF
{"input": "http://xxx.docx", "outputFormat": "pdf"}
  • 例2: Word 转 PNG(每页一张图)
{"input": "http://xxx.docx", "outputFormat": "png"}
  • 例3: PDF 转长图
{"input": "http://xxx.pdf", "outputFormat": "png", "options": {"imageOutputMode": "longImage", "longImageWidth": 1200}}
  • 例4: PPT 转动图
{"input": "http://xxx.pptx", "outputFormat": "jpg", "options": {"imageOutputMode": "animatedGif", "animationFrameDurationSeconds": 2}}
  • 例5: PDF 转 Word,并指定 OCR
{
  "input": "http://xxx.pdf",
  "inputFormat": "pdf",
  "outputFormat": "docx",
  "options": {"ocrMode": "auto", "ocrLanguage": "zh-CN"}
}
  • 例6: 多张图片转 Word(URL 与 Base64 可混合)
{
  "input": ["http://xxx.png", "base64图片1", "base64图片2"],
  "outputFormat": "docx"
}
  • 例7: Base64 文档转 HTML,指定结果文件名
{
  "input": "base64字符串",
  "inputFormat": "docx",
  "outputFormat": "html",
  "options": {"outputFileName": "result"}
}
  • 例8: 网页 URL 转 Word
{
  "input": "https://www.xxx.com/xxx",
  "inputFormat": "url",
  "outputFormat": "docx"
}
  • 例9: 网页 URL 转 Word,并设置回调
{
  "input": "https://www.example.com/article/123",
  "inputFormat": "url",
  "outputFormat": "docx",
  "options": {
    "callbackUrl": "https://api.example.com/callback"
  }
}
  • 例10: PDF 第 2 页转 DWG
{
  "input": "http://xxx.pdf",
  "outputFormat": "dwg",
  "options": {"pageRanges": "2"}
}
  • 例11: PDF 第 1、3、5-7 页转 DWG(每个 PDF 页对应一个 Layout)
{
  "input": "http://xxx.pdf",
  "outputFormat": "dwg",
  "options": {"pageRanges": "1,3,5-7"}
}
  • 例12: Excel 转 PDF,并将每张工作表调整为一页
{
  "input": "http://xxx.xlsx",
  "outputFormat": "pdf",
  "options": {"excelPageFitMode": "fitSheetOnOnePage"}
}

返回数据结构

名称 类型 是否必须返回 备注
code number 是 10000:请求成功
msg string 是
result Dictionary 否 成功后返回

result:

名称 类型 是否必须返回 备注
token string 是 用于查询结果接口

返回示例(成功状态):

{
    "code":10000,
    "msg":"",
    "result":{"token":"YOUR_CREDENTIAL"}
}

返回示例(失败状态):

{
    "code":40001,
    "msg":"ParmNotRight"
}

转换能力说明

  • 输入与输出格式可任意组合,但inputFormat 与 outputFormat 相同时会直接报错(例如 docx→docx 不合法)。特例:pdf→pdf 合法。
  • Office 新旧格式可互转(doc→docx、ppt→pptx、xls→xlsx)保留原生 Office 结构。
  • input 为数组时只支持图片,不能传文档数组。最大支持50张图。
  • inputFormat=url 时,input 必须是单个 HTTP/HTTPS URL 字符串,不能是数组、Base64 或 ftp。
  • PDF 转 DWG/DXF 支持单页或多页,仅适用于包含线条或文字等矢量内容的 PDF。扫描件和纯图片页不会自动矢量化。OCR、纠偏、背景清理等图片识别参数不生效。所选页全部无矢量内容时会明确返回失败,而不是生成仅引用临时图片的 CAD 文件;多页中仅部分页无矢量时,这些页生成空 Layout,其余页正常转换。单页结果在模型空间。多页为单个 CAD 文件,每个 PDF 页对应一个 Layout(图纸空间),名称如 page-1。多页 DXF 以 zip 包返回(内含一个 dxf 文件);单页 DXF 和 DWG 直接返回对应文件。

查询结果

调用方式: GET(无需签名)

https://api.duhuitech.com/q?token=YOUR_TOKEN

请求参数:

参数 类型 备注 是否必须发送
token string 调用转换接口拿到的 token 是

由于转换需要时间,文件越大页数越多,转换越久,故需要轮询查询接口来获得结果。查询频率可以是1s一次,也可以更长一些。 查询后先看status,如果是Done或Failed,则转换结束,停止轮询。如果是Doing或Pending,则继续轮询。

返回数据结构:

名称 类型 是否必须返回 备注
code number 是 10000:请求成功
msg string 是
token string 是 请求的token
result Dictionary 否 成功后返回

result:

名称 含义 类型 是否必须返回 备注
status 状态 string 是 Pending:还未开始
Doing:正在转换
Done:转换成功
Failed:转换失败
progress 进度 number 否(status为Doing/Pending时返回) 范围:0.00 - 1.00,比如0.88表示88%
fileurl 输出文件地址 string 否(status为Done,且非文档转图片时返回) PDF、HTML、Office、文本等单文件输出均返回该字段
fileurls 输出图片地址数组 string数组 否(status为Done,且文档转图片时返回) 文档转图片始终返回 fileurls,即使只有一页;不会返回 fileurl
count 页数 / 图片数 integer 否(status为Done时返回) 单文件输出为页数;文档转图片为图片张数
filesize 文件大小 integer 否(status为Done时返回) 输出文件大小
pagesizes 每页尺寸 array 否 部分转 PDF 且请求了页面尺寸信息时返回
reason 失败原因 string 否(status为Failed时可能返回) 转换失败的原因

结果读取规则:

  1. 先看 status。
  2. 若 status=Done:
    • outputFormat 为 jpg / png(文档转图片):读取 fileurls(数组;长图和动图也各返回一个 URL)。
    • 其他输出格式:读取 fileurl(单个字符串)。
  3. 若 status=Failed:读取 reason。
  4. 若 status=Doing 或 Pending:可读取 progress,继续轮询。

返回示例(进行中):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"progress":0.02,
		"status":"Doing"
	}
}

返回示例(成功,单文件,如 PDF/Word/HTML):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurl":"https://file.duhuitech.com/o/xxx/xxx.pdf",
		"count":10,
		"filesize":17747
	}
}

返回示例(成功,文档转图片,多页):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.png",
			"https://file.duhuitech.com/o/xxx/2.png",
			"https://file.duhuitech.com/o/xxx/3.png"
		],
		"count":3,
		"filesize":1649699
	}
}

返回示例(成功,文档转图片,仅一页也返回数组):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.jpg"
		],
		"count":1,
		"filesize":20480
	}
}

返回示例(失败状态):

{
	"code":40000,
	"msg":"No such token"
}

或:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Failed",
		"reason":"convert failed"
	}
}

参数列表 options

注意事项:整数参数使用标准 JSON 数字,布尔使用 JSON true / false,枚举使用语义字符串(如 source / landscape / portrait)。未知字段、类型错误、枚举或范围错误会返回参数错误。

输入 Office 文件相关(inputFormat 为 Word / PPT / Excel / WPS 等)

参数 类型 备注 默认值
wordShowMarkup boolean 如果是 Word 文件,是否显示审阅标记 false
powerPointLayout string 如果是 PPT 文件,导出样式:
slides 幻灯片
oneSlideHandout 每页一个幻灯片
twoSlideHandout 每页两个幻灯片
threeSlideHandout 每页三个幻灯片
fourSlideHandout 每页四个幻灯片
sixSlideHandout 每页六个幻灯片
nineSlideHandout 每页九个幻灯片
slides
powerPointHandoutOrder string 如果是 PPT 讲义模式,排列顺序:
horizontal 水平
vertical 垂直
horizontal
powerPointHandoutOrientation string 如果是 PPT 讲义模式,页面方向:
source 不改变
landscape 横向
portrait 纵向
source
excelCenterOnPage string 如果是 Excel 文件,内容居中方式:
none 不居中
both 横竖居中
horizontal 仅横向居中
vertical 仅纵向居中
none
excelMargin integer 如果是 Excel 文件,四边边距,单位 points(磅),不能为负数 使用文件默认
excelSheetIndex integer 如果是 Excel 文件,指定转换的 Sheet 序号;第一页为 1,省略表示全部 全部
excelShowGridlines boolean 如果是 Excel 文件,是否显示网格线 true
excelContentRange string 如果是 Excel 文件,内容范围:
default 默认
printArea 使用打印区域
usedRange 只显示有内容的区域
default
excelPageFitMode string Excel 输出 PDF 时的页面缩放方式:
noScaling 无缩放,按 100% 比例输出
fitColumnsOnOnePage 将所有列调整为一页宽
fitSheetOnOnePage 将每张工作表调整为一页
fitRowsOnOnePage 将所有行调整为一页高
未传时保持现有转换逻辑;与 excelContentRange=printArea 同时使用时,显式设置该参数仍会保留打印区域
将所有列调整为一页宽(使用打印区域时除外)
pageSize string 如果是 Excel 等文件,设定页面大小:
source 跟随源文档(无则按系统默认)
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientation string 如果是 Word、Excel、TXT、HTML、Markdown、网址,设定页面方向:
source 不变
landscape 横向
portrait 竖向
source
sourcePassword string 源文件密码,支持有密码的 Word、PPT、Excel 文件类型 无

输入 PDF 相关(inputFormat=pdf)

参数 类型 备注 默认值
pageRanges string 要转换的 PDF 页码。非CAD文件不传时转换全部页。可传列表或范围,例如:1,3,5-7。输出 DWG/DXF 时不传则转换第 1 页,需要全部页时可传 1- DWG/DXF:第 1 页;其它输出:全部页
ocrMode string PDF 转为 Word/PPT/Excel/Txt/OFD/Markdown 时: OCR 模式:
off 不做 OCR
auto 自动 OCR
force 强力 OCR(针对加密、编码不正确导致的乱码、叠字、未 OCR 文字等问题)

PDF 转 PDF 时:
off 不识别
auto 识别扫描版文字,使输出 PDF 中文字可选可搜索
PDF→文档:自动 OCR;

PDF→PDF:off
ocrLanguage string OCR 识别语言,使用 BCP 47 标签,例如 zh-CN、en。取值见附录 OCR 语言(ocrLanguage) zh-CN
sourcePassword string PDF 文件密码,无密码可不传 无
vectorizeText boolean PDF 转 PDF 且开启 OCR 时:是否用矢量文字替换图片内文字,使放大后仍清晰 false

输入图片相关(inputFormat 为 jpg/png/img 等,或 input 为图片数组)

参数 类型 备注 默认值
ocrLanguage string OCR 识别语言,BCP 47 标签。取值见附录 OCR 语言(ocrLanguage) zh-CN
ocrMode string off 不识别
auto 识别图中文字
off
dewarp boolean 是否切边矫正。打开后每次只允许传入一张图(短边大于 20,长边小于 10000) false
deskew boolean 是否倾斜矫正 false
backgroundMode string 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时:
auto 智能保留背景
remove 完全清除背景
preserve 完全保留背景
auto
autoRotate boolean 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 是否根据文字方向自动旋转。传 false 可加快速度(已确定文字方向时) true
pageSize string 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 页面大小:
source 维持原图比例
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
detectBarcodes boolean 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 是否识别条码和二维码,并避开码区以提高识别精度 false
splitSpreadPages boolean 横向图若有左右两部分(常见于试卷)时分割为 2 页。 false
grayscale boolean 图片转 PDF/HTML 时: 是否输出灰度图 false
vectorizeText boolean 图片转 PDF/HTML 且开启 OCR 时: 是否用矢量文字替换图片内文字 false
imagePageWidth integer 图片转 PDF/HTML 时: 统一每页固定宽度(像素),最大 4096。设置后转 PDF 时会使 pageSize 失效 不限制
tableDetection string 是否识别表格:
auto(默认):自动,转为 PPTX 时关闭,其他格式开启
on:开启
off:关闭
auto

输入网址 / 网页相关(inputFormat=url,或 html / md 等)

参数 类型 备注 默认值
webViewport string 视口模式:
desktop 桌面端网页
mobile 移动端网页
desktop
webViewportWidth integer 桌面端显示时网页最大宽度,最大 1920 1440
pageMargins string 页面边距,按顺序左 上 右 下,单位可为 px / in / cm / mm。例如:1px 2px 3px 4px 网址/HTML:左右 0、上下 1cm
Markdown:四边 0.55in
webWaitSeconds integer 停留后再抓取页面,单位秒,范围 0–30 0
webTimeoutSeconds integer 加载资源超时时间,单位秒,范围 1–120 40
webSinglePage boolean 是否生成单页长文档。打开后 pageMargins 失效。主要用于输出 PDF false
webTextOnly boolean 是否按文本模式抽取网页内容 false
webExtractMainContent boolean 是否抽取正文阅读区域 false
markdownTheme string 仅当输入为 Markdown 时,设置 Markdown 渲染主题。可选值:monet(莫奈)、vangogh(梵高)、rembrandt(伦勃朗)、vermeer(维米尔)、picasso(毕加索)、kandinsky(康定斯基)、davinci(达·芬奇) 不传或传空时使用默认样式
pageSize string 输出页面大小,仅在输出为 pdf / docx / pptx 时有效:
source 自动/A4
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientation string 输出页面方向:
source 不变
landscape 横向
portrait 竖向
source

输入 EPUB 相关(inputFormat=epub 等)

参数 类型 备注 默认值
epubFontSizePt integer 输出字体大小,单位 pt(磅) 自动
epubLineHeightPercent integer 输出行高,单位百分比。例如 120 表示行高为字号的 120% 自动
epubPageSizeCm string 自定义页面大小,单位厘米,格式 宽x高,例如 7.2x15.5。设置后会覆盖 pageSize 自动
epubMarginsPt string 页面边距,单位 pt,格式:左 上 右 下,例如 5 5 5 5 自动

输入 CAD 文件相关(inputFormat 为 dwg / dxf 等)

参数 类型 备注 默认值
cadIncludeLayers boolean 是否生成 Layer 层 false
cadUseDisplaySettings boolean 是否按 Display 显示设置导出 false
cadQuality integer 输出品质,取值 1–5,越高越好 3
cadRemoveEmptyPages boolean 是否删除空页 false

通用输出

参数 类型 备注 默认值
outputFileName string 生成文件的文件名 随机
callbackUrl string 回调 URL,转换结束后会回调该 URL,详细见 回调URL 无

输出 PDF 相关(outputFormat=pdf)

参数 类型 备注 默认值
pdfLinearized boolean 是否线性化(快速 Web 显示 / 流式显示) false
compressionLevel string 压缩级别:
none 不压缩
low 低
medium 中
high 高
none
pdfFlattenAnnotations boolean 是否扁平化(注释合并到 PDF) false
pdfImageOnly boolean 是否生成纯图片 PDF false
pageSize string 页面大小。源为 Word/Excel/TXT/HTML/Epub、图片时生效:
source 跟随源文档(无则 A4);源为图片时:长图保持原图、非长图按 A4 策略
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientationAdjustment string 统一调整所有页方向:
none 不调整
portraitClockwise 竖屏(横屏页顺时针 90°)
portraitCounterclockwise 竖屏(横屏页逆时针 90°)
landscapeClockwise 横屏(竖屏页顺时针 90°)
landscapeCounterclockwise 横屏(竖屏页逆时针 90°)
none
pageSplitCount integer 将每一页按长边等分为多页,例如试卷分为左右两页。最小为 2 不拆分
includePageSizeMetadata boolean 是否返回每一页的尺寸信息 false
pdfUserPassword string 生成 PDF 的用户密码(打开文件时需要) 无
pdfOwnerPassword string 生成 PDF 的所有者密码(修改文件时需要) 无
pdfPermissions string数组 有密码时的权限集合,可选值:
print 打印
copy 拷贝内容
edit 编辑
无权限

输出图片相关(outputFormat=jpg / png)

图片格式由 outputFormat 决定。通过 imageOutputMode 选择每页一图、长图或动图;动图固定输出 GIF,outputFormat 不影响动图格式。

参数 类型 备注 默认值
imageOutputMode string 输出模式:
separateImages 每页一图
longImage 长图
animatedGif 动图(GIF)
separateImages
imageMaxDimension integer separateImages 时为每个图最大宽或高,最大 20000;animatedGif 时最大 2000 自动
longImageWidth integer longImage 时长图宽度,最大 2000 自动
animationFrameDurationSeconds integer animatedGif 时每帧持续秒数,最小 1 1
pageOrientationAdjustment string 统一调整所有页方向,取值同输出 PDF 的 pageOrientationAdjustment none
grayscale boolean 是否输出灰度图 false
pageSplitCount integer 将每一页按长边等分为多页,最小为 2 不拆分
pageRanges string 如果源文件是 PDF,指定转换页码,例如:1,3,5-7 全部页

输出 HTML 相关(outputFormat=html)

参数 类型 备注 默认值
includeOutline boolean 如果有大纲,是否生成大纲 false
htmlOutputMode string HTML 输出模式:
fullDocument 完整文档
embedded 嵌入式 HTML(适合放入网页编辑器等场景,如 Word 转 HTML)
fullDocument

输出 Word/PPT/Excel/Txt/OFD/Markdown 相关(outputFormat 为 docx / pptx / xlsx / txt / ofd / md 等)

参数 类型 备注 默认值
wordIncludeImages boolean 转为 Word 时是否保留图片 true
wordLayout string 转为 Word 时的布局:
flow 流式布局
fixed 绝对布局(位置更准,但不利于流式编辑)
flow
wordRemovePageBreaks boolean 转为 Word 时是否删除分页符 false
excelSheetMode string 转为 Excel 时工作表策略:
auto 按系统默认(PDF 在特定页数内可合并,否则每页一表;图片默认每图一表)
singleSheet 合并为一个工作表
sheetPerPage 每页/每图一个工作表(非 PDF 输入时按系统规则回落)
auto
textPreserveLayout boolean 转为 Txt 时是否保持原有布局 true
textOutputMode string 转为 Txt 时:
singleFile 所有页单个 txt
filePerPage 每页一个 txt 并打包为 zip
singleFile

输出水印相关

参数 类型 备注 默认值
watermarkText string 水印文字。输出 PDF 时最多 15 个字符;输出图片或 HTML 时最多 10 个字符 无
watermarkFontSizePt integer 水印字号,单位 pt 24
watermarkColor string 水印颜色,#RRGGBB 格式,必须 7 位 #000000
watermarkOpacityPercent integer 水印不透明度,取值 1–100,越小越透明 20
watermarkLayout string 水印布局:
center 文档中央一个水印
tiled 文档铺满水印
center

OCR 语言(ocrLanguage)

取值不区分大小写。

语言 ocrLanguage 语言 ocrLanguage 语言 ocrLanguage
简体中文 zh-CN / zh-Hans 英文 en 法文 fr
德文 de 日文 ja 韩文 ko
繁体中文 zh-TW / zh-Hant 意大利文 it 西班牙文 es
葡萄牙文 pt 俄文 ru 丹麦文 da
荷兰文 nl 芬兰文 fi 挪威文 no
瑞典文 sv 土耳其文 tr

备注:

  • 输入文件 URL 方式支持文件最大 1500M;Base64 方式最大 8M。
  • 最大转换时长:1小时,超过时间未完成则自动失败。
  • 转换完成后,下载链接有效时间:1小时。

上述最后2项有延长需求请联系客服: 客服二维码


回调URL:

用途: 客户可以自行部署服务器,系统转换结束后会调用客户提供的回调URL,直接发送转换结果,从而无需再轮询查询结果。

在转换请求的 options 中传入 callbackUrl。当设置了回调URL,转换结束后(无论成功失败),系统都会尝试调用该URL,具体如下:

以POST方式调用该URL,Header头中Content-Type: application/json

Body为JSON格式,内容和查询结果的结果相同。例如单文件:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurl":"https://file.duhuitech.com/o/xxx/xxx.docx",
		"filesize":17747,
		"count":1
	}
}

文档转图片时同样返回 fileurls:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.png",
			"https://file.duhuitech.com/o/xxx/2.png"
		],
		"count":2,
		"filesize":120000
	}
}

服务端收到该POST后需在10秒内返回HTTP STATUS CODE 200,视为调用成功,否则系统认为回调失败,会再次尝试。规则如下:

系统共计最多会调用3次回调URL,如果第一次失败,则等待3秒后尝试第二次,如果第二次失败,则等待5秒后尝试第三次,如果第三次失败,则不再尝试。

回调URL超时时间10秒。


关于下载转换后的文件需支持302跳转

接口返回的下载地址(如 fileurl / fileurls)会经 HTTP 302 跳转到实际文件。浏览器会自动跟随。

以下方式默认会跟随跳转,一般无需额外配置:

wget、Python requests / urllib、Node.js axios / got / fetch、Java OkHttp / HttpURLConnection、Go net/http、C# HttpClient、PHP file_get_contents、Objective-C / Swift NSURLSession / URLSession(含 Alamofire)

少数默认不跟随,需手动打开:

  • curl:加 -L,如 curl -L -o out.bin "下载地址"
  • Java java.net.http.HttpClient:设置 .followRedirects(HttpClient.Redirect.NORMAL)
  • PHP curl 扩展:设置 CURLOPT_FOLLOWLOCATION => true

若只拿到 302 响应、本地没有文件内容,多半是未跟随跳转,按上面说明打开对应选项即可。


阿里云独有部分:

支持从阿里云OSS内网直接下载文件,目前支持的是上海地区的阿里云OSS内网:

oss-cn-shanghai-internal.aliyuncs.com

请求里的文件 URL 包含上述域名则自动支持。


错误码表:

返回的code如果是10000,代表成功,其余是失败

JSON里返回的code 错误信息
40000 通用错误
40001 参数错误
40002 参数不符合规范

附录:阿里签名方式

参考链接:

https://help.aliyun.com/zh/api-gateway/traditional-api-gateway/use-cases/call-apis

在调用API商品时,首先您需要了解采用哪种API认证方式,云市场API商品的认证方式主要有以下两种方式。两种方式可同时使用,您可以根据不同情况来选择。

  • 简单身份认证(AppCode)

  • 签名认证

简单身份认证(AppCode)

简单认证(AppCode)调用API,有两种方式,一种是将AppCode放在Header中进行调用,一种是将AppCode放在Query参数中进行调用。

方式一:将AppCode放在Header中

在请求Header中添加一个Authorization参数。

Authorization字段的值的格式为APPCODE + 半角空格 +APPCODE值。格式如下:

Authorization:APPCODE AppCode值

示例:

Authorization:APPCODE YOUR_CREDENTIAL

方式二:将AppCode放在Query中

在请求Query中添加AppCode参数(同时支持appcode , appCode , APPCODE , APPCode四种写法)。

AppCode参数的值为AppCode的值。

示例:

http://www.aliyum.com?AppCode=YOUR_CREDENTIAL

参考链接:https://help.aliyun.com/zh/api-gateway/traditional-api-gateway/user-guide/call-an-api-operation-by-using-an-appcode

签名认证

比较复杂,推荐用阿里自己的SDK来调用,参考链接:https://help.aliyun.com/zh/api-gateway/traditional-api-gateway/user-guide/use-digest-authentication-to-call-an-api

百度智能云接口参考

独立接口 · 主机、参数与认证按本渠道正文

本渠道认证说明

概述

80+种格式互转,70+个自定义参数!能进行各种常见格式之间的互相转换,不仅是word等office文件和pdf互转。拥有强大的OCR支持,对扫描件、拍照件可识别成可编辑 Word/Excel、可改可搜PDF,拍照表格可进 Excel,网址可导出正式文件等。提供了丰富的自定义参数,支持水印、压缩,加解密、页面大小范围等等。按次计费、不按页数。

使用流程

  1. 调用文档格式转换接口,提交输入文件和转换参数。
  2. 接口立即返回 token,表示任务已创建成功。
  3. 后续通过以下任一方式获取结果: 调用查询结果接口轮询任务状态;或在 options 中传入 callbackUrl,等待系统回调,详细见回调URL。

调用文档格式转换 API 需要签名,详细见文档附录:百度签名。

文档格式转换

https://gwgp-phja4guvncn.n.bdcloudapi.com/convert_async

HTTP方式: POST

Header中的Content-Type传入application/json

Body是JSON格式

必须签名才能调用成功,签名见百度签名规则:

https://cloud.baidu.com/doc/APIGW/s/Ljx2m1qc4

支持的输出格式

类型 扩展名(outputFormat 取值) 备注
PDF pdf
图片 jpg, png 通过 options.imageOutputMode 选择每页一图、长图或动图;动图固定输出 GIF,与 outputFormat 无关
HTML html 默认适合阅读;需要适合编辑(如放入网页编辑器)时,通过 options.htmlOutputMode 设置
微软 Office docx, pptx, xlsx
开放版式文档 ofd
文本文件 txt
Markdown md
CAD 图纸 dwg, dxf 仅支持 PDF 输入

支持的输入格式

类型 扩展名(inputFormat 取值) 备注
PDF文件 pdf
微软Office文档 doc, docx, ppt, pptx, xls, xlsx, pot, pps, ppsx, csv
WPS文档 wps, wpt, dps, dpt, et, ett
苹果iWork文档 pages, key, numbers
开放版式文档 ofd
电子刊物 caj, nh, kdh
电子书 epub, chm, mobi, azw, azw3, fb2, cbr, cbz, djvu
Markdown md
SVG svg
CAD文档 dwg, dxf, dwt, dws, dwf, dwfx, dxb, dgn, plt, cf2, cgm
3D模型 obj, 3ds, stl, gltf, glb, fbx, dae, ifc, step, stp, iges, igs, fcstd, brep, ply 静态预览(平面示意图,按 6 个视角展示:等轴测 / 前 / 右 / 顶 / 后 / 左,便于快速查看模型外观;非可旋转的交互式 3D)
Figma和Sketch fig, sketch
网页文件 html, htm, mht, eml
图片文件 png, jpg, jpeg, gif, tif, tiff, bmp, webp, ai 等 可统一传 img
文本文件 txt, rtf, java, js, c, cpp, jsp, css, xml, properties, log 等 可统一传 txt
网址网页 url 输入必须是单个 HTTP/HTTPS URL

请求参数

参数 类型 备注 默认值
input string 或 string数组 输入文件。字符串:单个 URL(最大 1500M)或 Base64(最大 8M);数组:多张图片(URL / Base64 可混合) 必须发送
outputFormat string 目标格式,见上方输出格式表 必须发送
inputFormat string 源文件类型。可省略,由系统自动识别;网页抓取必须显式传 url 自动识别
options dictionary 可选转换参数,不传则用系统默认值;完整参数见附录 options 参数 无

多数场景只需传 input 与 outputFormat 即可完成转换。需要精细控制时,可在 options 中传入可选参数,例如:

  • Office / PDF / 图片 / 网页 / EPUB / CAD:页码范围、OCR、密码、审阅标记、Excel 页边距与工作表、PPT 讲义布局、图片纠偏与背景、网页视口与边距、CAD 图层与品质等
  • 输出控制:文件名、回调 URL、PDF 压缩/加密/线性化、图片每页一图/长图/动图、HTML 大纲与嵌入模式、Word/Excel/Txt 布局策略、水印等

请求示例

  • 例1: Word 转 PDF
{"input": "http://xxx.docx", "outputFormat": "pdf"}
  • 例2: Word 转 PNG(每页一张图)
{"input": "http://xxx.docx", "outputFormat": "png"}
  • 例3: PDF 转长图
{"input": "http://xxx.pdf", "outputFormat": "png", "options": {"imageOutputMode": "longImage", "longImageWidth": 1200}}
  • 例4: PPT 转动图
{"input": "http://xxx.pptx", "outputFormat": "jpg", "options": {"imageOutputMode": "animatedGif", "animationFrameDurationSeconds": 2}}
  • 例5: PDF 转 Word,并指定 OCR
{
  "input": "http://xxx.pdf",
  "inputFormat": "pdf",
  "outputFormat": "docx",
  "options": {"ocrMode": "auto", "ocrLanguage": "zh-CN"}
}
  • 例6: 多张图片转 Word(URL 与 Base64 可混合)
{
  "input": ["http://xxx.png", "base64图片1", "base64图片2"],
  "outputFormat": "docx"
}
  • 例7: Base64 文档转 HTML,指定结果文件名
{
  "input": "base64字符串",
  "inputFormat": "docx",
  "outputFormat": "html",
  "options": {"outputFileName": "result"}
}
  • 例8: 网页 URL 转 Word
{
  "input": "https://www.xxx.com/xxx",
  "inputFormat": "url",
  "outputFormat": "docx"
}
  • 例9: 网页 URL 转 Word,并设置回调
{
  "input": "https://www.example.com/article/123",
  "inputFormat": "url",
  "outputFormat": "docx",
  "options": {
    "callbackUrl": "https://api.example.com/callback"
  }
}
  • 例10: PDF 第 2 页转 DWG
{
  "input": "http://xxx.pdf",
  "outputFormat": "dwg",
  "options": {"pageRanges": "2"}
}
  • 例11: PDF 第 1、3、5-7 页转 DWG(每个 PDF 页对应一个 Layout)
{
  "input": "http://xxx.pdf",
  "outputFormat": "dwg",
  "options": {"pageRanges": "1,3,5-7"}
}
  • 例12: Excel 转 PDF,并将每张工作表调整为一页
{
  "input": "http://xxx.xlsx",
  "outputFormat": "pdf",
  "options": {"excelPageFitMode": "fitSheetOnOnePage"}
}

返回数据结构

名称 类型 是否必须返回 备注
code number 是 10000:请求成功
msg string 是
result Dictionary 否 成功后返回

result:

名称 类型 是否必须返回 备注
token string 是 用于查询结果接口

返回示例(成功状态):

{
    "code":10000,
    "msg":"",
    "result":{"token":"YOUR_CREDENTIAL"}
}

返回示例(失败状态):

{
    "code":40001,
    "msg":"ParmNotRight"
}

转换能力说明

  • 输入与输出格式可任意组合,但inputFormat 与 outputFormat 相同时会直接报错(例如 docx→docx 不合法)。特例:pdf→pdf 合法。
  • Office 新旧格式可互转(doc→docx、ppt→pptx、xls→xlsx)保留原生 Office 结构。
  • input 为数组时只支持图片,不能传文档数组。最大支持50张图。
  • inputFormat=url 时,input 必须是单个 HTTP/HTTPS URL 字符串,不能是数组、Base64 或 ftp。
  • PDF 转 DWG/DXF 支持单页或多页,仅适用于包含线条或文字等矢量内容的 PDF。扫描件和纯图片页不会自动矢量化。OCR、纠偏、背景清理等图片识别参数不生效。所选页全部无矢量内容时会明确返回失败,而不是生成仅引用临时图片的 CAD 文件;多页中仅部分页无矢量时,这些页生成空 Layout,其余页正常转换。单页结果在模型空间。多页为单个 CAD 文件,每个 PDF 页对应一个 Layout(图纸空间),名称如 page-1。多页 DXF 以 zip 包返回(内含一个 dxf 文件);单页 DXF 和 DWG 直接返回对应文件。

查询结果

调用方式: GET(无需签名)

https://api.duhuitech.com/q?token=YOUR_TOKEN

请求参数:

参数 类型 备注 是否必须发送
token string 调用转换接口拿到的 token 是

由于转换需要时间,文件越大页数越多,转换越久,故需要轮询查询接口来获得结果。查询频率可以是1s一次,也可以更长一些。 查询后先看status,如果是Done或Failed,则转换结束,停止轮询。如果是Doing或Pending,则继续轮询。

返回数据结构:

名称 类型 是否必须返回 备注
code number 是 10000:请求成功
msg string 是
token string 是 请求的token
result Dictionary 否 成功后返回

result:

名称 含义 类型 是否必须返回 备注
status 状态 string 是 Pending:还未开始
Doing:正在转换
Done:转换成功
Failed:转换失败
progress 进度 number 否(status为Doing/Pending时返回) 范围:0.00 - 1.00,比如0.88表示88%
fileurl 输出文件地址 string 否(status为Done,且非文档转图片时返回) PDF、HTML、Office、文本等单文件输出均返回该字段
fileurls 输出图片地址数组 string数组 否(status为Done,且文档转图片时返回) 文档转图片始终返回 fileurls,即使只有一页;不会返回 fileurl
count 页数 / 图片数 integer 否(status为Done时返回) 单文件输出为页数;文档转图片为图片张数
filesize 文件大小 integer 否(status为Done时返回) 输出文件大小
pagesizes 每页尺寸 array 否 部分转 PDF 且请求了页面尺寸信息时返回
reason 失败原因 string 否(status为Failed时可能返回) 转换失败的原因

结果读取规则:

  1. 先看 status。
  2. 若 status=Done:
    • outputFormat 为 jpg / png(文档转图片):读取 fileurls(数组;长图和动图也各返回一个 URL)。
    • 其他输出格式:读取 fileurl(单个字符串)。
  3. 若 status=Failed:读取 reason。
  4. 若 status=Doing 或 Pending:可读取 progress,继续轮询。

返回示例(进行中):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"progress":0.02,
		"status":"Doing"
	}
}

返回示例(成功,单文件,如 PDF/Word/HTML):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurl":"https://file.duhuitech.com/o/xxx/xxx.pdf",
		"count":10,
		"filesize":17747
	}
}

返回示例(成功,文档转图片,多页):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.png",
			"https://file.duhuitech.com/o/xxx/2.png",
			"https://file.duhuitech.com/o/xxx/3.png"
		],
		"count":3,
		"filesize":1649699
	}
}

返回示例(成功,文档转图片,仅一页也返回数组):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.jpg"
		],
		"count":1,
		"filesize":20480
	}
}

返回示例(失败状态):

{
	"code":40000,
	"msg":"No such token"
}

或:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Failed",
		"reason":"convert failed"
	}
}

参数列表 options

注意事项:整数参数使用标准 JSON 数字,布尔使用 JSON true / false,枚举使用语义字符串(如 source / landscape / portrait)。未知字段、类型错误、枚举或范围错误会返回参数错误。

输入 Office 文件相关(inputFormat 为 Word / PPT / Excel / WPS 等)

参数 类型 备注 默认值
wordShowMarkup boolean 如果是 Word 文件,是否显示审阅标记 false
powerPointLayout string 如果是 PPT 文件,导出样式:
slides 幻灯片
oneSlideHandout 每页一个幻灯片
twoSlideHandout 每页两个幻灯片
threeSlideHandout 每页三个幻灯片
fourSlideHandout 每页四个幻灯片
sixSlideHandout 每页六个幻灯片
nineSlideHandout 每页九个幻灯片
slides
powerPointHandoutOrder string 如果是 PPT 讲义模式,排列顺序:
horizontal 水平
vertical 垂直
horizontal
powerPointHandoutOrientation string 如果是 PPT 讲义模式,页面方向:
source 不改变
landscape 横向
portrait 纵向
source
excelCenterOnPage string 如果是 Excel 文件,内容居中方式:
none 不居中
both 横竖居中
horizontal 仅横向居中
vertical 仅纵向居中
none
excelMargin integer 如果是 Excel 文件,四边边距,单位 points(磅),不能为负数 使用文件默认
excelSheetIndex integer 如果是 Excel 文件,指定转换的 Sheet 序号;第一页为 1,省略表示全部 全部
excelShowGridlines boolean 如果是 Excel 文件,是否显示网格线 true
excelContentRange string 如果是 Excel 文件,内容范围:
default 默认
printArea 使用打印区域
usedRange 只显示有内容的区域
default
excelPageFitMode string Excel 输出 PDF 时的页面缩放方式:
noScaling 无缩放,按 100% 比例输出
fitColumnsOnOnePage 将所有列调整为一页宽
fitSheetOnOnePage 将每张工作表调整为一页
fitRowsOnOnePage 将所有行调整为一页高
未传时保持现有转换逻辑;与 excelContentRange=printArea 同时使用时,显式设置该参数仍会保留打印区域
将所有列调整为一页宽(使用打印区域时除外)
pageSize string 如果是 Excel 等文件,设定页面大小:
source 跟随源文档(无则按系统默认)
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientation string 如果是 Word、Excel、TXT、HTML、Markdown、网址,设定页面方向:
source 不变
landscape 横向
portrait 竖向
source
sourcePassword string 源文件密码,支持有密码的 Word、PPT、Excel 文件类型 无

输入 PDF 相关(inputFormat=pdf)

参数 类型 备注 默认值
pageRanges string 要转换的 PDF 页码。非CAD文件不传时转换全部页。可传列表或范围,例如:1,3,5-7。输出 DWG/DXF 时不传则转换第 1 页,需要全部页时可传 1- DWG/DXF:第 1 页;其它输出:全部页
ocrMode string PDF 转为 Word/PPT/Excel/Txt/OFD/Markdown 时: OCR 模式:
off 不做 OCR
auto 自动 OCR
force 强力 OCR(针对加密、编码不正确导致的乱码、叠字、未 OCR 文字等问题)

PDF 转 PDF 时:
off 不识别
auto 识别扫描版文字,使输出 PDF 中文字可选可搜索
PDF→文档:自动 OCR;

PDF→PDF:off
ocrLanguage string OCR 识别语言,使用 BCP 47 标签,例如 zh-CN、en。取值见附录 OCR 语言(ocrLanguage) zh-CN
sourcePassword string PDF 文件密码,无密码可不传 无
vectorizeText boolean PDF 转 PDF 且开启 OCR 时:是否用矢量文字替换图片内文字,使放大后仍清晰 false

输入图片相关(inputFormat 为 jpg/png/img 等,或 input 为图片数组)

参数 类型 备注 默认值
ocrLanguage string OCR 识别语言,BCP 47 标签。取值见附录 OCR 语言(ocrLanguage) zh-CN
ocrMode string off 不识别
auto 识别图中文字
off
dewarp boolean 是否切边矫正。打开后每次只允许传入一张图(短边大于 20,长边小于 10000) false
deskew boolean 是否倾斜矫正 false
backgroundMode string 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时:
auto 智能保留背景
remove 完全清除背景
preserve 完全保留背景
auto
autoRotate boolean 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 是否根据文字方向自动旋转。传 false 可加快速度(已确定文字方向时) true
pageSize string 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 页面大小:
source 维持原图比例
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
detectBarcodes boolean 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 是否识别条码和二维码,并避开码区以提高识别精度 false
splitSpreadPages boolean 横向图若有左右两部分(常见于试卷)时分割为 2 页。 false
grayscale boolean 图片转 PDF/HTML 时: 是否输出灰度图 false
vectorizeText boolean 图片转 PDF/HTML 且开启 OCR 时: 是否用矢量文字替换图片内文字 false
imagePageWidth integer 图片转 PDF/HTML 时: 统一每页固定宽度(像素),最大 4096。设置后转 PDF 时会使 pageSize 失效 不限制
tableDetection string 是否识别表格:
auto(默认):自动,转为 PPTX 时关闭,其他格式开启
on:开启
off:关闭
auto

输入网址 / 网页相关(inputFormat=url,或 html / md 等)

参数 类型 备注 默认值
webViewport string 视口模式:
desktop 桌面端网页
mobile 移动端网页
desktop
webViewportWidth integer 桌面端显示时网页最大宽度,最大 1920 1440
pageMargins string 页面边距,按顺序左 上 右 下,单位可为 px / in / cm / mm。例如:1px 2px 3px 4px 网址/HTML:左右 0、上下 1cm
Markdown:四边 0.55in
webWaitSeconds integer 停留后再抓取页面,单位秒,范围 0–30 0
webTimeoutSeconds integer 加载资源超时时间,单位秒,范围 1–120 40
webSinglePage boolean 是否生成单页长文档。打开后 pageMargins 失效。主要用于输出 PDF false
webTextOnly boolean 是否按文本模式抽取网页内容 false
webExtractMainContent boolean 是否抽取正文阅读区域 false
markdownTheme string 仅当输入为 Markdown 时,设置 Markdown 渲染主题。可选值:monet(莫奈)、vangogh(梵高)、rembrandt(伦勃朗)、vermeer(维米尔)、picasso(毕加索)、kandinsky(康定斯基)、davinci(达·芬奇) 不传或传空时使用默认样式
pageSize string 输出页面大小,仅在输出为 pdf / docx / pptx 时有效:
source 自动/A4
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientation string 输出页面方向:
source 不变
landscape 横向
portrait 竖向
source

输入 EPUB 相关(inputFormat=epub 等)

参数 类型 备注 默认值
epubFontSizePt integer 输出字体大小,单位 pt(磅) 自动
epubLineHeightPercent integer 输出行高,单位百分比。例如 120 表示行高为字号的 120% 自动
epubPageSizeCm string 自定义页面大小,单位厘米,格式 宽x高,例如 7.2x15.5。设置后会覆盖 pageSize 自动
epubMarginsPt string 页面边距,单位 pt,格式:左 上 右 下,例如 5 5 5 5 自动

输入 CAD 文件相关(inputFormat 为 dwg / dxf 等)

参数 类型 备注 默认值
cadIncludeLayers boolean 是否生成 Layer 层 false
cadUseDisplaySettings boolean 是否按 Display 显示设置导出 false
cadQuality integer 输出品质,取值 1–5,越高越好 3
cadRemoveEmptyPages boolean 是否删除空页 false

通用输出

参数 类型 备注 默认值
outputFileName string 生成文件的文件名 随机
callbackUrl string 回调 URL,转换结束后会回调该 URL,详细见 回调URL 无

输出 PDF 相关(outputFormat=pdf)

参数 类型 备注 默认值
pdfLinearized boolean 是否线性化(快速 Web 显示 / 流式显示) false
compressionLevel string 压缩级别:
none 不压缩
low 低
medium 中
high 高
none
pdfFlattenAnnotations boolean 是否扁平化(注释合并到 PDF) false
pdfImageOnly boolean 是否生成纯图片 PDF false
pageSize string 页面大小。源为 Word/Excel/TXT/HTML/Epub、图片时生效:
source 跟随源文档(无则 A4);源为图片时:长图保持原图、非长图按 A4 策略
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientationAdjustment string 统一调整所有页方向:
none 不调整
portraitClockwise 竖屏(横屏页顺时针 90°)
portraitCounterclockwise 竖屏(横屏页逆时针 90°)
landscapeClockwise 横屏(竖屏页顺时针 90°)
landscapeCounterclockwise 横屏(竖屏页逆时针 90°)
none
pageSplitCount integer 将每一页按长边等分为多页,例如试卷分为左右两页。最小为 2 不拆分
includePageSizeMetadata boolean 是否返回每一页的尺寸信息 false
pdfUserPassword string 生成 PDF 的用户密码(打开文件时需要) 无
pdfOwnerPassword string 生成 PDF 的所有者密码(修改文件时需要) 无
pdfPermissions string数组 有密码时的权限集合,可选值:
print 打印
copy 拷贝内容
edit 编辑
无权限

输出图片相关(outputFormat=jpg / png)

图片格式由 outputFormat 决定。通过 imageOutputMode 选择每页一图、长图或动图;动图固定输出 GIF,outputFormat 不影响动图格式。

参数 类型 备注 默认值
imageOutputMode string 输出模式:
separateImages 每页一图
longImage 长图
animatedGif 动图(GIF)
separateImages
imageMaxDimension integer separateImages 时为每个图最大宽或高,最大 20000;animatedGif 时最大 2000 自动
longImageWidth integer longImage 时长图宽度,最大 2000 自动
animationFrameDurationSeconds integer animatedGif 时每帧持续秒数,最小 1 1
pageOrientationAdjustment string 统一调整所有页方向,取值同输出 PDF 的 pageOrientationAdjustment none
grayscale boolean 是否输出灰度图 false
pageSplitCount integer 将每一页按长边等分为多页,最小为 2 不拆分
pageRanges string 如果源文件是 PDF,指定转换页码,例如:1,3,5-7 全部页

输出 HTML 相关(outputFormat=html)

参数 类型 备注 默认值
includeOutline boolean 如果有大纲,是否生成大纲 false
htmlOutputMode string HTML 输出模式:
fullDocument 完整文档
embedded 嵌入式 HTML(适合放入网页编辑器等场景,如 Word 转 HTML)
fullDocument

输出 Word/PPT/Excel/Txt/OFD/Markdown 相关(outputFormat 为 docx / pptx / xlsx / txt / ofd / md 等)

参数 类型 备注 默认值
wordIncludeImages boolean 转为 Word 时是否保留图片 true
wordLayout string 转为 Word 时的布局:
flow 流式布局
fixed 绝对布局(位置更准,但不利于流式编辑)
flow
wordRemovePageBreaks boolean 转为 Word 时是否删除分页符 false
excelSheetMode string 转为 Excel 时工作表策略:
auto 按系统默认(PDF 在特定页数内可合并,否则每页一表;图片默认每图一表)
singleSheet 合并为一个工作表
sheetPerPage 每页/每图一个工作表(非 PDF 输入时按系统规则回落)
auto
textPreserveLayout boolean 转为 Txt 时是否保持原有布局 true
textOutputMode string 转为 Txt 时:
singleFile 所有页单个 txt
filePerPage 每页一个 txt 并打包为 zip
singleFile

输出水印相关

参数 类型 备注 默认值
watermarkText string 水印文字。输出 PDF 时最多 15 个字符;输出图片或 HTML 时最多 10 个字符 无
watermarkFontSizePt integer 水印字号,单位 pt 24
watermarkColor string 水印颜色,#RRGGBB 格式,必须 7 位 #000000
watermarkOpacityPercent integer 水印不透明度,取值 1–100,越小越透明 20
watermarkLayout string 水印布局:
center 文档中央一个水印
tiled 文档铺满水印
center

OCR 语言(ocrLanguage)

取值不区分大小写。

语言 ocrLanguage 语言 ocrLanguage 语言 ocrLanguage
简体中文 zh-CN / zh-Hans 英文 en 法文 fr
德文 de 日文 ja 韩文 ko
繁体中文 zh-TW / zh-Hant 意大利文 it 西班牙文 es
葡萄牙文 pt 俄文 ru 丹麦文 da
荷兰文 nl 芬兰文 fi 挪威文 no
瑞典文 sv 土耳其文 tr

备注:

  • 输入文件 URL 方式支持文件最大 1500M;Base64 方式最大 8M。
  • 最大转换时长:1小时,超过时间未完成则自动失败。
  • 转换完成后,下载链接有效时间:1小时。

上述最后2项有延长需求请联系客服: 客服二维码


回调URL:

用途: 客户可以自行部署服务器,系统转换结束后会调用客户提供的回调URL,直接发送转换结果,从而无需再轮询查询结果。

在转换请求的 options 中传入 callbackUrl。当设置了回调URL,转换结束后(无论成功失败),系统都会尝试调用该URL,具体如下:

以POST方式调用该URL,Header头中Content-Type: application/json

Body为JSON格式,内容和查询结果的结果相同。例如单文件:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurl":"https://file.duhuitech.com/o/xxx/xxx.docx",
		"filesize":17747,
		"count":1
	}
}

文档转图片时同样返回 fileurls:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.png",
			"https://file.duhuitech.com/o/xxx/2.png"
		],
		"count":2,
		"filesize":120000
	}
}

服务端收到该POST后需在10秒内返回HTTP STATUS CODE 200,视为调用成功,否则系统认为回调失败,会再次尝试。规则如下:

系统共计最多会调用3次回调URL,如果第一次失败,则等待3秒后尝试第二次,如果第二次失败,则等待5秒后尝试第三次,如果第三次失败,则不再尝试。

回调URL超时时间10秒。


关于下载转换后的文件需支持302跳转

接口返回的下载地址(如 fileurl / fileurls)会经 HTTP 302 跳转到实际文件。浏览器会自动跟随。

以下方式默认会跟随跳转,一般无需额外配置:

wget、Python requests / urllib、Node.js axios / got / fetch、Java OkHttp / HttpURLConnection、Go net/http、C# HttpClient、PHP file_get_contents、Objective-C / Swift NSURLSession / URLSession(含 Alamofire)

少数默认不跟随,需手动打开:

  • curl:加 -L,如 curl -L -o out.bin "下载地址"
  • Java java.net.http.HttpClient:设置 .followRedirects(HttpClient.Redirect.NORMAL)
  • PHP curl 扩展:设置 CURLOPT_FOLLOWLOCATION => true

若只拿到 302 响应、本地没有文件内容,多半是未跟随跳转,按上面说明打开对应选项即可。


错误码表:

返回的code如果是10000,代表成功,其余是失败

JSON里返回的code 错误信息
40000 通用错误
40001 参数错误
40002 参数不符合规范

附录:百度签名方式

参考链接:

https://cloud.baidu.com/doc/APIGW/s/Ljx2m1qc4

在调用API商品时,首先您需要了解采用哪种API认证方式。云市场API商品的认证方式主要有以下两种方式,两种方式可同时使用,您可以根据不同情况来选择:

  • 简单身份认证(AppCode)
  • 签名认证

简单身份认证(AppCode)

简单认证(AppCode)调用API,将AppCode放在Header中。在请求Header中添加一个X-Bce-Signature参数。

示例:

X-Bce-Signature: AppCode/YOUR_APPCODE

签名认证

签名认证比较复杂,推荐用百度自己的SDK来调用,参考链接:

https://cloud.baidu.com/doc/Reference/s/njwvz1yfu

华为云接口参考

独立接口 · 主机、参数与认证按本渠道正文

本渠道认证说明

概述

80+种格式互转,70+个自定义参数!能进行各种常见格式之间的互相转换,不仅是word等office文件和pdf互转。拥有强大的OCR支持,对扫描件、拍照件可识别成可编辑 Word/Excel、可改可搜PDF,拍照表格可进 Excel,网址可导出正式文件等。提供了丰富的自定义参数,支持水印、压缩,加解密、页面大小范围等等。按次计费、不按页数。

使用流程

  1. 调用文档格式转换接口,提交输入文件和转换参数。
  2. 接口立即返回 token,表示任务已创建成功。
  3. 后续通过以下任一方式获取结果: 调用查询结果接口轮询任务状态;或在 options 中传入 callbackUrl,等待系统回调,详细见回调URL。

调用文档格式转换 API 需要签名,详细见文档附录:华为签名。

文档格式转换

http://all2doc.apistore.huaweicloud.com/convert_async

HTTP方式: POST

Header中的Content-Type传入application/json

Body是JSON格式

必须签名才能调用成功,签名见华为签名规则:

https://support.huaweicloud.com/usermanual-apig/apig-ug-0011.html

支持的输出格式

类型 扩展名(outputFormat 取值) 备注
PDF pdf
图片 jpg, png 通过 options.imageOutputMode 选择每页一图、长图或动图;动图固定输出 GIF,与 outputFormat 无关
HTML html 默认适合阅读;需要适合编辑(如放入网页编辑器)时,通过 options.htmlOutputMode 设置
微软 Office docx, pptx, xlsx
开放版式文档 ofd
文本文件 txt
Markdown md
CAD 图纸 dwg, dxf 仅支持 PDF 输入

支持的输入格式

类型 扩展名(inputFormat 取值) 备注
PDF文件 pdf
微软Office文档 doc, docx, ppt, pptx, xls, xlsx, pot, pps, ppsx, csv
WPS文档 wps, wpt, dps, dpt, et, ett
苹果iWork文档 pages, key, numbers
开放版式文档 ofd
电子刊物 caj, nh, kdh
电子书 epub, chm, mobi, azw, azw3, fb2, cbr, cbz, djvu
Markdown md
SVG svg
CAD文档 dwg, dxf, dwt, dws, dwf, dwfx, dxb, dgn, plt, cf2, cgm
3D模型 obj, 3ds, stl, gltf, glb, fbx, dae, ifc, step, stp, iges, igs, fcstd, brep, ply 静态预览(平面示意图,按 6 个视角展示:等轴测 / 前 / 右 / 顶 / 后 / 左,便于快速查看模型外观;非可旋转的交互式 3D)
Figma和Sketch fig, sketch
网页文件 html, htm, mht, eml
图片文件 png, jpg, jpeg, gif, tif, tiff, bmp, webp, ai 等 可统一传 img
文本文件 txt, rtf, java, js, c, cpp, jsp, css, xml, properties, log 等 可统一传 txt
网址网页 url 输入必须是单个 HTTP/HTTPS URL

请求参数

参数 类型 备注 默认值
input string 或 string数组 输入文件。字符串:单个 URL(最大 1500M)或 Base64(最大 8M);数组:多张图片(URL / Base64 可混合) 必须发送
outputFormat string 目标格式,见上方输出格式表 必须发送
inputFormat string 源文件类型。可省略,由系统自动识别;网页抓取必须显式传 url 自动识别
options dictionary 可选转换参数,不传则用系统默认值;完整参数见附录 options 参数 无

多数场景只需传 input 与 outputFormat 即可完成转换。需要精细控制时,可在 options 中传入可选参数,例如:

  • Office / PDF / 图片 / 网页 / EPUB / CAD:页码范围、OCR、密码、审阅标记、Excel 页边距与工作表、PPT 讲义布局、图片纠偏与背景、网页视口与边距、CAD 图层与品质等
  • 输出控制:文件名、回调 URL、PDF 压缩/加密/线性化、图片每页一图/长图/动图、HTML 大纲与嵌入模式、Word/Excel/Txt 布局策略、水印等

请求示例

  • 例1: Word 转 PDF
{"input": "http://xxx.docx", "outputFormat": "pdf"}
  • 例2: Word 转 PNG(每页一张图)
{"input": "http://xxx.docx", "outputFormat": "png"}
  • 例3: PDF 转长图
{"input": "http://xxx.pdf", "outputFormat": "png", "options": {"imageOutputMode": "longImage", "longImageWidth": 1200}}
  • 例4: PPT 转动图
{"input": "http://xxx.pptx", "outputFormat": "jpg", "options": {"imageOutputMode": "animatedGif", "animationFrameDurationSeconds": 2}}
  • 例5: PDF 转 Word,并指定 OCR
{
  "input": "http://xxx.pdf",
  "inputFormat": "pdf",
  "outputFormat": "docx",
  "options": {"ocrMode": "auto", "ocrLanguage": "zh-CN"}
}
  • 例6: 多张图片转 Word(URL 与 Base64 可混合)
{
  "input": ["http://xxx.png", "base64图片1", "base64图片2"],
  "outputFormat": "docx"
}
  • 例7: Base64 文档转 HTML,指定结果文件名
{
  "input": "base64字符串",
  "inputFormat": "docx",
  "outputFormat": "html",
  "options": {"outputFileName": "result"}
}
  • 例8: 网页 URL 转 Word
{
  "input": "https://www.xxx.com/xxx",
  "inputFormat": "url",
  "outputFormat": "docx"
}
  • 例9: 网页 URL 转 Word,并设置回调
{
  "input": "https://www.example.com/article/123",
  "inputFormat": "url",
  "outputFormat": "docx",
  "options": {
    "callbackUrl": "https://api.example.com/callback"
  }
}
  • 例10: PDF 第 2 页转 DWG
{
  "input": "http://xxx.pdf",
  "outputFormat": "dwg",
  "options": {"pageRanges": "2"}
}
  • 例11: PDF 第 1、3、5-7 页转 DWG(每个 PDF 页对应一个 Layout)
{
  "input": "http://xxx.pdf",
  "outputFormat": "dwg",
  "options": {"pageRanges": "1,3,5-7"}
}
  • 例12: Excel 转 PDF,并将每张工作表调整为一页
{
  "input": "http://xxx.xlsx",
  "outputFormat": "pdf",
  "options": {"excelPageFitMode": "fitSheetOnOnePage"}
}

返回数据结构

名称 类型 是否必须返回 备注
code number 是 10000:请求成功
msg string 是
result Dictionary 否 成功后返回

result:

名称 类型 是否必须返回 备注
token string 是 用于查询结果接口

返回示例(成功状态):

{
    "code":10000,
    "msg":"",
    "result":{"token":"YOUR_CREDENTIAL"}
}

返回示例(失败状态):

{
    "code":40001,
    "msg":"ParmNotRight"
}

转换能力说明

  • 输入与输出格式可任意组合,但inputFormat 与 outputFormat 相同时会直接报错(例如 docx→docx 不合法)。特例:pdf→pdf 合法。
  • Office 新旧格式可互转(doc→docx、ppt→pptx、xls→xlsx)保留原生 Office 结构。
  • input 为数组时只支持图片,不能传文档数组。最大支持50张图。
  • inputFormat=url 时,input 必须是单个 HTTP/HTTPS URL 字符串,不能是数组、Base64 或 ftp。
  • PDF 转 DWG/DXF 支持单页或多页,仅适用于包含线条或文字等矢量内容的 PDF。扫描件和纯图片页不会自动矢量化。OCR、纠偏、背景清理等图片识别参数不生效。所选页全部无矢量内容时会明确返回失败,而不是生成仅引用临时图片的 CAD 文件;多页中仅部分页无矢量时,这些页生成空 Layout,其余页正常转换。单页结果在模型空间。多页为单个 CAD 文件,每个 PDF 页对应一个 Layout(图纸空间),名称如 page-1。多页 DXF 以 zip 包返回(内含一个 dxf 文件);单页 DXF 和 DWG 直接返回对应文件。

查询结果

调用方式: GET(无需签名)

https://api.duhuitech.com/q?token=YOUR_TOKEN

请求参数:

参数 类型 备注 是否必须发送
token string 调用转换接口拿到的 token 是

由于转换需要时间,文件越大页数越多,转换越久,故需要轮询查询接口来获得结果。查询频率可以是1s一次,也可以更长一些。 查询后先看status,如果是Done或Failed,则转换结束,停止轮询。如果是Doing或Pending,则继续轮询。

返回数据结构:

名称 类型 是否必须返回 备注
code number 是 10000:请求成功
msg string 是
token string 是 请求的token
result Dictionary 否 成功后返回

result:

名称 含义 类型 是否必须返回 备注
status 状态 string 是 Pending:还未开始
Doing:正在转换
Done:转换成功
Failed:转换失败
progress 进度 number 否(status为Doing/Pending时返回) 范围:0.00 - 1.00,比如0.88表示88%
fileurl 输出文件地址 string 否(status为Done,且非文档转图片时返回) PDF、HTML、Office、文本等单文件输出均返回该字段
fileurls 输出图片地址数组 string数组 否(status为Done,且文档转图片时返回) 文档转图片始终返回 fileurls,即使只有一页;不会返回 fileurl
count 页数 / 图片数 integer 否(status为Done时返回) 单文件输出为页数;文档转图片为图片张数
filesize 文件大小 integer 否(status为Done时返回) 输出文件大小
pagesizes 每页尺寸 array 否 部分转 PDF 且请求了页面尺寸信息时返回
reason 失败原因 string 否(status为Failed时可能返回) 转换失败的原因

结果读取规则:

  1. 先看 status。
  2. 若 status=Done:
    • outputFormat 为 jpg / png(文档转图片):读取 fileurls(数组;长图和动图也各返回一个 URL)。
    • 其他输出格式:读取 fileurl(单个字符串)。
  3. 若 status=Failed:读取 reason。
  4. 若 status=Doing 或 Pending:可读取 progress,继续轮询。

返回示例(进行中):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"progress":0.02,
		"status":"Doing"
	}
}

返回示例(成功,单文件,如 PDF/Word/HTML):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurl":"https://file.duhuitech.com/o/xxx/xxx.pdf",
		"count":10,
		"filesize":17747
	}
}

返回示例(成功,文档转图片,多页):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.png",
			"https://file.duhuitech.com/o/xxx/2.png",
			"https://file.duhuitech.com/o/xxx/3.png"
		],
		"count":3,
		"filesize":1649699
	}
}

返回示例(成功,文档转图片,仅一页也返回数组):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.jpg"
		],
		"count":1,
		"filesize":20480
	}
}

返回示例(失败状态):

{
	"code":40000,
	"msg":"No such token"
}

或:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Failed",
		"reason":"convert failed"
	}
}

参数列表 options

注意事项:整数参数使用标准 JSON 数字,布尔使用 JSON true / false,枚举使用语义字符串(如 source / landscape / portrait)。未知字段、类型错误、枚举或范围错误会返回参数错误。

输入 Office 文件相关(inputFormat 为 Word / PPT / Excel / WPS 等)

参数 类型 备注 默认值
wordShowMarkup boolean 如果是 Word 文件,是否显示审阅标记 false
powerPointLayout string 如果是 PPT 文件,导出样式:
slides 幻灯片
oneSlideHandout 每页一个幻灯片
twoSlideHandout 每页两个幻灯片
threeSlideHandout 每页三个幻灯片
fourSlideHandout 每页四个幻灯片
sixSlideHandout 每页六个幻灯片
nineSlideHandout 每页九个幻灯片
slides
powerPointHandoutOrder string 如果是 PPT 讲义模式,排列顺序:
horizontal 水平
vertical 垂直
horizontal
powerPointHandoutOrientation string 如果是 PPT 讲义模式,页面方向:
source 不改变
landscape 横向
portrait 纵向
source
excelCenterOnPage string 如果是 Excel 文件,内容居中方式:
none 不居中
both 横竖居中
horizontal 仅横向居中
vertical 仅纵向居中
none
excelMargin integer 如果是 Excel 文件,四边边距,单位 points(磅),不能为负数 使用文件默认
excelSheetIndex integer 如果是 Excel 文件,指定转换的 Sheet 序号;第一页为 1,省略表示全部 全部
excelShowGridlines boolean 如果是 Excel 文件,是否显示网格线 true
excelContentRange string 如果是 Excel 文件,内容范围:
default 默认
printArea 使用打印区域
usedRange 只显示有内容的区域
default
excelPageFitMode string Excel 输出 PDF 时的页面缩放方式:
noScaling 无缩放,按 100% 比例输出
fitColumnsOnOnePage 将所有列调整为一页宽
fitSheetOnOnePage 将每张工作表调整为一页
fitRowsOnOnePage 将所有行调整为一页高
未传时保持现有转换逻辑;与 excelContentRange=printArea 同时使用时,显式设置该参数仍会保留打印区域
将所有列调整为一页宽(使用打印区域时除外)
pageSize string 如果是 Excel 等文件,设定页面大小:
source 跟随源文档(无则按系统默认)
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientation string 如果是 Word、Excel、TXT、HTML、Markdown、网址,设定页面方向:
source 不变
landscape 横向
portrait 竖向
source
sourcePassword string 源文件密码,支持有密码的 Word、PPT、Excel 文件类型 无

输入 PDF 相关(inputFormat=pdf)

参数 类型 备注 默认值
pageRanges string 要转换的 PDF 页码。非CAD文件不传时转换全部页。可传列表或范围,例如:1,3,5-7。输出 DWG/DXF 时不传则转换第 1 页,需要全部页时可传 1- DWG/DXF:第 1 页;其它输出:全部页
ocrMode string PDF 转为 Word/PPT/Excel/Txt/OFD/Markdown 时: OCR 模式:
off 不做 OCR
auto 自动 OCR
force 强力 OCR(针对加密、编码不正确导致的乱码、叠字、未 OCR 文字等问题)

PDF 转 PDF 时:
off 不识别
auto 识别扫描版文字,使输出 PDF 中文字可选可搜索
PDF→文档:自动 OCR;

PDF→PDF:off
ocrLanguage string OCR 识别语言,使用 BCP 47 标签,例如 zh-CN、en。取值见附录 OCR 语言(ocrLanguage) zh-CN
sourcePassword string PDF 文件密码,无密码可不传 无
vectorizeText boolean PDF 转 PDF 且开启 OCR 时:是否用矢量文字替换图片内文字,使放大后仍清晰 false

输入图片相关(inputFormat 为 jpg/png/img 等,或 input 为图片数组)

参数 类型 备注 默认值
ocrLanguage string OCR 识别语言,BCP 47 标签。取值见附录 OCR 语言(ocrLanguage) zh-CN
ocrMode string off 不识别
auto 识别图中文字
off
dewarp boolean 是否切边矫正。打开后每次只允许传入一张图(短边大于 20,长边小于 10000) false
deskew boolean 是否倾斜矫正 false
backgroundMode string 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时:
auto 智能保留背景
remove 完全清除背景
preserve 完全保留背景
auto
autoRotate boolean 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 是否根据文字方向自动旋转。传 false 可加快速度(已确定文字方向时) true
pageSize string 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 页面大小:
source 维持原图比例
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
detectBarcodes boolean 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 是否识别条码和二维码,并避开码区以提高识别精度 false
splitSpreadPages boolean 横向图若有左右两部分(常见于试卷)时分割为 2 页。 false
grayscale boolean 图片转 PDF/HTML 时: 是否输出灰度图 false
vectorizeText boolean 图片转 PDF/HTML 且开启 OCR 时: 是否用矢量文字替换图片内文字 false
imagePageWidth integer 图片转 PDF/HTML 时: 统一每页固定宽度(像素),最大 4096。设置后转 PDF 时会使 pageSize 失效 不限制
tableDetection string 是否识别表格:
auto(默认):自动,转为 PPTX 时关闭,其他格式开启
on:开启
off:关闭
auto

输入网址 / 网页相关(inputFormat=url,或 html / md 等)

参数 类型 备注 默认值
webViewport string 视口模式:
desktop 桌面端网页
mobile 移动端网页
desktop
webViewportWidth integer 桌面端显示时网页最大宽度,最大 1920 1440
pageMargins string 页面边距,按顺序左 上 右 下,单位可为 px / in / cm / mm。例如:1px 2px 3px 4px 网址/HTML:左右 0、上下 1cm
Markdown:四边 0.55in
webWaitSeconds integer 停留后再抓取页面,单位秒,范围 0–30 0
webTimeoutSeconds integer 加载资源超时时间,单位秒,范围 1–120 40
webSinglePage boolean 是否生成单页长文档。打开后 pageMargins 失效。主要用于输出 PDF false
webTextOnly boolean 是否按文本模式抽取网页内容 false
webExtractMainContent boolean 是否抽取正文阅读区域 false
markdownTheme string 仅当输入为 Markdown 时,设置 Markdown 渲染主题。可选值:monet(莫奈)、vangogh(梵高)、rembrandt(伦勃朗)、vermeer(维米尔)、picasso(毕加索)、kandinsky(康定斯基)、davinci(达·芬奇) 不传或传空时使用默认样式
pageSize string 输出页面大小,仅在输出为 pdf / docx / pptx 时有效:
source 自动/A4
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientation string 输出页面方向:
source 不变
landscape 横向
portrait 竖向
source

输入 EPUB 相关(inputFormat=epub 等)

参数 类型 备注 默认值
epubFontSizePt integer 输出字体大小,单位 pt(磅) 自动
epubLineHeightPercent integer 输出行高,单位百分比。例如 120 表示行高为字号的 120% 自动
epubPageSizeCm string 自定义页面大小,单位厘米,格式 宽x高,例如 7.2x15.5。设置后会覆盖 pageSize 自动
epubMarginsPt string 页面边距,单位 pt,格式:左 上 右 下,例如 5 5 5 5 自动

输入 CAD 文件相关(inputFormat 为 dwg / dxf 等)

参数 类型 备注 默认值
cadIncludeLayers boolean 是否生成 Layer 层 false
cadUseDisplaySettings boolean 是否按 Display 显示设置导出 false
cadQuality integer 输出品质,取值 1–5,越高越好 3
cadRemoveEmptyPages boolean 是否删除空页 false

通用输出

参数 类型 备注 默认值
outputFileName string 生成文件的文件名 随机
callbackUrl string 回调 URL,转换结束后会回调该 URL,详细见 回调URL 无

输出 PDF 相关(outputFormat=pdf)

参数 类型 备注 默认值
pdfLinearized boolean 是否线性化(快速 Web 显示 / 流式显示) false
compressionLevel string 压缩级别:
none 不压缩
low 低
medium 中
high 高
none
pdfFlattenAnnotations boolean 是否扁平化(注释合并到 PDF) false
pdfImageOnly boolean 是否生成纯图片 PDF false
pageSize string 页面大小。源为 Word/Excel/TXT/HTML/Epub、图片时生效:
source 跟随源文档(无则 A4);源为图片时:长图保持原图、非长图按 A4 策略
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientationAdjustment string 统一调整所有页方向:
none 不调整
portraitClockwise 竖屏(横屏页顺时针 90°)
portraitCounterclockwise 竖屏(横屏页逆时针 90°)
landscapeClockwise 横屏(竖屏页顺时针 90°)
landscapeCounterclockwise 横屏(竖屏页逆时针 90°)
none
pageSplitCount integer 将每一页按长边等分为多页,例如试卷分为左右两页。最小为 2 不拆分
includePageSizeMetadata boolean 是否返回每一页的尺寸信息 false
pdfUserPassword string 生成 PDF 的用户密码(打开文件时需要) 无
pdfOwnerPassword string 生成 PDF 的所有者密码(修改文件时需要) 无
pdfPermissions string数组 有密码时的权限集合,可选值:
print 打印
copy 拷贝内容
edit 编辑
无权限

输出图片相关(outputFormat=jpg / png)

图片格式由 outputFormat 决定。通过 imageOutputMode 选择每页一图、长图或动图;动图固定输出 GIF,outputFormat 不影响动图格式。

参数 类型 备注 默认值
imageOutputMode string 输出模式:
separateImages 每页一图
longImage 长图
animatedGif 动图(GIF)
separateImages
imageMaxDimension integer separateImages 时为每个图最大宽或高,最大 20000;animatedGif 时最大 2000 自动
longImageWidth integer longImage 时长图宽度,最大 2000 自动
animationFrameDurationSeconds integer animatedGif 时每帧持续秒数,最小 1 1
pageOrientationAdjustment string 统一调整所有页方向,取值同输出 PDF 的 pageOrientationAdjustment none
grayscale boolean 是否输出灰度图 false
pageSplitCount integer 将每一页按长边等分为多页,最小为 2 不拆分
pageRanges string 如果源文件是 PDF,指定转换页码,例如:1,3,5-7 全部页

输出 HTML 相关(outputFormat=html)

参数 类型 备注 默认值
includeOutline boolean 如果有大纲,是否生成大纲 false
htmlOutputMode string HTML 输出模式:
fullDocument 完整文档
embedded 嵌入式 HTML(适合放入网页编辑器等场景,如 Word 转 HTML)
fullDocument

输出 Word/PPT/Excel/Txt/OFD/Markdown 相关(outputFormat 为 docx / pptx / xlsx / txt / ofd / md 等)

参数 类型 备注 默认值
wordIncludeImages boolean 转为 Word 时是否保留图片 true
wordLayout string 转为 Word 时的布局:
flow 流式布局
fixed 绝对布局(位置更准,但不利于流式编辑)
flow
wordRemovePageBreaks boolean 转为 Word 时是否删除分页符 false
excelSheetMode string 转为 Excel 时工作表策略:
auto 按系统默认(PDF 在特定页数内可合并,否则每页一表;图片默认每图一表)
singleSheet 合并为一个工作表
sheetPerPage 每页/每图一个工作表(非 PDF 输入时按系统规则回落)
auto
textPreserveLayout boolean 转为 Txt 时是否保持原有布局 true
textOutputMode string 转为 Txt 时:
singleFile 所有页单个 txt
filePerPage 每页一个 txt 并打包为 zip
singleFile

输出水印相关

参数 类型 备注 默认值
watermarkText string 水印文字。输出 PDF 时最多 15 个字符;输出图片或 HTML 时最多 10 个字符 无
watermarkFontSizePt integer 水印字号,单位 pt 24
watermarkColor string 水印颜色,#RRGGBB 格式,必须 7 位 #000000
watermarkOpacityPercent integer 水印不透明度,取值 1–100,越小越透明 20
watermarkLayout string 水印布局:
center 文档中央一个水印
tiled 文档铺满水印
center

OCR 语言(ocrLanguage)

取值不区分大小写。

语言 ocrLanguage 语言 ocrLanguage 语言 ocrLanguage
简体中文 zh-CN / zh-Hans 英文 en 法文 fr
德文 de 日文 ja 韩文 ko
繁体中文 zh-TW / zh-Hant 意大利文 it 西班牙文 es
葡萄牙文 pt 俄文 ru 丹麦文 da
荷兰文 nl 芬兰文 fi 挪威文 no
瑞典文 sv 土耳其文 tr

备注:

  • 输入文件 URL 方式支持文件最大 1500M;Base64 方式最大 12M。
  • 最大转换时长:1小时,超过时间未完成则自动失败。
  • 转换完成后,下载链接有效时间:1小时。

上述最后2项有延长需求请联系客服: 客服二维码


回调URL:

用途: 客户可以自行部署服务器,系统转换结束后会调用客户提供的回调URL,直接发送转换结果,从而无需再轮询查询结果。

在转换请求的 options 中传入 callbackUrl。当设置了回调URL,转换结束后(无论成功失败),系统都会尝试调用该URL,具体如下:

以POST方式调用该URL,Header头中Content-Type: application/json

Body为JSON格式,内容和查询结果的结果相同。例如单文件:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurl":"https://file.duhuitech.com/o/xxx/xxx.docx",
		"filesize":17747,
		"count":1
	}
}

文档转图片时同样返回 fileurls:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.png",
			"https://file.duhuitech.com/o/xxx/2.png"
		],
		"count":2,
		"filesize":120000
	}
}

服务端收到该POST后需在10秒内返回HTTP STATUS CODE 200,视为调用成功,否则系统认为回调失败,会再次尝试。规则如下:

系统共计最多会调用3次回调URL,如果第一次失败,则等待3秒后尝试第二次,如果第二次失败,则等待5秒后尝试第三次,如果第三次失败,则不再尝试。

回调URL超时时间10秒。


关于下载转换后的文件需支持302跳转

接口返回的下载地址(如 fileurl / fileurls)会经 HTTP 302 跳转到实际文件。浏览器会自动跟随。

以下方式默认会跟随跳转,一般无需额外配置:

wget、Python requests / urllib、Node.js axios / got / fetch、Java OkHttp / HttpURLConnection、Go net/http、C# HttpClient、PHP file_get_contents、Objective-C / Swift NSURLSession / URLSession(含 Alamofire)

少数默认不跟随,需手动打开:

  • curl:加 -L,如 curl -L -o out.bin "下载地址"
  • Java java.net.http.HttpClient:设置 .followRedirects(HttpClient.Redirect.NORMAL)
  • PHP curl 扩展:设置 CURLOPT_FOLLOWLOCATION => true

若只拿到 302 响应、本地没有文件内容,多半是未跟随跳转,按上面说明打开对应选项即可。


错误码表:

返回的code如果是10000,代表成功,其余是失败

JSON里返回的code 错误信息
40000 通用错误
40001 参数错误
40002 参数不符合规范

附录:华为签名方式

参考链接:

https://support.huaweicloud.com/usermanual-apig/apig-ug-0011.html

调用华为云市场API需要按照华为官方文档进行签名认证。

腾讯云接口参考

独立接口 · 主机、参数与认证按本渠道正文

本渠道认证说明

概述

80+种格式互转,70+个自定义参数!能进行各种常见格式之间的互相转换,不仅是word等office文件和pdf互转。拥有强大的OCR支持,对扫描件、拍照件可识别成可编辑 Word/Excel、可改可搜PDF,拍照表格可进 Excel,网址可导出正式文件等。提供了丰富的自定义参数,支持水印、压缩,加解密、页面大小范围等等。按次计费、不按页数。

使用流程

  1. 调用文档格式转换接口,提交输入文件和转换参数。
  2. 接口立即返回 token,表示任务已创建成功。
  3. 后续通过以下任一方式获取结果: 调用查询结果接口轮询任务状态;或在 options 中传入 callbackUrl,等待系统回调,详细见回调URL。

调用文档格式转换 API 需要签名,详细见文档附录:腾讯签名规则。

文档格式转换

域名:

https://ap-shanghai.cloudmarket-apigw.com/service-i0k5hgdj/convert_async

HTTP方式: POST

Header中的Content-Type传入application/json

Body是JSON格式

必须签名才能调用成功,签名见腾讯签名规则:

支持的输出格式

类型 扩展名(outputFormat 取值) 备注
PDF pdf
图片 jpg, png 通过 options.imageOutputMode 选择每页一图、长图或动图;动图固定输出 GIF,与 outputFormat 无关
HTML html 默认适合阅读;需要适合编辑(如放入网页编辑器)时,通过 options.htmlOutputMode 设置
微软 Office docx, pptx, xlsx
开放版式文档 ofd
文本文件 txt
Markdown md
CAD 图纸 dwg, dxf 仅支持 PDF 输入

支持的输入格式

类型 扩展名(inputFormat 取值) 备注
PDF文件 pdf
微软Office文档 doc, docx, ppt, pptx, xls, xlsx, pot, pps, ppsx, csv
WPS文档 wps, wpt, dps, dpt, et, ett
苹果iWork文档 pages, key, numbers
开放版式文档 ofd
电子刊物 caj, nh, kdh
电子书 epub, chm, mobi, azw, azw3, fb2, cbr, cbz, djvu
Markdown md
SVG svg
CAD文档 dwg, dxf, dwt, dws, dwf, dwfx, dxb, dgn, plt, cf2, cgm
3D模型 obj, 3ds, stl, gltf, glb, fbx, dae, ifc, step, stp, iges, igs, fcstd, brep, ply 静态预览(平面示意图,按 6 个视角展示:等轴测 / 前 / 右 / 顶 / 后 / 左,便于快速查看模型外观;非可旋转的交互式 3D)
Figma和Sketch fig, sketch
网页文件 html, htm, mht, eml
图片文件 png, jpg, jpeg, gif, tif, tiff, bmp, webp, ai 等 可统一传 img
文本文件 txt, rtf, java, js, c, cpp, jsp, css, xml, properties, log 等 可统一传 txt
网址网页 url 输入必须是单个 HTTP/HTTPS URL

请求参数

参数 类型 备注 默认值
input string 或 string数组 输入文件。字符串:单个 URL(最大 1500M)或 Base64(最大 8M);数组:多张图片(URL / Base64 可混合) 必须发送
outputFormat string 目标格式,见上方输出格式表 必须发送
inputFormat string 源文件类型。可省略,由系统自动识别;网页抓取必须显式传 url 自动识别
options dictionary 可选转换参数,不传则用系统默认值;完整参数见附录 options 参数 无

多数场景只需传 input 与 outputFormat 即可完成转换。需要精细控制时,可在 options 中传入可选参数,例如:

  • Office / PDF / 图片 / 网页 / EPUB / CAD:页码范围、OCR、密码、审阅标记、Excel 页边距与工作表、PPT 讲义布局、图片纠偏与背景、网页视口与边距、CAD 图层与品质等
  • 输出控制:文件名、回调 URL、PDF 压缩/加密/线性化、图片每页一图/长图/动图、HTML 大纲与嵌入模式、Word/Excel/Txt 布局策略、水印等

请求示例

  • 例1: Word 转 PDF
{"input": "http://xxx.docx", "outputFormat": "pdf"}
  • 例2: Word 转 PNG(每页一张图)
{"input": "http://xxx.docx", "outputFormat": "png"}
  • 例3: PDF 转长图
{"input": "http://xxx.pdf", "outputFormat": "png", "options": {"imageOutputMode": "longImage", "longImageWidth": 1200}}
  • 例4: PPT 转动图
{"input": "http://xxx.pptx", "outputFormat": "jpg", "options": {"imageOutputMode": "animatedGif", "animationFrameDurationSeconds": 2}}
  • 例5: PDF 转 Word,并指定 OCR
{
  "input": "http://xxx.pdf",
  "inputFormat": "pdf",
  "outputFormat": "docx",
  "options": {"ocrMode": "auto", "ocrLanguage": "zh-CN"}
}
  • 例6: 多张图片转 Word(URL 与 Base64 可混合)
{
  "input": ["http://xxx.png", "base64图片1", "base64图片2"],
  "outputFormat": "docx"
}
  • 例7: Base64 文档转 HTML,指定结果文件名
{
  "input": "base64字符串",
  "inputFormat": "docx",
  "outputFormat": "html",
  "options": {"outputFileName": "result"}
}
  • 例8: 网页 URL 转 Word
{
  "input": "https://www.xxx.com/xxx",
  "inputFormat": "url",
  "outputFormat": "docx"
}
  • 例9: 网页 URL 转 Word,并设置回调
{
  "input": "https://www.example.com/article/123",
  "inputFormat": "url",
  "outputFormat": "docx",
  "options": {
    "callbackUrl": "https://api.example.com/callback"
  }
}
  • 例10: PDF 第 2 页转 DWG
{
  "input": "http://xxx.pdf",
  "outputFormat": "dwg",
  "options": {"pageRanges": "2"}
}
  • 例11: PDF 第 1、3、5-7 页转 DWG(每个 PDF 页对应一个 Layout)
{
  "input": "http://xxx.pdf",
  "outputFormat": "dwg",
  "options": {"pageRanges": "1,3,5-7"}
}
  • 例12: Excel 转 PDF,并将每张工作表调整为一页
{
  "input": "http://xxx.xlsx",
  "outputFormat": "pdf",
  "options": {"excelPageFitMode": "fitSheetOnOnePage"}
}

返回数据结构

名称 类型 是否必须返回 备注
code number 是 10000:请求成功
msg string 是
result Dictionary 否 成功后返回

result:

名称 类型 是否必须返回 备注
token string 是 用于查询结果接口

返回示例(成功状态):

{
    "code":10000,
    "msg":"",
    "result":{"token":"YOUR_CREDENTIAL"}
}

返回示例(失败状态):

{
    "code":40001,
    "msg":"ParmNotRight"
}

转换能力说明

  • 输入与输出格式可任意组合,但inputFormat 与 outputFormat 相同时会直接报错(例如 docx→docx 不合法)。特例:pdf→pdf 合法。
  • Office 新旧格式可互转(doc→docx、ppt→pptx、xls→xlsx)保留原生 Office 结构。
  • input 为数组时只支持图片,不能传文档数组。最大支持50张图。
  • inputFormat=url 时,input 必须是单个 HTTP/HTTPS URL 字符串,不能是数组、Base64 或 ftp。
  • PDF 转 DWG/DXF 支持单页或多页,仅适用于包含线条或文字等矢量内容的 PDF。扫描件和纯图片页不会自动矢量化。OCR、纠偏、背景清理等图片识别参数不生效。所选页全部无矢量内容时会明确返回失败,而不是生成仅引用临时图片的 CAD 文件;多页中仅部分页无矢量时,这些页生成空 Layout,其余页正常转换。单页结果在模型空间。多页为单个 CAD 文件,每个 PDF 页对应一个 Layout(图纸空间),名称如 page-1。多页 DXF 以 zip 包返回(内含一个 dxf 文件);单页 DXF 和 DWG 直接返回对应文件。

查询结果

调用方式: GET(无需签名)

https://api.duhuitech.com/q?token=YOUR_TOKEN

请求参数:

参数 类型 备注 是否必须发送
token string 调用转换接口拿到的 token 是

由于转换需要时间,文件越大页数越多,转换越久,故需要轮询查询接口来获得结果。查询频率可以是1s一次,也可以更长一些。 查询后先看status,如果是Done或Failed,则转换结束,停止轮询。如果是Doing或Pending,则继续轮询。

返回数据结构:

名称 类型 是否必须返回 备注
code number 是 10000:请求成功
msg string 是
token string 是 请求的token
result Dictionary 否 成功后返回

result:

名称 含义 类型 是否必须返回 备注
status 状态 string 是 Pending:还未开始
Doing:正在转换
Done:转换成功
Failed:转换失败
progress 进度 number 否(status为Doing/Pending时返回) 范围:0.00 - 1.00,比如0.88表示88%
fileurl 输出文件地址 string 否(status为Done,且非文档转图片时返回) PDF、HTML、Office、文本等单文件输出均返回该字段
fileurls 输出图片地址数组 string数组 否(status为Done,且文档转图片时返回) 文档转图片始终返回 fileurls,即使只有一页;不会返回 fileurl
count 页数 / 图片数 integer 否(status为Done时返回) 单文件输出为页数;文档转图片为图片张数
filesize 文件大小 integer 否(status为Done时返回) 输出文件大小
pagesizes 每页尺寸 array 否 部分转 PDF 且请求了页面尺寸信息时返回
reason 失败原因 string 否(status为Failed时可能返回) 转换失败的原因

结果读取规则:

  1. 先看 status。
  2. 若 status=Done:
    • outputFormat 为 jpg / png(文档转图片):读取 fileurls(数组;长图和动图也各返回一个 URL)。
    • 其他输出格式:读取 fileurl(单个字符串)。
  3. 若 status=Failed:读取 reason。
  4. 若 status=Doing 或 Pending:可读取 progress,继续轮询。

返回示例(进行中):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"progress":0.02,
		"status":"Doing"
	}
}

返回示例(成功,单文件,如 PDF/Word/HTML):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurl":"https://file.duhuitech.com/o/xxx/xxx.pdf",
		"count":10,
		"filesize":17747
	}
}

返回示例(成功,文档转图片,多页):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.png",
			"https://file.duhuitech.com/o/xxx/2.png",
			"https://file.duhuitech.com/o/xxx/3.png"
		],
		"count":3,
		"filesize":1649699
	}
}

返回示例(成功,文档转图片,仅一页也返回数组):

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.jpg"
		],
		"count":1,
		"filesize":20480
	}
}

返回示例(失败状态):

{
	"code":40000,
	"msg":"No such token"
}

或:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Failed",
		"reason":"convert failed"
	}
}

参数列表 options

注意事项:整数参数使用标准 JSON 数字,布尔使用 JSON true / false,枚举使用语义字符串(如 source / landscape / portrait)。未知字段、类型错误、枚举或范围错误会返回参数错误。

输入 Office 文件相关(inputFormat 为 Word / PPT / Excel / WPS 等)

参数 类型 备注 默认值
wordShowMarkup boolean 如果是 Word 文件,是否显示审阅标记 false
powerPointLayout string 如果是 PPT 文件,导出样式:
slides 幻灯片
oneSlideHandout 每页一个幻灯片
twoSlideHandout 每页两个幻灯片
threeSlideHandout 每页三个幻灯片
fourSlideHandout 每页四个幻灯片
sixSlideHandout 每页六个幻灯片
nineSlideHandout 每页九个幻灯片
slides
powerPointHandoutOrder string 如果是 PPT 讲义模式,排列顺序:
horizontal 水平
vertical 垂直
horizontal
powerPointHandoutOrientation string 如果是 PPT 讲义模式,页面方向:
source 不改变
landscape 横向
portrait 纵向
source
excelCenterOnPage string 如果是 Excel 文件,内容居中方式:
none 不居中
both 横竖居中
horizontal 仅横向居中
vertical 仅纵向居中
none
excelMargin integer 如果是 Excel 文件,四边边距,单位 points(磅),不能为负数 使用文件默认
excelSheetIndex integer 如果是 Excel 文件,指定转换的 Sheet 序号;第一页为 1,省略表示全部 全部
excelShowGridlines boolean 如果是 Excel 文件,是否显示网格线 true
excelContentRange string 如果是 Excel 文件,内容范围:
default 默认
printArea 使用打印区域
usedRange 只显示有内容的区域
default
excelPageFitMode string Excel 输出 PDF 时的页面缩放方式:
noScaling 无缩放,按 100% 比例输出
fitColumnsOnOnePage 将所有列调整为一页宽
fitSheetOnOnePage 将每张工作表调整为一页
fitRowsOnOnePage 将所有行调整为一页高
未传时保持现有转换逻辑;与 excelContentRange=printArea 同时使用时,显式设置该参数仍会保留打印区域
将所有列调整为一页宽(使用打印区域时除外)
pageSize string 如果是 Excel 等文件,设定页面大小:
source 跟随源文档(无则按系统默认)
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientation string 如果是 Word、Excel、TXT、HTML、Markdown、网址,设定页面方向:
source 不变
landscape 横向
portrait 竖向
source
sourcePassword string 源文件密码,支持有密码的 Word、PPT、Excel 文件类型 无

输入 PDF 相关(inputFormat=pdf)

参数 类型 备注 默认值
pageRanges string 要转换的 PDF 页码。非CAD文件不传时转换全部页。可传列表或范围,例如:1,3,5-7。输出 DWG/DXF 时不传则转换第 1 页,需要全部页时可传 1- DWG/DXF:第 1 页;其它输出:全部页
ocrMode string PDF 转为 Word/PPT/Excel/Txt/OFD/Markdown 时: OCR 模式:
off 不做 OCR
auto 自动 OCR
force 强力 OCR(针对加密、编码不正确导致的乱码、叠字、未 OCR 文字等问题)

PDF 转 PDF 时:
off 不识别
auto 识别扫描版文字,使输出 PDF 中文字可选可搜索
PDF→文档:自动 OCR;

PDF→PDF:off
ocrLanguage string OCR 识别语言,使用 BCP 47 标签,例如 zh-CN、en。取值见附录 OCR 语言(ocrLanguage) zh-CN
sourcePassword string PDF 文件密码,无密码可不传 无
vectorizeText boolean PDF 转 PDF 且开启 OCR 时:是否用矢量文字替换图片内文字,使放大后仍清晰 false

输入图片相关(inputFormat 为 jpg/png/img 等,或 input 为图片数组)

参数 类型 备注 默认值
ocrLanguage string OCR 识别语言,BCP 47 标签。取值见附录 OCR 语言(ocrLanguage) zh-CN
ocrMode string off 不识别
auto 识别图中文字
off
dewarp boolean 是否切边矫正。打开后每次只允许传入一张图(短边大于 20,长边小于 10000) false
deskew boolean 是否倾斜矫正 false
backgroundMode string 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时:
auto 智能保留背景
remove 完全清除背景
preserve 完全保留背景
auto
autoRotate boolean 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 是否根据文字方向自动旋转。传 false 可加快速度(已确定文字方向时) true
pageSize string 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 页面大小:
source 维持原图比例
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
detectBarcodes boolean 图片转为 Word/PPT/Excel/Txt/OFD/Markdown 时: 是否识别条码和二维码,并避开码区以提高识别精度 false
splitSpreadPages boolean 横向图若有左右两部分(常见于试卷)时分割为 2 页。 false
grayscale boolean 图片转 PDF/HTML 时: 是否输出灰度图 false
vectorizeText boolean 图片转 PDF/HTML 且开启 OCR 时: 是否用矢量文字替换图片内文字 false
imagePageWidth integer 图片转 PDF/HTML 时: 统一每页固定宽度(像素),最大 4096。设置后转 PDF 时会使 pageSize 失效 不限制
tableDetection string 是否识别表格:
auto(默认):自动,转为 PPTX 时关闭,其他格式开启
on:开启
off:关闭
auto

输入网址 / 网页相关(inputFormat=url,或 html / md 等)

参数 类型 备注 默认值
webViewport string 视口模式:
desktop 桌面端网页
mobile 移动端网页
desktop
webViewportWidth integer 桌面端显示时网页最大宽度,最大 1920 1440
pageMargins string 页面边距,按顺序左 上 右 下,单位可为 px / in / cm / mm。例如:1px 2px 3px 4px 网址/HTML:左右 0、上下 1cm
Markdown:四边 0.55in
webWaitSeconds integer 停留后再抓取页面,单位秒,范围 0–30 0
webTimeoutSeconds integer 加载资源超时时间,单位秒,范围 1–120 40
webSinglePage boolean 是否生成单页长文档。打开后 pageMargins 失效。主要用于输出 PDF false
webTextOnly boolean 是否按文本模式抽取网页内容 false
webExtractMainContent boolean 是否抽取正文阅读区域 false
markdownTheme string 仅当输入为 Markdown 时,设置 Markdown 渲染主题。可选值:monet(莫奈)、vangogh(梵高)、rembrandt(伦勃朗)、vermeer(维米尔)、picasso(毕加索)、kandinsky(康定斯基)、davinci(达·芬奇) 不传或传空时使用默认样式
pageSize string 输出页面大小,仅在输出为 pdf / docx / pptx 时有效:
source 自动/A4
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientation string 输出页面方向:
source 不变
landscape 横向
portrait 竖向
source

输入 EPUB 相关(inputFormat=epub 等)

参数 类型 备注 默认值
epubFontSizePt integer 输出字体大小,单位 pt(磅) 自动
epubLineHeightPercent integer 输出行高,单位百分比。例如 120 表示行高为字号的 120% 自动
epubPageSizeCm string 自定义页面大小,单位厘米,格式 宽x高,例如 7.2x15.5。设置后会覆盖 pageSize 自动
epubMarginsPt string 页面边距,单位 pt,格式:左 上 右 下,例如 5 5 5 5 自动

输入 CAD 文件相关(inputFormat 为 dwg / dxf 等)

参数 类型 备注 默认值
cadIncludeLayers boolean 是否生成 Layer 层 false
cadUseDisplaySettings boolean 是否按 Display 显示设置导出 false
cadQuality integer 输出品质,取值 1–5,越高越好 3
cadRemoveEmptyPages boolean 是否删除空页 false

通用输出

参数 类型 备注 默认值
outputFileName string 生成文件的文件名 随机
callbackUrl string 回调 URL,转换结束后会回调该 URL,详细见 回调URL 无

输出 PDF 相关(outputFormat=pdf)

参数 类型 备注 默认值
pdfLinearized boolean 是否线性化(快速 Web 显示 / 流式显示) false
compressionLevel string 压缩级别:
none 不压缩
low 低
medium 中
high 高
none
pdfFlattenAnnotations boolean 是否扁平化(注释合并到 PDF) false
pdfImageOnly boolean 是否生成纯图片 PDF false
pageSize string 页面大小。源为 Word/Excel/TXT/HTML/Epub、图片时生效:
source 跟随源文档(无则 A4);源为图片时:长图保持原图、非长图按 A4 策略
a3 A3
a4 A4
a5 A5
b4 B4
b5 B5
letter Letter
legal Legal
tabloid Tabloid
ledger Ledger
source
pageOrientationAdjustment string 统一调整所有页方向:
none 不调整
portraitClockwise 竖屏(横屏页顺时针 90°)
portraitCounterclockwise 竖屏(横屏页逆时针 90°)
landscapeClockwise 横屏(竖屏页顺时针 90°)
landscapeCounterclockwise 横屏(竖屏页逆时针 90°)
none
pageSplitCount integer 将每一页按长边等分为多页,例如试卷分为左右两页。最小为 2 不拆分
includePageSizeMetadata boolean 是否返回每一页的尺寸信息 false
pdfUserPassword string 生成 PDF 的用户密码(打开文件时需要) 无
pdfOwnerPassword string 生成 PDF 的所有者密码(修改文件时需要) 无
pdfPermissions string数组 有密码时的权限集合,可选值:
print 打印
copy 拷贝内容
edit 编辑
无权限

输出图片相关(outputFormat=jpg / png)

图片格式由 outputFormat 决定。通过 imageOutputMode 选择每页一图、长图或动图;动图固定输出 GIF,outputFormat 不影响动图格式。

参数 类型 备注 默认值
imageOutputMode string 输出模式:
separateImages 每页一图
longImage 长图
animatedGif 动图(GIF)
separateImages
imageMaxDimension integer separateImages 时为每个图最大宽或高,最大 20000;animatedGif 时最大 2000 自动
longImageWidth integer longImage 时长图宽度,最大 2000 自动
animationFrameDurationSeconds integer animatedGif 时每帧持续秒数,最小 1 1
pageOrientationAdjustment string 统一调整所有页方向,取值同输出 PDF 的 pageOrientationAdjustment none
grayscale boolean 是否输出灰度图 false
pageSplitCount integer 将每一页按长边等分为多页,最小为 2 不拆分
pageRanges string 如果源文件是 PDF,指定转换页码,例如:1,3,5-7 全部页

输出 HTML 相关(outputFormat=html)

参数 类型 备注 默认值
includeOutline boolean 如果有大纲,是否生成大纲 false
htmlOutputMode string HTML 输出模式:
fullDocument 完整文档
embedded 嵌入式 HTML(适合放入网页编辑器等场景,如 Word 转 HTML)
fullDocument

输出 Word/PPT/Excel/Txt/OFD/Markdown 相关(outputFormat 为 docx / pptx / xlsx / txt / ofd / md 等)

参数 类型 备注 默认值
wordIncludeImages boolean 转为 Word 时是否保留图片 true
wordLayout string 转为 Word 时的布局:
flow 流式布局
fixed 绝对布局(位置更准,但不利于流式编辑)
flow
wordRemovePageBreaks boolean 转为 Word 时是否删除分页符 false
excelSheetMode string 转为 Excel 时工作表策略:
auto 按系统默认(PDF 在特定页数内可合并,否则每页一表;图片默认每图一表)
singleSheet 合并为一个工作表
sheetPerPage 每页/每图一个工作表(非 PDF 输入时按系统规则回落)
auto
textPreserveLayout boolean 转为 Txt 时是否保持原有布局 true
textOutputMode string 转为 Txt 时:
singleFile 所有页单个 txt
filePerPage 每页一个 txt 并打包为 zip
singleFile

输出水印相关

参数 类型 备注 默认值
watermarkText string 水印文字。输出 PDF 时最多 15 个字符;输出图片或 HTML 时最多 10 个字符 无
watermarkFontSizePt integer 水印字号,单位 pt 24
watermarkColor string 水印颜色,#RRGGBB 格式,必须 7 位 #000000
watermarkOpacityPercent integer 水印不透明度,取值 1–100,越小越透明 20
watermarkLayout string 水印布局:
center 文档中央一个水印
tiled 文档铺满水印
center

OCR 语言(ocrLanguage)

取值不区分大小写。

语言 ocrLanguage 语言 ocrLanguage 语言 ocrLanguage
简体中文 zh-CN / zh-Hans 英文 en 法文 fr
德文 de 日文 ja 韩文 ko
繁体中文 zh-TW / zh-Hant 意大利文 it 西班牙文 es
葡萄牙文 pt 俄文 ru 丹麦文 da
荷兰文 nl 芬兰文 fi 挪威文 no
瑞典文 sv 土耳其文 tr

备注:

  • 输入文件 URL 方式支持文件最大 1500M;Base64 方式最大 10M。
  • 最大转换时长:1小时,超过时间未完成则自动失败。
  • 转换完成后,下载链接有效时间:1小时。

上述最后2项有延长需求请联系客服: 客服二维码


回调URL:

用途: 客户可以自行部署服务器,系统转换结束后会调用客户提供的回调URL,直接发送转换结果,从而无需再轮询查询结果。

在转换请求的 options 中传入 callbackUrl。当设置了回调URL,转换结束后(无论成功失败),系统都会尝试调用该URL,具体如下:

以POST方式调用该URL,Header头中Content-Type: application/json

Body为JSON格式,内容和查询结果的结果相同。例如单文件:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurl":"https://file.duhuitech.com/o/xxx/xxx.docx",
		"filesize":17747,
		"count":1
	}
}

文档转图片时同样返回 fileurls:

{
	"code":10000,
	"msg":"",
	"token":"YOUR_CREDENTIAL",
	"result":
	{
		"status":"Done",
		"fileurls":[
			"https://file.duhuitech.com/o/xxx/1.png",
			"https://file.duhuitech.com/o/xxx/2.png"
		],
		"count":2,
		"filesize":120000
	}
}

服务端收到该POST后需在10秒内返回HTTP STATUS CODE 200,视为调用成功,否则系统认为回调失败,会再次尝试。规则如下:

系统共计最多会调用3次回调URL,如果第一次失败,则等待3秒后尝试第二次,如果第二次失败,则等待5秒后尝试第三次,如果第三次失败,则不再尝试。

回调URL超时时间10秒。


关于下载转换后的文件需支持302跳转

接口返回的下载地址(如 fileurl / fileurls)会经 HTTP 302 跳转到实际文件。浏览器会自动跟随。

以下方式默认会跟随跳转,一般无需额外配置:

wget、Python requests / urllib、Node.js axios / got / fetch、Java OkHttp / HttpURLConnection、Go net/http、C# HttpClient、PHP file_get_contents、Objective-C / Swift NSURLSession / URLSession(含 Alamofire)

少数默认不跟随,需手动打开:

  • curl:加 -L,如 curl -L -o out.bin "下载地址"
  • Java java.net.http.HttpClient:设置 .followRedirects(HttpClient.Redirect.NORMAL)
  • PHP curl 扩展:设置 CURLOPT_FOLLOWLOCATION => true

若只拿到 302 响应、本地没有文件内容,多半是未跟随跳转,按上面说明打开对应选项即可。


错误码表:

返回的code如果是10000,代表成功,其余是失败

JSON里返回的code 错误信息
40000 通用错误
40001 参数错误
40002 参数不符合规范

附录:腾讯签名方式

V2签名:

https://cloud.tencent.com/document/product/306/57449

建议使用腾讯提供的各种语言的SDK,例如Java:

https://cloud.tencent.com/document/product/306/57449#Java

V1签名:

本产品不支持V1签名方式

接入时请核对当前渠道

使用已购服务对应的接口地址与认证信息,按本渠道正文处理提交、查询、回调和结果下载。

签名与鉴权开发文档首页

扫码联系度慧

企业微信客服二维码

企业微信技术咨询