#!/usr/bin/python2.6
# -*- coding: utf-8 -*-
# pip install timeout-decorator import os
import win32com.client # wps使用的是wps2016版本
# 转换 Word文件档到pdf
def ConvertDocToPdf(src, dst):
if not os.path.exists(src):
print(src + "不存在,无法继续!")
return False
os.system('taskkill /im wps.exe')
# 如果文件存在就删除
if os.path.exists(dst):
os.remove(dst)
o = win32com.client.Dispatch("Kwps.Application")
o.Visible = False
doc = o.Documents.Open(src);
doc.ExportAsFixedFormat(dst, 17)
o.Quit();
if os.path.exists(dst):
return True
else:
return False # 转换 Ppt文件档到pdf
def ConvertPptToPdf(src, dst):
if not os.path.exists(src):
print(src + "不存在,无法继续!")
return False
os.system('taskkill /im wps.exe')
# 如果文件存在就删除
if os.path.exists(dst):
os.remove(dst)
wpp = win32com.client.Dispatch("Kwpp.Application")
# o.Visible=False
ppt = wpp.Presentations.Open(src)
ppt.SaveAs(dst, 32)
ppt.Close()
wpp.Quit()
if os.path.exists(dst):
return True
else:
return False # 转换 xls文件档到pdf
def ConvertXlsToPdf(src, dst):
if not os.path.exists(src):
print(src + "不存在,无法继续!")
return False
os.system('taskkill /im wps.exe')
# 如果文件存在就删除
if os.path.exists(dst):
os.remove(dst)
xlApp = win32com.client.Dispatch("Ket.Application")
excel = xlApp.Workbooks.Open(src)
excel.ExportAsFixedFormat(0, dst)
excel.Close()
xlApp.Quit()
if os.path.exists(dst):
return True
else:
return False # 当前目录
d = os.path.dirname(__file__)
abspath = os.path.abspath(d)
#
#
# 测试用例
src = abspath + r"/Doc/test.doc"
dst = abspath + r"/Doc/test.doc.pdf"
r = ConvertDocToPdf(src, dst)
print(r) # 测试用例
src = abspath + r"/Doc/test.xlsx"
dst = abspath + r"/Doc/test.xlsx.pdf"
r = ConvertXlsToPdf(src, dst)
print(r) # 测试用例
src = abspath + r"/Doc/test.pptx"
dst = abspath + r"/Doc/test.pptx.pdf"
r = ConvertPptToPdf(src, dst)
print(r)

使用python调用wps v9转换office文件到pdf的更多相关文章

  1. openoffice启动服务并将office文件转换为pdf文件

    1.首先下载最新版的openoffice工具,安装完成之后安装服务,, win+r打开命令提示符 输入cmd,cd C:\Program Files (x86)\OpenOffice 4\progra ...

  2. React中使用react-file-viewer,实现预览office文件(pdf,word,xlsx等文件)前端实现

    最近做一个项目要求在前端浏览器可以直接打开office文件(pdf,doc,xlsx等文件).pdf浏览器可以直接打开(可以直接用a标签href="文件地址"或者iframe标签s ...

  3. 【Python】调用WPS V9 API,实现Word转PDF

    WPS 的API,即COM,主要分为V8与V9两个版本,网上容易查到的例子,都是V8的. 现在官网上可以下载的,2013抢鲜版,就是V9的API. Python 调用COM 需要安装 Python f ...

  4. 【Python】调用WPS V9 API,实现PPT转PDF

    WPS 的API,即COM,主要分为V8与V9两个版本,网上容易查到的例子,都是V8的. 现在官网上可以下载的,2013抢鲜版,就是V9的API. Python 调用COM 需要安装 Python f ...

  5. java调用com组件将office文件转换成pdf

    在非常多企业级应用中都涉及到将office图片转换成pdf进行保存或者公布的场景,由于pdf格式的文档方便进行加密和权限控制(类似于百度文库).总结起来眼下将office文件转换 成pdf的方法主要有 ...

  6. java 调用OpenOffice将word格式文件转换为pdf格式

    一:环境搭建 OpenOffice 下载地址http://www.openoffice.org/ JodConverter 下载地址http://sourceforge.net/projects/jo ...

  7. c#通过libreOffice实现 office文件转pdf文件

    一.安装libreOffice 点击官网下载libreOffice 二.创建一个新的项目LibreOffice 创建一个新的项目,方便后面调用 添加下面代码 public class OfficeCo ...

  8. Java转换Word文件到PDF文件

    使用Docx4j将Word文件转换为PDF文件: public static void convertDocxToPDF(String docxFilePath, String pdfPath) th ...

  9. 发送垃圾邮件的僵尸网络——药物(多)、赌博、股票债券等广告+钓鱼邮件、恶意下载链接、勒索软件+推广加密货币、垃圾股票、色情网站(带宏的office文件、pdf等附件)

    卡巴斯基实验室<2017年Q2垃圾邮件与网络钓鱼分析报告> 米雪儿 2017-09-07 from:http://www.freebuf.com/articles/network/1465 ...

随机推荐

  1. linux shell 之尝试编写 企业级 启动脚本

    企业Shell面试题10:开发企业级MySQL启动脚本 说明: MySQL启动命令为: 1 /bin/sh mysqld_safe --pid-file=$mysqld_pid_file_path 2 ...

  2. fabric.js PatternBrush

    // Original canvas const canvas = new fabric.Canvas('canvas'); fabric.Image.fromURL('https://picsum. ...

  3. DeprecationWarning: Calling an asynchronous function without callback is deprecated. - how to find where the “function:” is?

    I recently updated my node to 7.2.1 and noticed that there is a warning coming: (node:4346) Deprecat ...

  4. 题解-USACO18DEC Sort It Out

    Problem 洛谷5156 题意概要:给定一个长为\(n\)的排列,可以选择一个集合\(S\)使这个集合内部元素排到自己在整个序列中应该在的位置(即对于集合\(S\)内的每一个元素\(i\),使其排 ...

  5. 统一门户与业务系统的sso整合技术方案(单点登录)

    一.单点登录(SSO,Single Sign On)整合目前计划接入统一门户的所有业务系统均为基于JavaEE技术的B/S架构系统.由于统一门户的单点登录技术选用的是JA-SIG组织开发的Cas Se ...

  6. 1.ROS启动小乌龟

        启动turtlesim 在三个不同的终端中分别执行如下三个指令 roscore rosrun turtlesim turtlesim_node rosrun turtlesim turtle_ ...

  7. 【原创】大叔经验分享(33)hive select count为0

    hive建表后直接将数据文件拷贝到table目录下,select * 可以查到数据,但是select count(1) 一直返回0,这个是因为hive中有个配置 hive.stats.autogath ...

  8. kafka集群报错

    bin/kafka-server-start.sh config/server.properties ,问题来了 : [root@localhost kafka_2.12-0.10.2.0]# Exc ...

  9. Windows7上完全卸载Oracle 12c操作步骤

    注:本文来源于:< Windows7上完全卸载Oracle  12c操作步骤 > 1.关闭Oracle所有的服务,按[win+R]运行[services.msc]找到所有Oracle开头的 ...

  10. Confluence 6 配置 XSRF 保护

    Confluence 需要一个 XSRF 令牌才能创建一个评论,这个被用来保护用户不在评论区恶意发布内容.所有 Confluence 自定义的主题都被启用了这个功能,但是如果你使用自定义主题的话,可能 ...