ppt——自动化办公下篇

def func_ppt():
    from pptx import Presentation
    from pptx.util import Inches, Pt

    #新增
    ppt = Presentation()                                #创建一个PPT

    slide = ppt.slides.add_slide(ppt.slide_layouts[1])  #创建一页幻灯片
    now_shape = slide.shapes.placeholders               #获取占位符(其实就是一个列表)
    now_shape[0].text = '这是占位符0'                     #标题
    now_shape[1].text = '这是占位符1'                     #正文

    slide = ppt.slides.add_slide(ppt.slide_layouts[1])  #创建一页幻灯片
    now_shape = slide.shapes.title                      #获取标题
    now_shape.text = 'this is the title'                #同上设置text属性
    now_shape = slide.shapes.placeholders[1]            #获得第1占位符(第0个就是上面的标题)
    now_shape.text = 'this is the textbox'

    slide = ppt.slides.add_slide(ppt.slide_layouts[1])  #创建一页幻灯片
    slide.shapes.placeholders[1].text='ggg'
    new_paragraph=slide.shapes.placeholders[1].text_frame.add_paragraph()   #第一个占位符创建新段落,之后才可以设格式
    new_paragraph.text='CJ is here.\nGJL is here.'      #text属性
    new_paragraph.font.bold=True                        #下面是设置属性
    new_paragraph.font.italic=True
    new_paragraph.font.size=Pt(15)
    new_paragraph.font.underline=True

    slide = ppt.slides.add_slide(ppt.slide_layouts[1])  #创建一页幻灯片
    textbox=slide.shapes.add_textbox(Inches(2),Inches(2),Inches(3),Inches(3))   #增加新文本框(第三个占位符),左上(边距)宽高
    textbox.text='第一行.'                               #设置text属性
    new_paragraph=textbox.text_frame.add_paragraph()    #添加新段落
    new_paragraph.text='第二行.\n第三行.'                 #设置text属性

    slide = ppt.slides.add_slide(ppt.slide_layouts[1])  #创建一页幻灯片
    pic=slide.shapes.add_picture('pic.jpg',Inches(2),Inches(2),Inches(3),Inches(3))

    slide = ppt.slides.add_slide(ppt.slide_layouts[1])  #创建一页幻灯片,获得这页幻灯片的话柄
    table=slide.shapes.add_table(3,2,Inches(2),Inches(2),Inches(3),Inches(3)).table #行列左上宽高
    table.columns[0].width=Inches(3)                    #第0列的宽
    table.rows[0].height=Inches(3)                      #第0列的高
    table.cell(0,0).text='CJ'                           #第(0,0)单元格的文件内容

    ppt.save('test6.pptx')                              #保存文件

    #利用模板读查改
    ppt=Presentation('test7.pptx')
    shape=ppt.slides[0].shapes                          #获取第0页PPT(这个是肉眼观察所得)
    for i,j in enumerate(shape):print(i,j.text)         #逐个查看这一页的每个占位符
    print(shape[1].text_frame.paragraphs[1].text)           #然后查看第一个占位符中的第1个段落的text属性
    print(shape[1].text_frame.paragraphs[1].runs[0].text)   #也可以再查看第一个占位符中的runs的text属性
    print(shape[1].text_frame.paragraphs[1].runs[1].text)

    shape[1].text_frame.paragraphs[1].text='gg\nmm'
    shape[1].text_frame.paragraphs[1].runs[1].text='520'    #也可以设置第一个占位符中的第一个runs的text属性
    ppt.save('test8.pptx')

func_ppt()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值