diff options
Diffstat (limited to 'leptonica/prog/pdf2png-gray')
-rw-r--r-- | leptonica/prog/pdf2png-gray | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/leptonica/prog/pdf2png-gray b/leptonica/prog/pdf2png-gray new file mode 100644 index 00000000..89a663e8 --- /dev/null +++ b/leptonica/prog/pdf2png-gray @@ -0,0 +1,46 @@ +#!/bin/bash +# pdf2png-gray +# +# Rasterizes a PDF file, saving a set of 8 bpp grayscale png images +# +# input: PDF +# root name of output files +# output: 8 bpp png files for each page +# +# Note 1: Requires ghostscript +# +# Note 2: A modern alternative to ghostcript is to use poplar: +# If the pdf is composed of images that were orthographically generated: +# pdftoppm -png <pdf-file> <pdf-root> [output in png] +# If the pdf is composed of images that were scanned: +# pdftoppm -jpeg <pdf-file> <pdf-root> [output in jpeg] + +scriptname=${0##*/} + +if test $# != 2 +then + echo "usage: " $scriptname " inpdffile outpngroot" + exit -1 +fi + +inpdffile=$1 +outpngroot=$2 + +# strip off directory and suffix parts of $1 to use in other names +basename=${1##*/} +baseroot=${basename%.*} + +# make names for temporary files +tmppdffile=${baseroot}.$$_.pdf +tmppdfroot=${tmppdffile%.*} + +# have the temporary files deleted on exit, interrupt, etc: +trap "/bin/rm -f ${tmppdfroot}*" EXIT SIGHUP SIGINT SIGTERM + +cp $inpdffile $tmppdffile + +# need mysterious "primer" +#echo "0 neg 0 neg" translate | gs -sDEVICE=pnggray -sOutputFile=${outpngroot}%03d.png -r300x300 -q - ${tmppdffile} +echo "0 neg 0 neg" translate | gs -sDEVICE=pnggray -sOutputFile=${outpngroot}%03d.png -g2550x3300 -r300x300 -q - ${tmppdffile} + + |