pdfcrush
Last update
2025-11-19
2025
11-19
«compress/optimize pdf files»
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/bash
if [ ! -f "$1" ]; then
  echo "USO: pdfcrush file.pdf [prepress|ebook|screen]"
  exit 1
fi

if [ -n "$2" ]; then
  Q="$2"
else
  tmpfile=`mktemp -u /tmp/pdfcrush-XXXXXXXX`
  dialog --menu "Output quality" 10 30 10 prepress 300dpi ebook 150dpi screen 72dpi 2> $tmpfile
  Q=`cat $tmpfile`
  rm -f $tmpfile
fi

[ -z "$Q" ] && Q=prepress

F=$1
EXT="${F##*.}"
F="`basename $F .$EXT`-$Q.$EXT"

clear

gs \
  -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 \
  -dPDFSETTINGS=/$Q \
  -dNOPAUSE -dQUIET -dBATCH \
  -sOutputFile="$F" "$1"

ls -lhX --color "$1" "$F"

Source: itsfoss.com