辦公室自動化之PowerPoint操作

辦公室自動化之PowerPoint操作

在前幾期中寫過python如何操作ExcelWord,比較少討論到Power Point的操作,所以本期T編補齊了比較常見的辦公室應用軟體,跟讀者說明如何操作ppt,讓您事半功倍!

零、事前準備

本次會採用的套件為python-pptx請先下載並且安裝

pip install python-pptx

一、開始產生一個pptx

from pptx import Presentation #導入套件
from pptx.util import Inches #插入圖片用

#建立一個ppt物件
prs = Presentation() 

#設定layout樣式
slide_layout = prs.slide_layouts[0] #採用模板一
#加入一張簡報
slide = prs.slides.add_slide(slide_layout)

#設定標題
title = slide.shapes.title
title.text = "韜睿軟體"

#設定小標
subtitle = slide.placeholders[1]
subtitle.text = "示範產生一個PowerPoint簡報檔案!"

#存檔
prs.save('test.pptx')

二、查看一下所產生的pptx

是不是很簡單就產生了一個PowerPoint簡報頁面

三、要進階之前,先了解一些基礎

首先是python-pptx的架構,由於pptx結構很複雜,所以我們要做一些進階設定,需要先了解他的架構,可以由下圖看到為一個階層性的架構,對應上面的程式就可以知道該架構會先產生一個Persenation的物件,然後再往下操作.

四、除了架構外,還得了解每個Slide的內容

就像是在做簡報的時候,你會建立每個簡報的頁面,每個頁面裡面再去建立內容,所以python-pptx操作也是如此,接下來下圖會看到簡報的概觀,也就是上述描述的Slide

五、除了架構與簡報內容外,我們在建立ppt時也會用到母版,系統也有預設提供

稍後可以看到我們在每個頁面中會指定母版中的模板,這次會採用模板一與模板五

六、高難度挑戰,開始製作多頁簡報吧!

from pptx import Presentation #導入套件
from pptx.util import Inches #插入圖片用

#建立一個ppt物件
prs = Presentation() 

#--第一頁--

#設定layout樣式
slide_layout = prs.slide_layouts[0] #採用模板一
#加入一張簡報
slide = prs.slides.add_slide(slide_layout)

#設定標題
title = slide.shapes.title
title.text = "韜睿軟體"

#設定小標
subtitle = slide.placeholders[1]
subtitle.text = "示範產生一個PowerPoint簡報檔案!"

#--第二頁--
slide = prs.slides.add_slide(prs.slide_layouts[1])#採用模板二
#設定標題
title = slide.shapes.title
title.text = "產生第二頁"
content = slide.shapes.placeholders[1]
content.text ='我是內容第一行\n我是內容第二行'


#--第三頁--
slide =  prs.slides.add_slide(prs.slide_layouts[5])#採用模板五
#設定標題
title = slide.shapes.title
title.text = "產生第三頁-加入表格"

#設定要幾個表格
rows = cols = 3

#設定表格位置
left = Inches(1.0)
top = Inches(2.0)
width = Inches(6.0)
height = Inches(0.8)

#產生表格
table = slide.shapes.add_table(rows, cols, left, top, width, height).table

#設定每個columns大小
table.columns[0].width = Inches(2.0)
table.columns[1].width = Inches(4.0)

#表頭
table.cell(0, 0).text = '年份'
table.cell(0, 1).text = '品名'
table.cell(0, 2).text = '數量'

#第一列表格內容
table.cell(1, 0).text = '商品一'
table.cell(1, 1).text = '發票辨識系統'
table.cell(1, 2).text = '20'

#第二列表格內容
table.cell(2, 0).text = '商品二'
table.cell(2, 1).text = 'CRM系統'
table.cell(2, 2).text = '30'

#--第四頁--

#定義要插入的圖片路徑
img_path = 'test.png'
slide =  prs.slides.add_slide(prs.slide_layouts[5])#採用模板五

#設定標題
title = slide.shapes.title
title.text = "產生第四頁-插入圖片"

#圖片產生位置
left = top = Inches(1)

#實際插入圖片
pic = slide.shapes.add_picture(img_path, left, top)

#存檔
prs.save('test.pptx')

七、結語

由上述可以看到,我們產生了四頁簡報頁面(Slide),分別在每一個頁面指定他的內容,T編也把常用的如插入圖片、表格等操作,寫了範例都可以參考,當然它也可以直接開啟既有的簡報檔案進行操作,這邊就不做說明.

最後T編說,也太複雜了…難怪嫌少人說明.

完成的簡報檔案可以參閱此.

八、參考引用

python-pptx官方網站

python-pptx的基本使用

Python 製作 PPT(上)

使用python-pptx操作PPT的示例詳解

Loading

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *