生财背景
源于一位行友的疑問,下載下傳了一個300頁的PPT,格式全都不對,如果要是一個個手動調整的話,可能會瘋掉。類似這種需求也在很多PPT兼職群(qq群搜尋就可以查到)裡能遇到,如果會Python來自動批量操作PPT調整格式,那接單豈不是來者不拒? 為了給大家增加一個賺錢的小機會,行哥這裡給大家分享一下Python操作PPT的用法
用法大綱如下:

安裝工具包
首先用pip安裝python工具包,如果覺得慢的話可以使用Python國内鏡像進行下載下傳
pip install python-pptx
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple python-pptx
1.建立PPT
建立PPT隻需要3步:導包、執行個體化、儲存。當然這樣建立的PPT隻是一張空白的ppt,連一張幻燈片都沒有
如果想調用已經存在的ppt,隻需要在執行個體化中填入已經存在的ppt的檔案位址即可
from pptx import Presentation
prs = Presentation()
prs.save('一行.pptx')
2.選擇模版
該子產品提供了10個不同的ppt模版,建立模版的時候在slide_layouts[模版序列]中填上參數即可以更換模版樣式
title_slide_layout = prs.slide_layouts[1]
3.建立幻燈片
設定完模版樣式,使用執行個體化對象的slides.add_slide函數便可以建立一張幻燈片
slide = prs.slides.add_slide(title_slide_layout)
當然如果使用for循環來疊代模版的序号建立幻燈片,可以檢視所有模版的樣式,如下圖
for i in range(1,11):
# 設定模版 1-10
title_slide_layout = prs.slide_layouts[i]
try:
# 建立一頁幻燈片
slide = prs.slides.add_slide(title_slide_layout)
# 根據placeholdes 索引擷取一頁幻燈片中的元素
body_shape= slide.shapes.placeholders
# body_shape為本頁ppt中所有shapes
body_shape[0].text = '一行01'
body_shape[1].text = '一行02'
except:
print(i)
4.編輯幻燈片元素
PPT裡的文字可以自己設定,設定字型的内容、粗體、 斜體、大小和下劃線都可以通過代碼設定來實作
body_shape= slide.shapes.placeholders
# 擷取标題
title_shape= slide.shapes.title
# 擷取本頁ppt的title元素
title_shape.text= '一行資料'
# 新增内容
new_paragraph= body_shape[1].text_frame.add_paragraph()
# 在第二個shape中的文本框中添加新段落
new_paragraph.text= 'add_paragraph'#新段落中的文字
new_paragraph.font.bold= True # 文字加粗
new_paragraph.font.italic= True # 文字斜體
from pptx.util import Pt #設定文字大小必須引入pptx.util中的Pt
new_paragraph.font.size= Pt(30) # 文字大小
new_paragraph.font.underline= True # 文字下劃線new_paragraph.level = 1 # 新段落的級别
5.新增幻燈片元素
5.1 插入文本框
文本框的加入需要先設定文本框位置元素,然後設定文本框的文字内容,最後使用add_paragraph()函數即可添加到PPT界面當中
# 新增文本框
from pptx.util import Inches
left= top= width= height= Inches(3)
# 預設位置及大小
textbox = slide.shapes.add_textbox(left,top,width,height)
# left,top為相對位置,width,height為文本框大小
textbox.text= '公衆号:一行資料'
# 文本框中文字
new_para= textbox.text_frame.add_paragraph()
# 在新文本框中添加段落
new_para.text= 'you can really dance'
5.1 添加圖檔
圖檔的設定方法需要先設定圖檔路徑和圖檔位置,再通過add_picture函數将圖檔增加上去
from pptx.util import Inches
# 新增圖檔
img_path= '楊超越_1.jpeg'
# 檔案路徑
left, top, width, height= Inches(3), Inches(4.5), Inches(2), Inches(2)
# 預設位置及大小
pic= slide.shapes.add_picture(img_path, left, top, width, height)
5.3 添加表格
表格的添加也是一樣,需要設定位置資訊,但是注意表格多了行數和列數的參數需要設定,最後通過add_table函數加入到PPT中
rows, cols, left, top, width, height = 2,2,Inches(3.5), Inches(4.5), Inches(6), Inches(0.8)
table= slide.shapes.add_table(rows, cols, left, top, width, height).table
# 添加表格,并取表格類
table.columns[0].width=Inches(2.0)
# 第一縱列寬度
table.columns[1].width=Inches(4.0)
# 第二縱列寬度
table.cell(0,0).text= '一行00'
# 指定位置寫入文本
table.cell(0,1).text= '一行01'
table.cell(1,0).text= '一行10'
table.cell(1, 1).text= '一行11'
以上是所有介紹的python操作ppt的用法,未來凡是重複性的工作都可以用代碼來實作,隻是有人還不會,這就出現了賺錢的機會。那麼還愣着幹嘛,學會趕緊去兼職群瞅瞅啊。