Resize.sh

From XPUB & Lens-Based wiki

This is a bash script based on Ghostscript that can be used to compress/resize a PDF.

This is a version of a script called resample.sh written by OSP.

Script

#! /bin/bash

pdffile=$1;
dpi=$2 

gs \
  -o "${pdffile%.pdf}-resized.pdf" \
  -sDEVICE=pdfwrite \
  -dDownsampleColorImages=true \
  -dDownsampleGrayImages=true \
  -dDownsampleMonoImages=true \
  -dColorImageResolution=$dpi \
  -dGrayImageResolution=$dpi \
  -dMonoImageResolution=$dpi \
  -dColorImageDownsampleThreshold=1.0 \
  -dGrayImageDownsampleThreshold=1.0 \
  -dMonoImageDownsampleThreshold=1.0 \
   "${pdffile}"

How to use it?

Save the code above to a file called resize.sh.

The script requires two arguments:

$ ./resize.sh <file.pdf> <resolution in DPI>

For example:

$ ./compresspdf.sh myfile.pdf 300

The output will be something like:

myfile-resized.pdf