智能印章
根据签章栏自动盖章,或在每页右侧加盖骑缝章;输出 PDF、图片或 OFD。
概述
对 Word、PDF、PPT、Excel、图片等常见文件加盖印章。可输出 PDF、JPG、PNG 或 OFD。按次计费、不按页数。本商品提供两个独立接口,请按场景选用:
使用流程
- 按需求调用文档自动盖章或文档加盖骑缝章,提交源文件、印章图片和输出参数。
- 接口立即返回
token,表示任务已创建成功。 - 后续通过以下任一方式获取结果:
调用查询结果接口轮询任务状态;或在
options中传入callbackUrl,等待系统回调,详细见回调URL。
调用上述 API 需要签名,详细见文档附录:阿里签名。
阿里云支持从OSS内网直接下载文件,节约流量,见:阿里云独有部分
文档自动盖章
https://sealfile.market.alicloudapi.com/autoseal
HTTP方式: POST
Header中的Content-Type传入application/json
Body是JSON格式
必须签名才能调用成功,签名见阿里签名规则:
https://help.aliyun.com/zh/api-gateway/traditional-api-gateway/use-cases/call-apis
支持的输出格式
pdf、jpg、png、ofd。输出 jpg / png 时固定每页一张图。
| 类型 | 扩展名(outputFormat 取值) | 备注 |
|---|---|---|
| 图片 | jpg, png | 每页一张图 |
| 开放版式文档 | ofd |
支持的输入格式
源文件支持下列格式。印章必须是图片,见下方请求参数中的 stampUrl。不支持 inputFormat=url(网页抓取)。
| 类型 | 扩展名(inputFormat 取值) | 备注 |
|---|---|---|
| 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 | string | 源文件。单个 URL(http / https / ftp,最大 1500M)或 Base64(最大 8M)。不能是数组。 | 必须发送 |
| stampUrl | string / string array | 印章图片。字符串或字符串数组(最多 20 枚)。每个元素为 URL(http / https / ftp,最大 1500M)或 Base64(最大 8M)。必须是图片(如 png、jpg、jpeg、gif、webp、bmp、tif)。 | 必须发送 |
| outputFormat | string | 目标格式:pdf / jpg / png / ofd |
必须发送 |
| inputFormat | string | 源文件类型。可省略,由系统自动识别。不支持 url |
自动识别 |
| options | dictionary | 可选参数,不传则用系统默认值;完整参数见附录 options 参数。 | 无 |
url 与 stampUrl 可分别使用 URL 或 Base64,允许混合,例如源文件用 URL、印章用 Base64;stampUrl 数组内也可 HTTP 与 Base64 混用。Base64总计最大8M。
盖章说明
- 盖什么:页面上的签章栏,例如「(公章)」「盖章处」、签章格、「法人名章处」。封面、条款正文、仅含公司介绍的附件默认不盖。
- 盖哪枚:多枚章时系统按签章栏自动对应。调用方只传印章图。
- 盖多大:公章 / 名章大小由系统按栏位自动选择。
- 找不到盖章处:任务成功,返回未盖章文件。
- 不是:数字签名。
- 页数上限:500 页。超出则任务失败。
印章要求
- 格式:必须是图片。建议使用红色印油的公章 / 名章图。支持透明底与非透明图;非透明图必须白底。
- 无可见印油:全白、全透明或印油过浅时任务失败,不会用空白图盖上去。
- 数量:1~20 枚。多枚时请按合同当事方准备对应的公章;同一方若还需法人名章,把名章图一并放入数组。
多数场景只需传 url、stampUrl 与 outputFormat。需要精细控制源文件转换时,可在 options 中传入页码范围、密码、回调 URL、输出文件名等,参数含义见 options 参数。
请求示例
- 例1: PDF 自动盖两枚公章,输出 PDF
{ "url": "http://xxx.pdf", "stampUrl": ["http://xxx/company-a.png", "http://xxx/company-b.png"], "outputFormat": "pdf" }
- 例2: Word 自动盖章(不传 inputFormat,由 URL 扩展名自动识别)
{"url": "http://xxx.docx", "stampUrl": "http://xxx/seal.png", "outputFormat": "pdf"}
- 例3: 源文件 URL,印章用 Base64
{ "url": "http://xxx.pdf", "stampUrl": "base64图片", "outputFormat": "pdf" }
- 例4: 源文件 Base64,印章用 URL
{ "url": "base64字符串", "stampUrl": "http://xxx/seal.png", "inputFormat": "pdf", "outputFormat": "pdf" }
- 例5: 源文件 HTTP,印章数组中 HTTP 与 Base64 混合
{ "url": "http://xxx.pdf", "stampUrl": ["http://xxx/company-a.png", "base64图片"], "outputFormat": "pdf" }
- 例6: 公章 + 法人名章
{ "url": "http://xxx.pdf", "stampUrl": ["http://xxx/official-seal.png", "http://xxx/name-seal.png"], "outputFormat": "pdf" }
- 例7: 输出 PNG,并指定结果文件名
{ "url": "http://xxx.pdf", "stampUrl": "http://xxx/seal.png", "outputFormat": "png", "options": {"outputFileName": "autosealed"} }
- 例8: 输出 OFD
{"url": "http://xxx.pdf", "stampUrl": "http://xxx/seal.png", "outputFormat": "ofd"}
- 例9: 设置回调
{ "url": "http://xxx.pdf", "stampUrl": "http://xxx/seal.png", "outputFormat": "pdf", "options": { "callbackUrl": "https://api.example.com/callback" } }
返回数据结构
| 名称 | 类型 | 是否必须返回 | 备注 |
|---|---|---|---|
| code | number | 是 | 10000:请求成功 |
| msg | string | 是 | |
| result | Dictionary | 否 | 成功后返回 |
result:
| 名称 | 类型 | 是否必须返回 | 备注 |
|---|---|---|---|
| token | string | 是 | 用于查询结果接口 |
返回示例(成功状态):
{
"code":10000,
"msg":"",
"result":{"token":"YOUR_CREDENTIAL"}
}
返回示例(失败状态):
{
"code":40001,
"msg":"ParmNotRight"
}
能力说明
url、stampUrl均可为 URL 或 Base64,可混合使用。stampUrl可以是字符串或字符串数组,最多 20 枚章。必须是图片。Base64 印章若不是图片,提交时会返回参数错误。- 输出
jpg/png时固定每页一张图。 - 本接口不进行 OCR,不会把扫描件识别成可搜索文字。
文档加盖骑缝章
https://sealfile.market.alicloudapi.com/sealfile
HTTP方式: POST
Header中的Content-Type传入application/json
Body是JSON格式
必须签名才能调用成功,签名见阿里签名规则:
https://help.aliyun.com/zh/api-gateway/traditional-api-gateway/use-cases/call-apis
支持的输出格式
| 类型 | 扩展名(outputFormat 取值) | 备注 |
|---|---|---|
| 图片 | jpg, png | 每页一张图 |
| 开放版式文档 | ofd |
支持的输入格式
源文件支持下列格式。印章图片见下方请求参数中的 stampUrl。
| 类型 | 扩展名(inputFormat 取值) | 备注 |
|---|---|---|
| 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 | string | 源文件。单个 URL(http / https / ftp,最大 1500M)或 Base64(最大 8M)。 | 必须发送 |
| stampUrl | string / string array | 印章图片。字符串或字符串数组(最多 5 枚)。每个元素为 URL(http / https / ftp,最大 1500M)或 Base64(最大 8M)。必须是图片(如 png、jpg、jpeg、gif、webp、bmp、tif)。 | 必须发送 |
| outputFormat | string | 目标格式,见上方输出格式表 | 必须发送 |
| inputFormat | string | 源文件类型。可省略,由系统自动识别 | 自动识别 |
| options | dictionary | 可选参数,不传则用系统默认值;完整参数见附录 options 参数 | 无 |
url 与 stampUrl 可分别使用 URL 或 Base64,允许混合,例如源文件用 URL、印章用 Base64。stampUrl 也可传字符串数组,一次加盖最多 5 枚骑缝章。Base64总计最大8M。
印章要求
- 格式:必须是图片,常见如 png、jpg、jpeg、gif、webp、bmp、tif。支持透明底与非透明图;非透明图必须白底。建议使用透明底 PNG。
- 怎么盖:系统按 PDF 页数把每枚印章从左到右均分成若干条,第 N 页贴第 N 条。1 枚章贴在每页右侧垂直居中;2~5 枚章按数组顺序从上往下均匀排列在右边缘。单页文档会在右侧加盖完整印章。
- 宽度:每枚印章图片的像素宽度必须 ≥ 文档页数(均分后每一条至少 1 像素),否则任务失败。例如 20 页的文档,印章宽度至少 20 像素。
- 建议:请使用较宽的横向印章,切开后每一条仍能看清。过窄或接近页数的宽度虽然能通过校验,但盖上后几乎看不见。
多数场景只需传 url、stampUrl 与 outputFormat。需要精细控制时,可在 options 中传入可选参数,例如:
- Office / PDF / 图片 / 网页文件 / EPUB / CAD:页码范围、密码、审阅标记、Excel 页边距与工作表、PPT 讲义布局、图片纠偏与背景、网页视口与边距、CAD 图层与品质等
- 输出控制:文件名、回调 URL、PDF 压缩/加密/线性化、图片最大边长、水印等
请求示例
- 例1: Word 加盖骑缝章,输出 PDF
{"url": "http://xxx.docx", "stampUrl": "http://xxx/seal.png", "outputFormat": "pdf"}
- 例2: PDF 加盖骑缝章(不传 inputFormat,由 URL 扩展名自动识别)
{"url": "http://xxx.pdf", "stampUrl": "http://xxx/seal.png", "outputFormat": "pdf"}
- 例3: Word 加盖骑缝章,输出 PNG(每页一张图)
{"url": "http://xxx.docx", "stampUrl": "http://xxx/seal.png", "outputFormat": "png"}
- 例4: PDF 加盖骑缝章,输出 OFD
{"url": "http://xxx.pdf", "stampUrl": "http://xxx/seal.png", "outputFormat": "ofd"}
- 例5: 源文件 Base64,印章用 URL
{ "url": "base64字符串", "stampUrl": "http://xxx/seal.png", "inputFormat": "docx", "outputFormat": "pdf" }
- 例6: 源文件 URL,印章用 Base64
{ "url": "http://xxx.docx", "stampUrl": "base64图片", "outputFormat": "pdf" }
- 例7: 源文件和印章都用 Base64,并指定结果文件名
{ "url": "base64字符串", "stampUrl": "base64图片", "inputFormat": "pdf", "outputFormat": "pdf", "options": {"outputFileName": "sealed"} }
- 例8: 一次加盖多枚骑缝章(最多 5 枚,按数组顺序从上往下)
{ "url": "http://xxx.pdf", "stampUrl": ["http://xxx/seal-a.png", "http://xxx/seal-b.png"], "outputFormat": "pdf" }
- 例9: 设置回调
{ "url": "http://xxx.docx", "stampUrl": "http://xxx/seal.png", "outputFormat": "pdf", "options": { "callbackUrl": "https://api.example.com/callback" } }
- 例10: 只盖 PDF 第 1、3、5-7 页
{ "url": "http://xxx.pdf", "stampUrl": "http://xxx/seal.png", "outputFormat": "pdf", "options": {"pageRanges": "1,3,5-7"} }
- 例11: 输出 JPG,限制图片最大边长
{ "url": "http://xxx.pdf", "stampUrl": "http://xxx/seal.png", "outputFormat": "jpg", "options": {"imageMaxDimension": 800} }
返回数据结构
| 名称 | 类型 | 是否必须返回 | 备注 |
|---|---|---|---|
| code | number | 是 | 10000:请求成功 |
| msg | string | 是 | |
| result | Dictionary | 否 | 成功后返回 |
result:
| 名称 | 类型 | 是否必须返回 | 备注 |
|---|---|---|---|
| token | string | 是 | 用于查询结果接口 |
返回示例(成功状态):
{
"code":10000,
"msg":"",
"result":{"token":"YOUR_CREDENTIAL"}
}
返回示例(失败状态):
{
"code":40001,
"msg":"ParmNotRight"
}
能力说明
- 印章的格式、宽度和盖章方式见上方印章要求。
url、stampUrl均可为 URL 或 Base64,可混合使用。stampUrl可以是字符串或字符串数组,最多 5 枚章。必须是图片。Base64 印章若不是图片,提交时会返回参数错误。- 输出
jpg/png时固定每页一张图。 - 本接口不进行 OCR,不会识别成可搜索文字。
查询结果
调用方式: 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 / OFD 时返回) | 单文件输出返回该字段 |
| fileurls | 输出图片地址数组 | string数组 | 否(status为Done,且输出 jpg / png 时返回) | 输出图片始终返回 fileurls,即使只有一页;不会返回 fileurl |
| count | 页数 / 图片数 | integer | 否(status为Done时返回) | 单文件输出为页数;输出图片为图片张数 |
| filesize | 文件大小 | integer | 否(status为Done时返回) | 输出文件大小 |
| pagesizes | 每页尺寸 | array | 否 | 输出 PDF 且请求了页面尺寸信息时返回 |
| reason | 失败原因 | string | 否(status为Failed时可能返回) | 转换失败的原因 |
结果读取规则:
- 先看
status。 - 若
status=Done:outputFormat为jpg/png:读取fileurls(数组;即使只有一页也是数组)。outputFormat为pdf/ofd:读取fileurl(单个字符串)。
- 若
status=Failed:读取reason。 - 若
status=Doing或Pending:可读取progress,继续轮询。
返回示例(进行中):
{
"code":10000,
"msg":"",
"token":"YOUR_CREDENTIAL",
"result":
{
"progress":0.02,
"status":"Doing"
}
}
返回示例(成功,单文件,如 PDF / OFD):
{
"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)。未知字段、类型错误、枚举或范围错误会返回参数错误。
输出 jpg / png 时固定每页一张图。
文字水印(watermarkText 等)是额外叠在页面上的文字,与自动盖章、骑缝章都不是同一件事。
输入 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 |
| pageSize | string | 如果是 Excel 等文件,设定页面大小:source 跟随源文档(无则按系统默认)a3 A3a4 A4a5 A5b4 B4b5 B5letter Letterlegal Legaltabloid Tabloidledger Ledger |
source |
| pageOrientation | string | 如果是 Word、Excel、TXT、HTML、Markdown,设定页面方向:source 不变landscape 横向portrait 竖向 |
source |
| sourcePassword | string | 源文件密码,支持有密码的 Word、PPT、Excel 文件类型 | 无 |
输入 PDF 相关(inputFormat=pdf)
| 参数 | 类型 | 备注 | 默认值 |
|---|---|---|---|
| pageRanges | string | 要处理的 PDF 页码。不传时处理全部页。可传列表或范围,例如:1,3,5-7 |
全部页 |
| sourcePassword | string | PDF 文件密码,无密码可不传 | 无 |
输入图片相关(inputFormat 为 jpg/png/img 等)
| 参数 | 类型 | 备注 | 默认值 |
|---|---|---|---|
| dewarp | boolean | 是否切边矫正。打开后每次只允许传入一张图(短边大于 20,长边小于 10000) | false |
| deskew | boolean | 是否倾斜矫正 | false |
| backgroundMode | string | 背景处理:auto 智能保留背景remove 完全清除背景preserve 完全保留背景 |
auto |
| autoRotate | boolean | 是否根据文字方向自动旋转。传 false 可加快速度(已确定文字方向时) |
true |
| pageSize | string | 页面大小:source 维持原图比例a3 A3a4 A4a5 A5b4 B4b5 B5letter Letterlegal Legaltabloid Tabloidledger Ledger |
source |
| splitSpreadPages | boolean | 横向图若有左右两部分(常见于试卷)时分割为 2 页。 | false |
| grayscale | boolean | 是否输出灰度图 | false |
| imagePageWidth | integer | 统一每页固定宽度(像素),最大 4096。设置后转 PDF 时会使 pageSize 失效 |
不限制 |
输入网页文件 / Markdown 相关(inputFormat 为 html / md 等)
下列参数适用于传入 HTML、Markdown 等网页类文件。
| 参数 | 类型 | 备注 | 默认值 |
|---|---|---|---|
| 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 失效 |
false |
| webTextOnly | boolean | 是否按文本模式抽取网页内容 | false |
| webExtractMainContent | boolean | 是否抽取正文阅读区域 | false |
| markdownTheme | string | 仅当输入为 Markdown 时,设置 Markdown 渲染主题。可选值:monet(莫奈)、vangogh(梵高)、rembrandt(伦勃朗)、vermeer(维米尔)、picasso(毕加索)、kandinsky(康定斯基)、davinci(达·芬奇) |
不传或传空时使用默认样式 |
| pageSize | string | 输出页面大小:source 自动/A4a3 A3a4 A4a5 A5b4 B4b5 B5letter Letterlegal Legaltabloid Tabloidledger 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 A3a4 A4a5 A5b4 B4b5 B5letter Letterlegal Legaltabloid Tabloidledger 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 决定。输出时固定每页一张图。
| 参数 | 类型 | 备注 | 默认值 |
|---|---|---|---|
| imageMaxDimension | integer | 每个图最大宽或高,最大 20000 | 自动 |
| pageOrientationAdjustment | string | 统一调整所有页方向,取值同输出 PDF 的 pageOrientationAdjustment |
none |
| grayscale | boolean | 是否输出灰度图 | false |
| pageSplitCount | integer | 将每一页按长边等分为多页,最小为 2 | 不拆分 |
| pageRanges | string | 如果源文件是 PDF,指定处理页码,例如:1,3,5-7 |
全部页 |
输出水印相关
文字水印会叠在页面内容上,与自动盖章、骑缝章相互独立。
| 参数 | 类型 | 备注 | 默认值 |
|---|---|---|---|
| watermarkText | string | 水印文字。输出 PDF 时最多 15 个字符;输出图片时最多 10 个字符 | 无 |
| watermarkFontSizePt | integer | 水印字号,单位 pt | 24 |
| watermarkColor | string | 水印颜色,#RRGGBB 格式,必须 7 位 |
#000000 |
| watermarkOpacityPercent | integer | 水印不透明度,取值 1–100,越小越透明 | 20 |
| watermarkLayout | string | 水印布局:center 文档中央一个水印tiled 文档铺满水印 |
center |
备注:
- 输入文件 URL 方式支持文件最大 1500M;Base64 方式最大 8M。
url与stampUrl均适用。 - 最大转换时长: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.pdf",
"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 包含上述域名则自动支持。url 与 stampUrl 均可使用。
错误码表:
返回的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
签名认证
比较复杂,推荐用阿里自己的SDK来调用,参考链接:https://help.aliyun.com/zh/api-gateway/traditional-api-gateway/user-guide/use-digest-authentication-to-call-an-api
