Resize.sh

From XPUB & Lens-Based wiki
Revision as of 14:22, 3 October 2023 by Manetta (talk | contribs)

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