前言:

在我以前的博客中有这么两篇博客,一篇是:

python将ppt文件转换为jpg图片

. 这两篇博客都是讲如何将word,ppt转换为图片,但是这些方法都是在win系统中实现的,而在ubuntu下根本无法运行代码.原因时转换过程中借用的时win的接口库win32com. 这个库bantu压根不存在.所以以前的方法在ubuntu系统就不能实现了,只能另寻出路所幸,皇天不服有心人,在经过多日查找,终于找到解决方法.

ppt转换为pdf:

准备工作:安装 subprocess 这个库

打开终端,执行以下语句:

sudo pip3 install subprocess

安装库以后就好办了,执行一下代码便可以实现转换.

import subprocess

from subprocess import Popen, PIPE

def ppt_to_pdf(self, outfile, infile, timeout=None):

"""将ppt 转换为pdf

函数说明:将路径为infile的ppt文件转换为pdf,保存进路径为outfile的pdf文件.

参数: outfile(str):保存文件pdf 的路径.

参数: infile(str):ppt文件的路径.

参数: timeout:转换文件时的时间延迟.

"""

args = ['libreoffice', '--headless', '--convert-to', 'pdf', '--outdir',outfile, infile]

process = subprocess.run(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, timeout=timeout)

re.search('-> (.*?) using filter', process.stdout.decode())

同理,将word转换为pdf

import subprocess

from subprocess import Popen, PIPE

def word_to_pdf(self,outfile, infile, timeout=None):

"""将word 转换为pdf

函数说明:将路径为infile的word文件转换为pdf,保存进路径为outfile的pdf文件.

参数: outfile(str):保存文件pdf 的路径.

参数: infile(str):word文件的路径.

参数: timeout:转换文件时的时间延迟.

"""

args = ['libreoffice', '--headless', '--convert-to', 'pdf', '--outdir', outfile, infile]

process = subprocess.run(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, timeout=timeout)

re.search('-> (.*?) using filter', process.stdout.decode())

将word,ppt转换为pdf 的方法是一样的,只不过是输入文件不一样罢了.

下面顺便也提一下将pdf转换为图片吧

首先要先安装 fitz 这个库,打开终端使用以下代码.

sudo pip3 install fitx

转换的代码:

from PyQt5 import QtGui

import fitz

pdf = fitz.open(file)

for pg in range(pdf.pageCount):

page = pdf.loadPage(pg) # 使用循环将所有转换为图片。

pagePixmap = page.getPixmap()

# 获取 image 格式

imageFormat = QtGui.QImage.Format_RGB888

# 生成 QImage 对象

pageQImage = QtGui.QImage(pagePixmap.samples, pagePixmap.width,pagePixmap.height, pagePixmap.stride, imageFormat)

pageQImage.save(file1 + '/image' + '%s.jpg' % (pg + 1))

pdf.close()

