|
Server : Apache/2.2.2 (Fedora) System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686 User : apache ( 48) PHP Version : 5.2.9 Disable Function : NONE Directory : /proc/self/root/usr/bin/ |
Upload File : |
#!/bin/sh
# $Id: ps2epsi,v 1.7 2003/09/02 18:01:31 easysw Exp $
gs="`dirname $0`/gs"
if test ! -x "$gs"; then
gs=gs
fi
tmpfile=`mktemp ${TMPDIR-/tmp}/ps2epsi.XXXXXX`
rm -f $tmpfile
if test -e $tmpfile; then
echo "$0: Our temporary file $tmpfile already exists." 1>&2
exit 1
fi
trap "rm -rf $tmpfile" 0 1 2 3 7 13 15
export outfile
if [ $# -lt 1 -o $# -gt 2 ]; then
echo "Usage: `basename $0` file.ps [file.epsi]" 1>&2
exit 1
fi
infile=$1;
if [ $# -eq 1 ]
then
case "${infile}" in
*.ps) base=`basename "${infile}" .ps` ;;
*.cps) base=`basename "${infile}" .cps` ;;
*.eps) base=`basename "${infile}" .eps` ;;
*.epsf) base=`basename "${infile}" .epsf` ;;
*) base=`basename "${infile}"` ;;
esac
outfile=${base}.epsi
else
outfile=$2
fi
ls -l "${infile}" |
awk 'F==1 {
cd="%%CreationDate: " $6 " " $7 " " $8;
t="%%Title: " $9;
f="%%For:" U " " $3;
c="%%Creator: Ghostscript ps2epsi from " $9;
next;
}
/^%!/ {next;}
/^%%Title:/ {t=$0; next;}
/^%%Creator:/ {c=$0; next;}
/^%%CreationDate:/ {cd=$0; next;}
/^%%For:/ {f=$0; next;}
!/^%/ {
print "/ps2edict 30 dict def";
print "ps2edict begin";
print "/epsititle (" t "\\n) def";
print "/epsicreator (" c "\\n) def";
print "/epsicrdt (" cd "\\n) def";
print "/epsifor (" f "\\n) def";
print "end";
exit(0);
}
' U="$USERNAME$LOGNAME" F=1 - F=2 "${infile}" >$tmpfile
"$gs" -q -dNOPAUSE -dSAFER -dDELAYSAFER -r72 -sDEVICE=bit -sOutputFile=/dev/null $tmpfile ps2epsi.ps $tmpfile <"${infile}" 1>&2
rm -f $tmpfile
(
cat << BEGINEPS
save countdictstack mark newpath /showpage {} def /setpagedevice {pop} def
%%EndProlog
%%Page: 1 1
%%BeginDocument: ${infile}
BEGINEPS
cat "${infile}" |
LC_ALL=C \
sed -e '/^%%BeginPreview:/,/^%%EndPreview[^!-\~]*$/d' -e '/^%!PS-Adobe/d' \
-e '/^%%[A-Za-z][A-Za-z]*[^!-\~]*$/d' -e '/^%%[A-Za-z][A-Za-z]*: /d'
cat << ENDEPS
%%EndDocument
%%Trailer
cleartomark countdictstack exch sub { end } repeat restore
%%EOF
ENDEPS
) >> "${outfile}"
exit 0