Skip to content

Instantly share code, notes, and snippets.

@partikus
Created November 5, 2016 17:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save partikus/f0bbc6ac88b8a1d08e6567d43a468b38 to your computer and use it in GitHub Desktop.
Save partikus/f0bbc6ac88b8a1d08e6567d43a468b38 to your computer and use it in GitHub Desktop.
ImageMagick - how to generate images for website

how to generate images for website

In order to convert large and heavy images to light version for websites we can use ImageMagick and Parallel packages.

./convert.sh images/ output/

# OUTPUT
# /output/
# -- /large/
# -- /thumbs/
#!/bin/bash
INPUT_DIR=$1
OUTPUT_DIR=$2
LARGE_SIZE=1024
THUMB_SIZE="400x300"
mkdir -p $OUTPUT_DIR/large $OUTPUT_DIR/thumbs
COMMANDS=()
for i in "$OUTPUT_DIR/*.jpg"
do
COMMANDS+=("convert -resize 1024 -density 72 -quality 85 -strip -interlace Plane $i $OUTPUT_DIR/large/$i");
COMMANDS+=("convert -thumbnail '$THUMB_SIZE^>' -gravity center -crop $THUMB_SIZE+0+0 +repage $i $OUTPUT_DIR/thumbs/$i");
done
parallel -k ::: "${COMMANDS[@]}"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment