日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python ppt自动生成目录_利用python-pptx库读写操作PPT,批量自动生成或修改的PPT

發(fā)布時(shí)間:2023/12/9 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python ppt自动生成目录_利用python-pptx库读写操作PPT,批量自动生成或修改的PPT 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

python的python-pptx庫(kù)是一個(gè)優(yōu)秀的讀寫PPT的庫(kù),可以建新建PPT及打開(kāi)本地電腦上已經(jīng)的的PPT。可以向PPT里增加各種元素、設(shè)置、調(diào)整格式,提取PPT里的文字等等。但同時(shí)又由于PPT的個(gè)性化比較高,批量生成制作的可能性比較小,所以在網(wǎng)上留下的詳細(xì)教程不多。本節(jié)根據(jù) python-pptx?0.6.18文檔 整理,作了相關(guān)的備注。(備注:不支持.ppt拓展名的文件)

先來(lái)一些python-pptx庫(kù)名詞釋義:

Presentation:演示,可以理解為powerpoint程序

slides:所有的幻燈片

slide:單張幻燈片

layouts:布局

slide_layouts:幻燈片布局

textbox:文本框

text_frame:文本框

paragraph:段落

add_paragraph:添加段落

enum:枚舉,列舉

bullet_slide_layout:項(xiàng)目符號(hào)幻燈片布局

title_slide_layout:標(biāo)題幻燈片版式

prs.slide_layouts是演示文稿中包含的幻燈片布局的集合

prs.slides是演示文稿中幻燈片的集合

slide_masters:幻燈片母版

特別說(shuō)明一下,幻燈片布局的樣式( slide_layouts ):

python-pptx的使用實(shí)例:

1、新建一個(gè)PPT并添加文本框及文字:

from pptx import Presentation

from pptx.enum.shapes import MSO_SHAPE

from pptx.util import Inches,Pt

prs=Presentation()

blank_slide_layout=prs.slide_layouts[6]

slide=prs.slides.add_slide(blank_slide_layout)

#設(shè)置要新建的文本框的位置

left = top = width = height = Inches(1)

#實(shí)例化一個(gè)文本框

txBox = slide.shapes.add_textbox(left, top, width, height)

#設(shè)置文件框的類型

tf=txBox.text_frame

#給定文本框里的文字

tf.text='This is text inside a textbox'

#添加段落,向下在添加段落文字

p=tf.add_paragraph()

#給新增加的段落添加文字

p.text="This is a second add_paragraph that's bold"

#給新添加的段落文字設(shè)置為粗體

p.font.bold=True

#再在這個(gè)文本框中新建一個(gè)段落

p=tf.add_paragraph()

#設(shè)置新段落的文字

p.text="This is a third paragraph that's big"

#設(shè)置新添加的段落文字的字號(hào)為40

p.font.size=Pt(40)

#保存新建的PPT。

prs.save(r'C:/Users/Administrator/Desktop/test.pptx')

2、新建一個(gè)PPT并在PPT中添加一個(gè)圖片:

from pptx import Presentation

from pptx.enum.shapes import MSO_SHAPE

from pptx.util import Inches,Pt

#要添加圖片的路徑

img_path=r'C:/Users/Administrator/Desktop/圖片2.png'

#實(shí)例化一個(gè)PPT

prs=Presentation()

#設(shè)置要新建的PPT的樣式

blank_slide_layout=prs.slide_layouts[6]

#根據(jù)設(shè)置的PPT布局樣式新建一張空白的PPT

slide=prs.slides.add_slide(blank_slide_layout)

#設(shè)置圖片的添加位置,以英寸為單位

left=top=Inches(1)

#在新建的PPT里添加指定的圖片,到指定的位置

pic=slide.shapes.add_picture(img_path,left,top)

#重新調(diào)整圖片距離左邊的位置

left=Inches(5)

#設(shè)置圖片的高度

height=Inches(5.5)

#將指定的圖片再插入到新的位置,并設(shè)置圖片的大小

pic=slide.shapes.add_picture(img_path,left,top,height=height)

