summaryrefslogtreecommitdiff
path: root/ThirdParty/luasocket/gem/myps2pdf
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-10-20 13:40:34 +0800
committerchai <chaifix@163.com>2021-10-20 13:40:34 +0800
commitff0f488c97fe8b554b909a0057cebc4c860eac8f (patch)
tree4e47262b52ffce7e9cfeaaeeab46371243bcaa78 /ThirdParty/luasocket/gem/myps2pdf
parentdde719dd575090b36aaa3ad85bb3cabf33f36c5a (diff)
+luasocket src
Diffstat (limited to 'ThirdParty/luasocket/gem/myps2pdf')
-rw-r--r--ThirdParty/luasocket/gem/myps2pdf113
1 files changed, 113 insertions, 0 deletions
diff --git a/ThirdParty/luasocket/gem/myps2pdf b/ThirdParty/luasocket/gem/myps2pdf
new file mode 100644
index 0000000..78c23e5
--- /dev/null
+++ b/ThirdParty/luasocket/gem/myps2pdf
@@ -0,0 +1,113 @@
+#!/bin/sh -
+do_opt=1
+best=0
+rot=0
+a4=0
+eps=0
+usage="Usage: $0 [-no_opt] [-best] [-rot] [-a4] [-eps] in.ps [out.pdf]"
+
+case "x$1" in
+"x-no_opt") do_opt=0 ; shift ;;
+esac
+
+case "x$1" in
+"x-best") best=1 ; shift ;;
+esac
+
+case "x$1" in
+"x-rot") rot=1 ; shift ;;
+esac
+
+case "x$1" in
+"x-a4") a4=1 ; shift ;;
+esac
+
+case "x$1" in
+"x-eps") eps=1 ; shift ;;
+esac
+
+case $# in
+2) ifilename=$1 ; ofilename=$2 ;;
+1) ifilename=$1
+ if `echo $1 | grep -i '\.e*ps$' > /dev/null`
+ then
+ ofilename=`echo $1 | sed 's/\..*$/.pdf/'`
+ else
+ echo "$usage" 1>&2
+ exit 1
+ fi ;;
+*) echo "$usage" 1>&2 ; exit 1 ;;
+esac
+
+if [ $best == 1 ]
+then
+ options="-dPDFSETTINGS=/prepress \
+ -r1200 \
+ -dMonoImageResolution=1200 \
+ -dGrayImageResolution=1200 \
+ -dColorImageResolution=1200 \
+ -dDownsampleMonoImages=false \
+ -dDownsampleGrayImages=false \
+ -dDownsampleColorImages=false \
+ -dAutoFilterMonoImages=false \
+ -dAutoFilterGrayImages=false \
+ -dAutoFilterColorImages=false \
+ -dMonoImageFilter=/FlateEncode \
+ -dGrayImageFilter=/FlateEncode \
+ -dColorImageFilter=/FlateEncode"
+else
+ options="-dPDFSETTINGS=/prepress \
+ -r600 \
+ -dDownsampleMonoImages=true \
+ -dDownsampleGrayImages=true \
+ -dDownsampleColorImages=true \
+ -dMonoImageDownsampleThreshold=2.0 \
+ -dGrayImageDownsampleThreshold=1.5 \
+ -dColorImageDownsampleThreshold=1.5 \
+ -dMonoImageResolution=600 \
+ -dGrayImageResolution=600 \
+ -dColorImageResolution=600 \
+ -dAutoFilterMonoImages=false \
+ -dMonoImageFilter=/FlateEncode \
+ -dAutoFilterGrayImages=true \
+ -dAutoFilterColorImages=true"
+fi
+
+if [ $rot == 1 ]
+then
+ options="$options -dAutoRotatePages=/PageByPage"
+fi
+
+if [ $eps == 1 ]
+then
+ options="$options -dEPSCrop"
+fi
+
+set -x
+
+if [ $a4 == 1 ]
+then
+ # Resize from A4 to letter size
+ psresize -Pa4 -pletter "$ifilename" myps2pdf.temp.ps
+ ifilename=myps2pdf.temp.ps
+fi
+
+gs -q -dSAFER -dNOPAUSE -dBATCH \
+ -sDEVICE=pdfwrite -sPAPERSIZE=letter -sOutputFile=myps2pdf.temp.pdf \
+ -dCompatibilityLevel=1.3 \
+ $options \
+ -dMaxSubsetPct=100 \
+ -dSubsetFonts=true \
+ -dEmbedAllFonts=true \
+ -dColorConversionStrategy=/LeaveColorUnchanged \
+ -dDoThumbnails=true \
+ -dPreserveEPSInfo=true \
+ -c .setpdfwrite -f "$ifilename"
+
+if [ $do_opt == 1 ]
+then
+ pdfopt myps2pdf.temp.pdf $ofilename
+else
+ mv myps2pdf.temp.pdf $ofilename
+fi
+rm -f myps2pdf.temp.pdf myps2pdf.temp.ps