diff options
author | Karl Berry <karl@freefriends.org> | 2010-05-24 00:19:35 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-05-24 00:19:35 +0000 |
commit | 0c34d999b2168a461cb1e570783c1a114538b649 (patch) | |
tree | eb0594bda0c65de84b652b7c9b12732308ac8119 /Master/bin/x86_64-solaris/fixpspps | |
parent | fd0b0388052142e91b9d5ae0464fc054ee89bc1c (diff) |
x86_64-solaris 2010 pretest 1 binaries (as)
git-svn-id: svn://tug.org/texlive/trunk@18442 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/bin/x86_64-solaris/fixpspps')
-rwxr-xr-x | Master/bin/x86_64-solaris/fixpspps | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/Master/bin/x86_64-solaris/fixpspps b/Master/bin/x86_64-solaris/fixpspps new file mode 100755 index 00000000000..77bba66d6b7 --- /dev/null +++ b/Master/bin/x86_64-solaris/fixpspps @@ -0,0 +1,58 @@ +#!/usr/bin/env perl +# mangle PostScript produced by PSPrint to make it almost conforming +# +# Copyright (C) Angus J. C. Duggan 1991-1995 +# See file LICENSE for details. + +$header = 1; $ignore = 0; +$verbose = 0; +@body = (); +%fonts = (); $font = ""; +$inchar = 0; @char = (); + +while (<>) { + if (/^\@end$/) { + $ignore = 1; + } elsif (/^[0-9]+ \@bop0$/) { + $ignore = 0; + $header = 1; + } elsif ($header) { + if (/^\/([a-z.0-9]+) \@newfont$/) { + if (! defined($fonts{$1})) { + $fonts{$1} = 1; + print; + } elsif ($verbose) { + print STDERR "$font already defined\n"; + } + } elsif (/^([a-z.0-9]+) sf$/) { + $font = $1; + print; + } elsif (/^\[</) { + $inchar = 1; + push (@char, $_); + } elsif ($inchar) { + push (@char, $_); + if (/.*\] ([0-9]+) dc$/) { + if (! defined($fonts{$font,$1})) { + $fonts{$font,$1} = 1; + print (@char); + } elsif ($verbose) { + print STDERR "$font character $1 already defined\n"; + } + $inchar = 0; + @char = (); + } + } elsif (/^([0-9]+) \@bop1$/) { + $header = 0; + push (@body, "%%Page: ? $1\n"); + push (@body, $_); + } else { + print; + } + } elsif (! $ignore) { + push (@body, $_); + } +} +print (@body); +print ("\@end\n"); + |