mirror of
https://github.com/rocketraman/sane-scan-pdf.git
synced 2025-05-16 23:50:39 -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
|
||||
OUTPUT=scan.pdf
|
||||
USEARRAY=0
|
||||
APPEND=0
|
||||
RESOLUTION=300
|
||||
MODE=Lineart
|
||||
@ -16,9 +17,9 @@ TRUNCPAGE=0
|
||||
HELP=0
|
||||
SIZE=Letter
|
||||
PGHEIGHT=
|
||||
PGHEIGHTIN=11
|
||||
PGHEIGHTIN=
|
||||
PGWIDTH=
|
||||
PGWIDTHIN=8.5
|
||||
PGWIDTHIN=
|
||||
CROP=0
|
||||
DESKEW=0
|
||||
VERBOSE=0
|
||||
@ -125,13 +126,13 @@ case "$SIZE" in
|
||||
|
||||
esac
|
||||
|
||||
if [ "$PGHEIGHT" != "" ]; then
|
||||
if [ $CROP != 1 -a "$PGHEIGHT" != "" ]; then
|
||||
PGHEIGHTIN=$(units --compact -1 "$PGHEIGHT mm" 'in')
|
||||
PGHEIGHT="--page-height $PGHEIGHT -y $PGHEIGHT"
|
||||
PS2PDF_OPTS="-dEPSCrop"
|
||||
fi
|
||||
|
||||
if [ "$PGWIDTH" != "" ]; then
|
||||
if [ $CROP != 1 -a "$PGWIDTH" != "" ]; then
|
||||
PGWIDTHIN=$(units --compact -1 "$PGWIDTH mm" 'in')
|
||||
PGWIDTH="--page-width $PGWIDTH -x $PGWIDTH"
|
||||
PS2PDF_OPTS="-dEPSCrop"
|
||||
@ -139,6 +140,11 @@ fi
|
||||
|
||||
if [ $CROP = 1 ]; then
|
||||
CROP="--swcrop=yes"
|
||||
PGHEIGHT=
|
||||
PGWIDTH=
|
||||
PGHEIGHTIN=
|
||||
PGWIDTHIN=
|
||||
PS2PDF_OPTS="-dEPSCrop"
|
||||
fi
|
||||
|
||||
if [ $DESKEW = 1 ]; then
|
||||
@ -160,7 +166,7 @@ if [ $VERBOSE = 1 ]; then
|
||||
fi;
|
||||
|
||||
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
|
||||
|
||||
shopt -s extglob nullglob
|
||||
|
10
scan_perpage
10
scan_perpage
@ -38,7 +38,7 @@ if [ $# -lt 1 ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$UNPAPER" == "" -o "$SEARCHABLE" == "" -o "$RESOLUTION" == "" -o "$RESOLUTION" == "" -o "$PGWIDTHIN" == "" -o "$PGHEIGHTIN" == "" ]; then
|
||||
if [ "$UNPAPER" == "" -o "$SEARCHABLE" == "" -o "$RESOLUTION" == "" -o "$RESOLUTION" == "" ]; then
|
||||
usage
|
||||
exit 1
|
||||
fi
|
||||
@ -72,7 +72,13 @@ process_page() {
|
||||
if [ $VERBOSE = 1 ]; then
|
||||
PNMVERBOSE="-verbose"
|
||||
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
|
||||
|
||||
status=$?
|
||||
|
Loading…
x
Reference in New Issue
Block a user