home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / texlatex.zip / txmflb75.zip / share / texmf / dvips / base / tex.pro < prev    next >
Text File  |  1998-03-06  |  3KB  |  49 lines

  1. %!
  2. /TeXDict 300 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
  3. /X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
  4. mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
  5. ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
  6. isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
  7. hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
  8. TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if}
  9. forall round exch round exch]setmatrix}N /@landscape{/isls true N}B
  10. /@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B
  11. /FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{
  12. /nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N
  13. string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N
  14. end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{
  15. /sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]
  16. N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup
  17. length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{
  18. 128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub
  19. get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data
  20. dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N
  21. /rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup
  22. /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx
  23. 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff
  24. setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff
  25. .1 sub]{ch-image}imagemask restore}B /D{/cc X dup type /stringtype ne{]}
  26. if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup
  27. length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{
  28. cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
  29. 0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul
  30. add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore userdict
  31. /eop-hook known{eop-hook}if showpage}N /@start{userdict /start-hook
  32. known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
  33. /IE 256 array N 2 string 0 1 255{IE S dup 360 add 36 4 index cvrs cvn
  34. put}for pop 65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N
  35. /RMat[1 0 0 -1 0 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley
  36. X /rulex X V}B /V{}B /RV statusdict begin /product where{pop false[
  37. (Display)(NeXT)(LaserWriter 16/600)]{dup length product length le{dup
  38. length product exch 0 exch getinterval eq{pop true exit}if}{pop}ifelse}
  39. forall}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false
  40. RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1
  41. false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform
  42. round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg
  43. rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail
  44. {dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M}
  45. B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{
  46. 4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{
  47. p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p
  48. a}B /bos{/SS save N}B /eos{SS restore}B end
  49.