PDF 生成模板编辑器
开源可视化 PDF 生成引擎,支持自定义模板,并提供面向开发者的 API,灵活构建文档生成流程。
PDF API 通过 multipart/form-data 接收 request JSON 字符串。请只使用当前功能章节列出的字段,不同功能的参数不能混用。
对于 PDF 工具接口,如果省略 request,其他非文件 form-data 字段可能会作为 request 对象转发。
适用于 POST /api/v1/process/pdf/merge。
| 参数名 | 类型 | 作用 |
|---|---|---|
pageRanges | String 或 String[] | 需要处理的页码范围,从 1 开始。示例:1、1-3、1,3-5。为空或 all 表示全部页面。 |
passwords | Array | 每个文件对应的密码列表。无密码可传 null 或空字符串。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/split。
| 参数名 | 类型 | 作用 |
|---|---|---|
ranges | String[] | 拆分范围。示例:["1-3","4-6"]。 |
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/extract。
| 参数名 | 类型 | 作用 |
|---|---|---|
pages | String 或 Number[] | 需要提取的页面。示例:1、1,3-5、[1,3,4,5],支持时可传 all。 |
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/insert-from-pdf。
| 参数名 | 类型 | 作用 |
|---|---|---|
index | Number | 从 1 开始的插入位置。 |
sourcePageRanges | String[] | 从被插入 PDF 中选择的页码范围。为空表示全部页面。 |
targetPassword | String | 主目标 PDF 的打开密码。 |
insertPassword | String | 被插入 PDF 的打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/insert-blank。
| 参数名 | 类型 | 作用 |
|---|---|---|
index | Number | 从 1 开始的插入位置。 |
count | Number | 需要插入的空白页数量。 |
width | Number | 空白页宽度,单位为 point。 |
height | Number | 空白页高度,单位为 point。 |
targetPassword | String | 目标 PDF 的打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/delete。
| 参数名 | 类型 | 作用 |
|---|---|---|
pageRanges | String | 需要删除的页码范围。示例:1、1-3、1,3-5。为空表示全部页面。 |
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/rotate。
| 参数名 | 类型 | 作用 |
|---|---|---|
pageRanges | String | 需要旋转的页码范围。示例:1、1-3、1,3-5。为空或 all 表示全部页面。 |
angle | Number | 旋转角度,常用值为 90、180、270。 |
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/pdfa。
| 参数名 | 类型 | 作用 |
|---|---|---|
standard | String | 私有化 SDK 接收的目标 PDF 标准或符合性配置。 |
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/encrypt。
| 参数名 | 类型 | 作用 |
|---|---|---|
userPassword | String | 打开加密 PDF 所需的用户密码。 |
ownerPassword | String | 用于管理权限的所有者密码。 |
permissions | Object | 转发给 SDK 的权限对象。 |
allowPrint | Boolean | 映射到 permissions.allowPrint 的快捷字段。 |
allowCopy | Boolean | 映射到 permissions.allowCopy 的快捷字段。 |
allowDocumentChanges | Boolean | 映射到 permissions.allowDocumentChanges 的快捷字段。 |
allowDocumentAssembly | Boolean | 映射到 permissions.allowDocumentAssembly 的快捷字段。 |
allowCommenting | Boolean | 映射到 permissions.allowCommenting 的快捷字段。 |
allowFormFieldEntry | Boolean | 映射到 permissions.allowFormFieldEntry 的快捷字段。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/decrypt。
| 参数名 | 类型 | 作用 |
|---|---|---|
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/watermark/add。
| 参数名 | 类型 | 作用 |
|---|---|---|
type | String 或 Integer | 水印类型,例如 text、image,或 SDK 支持的等价值。 |
text | String | 水印文字。 |
fontSize | Number | 文字水印字号。 |
fontColor | String | 文字颜色,例如 #D32F2F。 |
opacity | Number | 水印透明度,常用范围为 0 到 1。 |
rotation | Number | 水印旋转角度,单位为度。 |
horizalign | String | 水平对齐方式,例如 left、center 或 right。 |
vertalign | String | 垂直对齐方式,例如 top、center 或 bottom。 |
horizOffset | Number | 水平偏移量,单位为 point。 |
vertOffset | Number | 垂直偏移量,单位为 point。 |
horizontalSpacing | Number | 平铺水印的水平间距。 |
verticalSpacing | Number | 平铺水印的垂直间距。 |
fullScreen | Boolean | 是否在页面内平铺水印。 |
pages | String 或 Number[] | 需要处理的页面。示例:1、1,3-5、[1,3,4,5],支持时可传 all。 |
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/watermark/remove。
| 参数名 | 类型 | 作用 |
|---|---|---|
pages | String 或 Number[] | 需要处理的页面。示例:1、1,3-5、[1,3,4,5],支持时可传 all。 |
mode | String | 移除水印模式。ComPDF Web 传 tagged;指定页面时 ComPDF Self-hosted 使用 untagged。 |
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/compress。
| 参数名 | 类型 | 作用 |
|---|---|---|
profile | String | 压缩预设。使用 aggressive 且未传 optimizeFlags 时,中间层会根据 imageQuality 推导优化标记。 |
optimizeFlags | String[] | 优化动作,例如 RMEMBFONT、RMANNOT、RMDOCINFO、RMMEDTADATA。 |
imageQuality | Number | 压缩图片质量,范围 0 到 100。预设分别使用 30、60、80。 |
colorImageUpperPpi | Number | 彩色图片最大 PPI。 |
colorImageTargetPpi | Number | 彩色图片目标 PPI。 |
colorImageCompressAlgorithm | String | 彩色图片压缩算法,例如 jpeg 或 flate。 |
colorImageQuality | Number | 彩色图片质量,范围 0 到 100。 |
grayscaleImageUpperPpi | Number | 灰度图片最大 PPI。 |
grayscaleImageTargetPpi | Number | 灰度图片目标 PPI。 |
monochromeImageUpperPpi | Number | 黑白图片最大 PPI。 |
monochromeImageTargetPpi | Number | 黑白图片目标 PPI。 |
monochromeImageCompressAlgorithm | String | 黑白图片压缩算法,例如 jbig2 或 flate。 |
password | String | 源 PDF 打开密码。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/generation/html-to-pdf。
| 参数名 | 类型 | 作用 |
|---|---|---|
html | String | HTML 源字符串。与 htmlFile form-data 字段和 htmlUrl 三者可选其一。 |
htmlUrl | String | HTML 源的 HTTP 或 HTTPS URL。 |
baseUri | String | 用于解析相对资源的基础 URI。 |
pageSize | Object | 页面宽度和高度,单位为 point。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于 POST /api/v1/process/pdf/generation/template-to-pdf。
| 参数名 | 类型 | 作用 |
|---|---|---|
template | String | HTML 模板字符串。与 templateFile form-data 字段二选一。 |
data | Object 或 String | 模板数据。与 dataFile form-data 字段二选一。 |
baseUri | String | 用于解析相对资源的基础 URI。 |
pageSize | Object | 页面宽度和高度,单位为 point。 |
outputFileName | String | 可选输出文件名,传入后会作为首选下载文件名。 |
适用于通过 POST /api/v1/task/{source}/{target} 创建 PDF 工具或 PDF 生成任务。
异步接口不定义一套独立且混合的 request 参数。请根据所选 {source}/{target} PDF 功能,使用本页对应章节中的字段,不要混用其他功能的参数。