| #!/bin/sh |
| |
| # Crop a set of image files |
| # |
| # usage: |
| # |
| # example% batch_crop left top width height image1 image2 etc |
| # |
| # writes output images crop_image1, crop_image2 |
| |
| # default prefix |
| VIPSHOME=${VIPSHOME-@prefix@} |
| |
| name=`basename $0` |
| left=$1 |
| top=$2 |
| width=$3 |
| height=$4 |
| shift 4 |
| |
| # check args |
| if [ $# -lt 1 ]; then |
| echo "usage: $name left top width height image1 image2 ..." |
| echo |
| echo "$name writes a new set of images called crop_image1, " |
| echo "crop_image2, etc., each cropped to the specified size" |
| |
| exit 1 |
| fi |
| |
| # convert each argument |
| for i in $*; do |
| dir=`dirname $i` |
| file=`basename $i` |
| new=$dir/crop_$file |
| echo "Cropping $file as $new ..." |
| |
| if [ -f $new ]; then |
| echo "$new exists, skipping" |
| else |
| $VIPSHOME/bin/vips im_extract_area $i $new $left $top $width $height |
| fi |
| done |
| |
| |