home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format 82 / af082a.adf / FWFiles.lha / sw_prologue.ps < prev   
Text File  |  1995-07-13  |  6KB  |  181 lines

  1. %%BeginProlog
  2. % Prolog for "Final Writer" PostScript® output
  3. % Author:    Pat Brouillette <pfrench@BIX.com>
  4. % Version:    V3.1
  5. % Date:        Jul 22, 1993
  6. % Copyright (c) 1991-1993 SoftWood, Inc.
  7. % This file may not be modified or used for purposes other than
  8. % creating output with "Final Writer", so there.
  9. %
  10. % If you wish to make changes, make them in the file "user-def.ps"
  11. % located in the "FWFiles" directory and create a few PostScript
  12. % procedures, "UserDoc", "UserBOP", and "UserEOP". "Final Writer" will
  13. % automagically call these procedures at the beginning of the document
  14. % and the beginning and end of each page, respectively.
  15. %
  16. /SWDict 130 dict def
  17. SWDict begin
  18. /bd {bind def}bind def
  19. /ld {load def}bd
  20. /ed {exch def}bd
  21. /FF {gsave showpage grestore}bd
  22. /n /newpath ld
  23. /cp /currentpoint ld
  24. /clp /closepath ld
  25. /st /stroke ld
  26. /sh /show ld
  27. /tr /translate ld
  28. /m /moveto ld
  29. /rm /rmoveto ld
  30. /l /lineto ld
  31. /rl /rlineto ld
  32. /c /curveto ld
  33. /rc /rcurveto ld
  34. /gs /gsave ld
  35. /gr /grestore ld
  36. /clw /currentlinewidth ld
  37. /slw /setlinewidth ld
  38. /clj /currentlinejoin ld
  39. /slj /setlinejoin ld
  40. /clc /currentlinecap ld
  41. /slc /setlinecap ld
  42. /cml /currentmiterlimit ld
  43. /sml /setmiterlimit ld
  44. /cdash /currentdash ld
  45. /sdash /setdash ld
  46. /cg /currentgray ld
  47. /sg /setgray ld
  48. /cm /currentmatrix ld
  49. /sm /setmatrix ld
  50. /chsb /currenthsbcolor ld
  51. /shsb /sethsbcolor ld
  52. /crgb /currentrgbcolor ld
  53. /srgb /setrgbcolor ld
  54. /sw_regmark
  55.     { .7 slw
  56.     /ymark ed /xmark ed
  57.     newpath
  58.         xmark ymark 10 add m
  59.         xmark ymark 10 sub l st
  60.     newpath
  61.         xmark 10 sub ymark m
  62.         xmark 10 add ymark l st
  63.     xmark ymark 5 0 360 arc st
  64. } def
  65. /sw_cropmarks
  66.     {
  67.     cg clw
  68.     n 0 sg .5 slw
  69.  
  70.     % horiz crop marks
  71.     -72 0 m 54 0 rl
  72.     -72 u_pageht m 44 0 rl
  73.     u_pagewd 18 add 0 m 44 0 rl
  74.     u_pagewd 18 add u_pageht m 44 0 rl st
  75.  
  76.     % vert crop marks
  77.     0 -72 m 0 54 rl
  78.     0 u_pageht 18 add m 0 54 rl
  79.     u_pagewd -72 m 0 54 rl
  80.     u_pagewd u_pageht 18 add m 0 54 rl st
  81.  
  82.     % Registration marks
  83.     -18 u_pageht 2 div sw_regmark            % left-center
  84.     u_pagewd 2 div dup -18 sw_regmark        % center-bottom
  85.     u_pageht 18 add sw_regmark            % center-top
  86.     u_pagewd 18 add dup u_pageht 2 div sw_regmark    % right-center
  87.     u_pageht 4 div sw_regmark            % right-bottom
  88.  
  89.     slw sg
  90. } def
  91.  
  92. /reencsmalldict 12 dict def
  93. /ReEncodeSmall
  94. { reencsmalldict begin
  95. /newcodesandnames exch def
  96. /newfontname exch def
  97. /basefontname exch def
  98. /basefontdict basefontname findfont def
  99. /newfont basefontdict maxlength dict def
  100. basefontdict
  101.     { exch dup /FID ne
  102.         { dup /Encoding ne
  103.             { exch newfont 3 1 roll put }
  104.             { exch dup length array copy newfont 3 1 roll put }
  105.             ifelse }
  106.         { pop pop }
  107.         ifelse
  108.     } forall
  109. newfont /FontName newfontname put
  110. newcodesandnames aload pop
  111. newcodesandnames length 2 idiv
  112. { newfont /Encoding get 3 1 roll put} repeat
  113. newfontname newfont definefont pop
  114. end
  115. } def
  116.  
  117. /AmiVec [
  118. 8#220 /dotlessi        8#221 /grave        8#222 /acute        8#223 /circumflex
  119. 8#224 /tilde        8#225 /macron        8#226 /breve        8#227 /dotaccent
  120. 8#230 /dieresis        8#232 /ring        8#233 /cedilla        8#235 /hungarumlaut
  121. 8#236 /ogonek        8#237 /caron        8#240 /nbspace        8#241 /exclamdown
  122. 8#242 /cent        8#243 /sterling        8#244 /currency        8#245 /yen
  123. 8#246 /brokenbar    8#247 /section        8#250 /dieresis        8#251 /copyright
  124. 8#252 /ordfeminine    8#253 /guillemotleft    8#254 /logicalnot    8#255 /hyphen
  125. 8#256 /registered    8#257 /macron        8#260 /degree        8#261 /plusminus
  126. 8#262 /twosuperior    8#263 /threesuperior    8#264 /acute        8#265 /mu
  127. 8#266 /paragraph    8#267 /bullet        8#270 /cedilla        8#271 /onesuperior
  128. 8#272 /ordmasculine    8#273 /guillemotright    8#274 /onequarter    8#275 /onehalf
  129. 8#276 /threequarters    8#277 /questiondown    8#300 /Agrave        8#301 /Aacute
  130. 8#302 /Acircumflex    8#303 /Atilde        8#304 /Adieresis    8#305 /Aring
  131. 8#306 /AE        8#307 /Ccedilla        8#310 /Egrave        8#311 /Eacute
  132. 8#312 /Ecircumflex    8#313 /Edieresis    8#314 /Igrave        8#315 /Iacute
  133. 8#316 /Icircumflex    8#317 /Idieresis    8#320 /Eth        8#321 /Ntilde
  134. 8#322 /Ograve        8#323 /Oacute        8#324 /Ocircumflex    8#325 /Otilde
  135. 8#326 /Odieresis    8#327 /multiply        8#330 /Oslash        8#331 /Ugrave
  136. 8#332 /Uacute        8#333 /Ucircumflex    8#334 /Udieresis    8#335 /Yacute
  137. 8#336 /Thorn        8#337 /germandbls    8#340 /agrave        8#341 /aacute
  138. 8#342 /acircumflex    8#343 /atilde        8#344 /adieresis    8#345 /aring
  139. 8#346 /ae        8#347 /ccedilla        8#350 /egrave        8#351 /eacute
  140. 8#352 /ecircumflex    8#353 /edieresis    8#354 /igrave        8#355 /iacute
  141. 8#356 /icircumflex    8#357 /idieresis    8#360 /eth        8#361 /ntilde
  142. 8#362 /ograve        8#363 /oacute        8#364 /ocircumflex    8#365 /otilde
  143. 8#366 /odieresis    8#367 /divide        8#370 /oslash        8#371 /ugrave
  144. 8#372 /uacute        8#373 /ucircumflex    8#374 /udieresis    8#375 /yacute
  145. 8#376 /thorn        8#377 /ydieresis    8#055 /hyphen
  146. ] def
  147.  
  148. /fult 1 def
  149. /fuld -2 def
  150. /fstd 5 def
  151. % Gold's re-make font scheme
  152. /font {
  153.     /newfontname ed /basefontname ed
  154.     dup /sY ed mul 100 div /sX ed sY 0.3 mul /fstd ed
  155.     100 div sX mul sX mul sY div /Ob ed
  156.     FontDirectory newfontname known not
  157.     { basefontname newfontname AmiVec ReEncodeSmall } if
  158.     newfontname findfont [ sX 0 Ob sY 0 0 ] makefont setfont
  159.     currentfont dup/FontInfo get/UnderlinePosition known not
  160.         {pop /Courier findfont}if
  161.         /FontInfo get/UnderlinePosition get 1000 div sY mul /fuld ed
  162.     currentfont dup/FontInfo get/UnderlineThickness known not
  163.         {pop /Courier findfont}if
  164.         /FontInfo get/UnderlineThickness get 1000 div sY mul /fult ed
  165. }def
  166.  
  167. /js { 4 2 roll moveto dup stringwidth pop 3 -1 roll exch sub exch dup length 1 sub 3 -1 roll exch div 0 3 -1 roll ashow }bd
  168. /ujs { 4 copy pop 3 1 roll n m 0 /fuld load rm /fult load slw 0 rl st js } bd
  169. /djs { 4 copy pop 3 1 roll n m 0 /fuld load 2 mul rm /fult load slw 0 rl st ujs } bd
  170. /sjs { 4 copy pop 3 1 roll n m 0 /fstd load rm /fult load slw 0 rl st js } bd
  171. /ms {m sh}bd
  172. /lms { cp /y0 ed /x0 ed sh cp /y1 ed /x1 ed x0 y0 n m rm x1 x0 sub y1 y0 sub rl /fult load slw st x1 y1 m }bd
  173. /ums { m 0 /fuld load 3 -1 roll lms }bd
  174. /dms { 3 copy n m stringwidth pop 0 /fuld load 2 mul rm /fult load slw 0 rl st ums }bd
  175. /sms { m 0 /fstd load 3 -1 roll lms }bd
  176. /F {findfont exch scalefont setfont}bd
  177. /box{m /ht ed/wd ed wd 0 rl 0 ht rl wd neg 0 rl clp}bd
  178. end
  179. % end of SoftWood dictionary
  180. %%EndProlog
  181.