记录一些日常用ImageMagick处理图像的格式
1. 剪切图的一部分
magick convert src.png -gravity East -crop 200x300+50+60 dst.png
gravity是指坐标原点
-crop后面跟的是gerometry w h x y, wh和xy可以只有一组
比如要删去右边20%部分就是:
magick convert src.png -gravity East -crop +(0.2*w)+0 dst.png
一般配合+repage食用,因为crop本身不会修改图片的metadata(可以通过identify查看),不重置的话后面可能会出问题
2. 去除白边
-trim即可,与剪切一起用的话就是:
magick convert src.png -gravity East -crop 200x300+50+60 -trim +repage dst.png
3. 用identify查看文件的时候,可以如此定制:
identify -format "%[fx:w]x%[fx:h]" dst.png
4. 新建一个新的空白图片,为了overlay...
convert -size 800x800 xc:white white.png
这里xc等于canvas
5. 图片拼接
用motage做,比如 magick montage C2*png -tile 5x3 -geometry 850x650+10+10 out.png
geometry 的+x+y决定了间距 widthxheight可以用%号
详细参数参考这里
注意geometry是必要的, 不然图像会出现缩放
数量较少的话, 可以用convert -append来做
6. overlay
将两个图片overlay到一个更大的里面去,自由摆放 sounds coooooooooooool
首先新建更大的空白图片 参考4
用convert -over -composite 这种
composite的话, -gravity调整锚点
比如:
magick composite -geometry 35%x35%+266+100 .\legends\LB.Trim.RGBA.com_hwO.png .\com_single.png .\new.png
7(.svg). svg to png
直接convert可以把svg转换成png,自带白色背景
那么如何指定png像素呢?不然就没有svg的意义了啊?
magick convert -size 2000x2000 aCircle.svg aCircle_fromMagick.png
这样就可以,-size必须紧跟着convert....
8. reverse gifs
magick convert src.gif -coalesce -reverse -quiet -layers OptimizePlus -loop 0 target.gif
9. pdf 2 png
10. 白与透明互转
白转透明: magick convert trim.pie.png -fuzz 0% -transparent white tran.trim.png
透明转白 : magick convert source.png -background "rgb(160,160,255)" -flatten out.png
11. 彩图转黑白图
convert <input> -monochrome <output>
12. 仅保留单颜色的方法
convert input.png -matte \( +clone -fuzz 30% -transparent red \) -compose DstOut -composite output.png
网友评论