Skip to content

格式转换(文件另存为)

适用版本>=v7.0.2412a.20241212

接口说明:文件格式进行转换,支持转换格式见《格式转换(文件另存为)支持格式

文档转换传入密码功能说明:
文档转换接口不区分原文件是否支持加密,只要传入密码,密码都会传入内核。
文档转换密码功能,只应在目标文件为PDF时生效,现象如下(以下的输入密码都是用AES+Base64正确加密后传入)

1.原文件不加密,存在以下情况

①word转PDF,输入密码123,转换成功(打开密码123)
②excel转PDF,输入密码123,XLS/CSV/UOS转换成功(打开密码123),其他失败
③wpp转PDF,输入密码123,转换成功(打开密码123)
④所有文件转为非PDF格式文件,输入密码123,转换成功,转换后文件不需要密码(符合预期)

2.原文档DOCX,打开密码123(加密后为q0rxZGJ************),编辑密码123456(加密后为q0rxZGJ************),存在以下情况

①转PDF,不输入密码,转换失败,无目标文件生成(符合预期)
②转PDF,输入打开密码123,转换成功,转换后PDF文件需要密码(打开密码123,编辑密码无)
③转PDF,输入编辑密码123456,转换失败,无目标文件生成(符合预期)
④转DOTM,输入密码123,转换失败,无目标文件生成(符合预期)

3.原文档markdown(非Office格式)不加密,转PDF,输入密码123,转换成功,转换后的PDF文件不需要密码

请求说明

请求地址配置域名+/openapi+/v7/drives/{drive_id}/files/{file_id}/convert
请求方法POST
签名方式KSO-1(配置域名+/openapi不参与签名)
权限要求应用文档(appfile)格式处理能力(应用授权) kso.appfile.cps.readwrite

请求头(Header)

Header参数类型是否必填说明
Content-Typestring固定为: application/json
X-Kso-DatestringRFC1123 格式的日期,例: Wed, 23 Jan 2013 06:43:08 GMT
X-Kso-AuthorizationstringKSO-1 签名值,详见《签名方法》
Authorizationstring授权凭证,格式为:Bearer {access_token}
x-user-tokenstring用户鉴权token,设置后会通过回调接口中的X-Wps-Weboffice-Token字段进行透传
此参数仅针对ap转pdf/docx时生效

路径参数(Path)

名称类型是否必填说明
drive_idstring驱动盘id,长度不超过1024位
parent_idstring父文件id(应用文档为0)

查询参数(Query)

名称类型是否必填说明
_w_third_user_idstring用户id,长度范围[1,64]

请求体(Body)

名称类型是否必填说明
file_namestring另存后新文件的名称,不填则使用源文件名称,包含文件后缀,长度范围[1,240],不支持"/:*?"<>|"特殊符号
passwordstring文档密码。不为空时,会参与转换PDF的过程加密方式:先进行AES/ECB/PKCS5Padding加密,再进行base64加密。示例:123加密后为q0rxZGJ************
formatstring转换后文件格式
et_page_zoomobject表格转换参数
   fit_pagewideinteger表示是否适配所有行,0表示正常分页打印,1表示不分页,所有行在一页上
   fit_pagetallinteger表示是否适配所有列,0表示正常分页打印,1表示不分页,所有列在一页上;当fit_pagetall与fit_pagewide都为1时,表示将所有内容打印到一页上
to_pngobject转png参数,仅在转png时生效
   long_picboolean仅在文字、演示、PDF格式转png时生效。是否转换为长图。默认为 false,按页导出图片。当 long_pic 为 true 时,必须满足 to_page=-1 或者 from_page 和 to_page 同时非空**。**备注:转长图目前最大可支持转20页空白文档,在这个基础上,文档的内容越多,转换成功的范围就越小(指最终文件会出现空白页)。建议范围不超过12页。
   from_pageint32仅在文字、演示、PDF格式转png时生效。转换起始页,从 1 开始计数。文字、演示、PDF格式转换成PDF和PNG时,能控制输出范围。
   to_pageint32仅在文字、演示、PDF格式转png时生效。转换结束页,to_page 需要大于 from_page,to_page也可以指定为 -1,导出到最后一页(全部转换)。 备注:目前最大可支持转20页文档。
   sheet_indexint32仅在表格 Excel 转换png时生效。指定需要转换的 Sheet,从 1 开始计数。不传,表示转换所有 Sheet
