#!/usr/bin/env bash # Compress pdf files using ghostscript. # # Defaults to 72 dpi. # # Usage: # pdfoptim SRC [TARGET] [DPI] # # Requires: ghostscript (gs) optimize() { # Adapted from Alfred Klomp's shrinkpdf script # gs -q -dNOPAUSE -dBATCH -dSAFER \ -sDEVICE=pdfwrite \ -dPDFSETTINGS=/screen \ -dCompatibilityLevel=1.3 \ -dEmbedAllFonts=true \ -dSubsetFonts=true \ -dAutoRotatePages=/None \ -dMonoImageResolution=$3 \ -dMonoImageDownsampleType=/Bicubic \ -dGrayImageResolution=$3 \ -dGrayImageDownsampleType=/Bicubic \ -dColorImageResolution=$3 \ -dColorImageDownsampleType=/Bicubic \ -sOutputFile="$2" \ "$1" } src="$1" dest="${2:--}" dpi="${3:-72}" optimize "$src" "$dest" "$dpi" || exit $?