ubuntu下使用python将ppt转成图片_在Ubuntu下,python将PPT和word转换为PDF,ubuntu,pptword,pdf...相关推荐

  1. php ppt转换成图片格式,帮忙看下,这个程序实现使用office的COM组件将ppt转换为图片...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 本人比较菜,看不出来为什么,只支持office2003或者是office2007.请问如何能改为更高版本的吗,因为这两个版本只有32位的,在64位系统下调 ...

  2. python界面如何设置成黑色_实战!在Python中制作精美的图形用户界面

    在默认情况下,我们使用PyQt5创建出来的窗口和部件都是自带的默认样式,虽然谈不上很丑,但是也毫无美感可言.其实,在PyQt5中,我们可以有较高的自由度来自定义窗口和各种小部件的样式,通过自定义这些样 ...

  3. python制作合同模板带图片_办公自动化7_用Python操作Word批量生成合同

    ########## 实例7:用Python操作Word批量生成合同 ################ ''' 来源网上整理 ,供学习使用. 我们建立的模板和合同信息如下图所示:这里有几个注意事项: ...

  4. 如何把幻灯片ppt转换成视频_百度经验

    如何把幻灯片ppt转换成视频_百度经验 Powerpoint 2010直接转PPT为视频文件_天极网

  5. 用python把视频分解成图片

    # 用python把视频分解成图片 import cv2 # 读取一段视频 cap=cv2.VideoCapture("d:/1.mp4") # 用作计数 i=0 # 循环判断视频 ...

  6. python将视频分割成图片

    使用python将视频分割成图片 python版本: 3.7.2 使用到的库:opencv (安装命令:pip install opencv-python) import cv2# 定义保存图片函数 ...

  7. python粘贴代码运行不了_老师上课总是不给PPT?于是我用几行python代码偷偷复制U盘文件...

    上大学的时候有老师不给上课的PPT,就总想有个程序能偷偷复制老师的U盘....其实用几行python代码就能搞定了.分两步,首先写出来python代码,其次把.py文件转换成exe文件,直接在wind ...

  8. vba htm转成图片_提取1000页PPT的图片,同事花了两小时,我只花了两分钟

    临下班前老板又双叒搞临时任务,丢来几份几百页的PPT,让我们把里面的图片都提取出来,同事一边哀嚎一边埋头苦干,疯狂地另存为,我瞥了一眼, 目测她要两小时才能搞定. 其实不用那么麻烦,提取图片这种小事情 ...

  9. python导入数据画柱状图代码_在Linux下使用Python的matplotlib绘制数据图的教程

    如果你想要在Linxu中获得一个高效.自动化.高质量的科学画图的解决方案,应该考虑尝试下matplotlib库.Matplotlib是基于python的开源科学测绘包,基于python软件基金会许可证 ...

最新文章

  1. Facebook 开源安卓版 React Native,开发者可将相同代码用于网页和 iOS 应用开发
  2. 《算法竞赛进阶指南》打卡-基本算法-AcWing 91. 最短Hamilton路径:位运算、状态压缩dp、dp
  3. 限时抢购秒杀系统架构分析与实战
  4. 安装和使用VCLSkin美肤插件
  5. How to uninstall Internet Explorer 7
  6. 数据库-MySQL-JDBC-结果集
  7. BZOJ3597 SCOI2014方伯伯运椰子(分数规划+spfa)
  8. 日语等级考试测试网站
  9. 如何在Ubuntu-16.04 / 18.04上为 RTX 2080 Ti GPU 安装Nvidia驱动和cuda-10.0
  10. 防止ViewPager中的Fragment被销毁的方法
  11. Ubuntu 14.04 下每次重启系统都默认最大亮度的解决办法
  12. 社区活动 | Apache Flink 1.9 版本即将发布,新版本有哪些新特性?
  13. 定制Android系统开发之二——系统服务
  14. Set,List,Map,Vector,ArrayList的区别
  15. [原译]实现IEnumerable接口理解yield关键字
  16. keil5里错误怎么解决Undefined symbol STM32_Control (referred from main.o).
  17. 暴走英雄坛计算机在线,暴走英雄坛计算器
  18. qt emit是什么意思_2020年11月12日 无赞赏QT吗哪 :一同站在福音之上的祷告同工...
  19. 什么是token?Android中token的使用讲解
  20. 乳山金岭中学校计算机老师,乳山市金岭中学

热门文章

  1. rpm 安装ElasticSearch
  2. KCF -目标检测算法总结
  3. 转发——————《黄金问题3---一万五千字教你如何全面爱护你的膝盖》(正文+1楼回复必看)...
  4. 我的软件--通讯录之二
  5. 波比区块链是不是骗局
  6. 五款移动APP在线原型设计工具,值得收藏
  7. mysql 建表及注释
  8. 熟练使用flex布局
  9. 《花束般的恋爱》:用力绽放却注定凋零
  10. QQ机器人实现原理之Java篇