Skip to content

Ikeli0320/avif_get

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

圖片轉檔程式 (Image Converter)

Python License Pillow

這是一個簡單易用的 Python 程式,支援將 JPG、PNG、HEIC 格式的圖片批量轉換為 WebPAVIF 格式。這些現代圖片格式提供優秀的壓縮效果,檔案大小通常比傳統格式小 25-60%。

功能特色

  • 🖼️ 多格式支援:JPG、PNG、HEIC → WebP/AVIF
  • 📁 批量轉換:一次處理多個檔案
  • ⚙️ 可調整設定:壓縮品質、無損壓縮選項
  • 🎯 智能處理:自動處理透明背景(轉為白色背景)
  • 📊 詳細統計:轉換進度顯示和結果統計
  • 📉 壓縮率顯示:即時顯示檔案大小壓縮效果
  • 🔧 雙格式支援:WebP(相容性好)和 AVIF(壓縮最佳)

安裝需求

1. 安裝 Python 套件

pip install -r requirements.txt

2. 系統需求

  • Python 3.7 或更高版本
  • 支援 WebP 格式的 Pillow 版本
  • 支援 HEIC 格式的 pillow-heif 套件(可選)

使用方法

基本使用

  1. 複製專案

    git clone https://github.com/ikeli0320/avif_get.git
    cd avif_get
  2. 安裝依賴

    pip install -r requirements.txt
  3. 放入圖片:將要轉換的圖片放入 source 目錄

  4. 執行程式

    轉換為 WebP 格式(推薦,相容性佳):

    python webp_converter.py

    轉換為 AVIF 格式(最佳壓縮):

    python avif_converter.py
  5. 取得結果:轉換完成的檔案會出現在 target 目錄中

目錄結構

avif_get/
├── source/              # 放置原始圖片
│   └── .gitkeep        # 保持目錄結構
├── target/              # 轉換後的檔案
│   └── .gitkeep        # 保持目錄結構
├── webp_converter.py    # WebP 轉檔程式
├── avif_converter.py    # AVIF 轉檔程式
├── requirements.txt     # Python 套件需求
├── LICENSE             # MIT 授權條款
├── .gitignore          # Git 忽略檔案
└── README.md           # 專案說明

程式特色

支援的格式

  • 輸入格式:JPG、JPEG、PNG、HEIC、HEIF
  • 輸出格式:WebP 或 AVIF

轉換設定

  • 品質:預設 80(範圍:0-100)
  • 無損壓縮:可選,預設為有損壓縮
  • 壓縮方法:使用最佳壓縮方法

特殊處理

  • 自動將 RGBA 和 LA 模式的圖片轉換為 RGB
  • 透明背景會轉換為白色背景
  • 自動建立目標目錄

範例輸出

WebP 轉檔範例

🖼️  WebP 轉檔程式
==================================================
✅ 系統支援 WebP 格式
✅ 系統支援 HEIF/HEIC 格式

🔍 找到 3 個圖片檔案
📁 來源目錄: source
📁 目標目錄: target
⚙️  品質設定: 80, 無損壓縮: 否
--------------------------------------------------
✅ 成功轉換: IMG_2152.HEIC -> IMG_2152.webp
   📊 檔案大小: 1,152,117 bytes -> 514,754 bytes
   📉 壓縮率: 55.3%
✅ 成功轉換: IMG_2154.HEIC -> IMG_2154.webp
   📊 檔案大小: 1,243,297 bytes -> 737,340 bytes
   📉 壓縮率: 40.7%
✅ 成功轉換: IMG_2157.JPG -> IMG_2157.webp
   📊 檔案大小: 333,809 bytes -> 165,542 bytes
   📉 壓縮率: 50.4%
--------------------------------------------------
📊 轉換完成: 成功 3 個,失敗 0 個
🎉 所有圖片轉換成功!

AVIF 轉檔範例

🖼️  AVIF 轉檔程式
==================================================
✅ 系統支援 AVIF 格式
✅ 系統支援 HEIF/HEIC 格式

🔍 找到 3 個圖片檔案
📁 來源目錄: source
📁 目標目錄: target
⚙️  品質設定: 80, 速度設定: 6
--------------------------------------------------
✅ 成功轉換: IMG_2152.HEIC -> IMG_2152.avif
✅ 成功轉換: IMG_2154.HEIC -> IMG_2154.avif
✅ 成功轉換: IMG_2157.JPG -> IMG_2157.avif
--------------------------------------------------
📊 轉換完成: 成功 3 個,失敗 0 個
🎉 所有圖片轉換成功!

注意事項

  1. 確保 source 目錄中有支援的圖片檔案
  2. 轉換過程中請勿移動或刪除原始檔案
  3. WebP 和 AVIF 格式需要較新的瀏覽器支援
  4. 大檔案轉換可能需要較長時間

故障排除

常見問題

  1. 找不到圖片檔案

    • 確認圖片檔案在 source 目錄中
    • 檢查檔案格式是否支援
  2. 轉換失敗

    • 檢查圖片檔案是否損壞
    • 確認有足夠的磁碟空間
  3. 套件安裝失敗

    • 更新 pip:pip install --upgrade pip
    • 使用虛擬環境:python -m venv venv
  4. HEIC 檔案無法轉換

    • 安裝 HEIF 支援:pip install pillow-heif
    • 確認檔案格式正確
  5. AVIF 格式不支援

    • 更新 Pillow:pip install --upgrade Pillow
    • 某些系統可能需要額外的編譯支援

貢獻

歡迎提交 Issue 和 Pull Request!

  1. Fork 此專案
  2. 建立您的功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的變更 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 開啟一個 Pull Request

授權

此專案採用 MIT 授權條款 - 詳見 LICENSE 檔案。

致謝

About

圖片轉檔程式 - 支援 JPG/PNG/HEIC 轉換為 WebP/AVIF 格式

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages