summaryrefslogtreecommitdiff
path: root/Build/source/utils/psutils/fixfmps.pl
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/utils/psutils/fixfmps.pl')
-rw-r--r--Build/source/utils/psutils/fixfmps.pl21
1 files changed, 21 insertions, 0 deletions
diff --git a/Build/source/utils/psutils/fixfmps.pl b/Build/source/utils/psutils/fixfmps.pl
new file mode 100644
index 00000000000..f09a3c04b40
--- /dev/null
+++ b/Build/source/utils/psutils/fixfmps.pl
@@ -0,0 +1,21 @@
+@PERL@
+# fixfmps: get conforming PostScript out of FrameMaker version 2 file
+# move all FMDEFINEFONTs to start of pages
+#
+# Copyright (C) Angus J. C. Duggan 1991-1995
+# See file LICENSE for details.
+
+%fonts=();
+
+while (<>) {
+ if (/^([0-9]+) [0-9]+ .* FMDEFINEFONT$/) {
+ $fonts{$1} = $_;
+ } elsif (/^[0-9.]+ [0-9.]+ [0-9]+ FMBEGINPAGE$/) {
+ print $_, join('',values(%fonts));
+ } elsif (m%(.*/PageSize \[paperwidth paperheight\]put )setpagedevice(.*)%) {
+ print "$1pop$2\n";
+ } else {
+ print $_;
+ }
+}
+@END@