home *** CD-ROM | disk | FTP | other *** search
- % This is a Postscript Preamble to be loaded before trying to print
- % the documents in \KMDESIGN in the October 1992 WIN NT DDK.
- % It can also be used to print just the even or odd pages, for "manual"
- % duplex printing.
- %
- % Using these defintions, the documents print with a tolerable format
- % although there are clearly some minor problems. I've figured these out
- % the commands by "reverse engineering" the postscript code.
- % I can't find the correct preample on the DDK disk.
-
- % Robert R. Howell December 5, 1992
-
- % To print all pages initialize oddpage at -1
- % To print only the odd pages initialize oddpage at 0
- % To print only the even pages initialize oddpage at 1
-
- /oddpage -1 def % This prints all pages
-
- % End of page. Decide whether to print it based on oddpage.
- % If oddpage is -1, always print it.
- % If oddpage is 1, print it then set oddpage to 0.
- % If oddpage is 0, clear it then set oddpage to 1.
- /PE { oddpage -1 eq
- {
- showpage
- }
- { oddpage 1 eq
- { showpage /oddpage 0 def }
- { erasepage /oddpage 1 def }
- ifelse
- }
- ifelse
- }
- def
-
-
- %Define an array of standard font names
- %The program seems to call them by number.
-
- % The numbering does not seem to be the "standard" postscript one.
- % The following seems to give tolerable results.
- /FNAMES
- [
- /Times-Roman
- /Times-Italic
- /Times-Bold
- /Times-BoldItalic
- /Courier
- /Courier-Oblique
- /Courier-Bold
- /Courier-BoldOblique
- /Helvetica
- /Helvetica-Oblique
- /Helvetica-Bold
- /Helvetica-BoldOblique
- /Helvetica-Narrow
- /Helvetica-Narrow-Oblique
- /Helvetica-Narrow-Bold
- /Helvetica-Narrow-BoldOblique
- /AvantGarde-Book
- /AvantGarde-BookOblique
- /AvantGarde-Demi
- /AvantGarde-DemiOblique
- /Bookman-Light
- /Bookman-LightItalic
- /Bookman-Demi
- /Bookman-DemiItalic
- /Times-Roman
- /Times-Italic
- /Times-Bold
- /Times-BoldItalic
- /Palatino-Roman
- /Palatino-Italic
- /Palatino-Bold
- /Palatino-BoldItalic
- /ZapfChancery-MediumItalic
- /Symbol
- /ZapfDingbats
- ] def
-
- % Change fonts. Font 60 is a Microsoft special font. Clip to 34.
- % fnumber fsize SF sets font type and size.
- /SF { exch dup 34 gt {pop 34} if FNAMES exch get findfont exch
- scalefont setfont } def
-
- % fontnumber fontsize F sets fonts and stores values
- /F { /curfontsize exch def /curfont exch def
- curfont curfontsize SF } def
- /B { curfont 2 add curfontsize SF } def % Bold
- /I { curfont 1 add curfontsize SF } def % Italic
- /E { curfont curfontsize SF } def % End Bold or italic
-
- /LU { } def % Think this should start underlining. Not implemented
- /LE { } def % Think this should end underlining. Not implemented
- /LL { pop } def % Used in tables of contents. Not sure what it does.
-
- /PSp { } def % Not sure what these should do.
- /PSe { } def
- /SFL { pop } def
-
- % These position text on the page, then show it.
- /P { 15840 exch sub 20 div exch 20 div exch moveto } def % move to twips
- /S { show } def
- /J { 20 div 0 rmoveto } def
-
- % These position EPS graphics on the page.
- % The originals may also place a border around it.
- /JUNKDICT 1 dict def % Create junk dictionary, needed for II2
- /IX { pop pop } def % Could be for drawing border.
- /IS { pop pop pop pop } def % Could be for drawing border.
- /II2 { gsave save currentpoint translate 0 -15840 20 div translate
- JUNKDICT begin } def % Change origin for EPS graphics.
- /II1 { } def % Don't know what this should do.
- /IT { restore grestore } def % Restore origin after EPS graphics.
-
-