#!/bin/sh # # /usr/local/bin/localpdf2pdfscreen # Copyright 2008 Jonas Smedegaard # # $Id: localpdf2pdfscreen,v 1.2 2008-03-17 12:53:04 jonas Exp $ # # Downsize PDF file. # # TODO: Use *_lowres.pdf as default outfile # set -e PRG="$(basename "$0")" # Default options PDFTOPSOPTS="-paper match" PS2PDFOPTS="-dPDFSETTINGS=/screen" showhelp() { cat <&2 "ERROR: $1" exit 1 } [ $# -gt 0 ] || exit1 "Input file missing" pdftopsopts= pstopdfopts= while [ $# -gt 0 ]; do case $1 in -h|--help) showhelp exit 0 ;; --) shift break ;; -*) pdftopsopts="$pdftopsopts $1" shift ;; *) pools="$pools $1" shift ;; esac done ps2pdfopts="$@" # Use default options if none provided [ -n "pdftopsopts" ] || pdftopsopts="$PDFTOPSOPTS" [ -n "ps2pdfopts" ] || ps2pdfopts="$PS2PDFOPTS" infile="$1" tmpfile=$(mktemp -t "$PRG.XXXXXXXXXX") || exit 1 outfile="${2:-$infile.pdf}" [ ! -e "$outfile" ] || exit1 "Output file already exists" pdftops $pdftopsopts "$infile" "$tmpfile" ps2pdf $ps2pdfopts "$tmpfile" "$outfile" rm "$tmpfile" exit 0