Browse Source

Add --image-resolution option

The /printer setting is for 300dpi.
master
Colin Z. Robertson 8 years ago
parent
commit
955d1a5c31
1 changed files with 22 additions and 0 deletions
  1. +22
    -0
      pdfScale.sh

+ 22
- 0
pdfScale.sh View File

@@ -59,6 +59,7 @@ PGWIDTH="" # Input PDF Page Width
PGHEIGHT="" # Input PDF Page Height
RESIZE_WIDTH="" # Resized PDF Page Width
RESIZE_HEIGHT="" # Resized PDF Page Height
IMAGE_RESOLUTION=300 # Image resolution (dpi) (300 is /Printer default)


########################## EXIT FLAGS ##########################
@@ -79,6 +80,7 @@ EXIT_NOWRITE_PERMISSION=29
EXIT_NOREAD_PERMISSION=30
EXIT_TEMP_FILE_EXISTS=40
EXIT_INVALID_PAPER_SIZE=50
EXIT_INVALID_IMAGE_RESOLUTION=51


############################# MAIN #############################
@@ -189,6 +191,7 @@ gsPageScale() {
"$GSBIN" \
-q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dSAFER \
-dCompatibilityLevel="1.5" -dPDFSETTINGS="/printer" \
-dColorImageResolution=$IMAGE_RESOLUTION -dGrayImageResolution=$IMAGE_RESOLUTION \
-dColorConversionStrategy=/LeaveColorUnchanged \
-dSubsetFonts=true -dEmbedAllFonts=true \
-dDEVICEWIDTHPOINTS=$PGWIDTH -dDEVICEHEIGHTPOINTS=$PGHEIGHT \
@@ -217,6 +220,7 @@ gsPageResize() {
"$GSBIN" \
-q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dSAFER \
-dCompatibilityLevel="1.5" -dPDFSETTINGS="/printer" \
-dColorImageResolution=$IMAGE_RESOLUTION -dGrayImageResolution=$IMAGE_RESOLUTION \
-dColorConversionStrategy=/LeaveColorUnchanged \
-dSubsetFonts=true -dEmbedAllFonts=true \
-dDEVICEWIDTHPOINTS=$RESIZE_WIDTH -dDEVICEHEIGHTPOINTS=$RESIZE_HEIGHT \
@@ -383,6 +387,11 @@ getOptions() {
parseAutoRotationMode "$1"
shift
;;
--image-resolution)
shift
parseImageResolution "$1"
shift
;;
*)
initError "Invalid Parameter: \"$1\"" $EXIT_INVALID_OPTION
;;
@@ -559,6 +568,16 @@ parsePaperResize() {
fi
}

# Parses and validates the scaling factor
parseImageResolution() {
if isNotAnInteger "$1"; then
printError "Invalid image resolution: $1"
printError "The image resolution must be an integer"
exit $EXIT_INVALID_IMAGE_RESOLUTION
fi
IMAGE_RESOLUTION="$1"
}


################### PDF PAGE SIZE DETECTION ####################

@@ -1295,6 +1314,9 @@ Parameters:
n, none Retains orientation of each page
a, all Rotates all pages (or none) depending
on a kind of \"majority decision\"
--image-resolution <dpi>
Resolution in DPI of color and grayscale images in output
Default: 300
-p, --print-papers
Prints Standard Paper info tables to screen and exits



Loading…
Cancel
Save