mirror of
https://github.com/rocketraman/sane-scan-pdf.git
synced 2025-05-17 08:00:26 -07:00
Support non-standard page size outputs with crop
This commit is contained in:
parent
5c71571399
commit
e983c2989f
16
scan
16
scan
@ -4,6 +4,7 @@ DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
|
|||||||
|
|
||||||
DEVICE=fujitsu
|
DEVICE=fujitsu
|
||||||
OUTPUT=scan.pdf
|
OUTPUT=scan.pdf
|
||||||
|
USEARRAY=0
|
||||||
APPEND=0
|
APPEND=0
|
||||||
RESOLUTION=300
|
RESOLUTION=300
|
||||||
MODE=Lineart
|
MODE=Lineart
|
||||||
@ -16,9 +17,9 @@ TRUNCPAGE=0
|
|||||||
HELP=0
|
HELP=0
|
||||||
SIZE=Letter
|
SIZE=Letter
|
||||||
PGHEIGHT=
|
PGHEIGHT=
|
||||||
PGHEIGHTIN=11
|
PGHEIGHTIN=
|
||||||
PGWIDTH=
|
PGWIDTH=
|
||||||
PGWIDTHIN=8.5
|
PGWIDTHIN=
|
||||||
CROP=0
|
CROP=0
|
||||||
DESKEW=0
|
DESKEW=0
|
||||||
VERBOSE=0
|
VERBOSE=0
|
||||||
@ -125,13 +126,13 @@ case "$SIZE" in
|
|||||||
|
|
||||||
esac
|
esac
|
||||||
|
|
||||||
if [ "$PGHEIGHT" != "" ]; then
|
if [ $CROP != 1 -a "$PGHEIGHT" != "" ]; then
|
||||||
PGHEIGHTIN=$(units --compact -1 "$PGHEIGHT mm" 'in')
|
PGHEIGHTIN=$(units --compact -1 "$PGHEIGHT mm" 'in')
|
||||||
PGHEIGHT="--page-height $PGHEIGHT -y $PGHEIGHT"
|
PGHEIGHT="--page-height $PGHEIGHT -y $PGHEIGHT"
|
||||||
PS2PDF_OPTS="-dEPSCrop"
|
PS2PDF_OPTS="-dEPSCrop"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$PGWIDTH" != "" ]; then
|
if [ $CROP != 1 -a "$PGWIDTH" != "" ]; then
|
||||||
PGWIDTHIN=$(units --compact -1 "$PGWIDTH mm" 'in')
|
PGWIDTHIN=$(units --compact -1 "$PGWIDTH mm" 'in')
|
||||||
PGWIDTH="--page-width $PGWIDTH -x $PGWIDTH"
|
PGWIDTH="--page-width $PGWIDTH -x $PGWIDTH"
|
||||||
PS2PDF_OPTS="-dEPSCrop"
|
PS2PDF_OPTS="-dEPSCrop"
|
||||||
@ -139,6 +140,11 @@ fi
|
|||||||
|
|
||||||
if [ $CROP = 1 ]; then
|
if [ $CROP = 1 ]; then
|
||||||
CROP="--swcrop=yes"
|
CROP="--swcrop=yes"
|
||||||
|
PGHEIGHT=
|
||||||
|
PGWIDTH=
|
||||||
|
PGHEIGHTIN=
|
||||||
|
PGWIDTHIN=
|
||||||
|
PS2PDF_OPTS="-dEPSCrop"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ $DESKEW = 1 ]; then
|
if [ $DESKEW = 1 ]; then
|
||||||
@ -160,7 +166,7 @@ if [ $VERBOSE = 1 ]; then
|
|||||||
fi;
|
fi;
|
||||||
|
|
||||||
echo >&2 "Scanning..."
|
echo >&2 "Scanning..."
|
||||||
#eval strace -f -o /tmp/scan-trace.txt scanadf -d $DEVICE $MAXPAGE $PGHEIGHT $PGWIDTH -S $SCRIPT --script-wait --resolution $RESOLUTION --mode $MODE $SOURCE -o scan-%04d
|
#eval strace -f -o /tmp/scan-trace.txt scanadf -d $DEVICE $MAXPAGE $PGHEIGHT $PGWIDTH -S $SCRIPT --script-wait --resolution $RESOLUTION --mode $MODE $DESKEW $CROP $SOURCE -o scan-%04d
|
||||||
eval scanadf -d $DEVICE $MAXPAGE $PGHEIGHT $PGWIDTH -S $SCRIPT --script-wait --resolution $RESOLUTION --mode $MODE $DESKEW $CROP $SOURCE -o scan-%04d
|
eval scanadf -d $DEVICE $MAXPAGE $PGHEIGHT $PGWIDTH -S $SCRIPT --script-wait --resolution $RESOLUTION --mode $MODE $DESKEW $CROP $SOURCE -o scan-%04d
|
||||||
|
|
||||||
shopt -s extglob nullglob
|
shopt -s extglob nullglob
|
||||||
|
10
scan_perpage
10
scan_perpage
@ -38,7 +38,7 @@ if [ $# -lt 1 ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$UNPAPER" == "" -o "$SEARCHABLE" == "" -o "$RESOLUTION" == "" -o "$RESOLUTION" == "" -o "$PGWIDTHIN" == "" -o "$PGHEIGHTIN" == "" ]; then
|
if [ "$UNPAPER" == "" -o "$SEARCHABLE" == "" -o "$RESOLUTION" == "" -o "$RESOLUTION" == "" ]; then
|
||||||
usage
|
usage
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
@ -72,7 +72,13 @@ process_page() {
|
|||||||
if [ $VERBOSE = 1 ]; then
|
if [ $VERBOSE = 1 ]; then
|
||||||
PNMVERBOSE="-verbose"
|
PNMVERBOSE="-verbose"
|
||||||
fi
|
fi
|
||||||
pnmtops $PNMVERBOSE -imagewidth $PGWIDTHIN -imageheight $PGHEIGHTIN $PP_PREFIX$IMAGE_FILE | ps2pdf $PS2PDF_OPTS - > ${IMAGE_FILE%.*}.pdf | logstdout
|
if [ "$PGWIDTHIN" == "" -o "$PGHEIGHTIN" == "" ]; then
|
||||||
|
PAGEOPTS="-equalpixels -dpi=$RESOLUTION -noturn"
|
||||||
|
else
|
||||||
|
PAGEOPTS="-imagewidth $PGWIDTHIN -imageheight $PGHEIGHTIN"
|
||||||
|
fi
|
||||||
|
log "Using page options: $PAGEOPTS"
|
||||||
|
pnmtops $PNMVERBOSE $PAGEOPTS $PP_PREFIX$IMAGE_FILE | ps2pdf $PS2PDF_OPTS - > ${IMAGE_FILE%.*}.pdf | logstdout
|
||||||
fi
|
fi
|
||||||
|
|
||||||
status=$?
|
status=$?
|
||||||
|
Loading…
x
Reference in New Issue
Block a user