Linux下批量压缩图片

转自:http://www.360doc.com/content/11/0704/16/2104556_131439876.shtml#
Linux系统下用一条命令批量修改图片尺寸
经常拍照片经常会需要把大量的照片尺寸缩小,以方便网上传输或者存储。
下面介绍一种简单的方法把大量照片变到指定尺寸
find ./ -name '*.[jJ][pP][gG]' -exec convert -resize 600x480 {} {} \;
注意空格和最后的分号。转换后会覆盖源文件。这里用到两个命令。
这条命令的意思是找到当前目录所有jpg文件。执行conver -resize 600x480 文件名 文件名。find会把每个文件执行一次convert命令。使用find命令有时比写个脚本还要方便。

用DC拍出来的很多照片尺寸都很大,有时候我们需要缩小一下,最近google了一圈,发现了一些有用的命令,写了一个小脚本,用来参考我使用的工具是强大的imagemagick
  如果你没有安装的话可以通过新利得安装,
  #sudo apt-get install imagemagick
  需要用到的命令就是convert
  我写的脚本用到了两个参数,resize和font
  resize是用来缩小图片的,
  用法就是
  -resize 图片大小
  例如
  -resize 50%x50%
  这个参数就是把原图的长和宽都缩小50%
  我用的是缩小图片尺寸来压缩图片的大小,当然你也可以通过改变图片质量来达到压缩的目的。
  顾名思义,改变图片质量的参数就是-quality
  -quality 70
  这个参数就是说明要把图片的质量压缩到70%(基本上看不出和原图的区别)
  添加字体水印
  参数就是
  -font 字体名称 -fill 字体颜色 -pointsize 字体大小 -draw "text 字体开始坐标 "文字内容""
  具体的大家可以查询一下man,解释的非常详细,
  最后看看我写出来的简单脚本。
  # imagezoom.sh
  for img in `ls *.JPG`; do convert -resize 50%x50% convert -fonthelvetica -fill white -pointsize 36 -draw ’text 10,50 "Pictures ByPDAsk.net "’ $img Resized-$img; done
  这个脚本实现的功能是把目录下面的所有JPG后缀的图片全部按照50%的比例缩小,并且在左上角用helvetica字体印上水印。处理过的图片命名为”Resized-原文件名”
  打开gedit 或者leafpad,把脚本内容输入进去,保存为imagezoom.sh,我保存在了桌面上
  然后
  #chmod +x ~/Desktop/imagezoom.sh
  为了方便调用,我就把这个脚本copy到了/bin目录,这样以来我以后在任何一个图片文件夹里面都可以使用这个命令了。
  #sudo cp ~/Desktop/imagezoom.sh /bin

LINUX下用批量CONVERT管理图片

今天在整理妮妮在医院拍的照片,想挑几张放到妮妮的blog 上去,结果发现原图都好大2240x1488 的分辨率,文件大小都在1M 左右,这样的图放上去显然是太大了,并且所有的图都是横着的每次看都要旋转270°  才行,于是乎就想找个工具批量编辑一下。搜索了一圈还是觉得用Image MagicK 是convert 最好。

具体方法如下:

sudo apt-get install imagemagick
创建一个 img.sh 文件,内容为

#/bin/sh
for img in `ls nini-pic/*`
do
mkdir sm-nini-pic
convert -rotate 270 -resize 30%x30% $img sm-$img
done

# sh img.sh (运行 img.sh)
这里nini-pic 是我原文件所在目录,sm-nini-pic新文件的存放目录。 convert -rotate 270 -resize 30%x30% 旋转270° 分辨率缩小为原来的30%。

下面是Ubuntu中文论坛找到的关于Image MagicK的一些资料
<br /> Image 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
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值