Skip to content

AdjWang/ppt2gif

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ppt2gif

python包,实现pptgif

需求是写算法介绍博客的时候,需要做动图。动图里面有图表和箭头这些图形,部分形状要逐帧移动。用来用去还是 PPT 做出来的图表最好看,还有自动对齐功能,效率也很高。然后就是把 PPT 转成 gif 了,因为网上没有类似的包,所以自己写了一个。

github 链接: https://github.com/AdjWang/ppt2gif

安装

使用pip安装:

pip install ppt2gif

或者到github上下载源码,然后在本地安装:

git clone https://github.com/AdjWang/ppt2gif.git
cd ./ppt2gif
python setup.py install

目前只能在windows系统上使用

使用方式

把一堆PPT转成gif,假设存放PPT的目录是C:\\Users\\Administrator\\Desktop\\myPPTs,输出的gif存放在相同目录下;转换的gif每秒切一帧,无限循环播放。实现这个功能只需要如下代码:

import ppt2gif
ppt_obj = ppt2gif.PPT("C:\\Users\\Administrator\\Desktop\\myPPTs")
ppt_obj.convert2gif(duration=1, loop=-1)    # gif loop infinitely if loop=-1

除了目录,还可以直接输入文件或者文件列表,下面的输入都是可以识别的:

"C:\\Users\\Administrator\\Desktop\\myPPTs"
"C:\\Users\\Administrator\\Desktop\\myPPTs\\temp.ppt"
"C:\\Users\\Administrator\\Desktop\\myPPTs\\temp.pptx"
["C:\\Users\\Administrator\\Desktop\\myPPTs\\temp.pptx", ...]

程序先把PPT转换成png,然后再把png转换成gif。 输出的png存放在一个文件夹里,该文件夹存放位置与输入的PPT相同。此外,如果不想把输出的png图片删掉,可以通过参数del_png控制:

import ppt2gif
ppt_obj = ppt2gif.PPT("C:\\Users\\Administrator\\Desktop\\myPPTs")
ppt_obj.convert2gif(duration=1, loop=-1, del_png=False)

如果不需要gif,只需要png图片文件,可以直接使用下面的方法:

import ppt2gif
ppt_obj = ppt2gif.PPT("C:\\Users\\Administrator\\Desktop\\myPPTs")
ppt_obj.convert2png()

注意事项

  1. 如果转换过程中发生意外中断。

    中断后重新执行程序,会自动跳过已经生成的文件。但是在第一个阶段,即生成png图片的阶段,程序只识别png存放的文件夹而不是单个png文件,所以可能导致被中断的PPT继续处理的时候图片输出不完全。这时需要手动删除该PPT对应的存放png图片的文件夹,然后重新执行程序。

  2. 平台限制。因为依赖win32com包,所以暂时仅支持windows系统。

转换效果

StateMachine

BinaryTree

About

A python package, convert ppt into gif.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages