在Linux系統中,使用ImageMagick可以圖片格式轉換,其中最常用的是通過命令行工具進行。
ImageMagick是一個非常強大的圖像處理工具集,它包含了許多用于圖像轉換的命令。
一、安裝ImageMagick(如果尚未安裝):
sudo apt-get install imagemagick # 對于基于Debian的系統
驗證是否安裝成功:
嘗試運行ImageMagick提供的一些常用命令,比如:
convert --version
如果convert命令可用,它將返回版本信息。
二、常見用法
1.轉換單個圖片:
將一張圖片從一種格式轉換到另一種格式,例如將JPEG轉換為PNG:
convert input.jpg output.png
2.批量轉換圖片:
使用通配符*來轉換一個目錄下的所有圖片:
for img in *.jpg; doconvert "$img" "${img%.jpg}.png"
done
3.調整圖片大小:
在轉換的同時調整圖片大小:
convert input.jpg -resize 800x600 output.png
4.使用mogrify命令:
直接修改圖片文件的格式,而不是創建一個新文件:
mogrify -format png input.jpg
三、可以編寫shell腳本批量轉換圖片為webp格式
picToWebp.sh
#!/bin/bash
#功能:把常用的圖片格式(png、jpg、jpeg、tiff)批量轉換為webp格式#for file_name in `ls *.png *.jpg *.jpeg *.tiff`;do
for file_name in `ls *.*`;doif [ "png" == "${file_name##*.}" ];then(convert $file_name `echo ${file_name//.png/.webp}`) && (echo "${file_name}已成功轉為webp格式") || (echo "${file_name}轉換失敗")elif [ "jpg" == "${file_name##*.}" ];then (convert $file_name `echo ${file_name//.jpg/.webp}`) && (echo "${file_name}已成功轉為webp格式") || (echo "${file_name}轉換失敗")elif [ "jpeg" == "${file_name##*.}" ];then(convert $file_name `echo ${file_name//.jpeg/.webp}`) && (echo "${file_name}已成功轉為webp格式") || (echo "${file_name}轉換失敗")elif [ "tiff" == "${file_name##*.}" ];then(convert $file_name `echo ${file_name//.tiff/.webp}`) && (echo "${file_name}已成功轉為webp格式") || (echo "${file_name}轉換失敗")elseecho "僅支持常見的圖片格式(png、jpg、jpeg、tiff)才可以轉換為webp格式,其他文件'${file_name}'不支持!"fi
done
測試如下: