home *** CD-ROM | disk | FTP | other *** search
/ BeMA Communicate / BeMA_Communicae_13.diskimage / Communicae-accessories / communicae.ps < prev    next >
Text File  |  1992-10-20  |  4KB  |  93 lines

  1. %% communicae.ps
  2. %
  3. % If you save the VT220 screen to a file and then print it on some
  4. % other printer than a NeXT printer (or even to the NeXT printer if
  5. % it is connected to a machine that has not run Communicae since
  6. % it was last rebooted), the graphics characters will not be printed.
  7. % To fix this, the contents of this file must be inserted where it
  8. % says "Insert communicae.ps here".
  9.  
  10. % Version 1.3 of Communicae uses the NextStandardEncoding to print
  11. % foreign letters.  The font in use on the printer must also use this
  12. % encoding for accented letters to print correctly.  However, on non-NeXT
  13. % printers many of the characters (such as fractions) are missing and
  14. % cannot be printed without much more serious editing.
  15.  
  16. % This file may also be dumped to the laser printer once to allow you
  17. % to print several screens without sending this header each time. This has
  18. % the major advantage that the graphics set will not be thrown out of the
  19. % cache each time.  To make the header resident, uncomment the next line:
  20.  
  21. % serverdict begin 0 exitserver
  22.  
  23. /rect {4 -2 roll moveto 1 index 0 rlineto 0 exch rlineto
  24.     neg 0 rlineto closepath} bind def
  25. /rectfill {gsave rect fill grestore} bind def
  26. /rectclip {rect clip newpath} bind def
  27. /selectfont {{exch findfont exch
  28.     dup type /integertype eq {scalefont}{makefont}ifelse
  29.     setfont} stopped pop} bind def
  30.  
  31. /DEC_Special_Graphics 10 dict dup begin
  32. /FontType 3 def
  33. /FontMatrix [1 12 div 0 0 1 12 div 0 0] def
  34. /FontBBox [-8 -8 16 16] def
  35. /Encoding 256 array def
  36. 0 1 255 {Encoding exch /.notdef put} for
  37. Encoding 0 [/.notdef /errorbox /HT /FF /CR /LF /NL /VT
  38.     /lr /.notdef /.notdef /ur /ul /ll /cross /l9
  39.     /l7 /l5 /l3 /l1 /leftT /rightT /botT /topT /bar] putinterval
  40.  
  41.  /CharProcs 23 dict def
  42.  CharProcs begin
  43.     /.notdef {} def
  44.     /errorbox
  45.     {11 12 scale /checkwidth 8 def /temp 12 def
  46.     /checkcounter 0 def /checkline 0 def
  47.     checkwidth temp true [checkwidth 0 0 temp 0 0] {
  48.         checkcounter 0 le {/checkline checkline 1 add def
  49.         /checkcounter checkwidth def
  50.         } if
  51.         checkline 1 and 0 ne {<AA>}{<55>} ifelse
  52.         /checkcounter checkcounter 8 sub def
  53.          } imagemask} bind def
  54.     /HT {1 11.5 moveto 1 7.5 lineto 1 9.5 moveto 6 9.5 lineto
  55.      6 11.5 moveto 6 7.5 lineto 5 6.5 moveto 10 6.5 lineto
  56.      7.5 6.5 moveto 7.5 2.5 lineto stroke} bind def
  57.     /FF {1 7.5 moveto 1 11.5 lineto 6 11.5 lineto 1 9.5 moveto 5 9.5 lineto
  58.      5 2.5 moveto 5 6.5 lineto 10 6.5 lineto 5 4.5 moveto 9 4.5 lineto
  59.      stroke} bind def
  60.     /CR {6 11.5 moveto 2 11.5 lineto 1 11 lineto 1 8 lineto
  61.      2 7.5 lineto 6 7.5 lineto 5 2.5 moveto 5 6.5 lineto
  62.      9 6.5 lineto 10 6 lineto 10 5 lineto 9 4.5 lineto 5 4.5 lineto
  63.      7 4.5 moveto 10 2.5 lineto stroke} bind def
  64.     /LF {1 11.5 moveto 1 7.5 lineto 6 7.5 lineto
  65.      5 2.5 moveto 5 6.5 lineto 10 6.5 lineto 5 4.5 moveto 9 4.5 lineto
  66.      stroke} bind def
  67.     /NL {1 7.5 moveto 1 11.5 lineto 6 7.5 lineto 6 11.5 lineto
  68.      5 6.5 moveto 5 2.5 lineto 10 2.5 lineto stroke} bind def
  69.     /VT {1 11.5 moveto 4 7 lineto 8 11.5 lineto 5 6.5 moveto 10 6.5 lineto
  70.      7.5 6.5 moveto 7.5 2.5 lineto stroke} bind def
  71.     /lr {0 6 moveto 6 6 lineto 6 12 lineto stroke} bind def
  72.     /ur {0 6 moveto 6 6 lineto 6 .001 lineto stroke} bind def
  73.     /ul {6 .001 moveto 6 6 lineto 11.999 6 lineto stroke} bind def
  74.     /ll {6 12 moveto 6 6 lineto 11.999 6 lineto stroke} bind def
  75.     /cross {0 6 moveto 11.999 6 lineto 6 .001 moveto 6 12 lineto stroke} bind def
  76.     /l9 {0 10.8 moveto 11.999 10.8 lineto stroke} bind def
  77.     /l7 {0 8.4 moveto 11.999 8.4 lineto stroke} bind def
  78.     /l5 {0 6.0 moveto 11.999 6.0 lineto stroke} bind def
  79.     /l3 {0 3.6 moveto 11.999 3.6 lineto stroke} bind def
  80.     /l1 {0 1.2 moveto 11.999 1.2 lineto stroke} bind def
  81.     /leftT {6 .001 moveto 6 12 lineto 6 6 moveto 11.999 6 lineto stroke} bind def
  82.     /rightT {6 .001 moveto 6 12 lineto 0 6 moveto 6 6 lineto stroke} bind def
  83.     /botT {0 6 moveto 11.999 6 lineto 6 6 moveto 6 12 lineto stroke} bind def
  84.     /topT {0 6 moveto 11.999 6 lineto 6 6 moveto 6 .001 lineto stroke} bind def
  85.     /bar {6 .001 moveto 6 12 lineto stroke} bind def
  86.  end
  87.  /BuildChar {
  88.     12.0 0.0 0.0 0.0 12.0 12.0 setcachedevice
  89.     1.0 setlinewidth true setstrokeadjust
  90.     exch begin Encoding exch get CharProcs exch get end exec
  91.     } bind def
  92.  end definefont pop 
  93.