在一些應用上,如果有需要做到一些像CSS Sprites的功能時,其實不用再請設計師幫忙處理,如果有icon就可以透過ImageMagick來完成圖片處理

ImageMagick官網

安裝ImageMagick

apt-get install imagemagick libmagickwand-dev libmagickcore-dev

使用montage指令來處理一些分散的圖片

#合併圖片
montage *.png 2.png pic/output.png

#加入-geometry參數設定大小和位置(widthxheight{+-}x{+-}y)
montage *.png -geometry +100+100 pic/output.png
#-geometry也可以做resize
montage *.png -geometry '200x200+4+4' pic/output.png
#最後如果有加>符號,代表原圖放大時不跟著放大
montage *.png -geometry '300x300+4+4>' pic/output.png

#加入-tile參數設定行列(若不知圖片數量也可以減化成 x1 代表一列)
montage *.png -tile 2x1  pic/output.png

#加入-frame設定邊框
montage *.png -frame 5 pic/output.png

#加入-shadow設定陰影
montage *.png -shadow pic/output.png

#加入-set顯示資訊(%f代表檔名、%w代表寬度、%h代表高度)
montage *.png -set label '%f-%w-%h' pic/output.png

#加入-title設定標題
montage *.png -title 'hello' pic/output.png

使用convert處理圖片格式

#轉換圖片格式
convert 1.png 1.jpg

#將PDF轉成圖片(選擇頁數2-3)
convert SOAP.pdf[2-3] output.png

#加入-density參數設定DPI
convert -density 200 SOAP.pdf[2-3] output.png

#加入-resize參數設定寬高
convert -resize 400x SOAP.pdf[2-3] output.png

#加入-bordercolor  -border參數設定邊框
convert 1.png -bordercolor black -border 6 output.png
#設定兩層邊框
convert 1.png -bordercolor black -border 1 -bordercolor red -border 1 output.png

#加入-rotate旋轉圖片
convert 1.png -rotate 40 output.png

ImageMagick還有許多指令,例如identify、composite等等,可以參考官網用法

Categories: Linux