python能做ppt吗,使用python生成ppt
大蟒可以写PPT。方法为:1、输入" pip3安装python-pptx "命令安装python-pptx;2、准备ppt模板(网络下载或自定义幻灯片);3、加载ppt模板并使用指定幻灯片样式;4、添加数据即可生成ppt。
简介
本文主要介绍如何通过大蟒生成ppt文件,以及借助ppt模板来生成ppt
环境
python 3
python-pptx
安装
pip3installpython-pptx将文字输出到ppt
效果图
代码
frompptximportPresentation
#创建幻灯片-
prs=演示()
title _ slide _ layout=PRS幻灯片布局[0]
slide=prs.slides.add_slide(标题_幻灯片_布局)
标题=slide.shapes.title
subtitle=slide.placeholders[1]
#设置标题和副标题
你好,世界!
字幕。text= pipinstallpython-pptx
prs.save(test.pptx )图表输出到ppt
效果图
代码
frompptximportPresentation
frompptx。图表。数据导入图表数据
来自pptx。枚举。chartimportxl _ CHART _ TYPE
frompptx.utilimportInches
#创建幻灯片-
prs=演示()
幻灯片=PRS。幻灯片。add _ slide(PRS。幻灯片布局[5])
#定义图表数据-
chart_data=ChartData()
chart_data.categories=[East , West , Midwest]
chart_data.add_series(Series1 ,(19.2,21.4,16.7))
#将图表添加到幻灯片-
x,y,cx,cy=英寸(2),英寸(2),英寸(6),英寸(4.5)
slide.shapes.add_chart(
XL_CHART_TYPE .列_聚集,x,y,cx,cy,图表_数据
)
prs.save(chart-01.pptx )使用ppt模板来生成ppt
准备ppt模板(网络下载或自定义幻灯片母版)
加载ppt模板,并使用指定幻灯片样式
添加数据并生成新ppt
效果图
代码
从
pptximportPresentation
frompptx.utilimportInches
frompptximportPresentation
frompptx.chart.dataimportChartData
frompptx.enum.chartimportXL_CHART_TYPE
frompptx.utilimportCm#Inches
frompptx.enum.chartimportXL_LEGEND_POSITION
if__name__=='__main__':
#创建幻灯片------
prs=Presentation('template.pptx')
title_only_slide_layout=prs.slide_layouts[5]
slide=prs.slides.add_slide(title_only_slide_layout)
shapes=slide.shapes
shapes.title.text='报告'
#定义表格数据------
name_objects=["object1","object2","object3"]
name_AIs=["AI1","AI2","AI3"]
val_AI1=(19.2,21.4,16.7)
val_AI2=(22.3,28.6,15.2)
val_AI3=(20.4,26.3,14.2)
val_AIs=[val_AI1,val_AI2,val_AI3]
#表格样式--------------------
rows=4
cols=4
top=Cm(12.5)
left=Cm(3.5)#Inches(2.0)
width=Cm(24)#Inches(6.0)
height=Cm(6)#Inches(0.8)
#添加表格到幻灯片--------------------
table=shapes.add_table(rows,cols,left,top,width,height).table
#设置单元格宽度
table.columns[0].width=Cm(6)#Inches(2.0)
table.columns[1].width=Cm(6)
table.columns[2].width=Cm(6)
table.columns[3].width=Cm(6)
#设置标题行
table.cell(0,1).text=name_objects[0]
table.cell(0,2).text=name_objects[1]
table.cell(0,3).text=name_objects[2]
#填充数据
table.cell(1,0).text=name_AIs[0]
table.cell(1,1).text=str(val_AI1[0])
table.cell(1,2).text=str(val_AI1[1])
table.cell(1,3).text=str(val_AI1[2])
table.cell(2,0).text=name_AIs[1]
table.cell(2,1).text=str(val_AI2[0])
table.cell(2,2).text=str(val_AI2[1])
table.cell(2,3).text=str(val_AI2[2])
table.cell(3,0).text=name_AIs[2]
table.cell(3,1).text=str(val_AI3[0])
table.cell(3,2).text=str(val_AI3[1])
table.cell(3,3).text=str(val_AI3[2])
#定义图表数据---------------------
chart_data=ChartData()
chart_data.categories=name_objects
chart_data.add_series(name_AIs[0],val_AI1)
chart_data.add_series(name_AIs[1],val_AI2)
chart_data.add_series(name_AIs[2],val_AI3)
#添加图表到幻灯片--------------------
x,y,cx,cy=Cm(3.5),Cm(4.2),Cm(24),Cm(8)
graphic_frame=slide.shapes.add_chart(
XL_CHART_TYPE.COLUMN_CLUSTERED,x,y,cx,cy,chart_data
)
chart=graphic_frame.chart
chart.has_legend=True
chart.legend.position=XL_LEGEND_POSITION.TOP
chart.legend.include_in_layout=False
value_axis=chart.value_axis
value_axis.maximum_scale=100.0
value_axis.has_title=True
value_axis.axis_title.has_text_frame=True
value_axis.axis_title.text_frame.text="Falsepositive"
value_axis.axis_title.text_frame.auto_size
prs.save('test_template.pptx')
推荐课程:Python教程之Tkinter视频教程
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。