magick處理圖片

1、下載
參考教程:
https://www.w3cschool.cn/imagemagick_use/
https://www.zouyesheng.com/imagemagick.html
https://www.cnblogs.com/lfri/p/11601211.html
下載鏈接:
https://imagemagick.org/archive/binaries/
安裝目錄下的 www/index.html 有功能介紹,magick可以通過dos指令來對圖片進行處理及批處理。
imdisplay.exe用于界面操作,magick.exe用于命令行操作;
magick --version查看是否安裝成功.

2、格式轉(zhuǎn)換
magick convert bluebells_clipped.jpg color-thresholding.jpg aaa.pdf
將 2個.jpg 按照順序合并為 aaa.pdf

magick convert input.jpg output.png
magick convert input.jpg output.bmp

支持JPG, BMP, PCX, GIF, PNG, TIFF, XPM和XWD等類型

for /f "delims=" %f in ('dir /s /b *.jpg') do (magick convert "%f" "%~nf.png")
將目錄下的所有.jpg文件轉(zhuǎn)換為.png文件;

magick mogrify -format png *.jpg
把目錄下面所有的jpg文件,生成新的png格式;

3、旋轉(zhuǎn)

magick convert -rotate 90 a.jpg 90.jpg
magick convert -rotate 180 a.jpg 180.jpg
magick convert -rotate 270 a.jpg 270.jpg

for /f "delims=" %f in ('dir /s /b *.png') do (magick convert "%f" -rotate 90 "%~nf_90.png")
將某目錄下所有PNG圖像旋轉(zhuǎn)90度;

4、翻轉(zhuǎn)
magick convert -flip input.jpg out.jpg
上下翻轉(zhuǎn)

magick convert -flop input.jpg out.jpg
左右翻轉(zhuǎn)

5、視覺處理
magick convert -negate input.jpg out.jpg
變色

magick convert -monochrome input.jpg out.jpg
變成黑白色

magick convert -noise 3 input.jpg out.jpg
加噪聲,變模糊了。

magick convert -paint 4 input.jpg out.jpg
變成一張油畫,效果非常的逼真

magick convert -charcoal 2 input.jpg out.jpg
變成黑白鉛筆畫效果

magick convert -spread 30 input.jpg out.jpg
散射毛玻璃效果,很模糊

magick convert -swirl 67 input.jpg out.jpg
漩渦效果

6、壓縮圖片
magick convert -resize 100 1.jpg 2.jpg
把1.jpg壓縮為2.jpg,得到圖片寬為100,高根據(jù)原始圖片比例計算而來;

magick convert -sample 50%x50% xxx.jpg xxx1.jpg
將圖像的縮減為原來的50%*50%

for /f "delims=" %i in ('dir /b /a-d') do (magick convert -resize 200 %i %i)
讀取當(dāng)前目錄下(含子文件夾)所有文件,對讀取的文件執(zhí)行壓縮為寬為200,比例不變的命令。
注:以上代碼在命令行執(zhí)行,批處理執(zhí)行需要將%i改成%%i

for /f "delims=" %f in ('dir /s /b *.png') do (magick convert "%f" -sample 80x40 "%~nf_sample.png")
批量生成某目錄下所有PNG圖像文件的縮略圖(大小為80×40):

7、合并2張圖片
magick convert -append 1.jpg 2.jpg 3.jpg
豎直方向合并前兩張圖片 輸出3.jpg;
+append橫向拼湊,-append縱向拼湊;

8、截取圖片
magick convert 1.jpg -crop 200x210+10+10 1_1.jpg
從1.jpg的(10,10)為起點,截取寬200像素,長210像素的的區(qū)域為1_1.jpg

9、圖片上加文字
magick mogrify -pointsize 48 -fill red -weight bolder -annotate +50+100 "hello" 3.png
在3.png的(50,100)處加上大小為48的、紅色的文字“hello”
-fill blue
-fill “#ddddff”
-fill “rgb(255,255,255)”
對中文不支持,加不上去:
magick mogrify -font "Arial" -pointsize 48 -fill red -weight bolder -annotate +50+150 "你好" 3.png
magick mogrify -font "Arial" -pointsize 48 -fill blue -weight bolder -annotate +50+150 "word" 3.png
magick -list font 查看支持的字體

中文可能是需要安裝Ghostscript支持
https://www.ghostscript.com/releases/gsdnld.html

10、在圖片上加水印

magick composite -gravity center small.gif front.jpg rose: out.jpg
magick composite -gravity southeast small.gif front.jpg rose: out.jpg

11、描述圖片的格式和特性
magick identify 1.jpg
可以顯示出像素、字節(jié)數(shù)、圖片類型,修改后綴名之后可以查看類型。

12、加邊框

magick convert -raise 10x10 input.jpg output10.jpg 
magick convert +raise 10x10 input.jpg output.jpg 

用-,+邊緣顏色的來達到處理邊緣的效果
+是凹下去的邊;

magick convert -bordercolor red -border 5x5 input.jpg output.jpg
加上5個像素寬的紅邊!

magick convert -mattecolor "#000000" -frame 60x60 input.jpg rememberyou.png
加上60個像素寬的黑邊!

13、模糊

magick convert -blur 80 input.jpg out.png
magick convert -blur 80x5 input.jpg out2.png

magick convert -crop 100x100+0+0 -resize 50x50 -colors 100 +profile "*" input.jpg out.png
把input.jpg先從左上角(0,0)為起點裁剪一塊100x100的部分,
然后把這部分縮小到50x50,然后把顏色縮減到100色,最后生成out.png。

-crop 寬x高+起點橫坐標(biāo)+起點縱坐標(biāo):裁剪圖
-resize 寬x高!:改變尺寸;如果使用驚嘆號,表示不保留視覺比例,

14、動畫
magick convert -delay 100 *.png out.gif
=>以1秒的幀間隔將所有png合成gif動畫

magick convert 1.gif sub%d.png
=>將gif的各幀拆開成sub0.jpg/sub1.jpg等單獨圖片
合并成gif再拆分,發(fā)現(xiàn)字節(jié)數(shù)不同了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容