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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

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

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

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

先來一些python-pptx庫名詞釋義:

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

slides:所有的幻燈片

slide:單張幻燈片

layouts:布局

slide_layouts:幻燈片布局

textbox:文本框

text_frame:文本框

paragraph:段落

add_paragraph:添加段落

enum:枚舉,列舉

bullet_slide_layout:項目符號幻燈片布局

title_slide_layout:標題幻燈片版式

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

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

slide_masters:幻燈片母版

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

python-pptx的使用實例:

1、新建一個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)

#設置要新建的文本框的位置

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

#實例化一個文本框

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

#設置文件框的類型

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"

#給新添加的段落文字設置為粗體

p.font.bold=True

#再在這個文本框中新建一個段落

p=tf.add_paragraph()

#設置新段落的文字

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

#設置新添加的段落文字的字號為40

p.font.size=Pt(40)

#保存新建的PPT。

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

2、新建一個PPT并在PPT中添加一個圖片:

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'

#實例化一個PPT

prs=Presentation()

#設置要新建的PPT的樣式

blank_slide_layout=prs.slide_layouts[6]

#根據設置的PPT布局樣式新建一張空白的PPT

slide=prs.slides.add_slide(blank_slide_layout)

#設置圖片的添加位置,以英寸為單位

left=top=Inches(1)

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

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

#重新調整圖片距離左邊的位置

left=Inches(5)

#設置圖片的高度

height=Inches(5.5)

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

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

#實例化一個PPT

prs=Presentation()

#設置新建PPT的布局樣式:僅標題幻燈片版式

title_only_slide_layout=prs.slide_layouts[5]

#根據指定樣式新建一張PPT,

slide=prs.slides.add_slide(title_only_slide_layout)

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

shapes=slide.shapes

#設置標題的文字

shapes.title.text='Adding an AutoShape'

#設置下面新建形狀距所在頁PPT左邊的位置

left=Inches(0.93)

#設置下面新建形狀距所在頁PPT頂商的位置

top=Inches(3.0)

#設置插入形狀的寬度

width=Inches(1.75)

#設置插入形狀的高度

height=Inches(1.0)

#根據指定位置、大小新建一個五角形

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

#給新建的形狀添加文字

shape.text='Step 1'

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

left=left+width-Inches(0.4)

#設置新建V形的寬度

width=Inches(2.0)

#通過循環創建4個V形形狀

for n in range(2,6):

#根據指定的位置、大小新建一個形狀

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

#形狀的文字

shape.text='Step %d'%n

#重新調整下一個形狀距離左邊的位置

left=left+width-Inches(0.4)

#保存新建的PPT。

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

4、新建PPT并添加一個表格:

from pptx import Presentation

from pptx.enum.shapes import MSO_SHAPE

from pptx.util import Inches,Pt

#實例化一個PPT

prs=Presentation()

#設置將要新建的幻燈片版式

title_only_slide_layout=prs.slide_layouts[5]

#根據上面版式新建一張PPT

slide=prs.slides.add_slide(title_only_slide_layout)

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

shapes=slide.shapes

#設置標題的文字

shapes.title.text='Adding a Table'

#設計將要新建的表格的行列數

rows=cols=2

#設置距離幻燈片左邊及頂端的距離

left=top=Inches(2.0)

#設置表格的寬度

width=Inches(6.0)

#設置表格的高度

height=Inches(0.8)

#根據指定的行列數、位置、大小新建一個表格

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

#重新調整每列的寬度

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

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

#設置表頭的文字

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

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

#設置表體單元格里的文字

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

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

#保存新建的PPT。

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

上面是python-pptx幾個常用的基本操作,后續會結合實際實例再跟大家分享。

總結

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

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。