37 lines
		
	
	
		
			811 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			811 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
#!/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
 | 
						|
  # <http://alfredklomp.com/programming/shrinkpdf/>
 | 
						|
  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 $?
 |