#!/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. Python 面向对象【1】

    对象 = 属性 + 方法   面向对象特征:分装 继承 多态[不同对象对同一方法响应不同行动]   类定义 class xxx: .... ....   类对象 类对象支持两种操作:属性引用和实例化 ...

  2. 定制化rpm包及本地yum仓库搭建

    为方便本地yum的管理,一般都是在公司局域网内搭建本地yum仓库,实现公司内部快速安装常用软件. 步骤如下: 1.搭建要实现本地yum管理的软件,测试该软件搭建成功与否: 2.定制rpm包及其相关依赖 ...

  3. Mudo C++网络库第六章学习笔记

    muduo网络库简介 高级语言(Java, Python等)的Sockects库并没有对Sockects API提供更高层的封装, 直接用它编写程序很容易掉到陷阱中: 网络库的价值还在于能方便地处理并 ...

  4. matlab积分使用

    clc; %清屏 clear; %清除变量 close all; %关闭 syms x; f(x) = x; df = int(f(x),x);%求不定积分 figure; subplot(1,2,1 ...

  5. Linux mem/swap/buffers/cached 区别

    Free free 命令相对于top 提供了更简洁的查看系统内存使用情况: $ free total used free shared buffers cached Mem: 255268 23833 ...

  6. [MySQL]子语句的查询技巧

    一.统计group by语句的行数 group by语句中,如果包含字段统计函数(诸如:count(),sum()...),这种情况下统计函数只会作用于group by的字段,因此想拿到最终结果的行数 ...

  7. [C][代码实例]冒泡排序

    #include <stdio.h> #include <stdlib.h> #include <stdbool.h> #include <string.h& ...

  8. IPNS节点ID

    IPNS节点ID访问网站:     当我们修改网站内容重新添加到ipfs时,hash会发生变化,当我们网站更新时,我们可以将网站发布到IPNS,在IPNS中,允许我们节点的域名空间中引用一个IPFS ...

  9. JVM·垃圾收集器与内存分配策略之对象是否可被回收!

    1.判断对象已经死去/不再被引用.     1.1.引用计数算法:给对象添加引用计数器,有个地方引用就+1,引用失效就-1.任何时刻,引用为0,即判断对象死亡.         1.1.1.优点:实现 ...

  10. CSS margin合并

    外边距合并 块的顶部外边距和底部外边距有时被组合(折叠)为单个外边距,其大小是组合到其中的最大外边距 发生外边距合并的三种基本情况 1. 相邻的兄弟姐妹元素 <div id="marg ...