如何使用Python保存PPT中的形狀為圖像文件
引言
將PowerPoint演示文稿中的形狀(幻燈片中的內(nèi)容元素,包括文本框、圖形、圖片、圖表等)保存為圖片是方便內(nèi)容跨平臺分享和再利用的有效手段。利用Python,我們可以直接將PowerPoint幻燈片中帶設計和格式的文本、圖片、圖形、表格等各種元素直接保存為圖片,從而實現(xiàn)在保留原設計和格式的情況下,將其發(fā)布在網(wǎng)頁或是在其他文檔編輯等場景再利用。本文將演示如何使用Python保存PowerPoint演示文稿中的形狀為圖像文件。
本文所使用的方法需要用到Spire.Presentation for Python,PyPI:pip install spire.presentation。
使用Python保存PPT中的所有形狀為圖像文件
在操作PowerPoint演示文稿時,我們可以先使用Presentation.LoadFromFile()方法從文件載入演示文稿,再使用Presentation.Slides.get_Item()方法獲取單個幻燈片或遍歷所幻燈片。然后,我們可以遍歷通過Slide.Shapes.SaveAsImage(shapeIndex: int, dpiX: int, dpiY: int)方法將形狀保存為圖像。下面是操作步驟示例:
- 導入所需模塊
- 創(chuàng)建
Presentation實例。 - 使用
Presentation.LoadFromFile()方法加載PowerPoint演示文稿。 - 使用
Presentation.Pages.get_Item()方法獲取一個幻燈片。 - 遍歷幻燈片中的形狀:
- 使用
Slide.Shapes.SaveAsImage()方法將形狀保存為圖像流。 - 使用
Stream.Save()方法將圖像流保存到文件。
- 使用
代碼示例
from spire.presentation import *
# 創(chuàng)建一個 Presentation 實例
presentation = Presentation()
# 加載一個 PowerPoint 文件
presentation.LoadFromFile("Sample.pptx")
# 獲取第四張幻燈片(索引從0開始)
slide = presentation.Slides.get_Item(4)
# 將形狀保存為圖片流
for i in range(slide.Shapes.Count):
# 保存當前形狀為指定大小的圖片流
imageStream = slide.Shapes.SaveAsImage(i, 256, 256)
# 保存圖片到文件
imageStream.Save(f"output/Shapes/ShapeToImage{i}.png")
# 釋放資源
presentation.Dispose()
結果

用Python保存PPT中帶格式設計的圖片為圖像文件
通過直接將形狀保存圖像文件的方法,我們還可以直接將演示文稿中進行了格式編輯的圖片保存圖像文件,并保留其格式。我們只需要在將形狀保存為圖像時,判斷其是否為SlidePicture實例并保存這些實例。以下是操作步驟示例:
- 導入所需模塊
- 創(chuàng)建
Presentation實例。 - 使用
Presentation.LoadFromFile()方法加載PowerPoint演示文稿。 - 使用
Presentation.Pages.get_Item()方法獲取一個幻燈片。 - 遍歷幻燈片中的形狀:
- 判斷形狀是否為
SlidePicture實例,如果是則將其保存為圖像流。 - 使用
Stream.Save()方法將圖像流保存到圖像文件。
- 判斷形狀是否為
代碼示例
from spire.presentation import *
# 創(chuàng)建一個 Presentation 實例
presentation = Presentation()
# 加載一個 PowerPoint 文件
presentation.LoadFromFile("Sample.pptx")
# 獲取第五張幻燈片(索引從0開始)
slide = presentation.Slides.get_Item(1)
# 遍歷幻燈片中的所有形狀
i = 0
for shape in slide.Shapes:
# 檢查形狀是否是 SlidePicture 類型的對象
if isinstance(shape, SlidePicture):
# 保存形狀為圖片流
shape = shape if isinstance(shape, SlidePicture) else None
image = slide.Shapes.SaveAsImage(slide.Shapes.IndexOf(shape), 256, 256)
# 保存圖片到文件
image.Save(f"output/Images/ImageShape{i}.png")
i += 1
# 釋放資源
presentation.Dispose()

本文演示了如何使用Python將PowerPoint演示文稿中的形狀保存圖像文件。
到此這篇關于如何使用Python保存PPT中的形狀為圖像文件的文章就介紹到這了,更多相關Python保存PPT的形狀為圖片內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python使用matplotlib繪制圖片時x軸的刻度處理
在使用matplotlib繪制圖片時,x軸的刻度可能比較密集,特別是以日期作為x軸時,則最后會顯示不出來。這篇文章主要介紹了python使用matplotlib繪制圖片時x軸的刻度處理,需要的朋友可以參考下2021-08-08
Python使用plt.boxplot() 參數(shù)繪制箱線圖
這篇文章主要介紹了Python使用plt.boxplot() 參數(shù)繪制箱線圖 ,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-06-06
解決python字典對值(值為列表)賦值出現(xiàn)重復的問題
今天小編就為大家分享一篇解決python字典對值(值為列表)賦值出現(xiàn)重復的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01
使用pyqt5 tablewidget 單元格設置正則表達式
今天小編就為大家分享一篇使用pyqt5 tablewidget 單元格設置正則表達式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12

