123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #!/bin/rc
- # pdf2ps [-e] [gs-options] [input.pdf [output.ps]] - generate (e)ps from pdf
- rfork e
- fn usage {
- echo 'usage: pdf2ps [-e] [gs-options] [input.pdf [output.ps]]' >[1=2]
- exit usage
- }
- outdev=pswrite
- fin=/fd/0
- fout=/fd/1
- lang=(-'dLanguageLevel=2')
- opt=()
- while(! ~ $#* 0 && ~ $1 -* && ! ~ $1 - --){
- if(~ $1 '-dLanguageLevel='*)
- lang=()
- if not if(~ '-?' $1)
- usage
- if(~ $1 -e)
- outdev=epswrite
- if not
- opt=($opt $1)
- shift
- }
- if(~ $1 --)
- shift
- switch($#*){
- case 0
- ;
- case 1
- fin=$1
- case 2
- fin=$1
- fout=$2
- case *
- usage
- }
- if(~ $fin -)
- fin=/fd/0
- if(~ $fout -)
- fout=/fd/1
- # Doing an inital `save' helps keep fonts from being flushed between
- # pages. We have to include the options twice because -I only takes
- # effect if it appears before other options.
- exec gs $opt -dSAFER -dNOPAUSE -dBATCH -q -s'DEVICE='$outdev $opt $lang \
- -s'OutputFile=-' -c save pop -f $fin >$fout
|