dpost.ps 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. %
  2. % Version 3.3.2 prologue for troff files.
  3. %
  4. /#copies 1 store
  5. /aspectratio 1 def
  6. /formsperpage 1 def
  7. /landscape false def
  8. /linewidth .3 def
  9. /magnification 1 def
  10. /margin 0 def
  11. /orientation 0 def
  12. /resolution 720 def
  13. /rotation 1 def
  14. /xoffset 0 def
  15. /yoffset 0 def
  16. /roundpage true def
  17. /useclippath true def
  18. /pagebbox [0 0 612 792] def
  19. /R /Times-Roman def
  20. /I /Times-Italic def
  21. /B /Times-Bold def
  22. /BI /Times-BoldItalic def
  23. /H /Helvetica def
  24. /HI /Helvetica-Oblique def
  25. /HB /Helvetica-Bold def
  26. /HX /Helvetica-BoldOblique def
  27. /CW /Courier def
  28. /CO /Courier def
  29. /CI /Courier-Oblique def
  30. /CB /Courier-Bold def
  31. /CX /Courier-BoldOblique def
  32. /PA /Palatino-Roman def
  33. /PI /Palatino-Italic def
  34. /PB /Palatino-Bold def
  35. /PX /Palatino-BoldItalic def
  36. /Hr /Helvetica-Narrow def
  37. /Hi /Helvetica-Narrow-Oblique def
  38. /Hb /Helvetica-Narrow-Bold def
  39. /Hx /Helvetica-Narrow-BoldOblique def
  40. /KR /Bookman-Light def
  41. /KI /Bookman-LightItalic def
  42. /KB /Bookman-Demi def
  43. /KX /Bookman-DemiItalic def
  44. /AR /AvantGarde-Book def
  45. /AI /AvantGarde-BookOblique def
  46. /AB /AvantGarde-Demi def
  47. /AX /AvantGarde-DemiOblique def
  48. /NR /NewCenturySchlbk-Roman def
  49. /NI /NewCenturySchlbk-Italic def
  50. /NB /NewCenturySchlbk-Bold def
  51. /NX /NewCenturySchlbk-BoldItalic def
  52. /ZD /ZapfDingbats def
  53. /ZI /ZapfChancery-MediumItalic def
  54. /S /S def
  55. /S1 /S1 def
  56. /GR /Symbol def
  57. /inch {72 mul} bind def
  58. /min {2 copy gt {exch} if pop} bind def
  59. /setup {
  60. counttomark 2 idiv {def} repeat pop
  61. landscape {/orientation 90 orientation add def} if
  62. /scaling 72 resolution div def
  63. linewidth setlinewidth
  64. 1 setlinecap
  65. pagedimensions
  66. xcenter ycenter translate
  67. orientation rotation mul rotate
  68. width 2 div neg height 2 div translate
  69. xoffset inch yoffset inch neg translate
  70. margin 2 div dup neg translate
  71. magnification dup aspectratio mul scale
  72. scaling scaling scale
  73. addmetrics
  74. 0 0 moveto
  75. } def
  76. /pagedimensions {
  77. useclippath userdict /gotpagebbox known not and {
  78. /pagebbox [clippath pathbbox newpath] def
  79. roundpage currentdict /roundpagebbox known and {roundpagebbox} if
  80. } if
  81. pagebbox aload pop
  82. 4 -1 roll exch 4 1 roll 4 copy
  83. landscape {4 2 roll} if
  84. sub /width exch def
  85. sub /height exch def
  86. add 2 div /xcenter exch def
  87. add 2 div /ycenter exch def
  88. userdict /gotpagebbox true put
  89. } def
  90. /addmetrics {
  91. /Symbol /S null Sdefs cf
  92. /Times-Roman /S1 StandardEncoding dup length array copy S1defs cf
  93. } def
  94. /pagesetup {
  95. /page exch def
  96. currentdict /pagedict known currentdict page known and {
  97. page load pagedict exch get cvx exec
  98. } if
  99. } def
  100. /decodingdefs [
  101. {counttomark 2 idiv {y moveto show} repeat}
  102. {neg /y exch def counttomark 2 idiv {y moveto show} repeat}
  103. {neg moveto {2 index stringwidth pop sub exch div 0 32 4 -1 roll widthshow} repeat}
  104. {neg moveto {spacewidth sub 0.0 32 4 -1 roll widthshow} repeat}
  105. {counttomark 2 idiv {y moveto show} repeat}
  106. {neg setfunnytext}
  107. ] def
  108. /setdecoding {/t decodingdefs 3 -1 roll get bind def} bind def
  109. /w {neg moveto show} bind def
  110. /m {neg dup /y exch def moveto} bind def
  111. /done {/lastpage where {pop lastpage} if} def
  112. /f {
  113. dup /font exch def findfont exch
  114. dup /ptsize exch def scaling div dup /size exch def scalefont setfont
  115. linewidth ptsize mul scaling 10 mul div setlinewidth
  116. /spacewidth ( ) stringwidth pop def
  117. } bind def
  118. /changefont {
  119. /fontheight exch def
  120. /fontslant exch def
  121. currentfont [
  122. 1 0
  123. fontheight ptsize div fontslant sin mul fontslant cos div
  124. fontheight ptsize div
  125. 0 0
  126. ] makefont setfont
  127. } bind def
  128. /sf {f} bind def
  129. /cf {
  130. dup length 2 idiv
  131. /entries exch def
  132. /chtab exch def
  133. /newencoding exch def
  134. /newfont exch def
  135. findfont dup length 1 add dict
  136. /newdict exch def
  137. {1 index /FID ne {newdict 3 1 roll put}{pop pop} ifelse} forall
  138. newencoding type /arraytype eq {newdict /Encoding newencoding put} if
  139. newdict /Metrics entries dict put
  140. newdict /Metrics get
  141. begin
  142. chtab aload pop
  143. 1 1 entries {pop def} for
  144. newfont newdict definefont pop
  145. end
  146. } bind def
  147. %
  148. % A few arrays used to adjust reference points and character widths in some
  149. % of the printer resident fonts. If square roots are too high try changing
  150. % the lines describing /radical and /radicalex to,
  151. %
  152. % /radical [0 -75 550 0]
  153. % /radicalex [-50 -75 500 0]
  154. %
  155. % Move braceleftbt a bit - default PostScript character is off a bit.
  156. %
  157. /Sdefs [
  158. /bracketlefttp [201 500]
  159. /bracketleftbt [201 500]
  160. /bracketrighttp [-81 380]
  161. /bracketrightbt [-83 380]
  162. /braceleftbt [203 490]
  163. /bracketrightex [220 -125 500 0]
  164. /radical [0 0 550 0]
  165. /radicalex [-50 0 500 0]
  166. /parenleftex [-20 -170 0 0]
  167. /integral [100 -50 500 0]
  168. /infinity [10 -75 730 0]
  169. ] def
  170. /S1defs [
  171. /underscore [0 80 500 0]
  172. /endash [7 90 650 0]
  173. ] def