#保存新建的PPT。

prs.save(r'C:/Users/Administrator/Desktop/test.pptx')

3、 新建幻燈片并添加形狀 :

from pptx import Presentation

from pptx.enum.shapes import MSO_SHAPE

from pptx.util import Inches,Pt

#實(shí)例化一個(gè)PPT

prs=Presentation()

#設(shè)置新建PPT的布局樣式:僅標(biāo)題幻燈片版式

title_only_slide_layout=prs.slide_layouts[5]

#根據(jù)指定樣式新建一張PPT,

slide=prs.slides.add_slide(title_only_slide_layout)

#把新建PPT中的所有形狀對(duì)象shapes賦值給變量shapes

shapes=slide.shapes

#設(shè)置標(biāo)題的文字

shapes.title.text='Adding an AutoShape'

#設(shè)置下面新建形狀距所在頁(yè)P(yáng)PT左邊的位置

left=Inches(0.93)

#設(shè)置下面新建形狀距所在頁(yè)P(yáng)PT頂商的位置

top=Inches(3.0)

#設(shè)置插入形狀的寬度

width=Inches(1.75)

#設(shè)置插入形狀的高度

height=Inches(1.0)

#根據(jù)指定位置、大小新建一個(gè)五角形

shape=shapes.add_shape(MSO_SHAPE.PENTAGON,left,top,width,height)

#給新建的形狀添加文字

shape.text='Step 1'

#設(shè)置下面新建V形距左邊的位置,0.4是V形的深度

left=left+width-Inches(0.4)

#設(shè)置新建V形的寬度

width=Inches(2.0)

#通過(guò)循環(huán)創(chuàng)建4個(gè)V形形狀

for n in range(2,6):

#根據(jù)指定的位置、大小新建一個(gè)形狀

shape=shapes.add_shape(MSO_SHAPE.CHEVRON,left,top,width,height)

#形狀的文字

shape.text='Step %d'%n

#重新調(diào)整下一個(gè)形狀距離左邊的位置

left=left+width-Inches(0.4)

#保存新建的PPT。

prs.save(r'C:/Users/Administrator/Desktop/test.pptx')

4、新建PPT并添加一個(gè)表格:

from pptx import Presentation

from pptx.enum.shapes import MSO_SHAPE

from pptx.util import Inches,Pt

#實(shí)例化一個(gè)PPT

prs=Presentation()

#設(shè)置將要新建的幻燈片版式

title_only_slide_layout=prs.slide_layouts[5]

#根據(jù)上面版式新建一張PPT

slide=prs.slides.add_slide(title_only_slide_layout)

#把新建PPT中所有的形狀集合賦值給變量shapes

shapes=slide.shapes

#設(shè)置標(biāo)題的文字

shapes.title.text='Adding a Table'

#設(shè)計(jì)將要新建的表格的行列數(shù)

rows=cols=2

#設(shè)置距離幻燈片左邊及頂端的距離

left=top=Inches(2.0)

#設(shè)置表格的寬度

width=Inches(6.0)

#設(shè)置表格的高度

height=Inches(0.8)

#根據(jù)指定的行列數(shù)、位置、大小新建一個(gè)表格

table=shapes.add_table(rows,cols,left,top,width,height).table

#重新調(diào)整每列的寬度

table.columns[0].width=Inches(2.0)

table.columns[1].widht=Inches(4.0)

#設(shè)置表頭的文字

table.cell(0,0).text='Foo'

table.cell(0,1).text='Bar'

#設(shè)置表體單元格里的文字

table.cell(1,0).text='Baz'

table.cell(1,1).text='Qux'

#保存新建的PPT。

prs.save(r'C:/Users/Administrator/Desktop/test.pptx')

上面是python-pptx幾個(gè)常用的基本操作,后續(xù)會(huì)結(jié)合實(shí)際實(shí)例再跟大家分享。

總結(jié)

以上是生活随笔為你收集整理的python ppt自动生成目录_利用python-pptx库读写操作PPT,批量自动生成或修改的PPT的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。