37 lines
		
	
	
		
			870 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			870 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 $?
 |