3

Office(Word Excel PPT)转PDF-开放API

 2 years ago
source link: https://www.wyr.me/post/617
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

大约5年前,我在做一个云打印的软硬件一体化项目,其中很关键的一步是通过API将客户发来的Office文档转换为PDF文档进行预览,然后再发送到对应的打印机进行打印,以PDF预览的方式来确保所见即所得。因此当时开发了此API,一直使用至今,历经数次迭代,如今已经很稳定。

现今免费将此API开放给大家进行使用(因服务器成本较高,不排除将来进行收费的可能。如若将进行收费,我会提前至少两个月联系您。即使收费,我承诺此API仅收取成本费用)。API部署在多地服务器,使用阿里云API网关进行中转。

支持的文件格式

  • Word (.doc, .dot,  .docx, .dotx, .docm, .dotm, .rtf, .wpd)
  • Excel (.xls, .xlsx, .xlsm, .xlsb, .xlt, .xltx, .xltm, .csv)
  • Powerpoint (.ppt, .pptx, .pptm, .pps, .ppsx, .ppsm, .pot, .potx, .potm)
  • OpenOffice (.odt, .odp, .ods)
  • Visio (.vsd, .vsdx, .vsdm, .svg)
  • Publisher (.pub)
  • Outlook (.msg, .vcf, .ics)
  • Project (.mpp)

默认参数未针对打印作优化。如需转换为A4大小,请联系我(无偿)。

API使用说明

登录阿里云管理后台,选择API网关,创建应用并获取AppCode。将应用名称私发给我(联系方式见左侧菜单)。

阿里云API网关

第一步:上传待转换文件

POST https://office2pdf.ykfz.pw/api/office2pdf/upload

Header Authorization APPCODE 阿里云AppCode值

form-data格式(multipart/form-data; charset=utf-8)请求API,key为file,value即文件内容。

成功示例:

{"status":1,"result":{"uuid":"1b3eb909-6b77-4d01-beff-df1f1afdf5ae","formData":{}}}

postman预览

第二步:查询文件是否转换完成

GET 查询转换状态 https://office2pdf.ykfz.pw/api/office2pdf/status?uuid=[第一步获取到的UUID]

Header Authorization APPCODE 阿里云AppCode值

成功示例:

{"status":1,"msg":"ok","result":{"url":"/api/office2pdf/download/1b3eb909-6b77-4d01-beff-df1f1afdf5ae.pdf"}}

转换不成功或者还在排队转换,则status不为1。

第三步:下载转换完成的PDF文件

GET 拼接下载地址【无需授权】 https://office2pdf.ykfz.pw/api/office2pdf/download/[第一步获取到的UUID].pdf

项目基于https://github.com/Sicos1977/OfficeConverter进行的二次开发,进行了大量修改。也参考了其它开源项目。

此项目将来一定公开源代码,目前还在完善功能阶段,请关注我的网站Follow我的Github主页获取最新动态。现有功能成熟稳定,可放心使用。

Node.js打印PDF文件

桌面设备

公共法律服务一体机

以上产品(并未用到此API)是公共法律服务桌面设备公共法律服务柜式一体机。有相关需求欢迎合作。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK