停止與原生依賴抗爭。
PackageX
零 C++ 綁定
不需要 python、make 或 g++。一個 npx 指令安裝,在任何 Node.js 運行的地方執行。
Box
單一執行檔 / 純 WASM
約 5MB 的 WASM 引擎,零原生依賴。可在 Docker Alpine、CI 執行器和無伺服器函式上運行。
Braces
可預測的 JSON 輸出
專為流水線和 AI 代理打造。使用 --json 獲取適合指令碼和自動化的結構化結果。
程式化使用的結構化輸出
使用 --json 切換至 AI 模式,獲得機器可讀輸出。每個檔案、壓縮率、尺寸和狀態 — 全部以結構化 JSON 格式提供。
CLI 輸出範例:人類與 AI 模式
人類模式
# Activate Pro license
$ getwebp auth XXXX-XXXX-XXXX-ABCD
Verifying license...
✓ Activated! Pro plan unlocked.
# Convert a directory of images (Pro: recursive, concurrent)
$ getwebp ./images -o ./images/webp -q 85
✓ hero.jpg
✓ banner.png
✓ product-shot.jpg
Done: 3 succeeded, 0 failed
Avg saved: 34.2%
# Check current license status
$ getwebp status
Version : 1.0.1
Mode : Pro
License : xxxx-xxxx-xxxx-ABCD
Expires : 2026-12-31
Devices : 1 / 3 used# Activate Pro license
$ getwebp auth XXXX-XXXX-XXXX-ABCD
Verifying license...
✓ Activated! Pro plan unlocked.
# Convert a directory of images (Pro: recursive, concurrent)
$ getwebp ./images -o ./images/webp -q 85
✓ hero.jpg
✓ banner.png
✓ product-shot.jpg
Done: 3 succeeded, 0 failed
Avg saved: 34.2%
# Check current license status
$ getwebp status
Version : 1.0.1
Mode : Pro
License : xxxx-xxxx-xxxx-ABCD
Expires : 2026-12-31
Devices : 1 / 3 usedAI 模式(JSON 輸出)
// $ getwebp ./images -o ./images/webp -q 85 --json
// One JSON object per line (NDJSON). First line: version preamble.
{"@timestamp":"2026-04-12T10:00:00.000Z","@level":"info","@message":"GetWebP CLI 1.3.0","@module":"getwebp.cli","type":"version","data":{"getwebp":"1.3.0","ui":"1"}}
// Last line: convert.completed summary with all results.
{"@timestamp":"2026-04-12T10:00:01.234Z","@level":"info","@message":"Converted 3/3 files","@module":"getwebp.convert","type":"convert.completed","data":{
"processed": 3,
"successCount": 3,
"failedCount": 0,
"results": [
{
"file": "images/hero.jpg",
"outputPath": "/abs/images/webp/hero.webp",
"originalSize": 204800,
"newSize": 134144,
"savedRatio": 0.345,
"saved": "34.5%",
"quality": 82,
"qualityMode": "auto",
"status": "success"
},
{
"file": "images/banner.png",
"outputPath": "/abs/images/webp/banner.webp",
"originalSize": 512000,
"newSize": 327680,
"savedRatio": 0.36,
"saved": "36.0%",
"quality": 85,
"qualityMode": "auto",
"status": "success"
},
{
"file": "images/product-shot.jpg",
"outputPath": "/abs/images/webp/product-shot.webp",
"originalSize": 163840,
"newSize": 102400,
"savedRatio": 0.375,
"saved": "37.5%",
"quality": 80,
"qualityMode": "auto",
"status": "success"
}
]
}}融入您的工作流程
name: Optimize Images
on:
push:
paths:
- 'public/images/**'
jobs:
optimize:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install getwebp CLI
run: npm install -g getwebp
- name: Convert images to WebP
run: |
getwebp ./public/images --json > report.ndjson
# Check for failures: extract convert.completed and assert failedCount == 0
grep '"convert.completed"' report.ndjson | jq -e '.data.failedCount == 0'
- name: Upload NDJSON report
uses: actions/upload-artifact@v4
with:
name: webp-report
path: report.ndjsonFree 適合臨時使用。Pro 專為流水線而生。
| 功能 | 免費 | Pro |
|---|---|---|
| 單一目錄轉換 | ✓ | ✓ |
| 有損/無損控制 | ✓ | ✓ |
| 無限遞迴 (-r) | — | ✓ |
| 多執行緒並發 | — | ✓ |
| 無限 JSON 輸出 (--json) | — | ✓ |
| 監看模式 (--watch) | — | ✓ |
開發者常見問題
是的,安裝後完全離線。WASM 引擎完全在您的電腦上運行。授權驗證在啟用時進行一次網路呼叫,但圖片轉換本身永不接觸網路。
是的。由於透過 Node.js 在純 WASM 上運行,它在 macOS(Intel + Apple Silicon)、Linux(x64 + ARM64)和 Windows(x64)上完全相同。無需特定平台的二進位檔。
Sharp 是一個出色的函式庫,但需要編譯原生 libvips 綁定,在 Alpine Docker 和無伺服器環境中會失敗。getwebp 使用純 WASM 引擎 — 無需編譯、無 gyp、無原生依賴。
ImageMagick 是需要單獨安裝(apt-get、brew)、因 OS 版本而異、且沒有結構化輸出的系統工具。getwebp 是一個自包含的 Node.js 套件,在任何地方都有一致的行為。
是的。單一 Pro 授權最多可在 5 台電腦上同時啟用。需要更多?請聯絡我們。
相關 GetWebP 工具
所有 GetWebP 產品都建立在同一個 WASM 轉換引擎上,選擇最適合你工作流程的入口。