Shell工具(10)——图片批处理

wils
wils

创作者俱乐部成员

有一次想用宏把多张表格导出成图片,但翻遍文档,只找到另存为PDF的选项,没有另存或导出图片格式的选项。。。

那么有没有批量处理大量PDF和图片,进行转换、裁剪、合并、编辑等操作的工具呢?


imagemagick,就是今天要介绍的图片批量处理工具了,想必大家都熟悉Photoshop,但ps的批处理实在难用,imagemagick则可以通过简单的命令加参数,完成大多数ps的常用功能。

下面是一些例子:

先用宏,可以把表格另存为pdf文件

💡

ThisWorkbook.SaveAs(`${ThisWorkbook.Path}\\aaa.pdf`, 103)

然后用magick里的convert命令裁剪掉白边,转换成png图片

📌

magick.exe convert -density 300 -trim aaa.pdf out.png

其中,trim参数是要求裁剪白边,density是设置从pdf转图片时的图像采样率

而这句命令,可以放在宏里另存pdf之后,用shell命令执行,也就可以间接实现,通过宏从表格批量导出图片

magick既然号称能够完成绝大多数ps的功能,那可以玩花活的可就多了😁

  • 各种图片格式之间的转换,只需要convert 源文件 目标文件,就可以了

  • 需要裁剪、缩放,只需要在convert里使用参数,crop和resize

  • 需要合并多张图片,还是在convert里,横向合并用+append,纵向合并用-append,图层叠加合并用-composite

  • 需要添加水印,用上面的-composite叠加一张图片也行,用-annotate添加文字水印也行

  • 至于锐化模糊饱和度等,工作中不常用,用的时候问一下ai就可以偷偷懒

  • 再来个好玩的,抠掉左上角(20, 20)位置的点的类似颜色,相当于设为透明色

💡

magick.exe convert -fuzz 8% -fill none -draw "color 20,20 replace" a.jpg b.png

其中,fuzz设置颜色类似的程度,fill none或者transparent都是填充透明色

总的来说,magick这个命令可以方便的编辑图片,通过写脚本或者写入宏的Shell,可以实现批量自动的处理,非常方便

广东省
浏览 158
1
6
分享
6 +1
3
1 +1
全部评论 3
 
严严
很棒
· 广西
回复
 
李强
打卡!
· 中国
1
回复
 
青衫洗旧
打卡
· 陕西省
1
回复