每學期的期末,我都要將全年級的必修課程產出的作品取得其 PNG 圖檔。但是因為學生都是將作品放在 PowerPoint 中,而且我只需要第一頁投影片的 PNG 圖檔。(如下圖)
面對數百個 PowerPoint 檔必須要一個一個開啟,然後再將其第一頁投影片儲存成 PNG 圖檔,實在太耗工了,有沒有更快的方式?
我跟 AI 大神求救,直接向 ChatGPT 詢問,ChatGPT 立即給了我明確的做法,而且一次就成功了。終可以輕鬆的取得數百張的 PNG 圖檔了!效率和效能都提高了。參考以下的步驟操作即可完成。
👌 準備工作
先將所有的 PowerPoint 檔複製到資料夾中。(本例:V:\Google Downloads\Temp)
📦 安裝所需套件
先進入終端機(Windows PowerShell)
執行:pip install pywin32
👍 複製以下 Python 程式碼
import os
import win32com.client
# 設定資料夾路徑(請改成你的資料夾路徑)
ppt_folder = r"C:\你的\PowerPoint資料夾"
output_folder = os.path.join(ppt_folder, "FirstSlide_PNGs")
os.makedirs(output_folder, exist_ok=True)
# 啟動 PowerPoint 應用程式
ppt_app = win32com.client.Dispatch("PowerPoint.Application")
ppt_app.Visible = True
# 遍歷資料夾內所有 .pptx 檔
for filename in os.listdir(ppt_folder):
if filename.endswith(".pptx") or filename.endswith(".ppt"):
full_path = os.path.join(ppt_folder, filename)
try:
presentation = ppt_app.Presentations.Open(full_path, WithWindow=False)
# 匯出第一頁為 PNG
output_path = os.path.join(output_folder, f"{os.path.splitext(filename)[0]}.png")
presentation.Slides(1).Export(output_path, "PNG")
presentation.Close()
print(f"已匯出: {output_path}")
except Exception as e:
print(f"錯誤處理 {filename}: {e}")
# 關閉 PowerPoint
ppt_app.Quit()
💻 執行 Python 程式
1. 開啟「記事本」,將以上的 Python 程式碼貼上。
2. 儲存檔案,檔名取為 export_ppt_slide.py(副檔名是 .py)
3. 進入該 .py 檔案所在的資料夾。
4. 在檔案總管中按右鍵,點選:在終端機開啟。(進入「命令提示字元」視窗)
執行:
python export_ppt_slide.py
檢視已集合在一個資料夾中的全部圖檔,太爽了!
