使用python-pptx包批量修改ppt格式的实现
作者:六盘水月照 时间:2021-04-03 21:31:16
最近实习需要对若干ppt进行格式上的调整,主要就是将标题的位置、对齐方式、字体等统一,人工修改又麻烦又容易错。
因此结合网上的pptx包资料,使用python脚本完成处理。
主要的坑点在于,shape的text_frame不能直接修改字体,甚至paragraph也不行,由于一个框里多个字体存在,它会报为“None”,需要进一步去run层修改。
from pptx import Presentation
from pptx.enum.text import PP_ALIGN
prs = Presentation('originalppt.pptx') #导入ppt
sthead=prs.slides[2].shapes[1] #以第3张ppt为标准标题格式
print(sthead.text)
stleft=sthead.left
stwidth=sthead.width
sttop=sthead.top
stheight=sthead.height
#进行逐个修改
i=1
for slide in prs.slides:
for shape in slide.shapes:
if shape.has_text_frame:
if 36000<shape.left<1200000 and shape.height<1400000:
ftname=(shape.text_frame.paragraphs[0].runs[0].font.name)
ftsize=int(shape.text_frame.paragraphs[0].runs[0].font.size.pt)
if (ftsize>27):
head=shape
head.left=stleft
head.top=sttop
head.width=10080000
head.height=stheight
head.text_frame.vertical_anchor = MSO_ANCHOR.MIDDLE
head.text_frame.paragraphs[0].line_spacing=1
for paragraph in head.text_frame.paragraphs:
for run in paragraph.runs:
run.font.size = 32*12700
run.font.name = '宋体'
#print(i,'ok')
i +=1
prs.save('adjnew.pptx') #保存修改后的ppt
来源:https://www.cnblogs.com/oikoumene/p/11201864.html
标签:python,pptx,ppt格式


猜你喜欢
MySQL中两种快速创建空表的方式的区别
2008-12-17 14:34:00
如何在MySQL查询结果集中得到记录行号
2008-12-17 15:00:00
Access:数据转换问题
2008-11-20 17:02:00
JS高阶函数原理与用法实例分析
2024-05-09 10:36:21
python中matplotlib的颜色及线条控制的示例
2023-11-04 08:11:50

归纳整理Python中的控制流语句的知识点
2021-03-04 12:07:12
pygame实现弹力球及其变速效果
2022-12-25 16:23:07
聊聊python 逻辑运算及奇怪的返回值(not,and,or)问题
2021-08-07 01:04:42

为ckeditor编辑器加上传图片的功能
2022-08-11 22:17:50
一文详解Golang中的切片数据类型
2024-02-12 18:04:19

Python3.x和Python2.x的区别介绍
2022-01-05 12:36:27
解读Python中字典的key都可以是什么
2023-09-23 05:29:37
sqlserver中delete、update中使用表别名和oracle的区别
2024-01-19 15:21:49
python gdal安装与简单使用
2022-06-19 00:03:25

python 两个一样的字符串用==结果为false问题的解决
2023-01-24 08:30:59
python 机器学习之支持向量机非线性回归SVR模型
2022-06-17 20:23:55

八大排序算法的Python实现
2023-08-02 16:09:31
Python paramiko模块使用解析(实现ssh)
2021-02-03 10:29:26
Python中使用kitti数据集实现自动驾驶(绘制出所有物体的行驶轨迹)
2023-06-27 17:02:54

对python生成业务报表的实例详解
2021-09-07 03:47:30
