home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 443.lha / Lila_v9004b / Lila.ps < prev   
Text File  |  1990-12-05  |  3KB  |  168 lines

  1. %!PS
  2. % Lila Prologue
  3. % version 9004b
  4. % rev 18.10.90 - Amiga Encoding
  5. % (C) 1990 by Bertrand Gros
  6.  
  7. save
  8. /LilaDict 40 dict def
  9. LilaDict begin
  10.  
  11. /mm { 2.83464567 mul } def
  12. /inch { 72 mul } def
  13.  
  14. /xpage 210 mm def
  15. /ypage 297 mm def
  16. /x0 10 mm def
  17. /y0 10 mm def
  18. /x1 200 mm def
  19. /y1 287 mm def
  20.  
  21. /#copies 1 def
  22.  
  23. /LilaFont
  24.     /Courier findfont
  25.     dup length dict dup begin exch
  26.     {
  27.         1 index /FID ne { def } { pop pop } ifelse
  28.     } forall
  29.     /Encoding 256 array def
  30.     Encoding 0 StandardEncoding 0 152 getinterval putinterval
  31.     Encoding 152
  32.     [/grave/acute/circumflex/tilde
  33.     /dieresis/ring/dotlessi/.notdef
  34.     /space/exclamdown/cent/sterling
  35.     /currency/yen/brokenbar/section
  36.     /dieresis/copyright/ordfeminine/guillemotleft
  37.     /logicalnot/emdash/registered/macron
  38.     /degree/plusminus/twosuperior/threesuperior
  39.     /quoteright/mu/paragraph/bullet
  40.     /cedilla/onesuperior/ordmasculine/guillemotright
  41.     /onequarter/onehalf/threequarters/questiondown
  42.     /Agrave/Aacute/Acircumflex/Atilde
  43.     /Adieresis/Aring/AE/Ccedilla
  44.     /Egrave/Eacute/Ecircumflex/Edieresis
  45.     /Igrave/Iacute/Icircumflex/Idieresis
  46.     /Eth/Ntilde/Ograve/Oacute
  47.     /Ocircumflex/Otilde/Odieresis/multiply
  48.     /Oslash/Ugrave/Uacute/Ucircumflex
  49.     /Udieresis/Yacute/Thorn/germandbls
  50.     /agrave/aacute/acircumflex/atilde
  51.     /adieresis/aring/ae/ccedilla
  52.     /egrave/eacute/ecircumflex/edieresis
  53.     /igrave/iacute/icircumflex/idieresis
  54.     /eth/ntilde/ograve/oacute
  55.     /ocircumflex/otilde/odieresis/divide
  56.     /oslash/ugrave/uacute/ucircumflex
  57.     /udieresis/yacute/thorn/ydieresis]
  58.     putinterval
  59.     end
  60. definefont pop
  61.  
  62. /scalepage 
  63. {
  64.     /colwidth nchar condensed { 4 } { 6 } ifelse mul 14 add def
  65.     portrait
  66.     {
  67.         0 ypage translate 1 -1 scale
  68.         x0 y0 translate
  69.         x1 x0 sub
  70.     } 
  71.     {
  72.         90 rotate 1 -1 scale
  73.         ypage y1 sub x0 translate
  74.         y1 y0 sub 
  75.     } ifelse
  76.     ncol 1 sub 12 mul
  77.     ncol colwidth mul add
  78.     div dup dup scale
  79.     portrait { y1 y0 sub } { x1 x0 sub } ifelse
  80.     exch div 39 sub 12 div
  81.     cvi /nline exch def
  82. } def
  83.  
  84. /drawheader
  85. {
  86.     newpath 0 0 moveto
  87.     colwidth 0 rlineto
  88.     0 nline 12 mul 39 add rlineto
  89.     colwidth neg 0 rlineto
  90.     closepath
  91.     0 25 moveto colwidth 0 rlineto stroke
  92.  
  93.     7 16 moveto title show
  94.  
  95.     /npage npage 1 add def
  96.     npage (    ) cvs
  97.     colwidth 7 sub 16 moveto
  98.     dup stringwidth pop
  99.     (Page ) stringwidth pop
  100.     add neg 0 rmoveto 
  101.     gsave (Page ) show show grestore
  102.     gsave -7 -16 rmoveto 0 25 rlineto stroke grestore
  103.  
  104.     date stringwidth pop
  105.     14 add neg 0 rmoveto
  106.     gsave date show grestore
  107.     -7 -16 rmoveto 0 25 rlineto stroke
  108.  
  109.     /nprint nprint 1 add def
  110. } def
  111.  
  112. /drawpage 
  113. {
  114.     6 41 moveto
  115.     0
  116.     nline
  117.     {
  118.         currentfile buffer readline
  119.         exch dup ([-$!$-END-$!$-]) eq 3 -1 roll not or
  120.         {
  121.             pop /eof true def exit
  122.         } if
  123.         dup ([-$!$-FF-$!$-]) eq
  124.         {
  125.              pop exit
  126.         } if
  127.         gsave show grestore
  128.         0 12 rmoveto
  129.         1 add 
  130.     } repeat
  131. } def
  132.  
  133. /lila        % title date ncol portrait nchar condensed lila
  134. {
  135.     /condensed exch def /nchar exch def
  136.     /portrait exch def /ncol exch def
  137.     /date exch def /title exch def
  138.     /npage 0 def
  139.     /eof false def
  140.     /buffer nchar string def
  141.  
  142.     scalepage
  143.     /LilaFont findfont
  144.         condensed { [ 20 3 div 0 0 -10 0 0 ] } { [ 10 0 0 -10 0 0 ] } ifelse
  145.     makefont setfont
  146.     0.7 setlinewidth
  147.     {
  148.         /nprint 0 def
  149.         gsave
  150.         ncol
  151.         {
  152.             drawpage
  153.             eof { 0 gt { drawheader } if exit } if
  154.             pop drawheader
  155.             colwidth 12 add 0 translate
  156.         } repeat
  157.         nprint 0 gt { showpage } if
  158.         grestore
  159.         eof { exit } if
  160.     } loop
  161.     end
  162.     restore
  163. } def
  164.  
  165. %%EndProlog
  166.  
  167. % title date ncol portrait nchar condensed lila
  168.