简介
本文档提供关于文档预览的相关的 API 概览以及 SDK 示例代码。
注意:
API | 操作名 | 操作描述 |
提交文档预览任务 | 用于提交一个文档预览任务 | |
查询文档预览任务 | 查询指定的文档预览任务 | |
拉取文档预览任务 | 拉取符合条件的文档预览任务 |
提交文档预览任务
CreateDocProcessJobs 接口用于提交一个文档预览任务。
示例代码
//1.创建任务请求对象DocJobRequest request = new DocJobRequest();//2.添加请求参数 参数详情请见api接口文档request.setBucketName("examplebucket-1250000000");DocJobObject docJobObject = request.getDocJobObject();docJobObject.setTag("DocProcess");docJobObject.getInput().setObject("demo.docx");DocProcessObject docProcessObject = docJobObject.getOperation().getDocProcessObject();docProcessObject.setQuality("100");docProcessObject.setZoom("100");docProcessObject.setStartPage("1");docProcessObject.setEndPage("3");docProcessObject.setTgtType("png");docProcessObject.setDocPassword("123");MediaOutputObject output = docJobObject.getOperation().getOutput();output.setRegion("ap-chongqing");output.setBucket("examplebucket-1250000000");output.setObject("mark/pic-${Page}.jpg");//3.调用接口,获取任务响应对象DocJobResponse docProcessJobs = client.createDocProcessJobs(request);System.out.println(docProcessJobs);
参数说明
DocJobRequest 类用于记录文档预览任务信息,其主要成员说明如下:
成员名称 | 描述 | 类型 | 必选 |
bucketName | COS 存储桶名称 | String | 是 |
docJobObject | 文档预览任务对象 | DocJobObject | 是 |
DocJobObject 类用于描述文档预览任务对象,其主要成员说明如下:
成员名称 | 描述 | 类型 | 必选 |
tag | 创建任务的 Tag,目前仅支持:DocProcess | String | 是 |
input | 待操作的文件对象 | MediaInputObject | 是 |
operation | 操作规则 | DocOperationObject | 否 |
queueId | String | 否 |
MediaInputObject 类用于待操作的文件对象 ,其主要成员说明如下:
成员名称 | 描述 | 类型 | 必选 |
object | 待操作的文件对象在 COS 上的文件路径 | String | 是 |
DocOperationObject 类用于记录 操作规则 ,其主要成员说明如下:
成员名称 | 描述 | 类型 | 必选 |
docProcessObject | 当 Tag 为 DocProcess 时有效,指定该任务的参数 | DocProcessObject | 否 |
output | 结果输出地址 | MediaOutputObject | 是 |
DocProcessObject 类用于记录图片处理结果,其主要成员说明如下:
成员名称 | 描述 | 类型 | 必选 |
srcType | 源数据的后缀类型,当前文档转换根据 cos 对象的后缀名来确定源数据类型,当 cos 对象没有后缀名时,可以设置该值 | String | 否 |
tgtType | 转换输出目标文件类型; jpg,转成 jpg 格式的图片文件;如果传入的格式未能识别,默认使用 jpg 格式;png,转成 png 格式的图片文件; pdf,转成 pdf 格式文件(暂不支持指定页数) | String | 否 |
sheetId | 表格文件参数,转换第 X 个表,默认为1;设置 SheetId 为0,即转换文档中全部表 | String | 否 |
startPage | 从第 X 页开始转换;在表格文件中,一张表可能分割为多页转换,生成多张图片。StartPage 表示从指定 SheetId 的第 X 页开始转换。默认为1 | String | 否 |
endPage | 转换至第 X 页;在表格文件中,一张表可能分割为多页转换,生成多张图片。EndPage 表示转换至指定 SheetId 的第 X 页。默认为-1,即转换全部页 | String | 否 |
imageParams | String | 否 | |
docPassword | Office 文档的打开密码,如果需要转换有密码的文档,请设置该字段 | String | 否 |
comments | 是否隐藏批注和应用修订,默认为 0;0:隐藏批注,应用修订;1:显示批注和修订 | String | 否 |
paperDirection | 表格文件转换纸张方向,0代表垂直方向,非0代表水平方向,默认为0 | String | 否 |
quality | 生成预览图的图片质量,取值范围 [1-100],默认值100。 例:值为100,代表生成图片质量为100% | String | 否 |
zoom | 预览图片的缩放参数,取值范围[10-200], 默认值100。 例:值为200,代表图片缩放比例为200% 即放大两倍 | String | 否 |
MediaOutputObject 类用于记录一个结果输出地址,其主要成员说明如下:
成员名称 | 描述 | 类型 | 必选 |
region | 存储桶的地域 | String | 是 |
bucket | 存储结果的存储桶 | String | 是 |
object | 输出文件路径 | String | 是 |
返回参数说明
DocJobResponse 类用于记录响应信息,其主要成员如下:
成员名称 | 描述 | 类型 |
jobsDetail | 任务的详细信息 | DocJobDetail |
DocJobDetail 类用于记录任务的详细信息 ,其主要成员如下:
成员名称 | 描述 | 类型 |
code | 错误码,只有 State 为 Failed 时有意义 | String |
message | 错误描述,只有 State 为 Failed 时有意义 | String |
jobId | 新创建任务的 ID | String |
tag | 新创建任务的 Tag:DocProcess | String |
state | 任务的状态,为 Submitted、Running、Success、Failed、Pause、Cancel 其中一个 | String |
creationTime | 任务的创建时间 | String |
queueId | 任务所属的队列 ID | String |
input | 该任务的输入文件路径 | MediaInputObject |
operation | 该任务的规则 | DocOperationObject |
查询文档预览任务
DescribeDocProcessJob 用于查询指定的文档预览任务。
示例文档
//1.创建任务请求对象DocJobRequest request = new DocJobRequest();//2.添加请求参数 参数详情请见api接口文档request.setBucketName("examplebucket-1250000000");request.setJobId("d75b6ea083df711eb8d09476dfb8*****");//3.调用接口,获取任务响应对象DocJobResponse docJobResponse = client.describeDocProcessJob(request);System.out.println(docJobResponse);
参数说明
DocJobRequest 类用于记录文档预览任务信息,其主要成员说明如下:
成员名称 | 描述 | 类型 |
bucketName | COS 存储桶名称 | String |
jobId | 创建任务的 ID | String |
返回参数说明
DocJobResponse 类用于记录响应信息,其主要成员如下:
成员名称 | 描述 | 类型 |
jobsDetail | 记录任务的详细信息 | DocJobDetail |
查询所有文档预览任务
DescribeDocProcessJobs 用于拉取符合条件的文档预览任务。
//1.创建任务请求对象DocJobListRequest request = new DocJobListRequest();//2.添加请求参数 参数详情请见api接口文档request.setBucketName("examplebucket-1250000000");request.setQueueId("pc02270c617ae4b6d9b0a52cb1c*****");request.setTag("DocProcess");request.setStartCreationTime("2020-12-10T16:20:07+0800");//3.调用接口,获取任务响应对象DocJobListResponse docJobResponse = client.describeDocProcessJobs(request);for (DocJobDetail jobDetail : docJobResponse.getDocJobDetailList()) {System.out.println(jobDetail);}
参数说明
DocJobListRequest 类用于记录文档预览任务信息,其主要成员说明如下:
成员名称 | 描述 | 类型 |
bucketName | COS 存储桶名称 | String |
queueId | 拉取该队列 ID 下的任务 | String |
tag | 任务的 Tag:DocProcess | String |
orderByTime | Desc 或者 Asc,默认为 Desc | String |
nextToken | 请求的上下文,用于翻页,设置为上次返回的值 | String |
size | 拉取的最大任务数,默认为10,最大为100 | Integer |
states | 拉取该状态的任务,以 , 分割,支持多状态:All、Submitted、Running、Success、Failed、Pause、Cancel,默认为 All | String |
startCreationTime | 拉取创建时间大于该时间的任务,格式为: %Y-%m-%dT%H:%m:%S%z | String |
endCreationTime | 拉取创建时间小于该时间的任务,格式为: %Y-%m-%dT%H:%m:%S%z | String |
返回参数说明
DocJobListResponse 类用于记录响应信息,其主要成员如下:
成员名称 | 描述 | 类型 |
docJobDetailList | 记录任务列表 | List |
nextToken | 翻页的上下文 Token | String |