被譽為「圖像處理領域的瑞士軍刀」,GraphicsMagick (GM) 起源於 ImageMagick 5.5.2 分支,但經過重構優化:體積更小、安裝更易、效率更高、穩定性更強、文檔更全,支持超過 88 種圖像格式(DPX、GIF、JPEG、JPEG-2000、PNG、PDF、TIFF 等),命令語法與 ImageMagick 高度兼容。本文整理最實用的 GM 命令速查表。
cd 到圖片目錄。gm convert -cropgm convert -crop 100x100+20+50 input.png output.png
100x100:裁切目標尺寸(寬x高),用字母 x,不是 *+20+50:左上角起始坐標 (x,y)input.png:源文件output.png:輸出文件gm convertgm convert input.bmp output.jpg
自動根據後綴識別格式,支持批量:gm convert *.bmp output_%03d.jpg
-geometry -gravity -extentgm convert input.jpg -geometry 640x480^ -gravity center -extent 640x480 thumb.jpg
-geometry 640x480^:^ 符號表示強制縮放填滿(不保持比例),無 ^ 則保持比例縮放-gravity center:居中對齊-extent 640x480:畫布最終尺寸,不足處填充背景色-draw "text x y 'text'"gm convert input.jpg -font Arial -fill red -pointsize 33 -draw "text 1600,50 'watermark'" output.jpg
-font Arial:字體(需系統安裝)-fill red:字體顏色-pointsize 33:字號text 1600,50 'watermark':起始坐標 (x,y) 及文字內容| 需求 | 命令示例 |
|---|---|
| 旋轉 90° | gm convert -rotate 90 in.jpg out.jpg |
| 調整質量(壓縮) | gm convert -quality 80 in.jpg out.jpg |
| 批量重命名/轉換 | gm convert *.png out_%03d.jpg |
| 獲取圖片信息 | gm identify -verbose photo.jpg |
| 組合多圖(拼接) | gm convert +append 1.jpg 2.jpg combined.jpg (橫向) |
命令極其豐富,本文僅列最高頻 4 個。完整參考:https://elf8848.iteye.com/blog/382528(圖文並茂,堪稱 GM 中文聖經)。
GraphicsMagick 以 命令行為核心、無依賴、跨平台、極致性能,是服務端圖片處理、自動化構建流水線、批量圖片任務的首選工具。掌握這幾條核心命令,應付 90% 業務場景綽綽有餘。