# 這個程式將 webp 圖片轉換為 jpg 格式, # 並儲存到指定的資料夾或與原檔案相同的資料夾中。 # 使用 PIL 庫來處理圖片格式轉換。 from PIL import Image import os def convert_webp_to_jpg(webp_path, output_folder=None): """ 將 webp 檔案轉換為 jpg 檔案。 :param webp_path: 輸入的 webp 檔案路徑。 :param output_folder: 輸出的資料夾路徑。如果為 None,則輸出到與輸入檔案相同的資料夾。 :return: 輸出的 jpg 檔案路徑。 """ try: # 開啟 webp 圖片 img = Image.open(webp_path).convert("RGB") # 決定輸出的檔案名稱與路徑 file_name = os.path.splitext(os.path.basename(webp_path))[0] if output_folder: if not os.path.exists(output_folder): os.makedirs(output_folder) output_path = os.path.join(output_folder, f"{file_name}.jpg") else: output_path = os.path.join(os.path.dirname(webp_path), f"{file_name}.jpg") # 儲存為 jpg img.save(output_path, "jpeg") print(f"成功將 {webp_path} 轉換為 {output_path}") return output_path except Exception as e: print(f"轉換失敗:{e}") return None if __name__ == '__main__': # 建立一個假的 webp 檔案以供測試 if not os.path.exists("input_images"): os.makedirs("input_images") try: # 建立一個簡單的白色圖片 #G:\Python\tools\input_images\1411032040-楊宗祥.webp dummy_webp_path = r"G:\Python\tools\input_images\1411032040.webp" # 測試轉換函數 # 範例 1: 轉換並儲存在相同資料夾 print("\n--- 範例 1: 轉換並儲存在相同資料夾 ---") output_path = convert_webp_to_jpg(dummy_webp_path) # 範例 2: 轉換並儲存在指定資料夾 print("\n--- 範例 2: 轉換並儲存在指定資料夾 ---") if not os.path.exists("output_images"): os.makedirs("output_images") output_path = convert_webp_to_jpg(dummy_webp_path, "output_images") print(output_path) except Exception as e: print(f"執行範例時發生錯誤: {e}")