to_pdfobject转pdf参数,仅在转pdf时生效
   from_pageint32仅在文字、演示、PDF格式转pdf时生效,转换起始页,从 1 开始计数
   to_pageint32仅在文字、演示、PDF格式转pdf时生效,转换结束页,to_page 需要大于 from_page,to_page也可以指定为 -1,导出到最后一页(全部转换)
   sheet_indexint32仅在表格转pdf时生效,用于表格 Excel 转换时指定需要转换哪一个 Sheet,从 1 开始计数
   orientationint32表格转PDF 纸张方向选项: 2 -> 纸张横放; 1 -> 纸张竖放; 默认纸张竖放
   paper_sizeint32(仅在图片转pdf时生效)指定页面大小:0: A4, 3: A5,传无效参数,默认A4
   auto_rotate_paperboolean当使用paper_size指定页面大小时根据图片尺寸,自动使用横向或纵向的纸张,默认true
   scale_small_imageboolean当使用paper_size指定页面大小时:true: 小图片放大到页面,保持纵横比;false: 小图片居中
   jpeg_qualityint32word转pdf指定生成的pdf中图片质量,取值范围[10,100],默认75
   center_horizontallybooleanet转pdf,表格部分是水平居中的,默认true
   center_verticallybooleanet转pdf,表格部分是垂直居中的,默认true
web_encodingstringword转html格式时的文档编码。
10008为GB2312,65001为UTF-8。
to_imgobject转img参数,仅在转img时生效
   dpiint32pdf转图片,设置图片dpi,默认值96
dst_drive_idstring指定结果文件存储的drive盘,不传时默认与原文档存同一个盘内,长度不超过1024位
po_convert_paramobjectpo转换参数,仅在po格式转换时使用
   from_pageint32画布起始页,大于等于1,若未传参默认按从第一页开始处理
   to_pageint32画布结束页,大于等于1,若未传参默认按导出到最后一页处理

请求体示例

json
{
  "et_page_zoom": {
    "fit_pagetall": 0,
    "fit_pagewide": 0
  },
  "file_name": "string",
  "format": "string",
  "password": "string",
  "to_img": {
    "dpi": 0
  },
  "to_pdf": {
    "auto_rotate_paper": true,
    "center_horizontally": true,
    "center_vertically": true,
    "from_page": 0,
    "jpeg_quality": 0,
    "orientation": 0,
    "paper_size": 0,
    "scale_small_image": true,
    "sheet_index": 0,
    "to_page": 0
  },
  "to_png": {
    "from_page": 0,
    "long_pic": true,
    "sheet_index": 0,
    "to_page": 0
  },
  "web_encoding": "string",
  "dst_drive_id": "string",
  "po_convert_param": {
    "from_page": 0,
    "to_page": 0
  }
}

响应体(Response)

名称类型说明
dataobject
created_byobject创建者信息
idstring身份ID
typestringEnum: "user" "sp",身份类型
ctimeinteger创建时间,时间戳,单位为秒
drive_idstring驱动盘id
idstring文件id
link_idstring链接id(应用文档:忽略此参数)
link_urlstring链接url(应用文档:忽略此参数)
modified_byobject修改者信息
idstring身份ID
typestringEnum: "user" "sp",身份类型
mtimeinteger修改时间,时间戳,单位为秒
namestring文件名
parent_idstring父目录id(应用文档:0)
sharedboolean是否开启分享(应用文档:false)
sizeinteger文件大小
typestringEnum: "folder" "file" "shortcut",文件类型(应用文档:file)
versioninteger文件版本号
codeint错误码
msgstring状态信息
detailstring详细信息

响应体示例

json
{
  "code": 0,
  "data": {
    "id": "string",
    "drive_id": "string",
    "mtime": 0,
    "link_url": "",
    "link_id": "",
    "shared": false,
    "parent_id": "0",
    "created_by": {
      "id": "string",
      "type": "sp"
    },
    "modified_by": {
      "id": "string",
      "type": "sp"
    },
    "size": 0,
    "version": 0,
    "type": "file",
    "name": "string",
    "ctime": 0
  },
  "detail": "",
  "msg": "ok"
}