Linux下批量缩小图片

周末出去玩,照了几张数码相片。上传到网上之前需要缩小一下,以前在Windows里都是用"光影魔术手",在Linux下如何完成这个工作呢?我开始是用GIMP一张的转,但太麻烦了,GIMP支持批处理脚本的,Google关键词"gimp-image-scale"可以找到一些这方面的脚本。不过更方便的是用Image Magick这个命令行图像处理软件,我在Ubuntu论坛找到 一篇这方面的文章 .

先用如下命令装上Image Magick: 
sudo apt-get install imagemagick


缩图方法一:convert -resize 50%x50%  photos\*.JPG   small\

这种方法转成的图片的文件名变成了数字,如果希望原文件名不变,可以用如下命令(实际上是一个四行合为一行的脚本)。

缩图方法二:for img in `ls photos\*.JPG`; do convert -resize 50%x50% $img small-$img; done


感觉要比如以前Windows下的软件方便多了。

注:我之前曾象资料里用-sample参数,而非-resize。但前者可能不仅缩放了大小,还压缩了图像,所以我对缩小后的图片质量不太满意。用convert -h可以显示其所有参数,我后来选用了-resize。


后续。。。
过了两天,我看到一篇文章,ubuntu自带的gThumb也可以缩小图片的。我一看,果然。它是界面操作,感觉还是没有convert的命令行来得快。不过,如果你只是偶尔缩小一下图片,也就不必去装其他软件了,就用自带的gThumb好了。使用方法如下:

启动:我习惯进入到图片目录(我装了一个快速进入终端的右键菜单),然后用命令行启动: gthumb *.JPG。这样一启动gthumb所有图片都在那了。当然,也可以用主菜单“应用程序->图像->gThumb图像浏览器”来启动,再选择图片。

全选所有图片,然后“工具->scale images....”,重选一个保存目标。接下去就不用说了。





Ubuntu论坛的原文资料复制如下:

mage MagicK 是一个强大的图象处理工具包。它提供了几个非常方便的命令行命令: display, animate,import, montage,mogrify,identify等,可以进行图象的显示,缩放,旋转,调色,加框,加注释等,还能制作GIF动画,图象索引,能自动生成图象. 

1. 制作索引图和动画 

!/bin/bash 
montage -bordercolor red -borderwidth 3 -label "%f" -tile 5x3 *.JPG montage.jpg 
mogrify -format gif *.JPG 
display montage.jpg 
animate *.JPG 

2. 缩放 convert -sample 80x40 input.jpg output.jpg #注意:缩放后图像保持原来的长宽比例 convert -sample 25%x25% input.jpg output.jpg 
3. 为当前目录的所有图像生成缩略图 

for img in `ls *.jpg` 
do 
convert -sample 25%x25% $img thumb-$img 
done 

4. 获取文件信息 libtiff 

tiffinfo filename.tiff 
pnginfo filename.png 

5. 可以使用 ImageMagick 的 identify 

identify -verbose sample.png 
identify -format "%wx%h" sample.png 

6. 旋转图像 

convert -rotate 90 input.jpg output.jpg 

7. 更改文件类型 

convert input.jpg output.png 

8. 为图像增加注释文字 

convert -font helvetica -fill white -pointsize 36 \ 
-draw 'text 10,50 "Floriade 2002, Canberra, Australia"' \ 
floriade.jpg comment.jpg 
convert -font fonts/1900805.ttf -fill white -pointsize 36 \ 
-draw 'text 10,475 "stillhq.com"' \ 
floriade.jpg stillhq.jpg 

9. 特殊效果 

convert -charcoal 2 input.jpg output.jpg #炭笔 
convert -colorize 255 input.jpg output.jpg #着色 可以指定三种颜色 red/green/blue 
convert -implode 4 input.jpg output.jpg #内爆效果 
convert -solarize 42 input.jpg output.jpg #曝光,模拟胶片曝光 
convert -spread 5 input.jpg output.jpg #随机移动,参数是位移大小 

10. 一次执行多个操作 

convert -sample 25%x25% -spread 4 -charcoal 4 input.jpg output.jpg
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值