ref: 242403d9f92e14969c1f418e0ee086193e9c9698
dir: /sys/src/cmd/postscript/postgif/postgif.ps/
% % Version 3.3.2 prologue for GIF pixmap files. % /#copies 1 store /aspectratio 1 def /formsperpage 1 def /landscape false def /magnification 1 def /margin 0 def /orientation 0 def /rotation 1 def /xoffset 0 def /yoffset 0 def /useclippath true def /pagebbox [0 0 612 792] def /inch {72 mul} bind def /min {2 copy gt {exch} if pop} bind def /setup { counttomark 2 idiv {def} repeat pop landscape {/orientation 90 orientation add def} if pagedimensions xcenter ycenter translate orientation rotation mul rotate xoffset inch yoffset inch translate magnification dup aspectratio mul scale /height height margin sub def /width width margin sub def } def /pagedimensions { useclippath { /pagebbox [clippath pathbbox newpath] def } if pagebbox aload pop 4 -1 roll exch 4 1 roll 4 copy landscape {4 2 roll} if sub /width exch def sub /height exch def add 2 div /xcenter exch def add 2 div /ycenter exch def userdict /gotpagebbox true put } def /pagesetup {/page exch def} bind def /done {/lastpage where {pop lastpage} if} def /alignment false def /gifscreen { % scrwidth scrheight $ 2 copy alignment { 100 dup dtransform exch 100 exch div abs exch 100 exch div abs 2 copy scale /height exch height exch div def /width exch width exch div def } if height exch div exch width exch div 2 copy lt { pop } { exch pop } ifelse alignment { cvi } if dup scale neg 2 div exch neg 2 div exch translate } def /gifimage { % gray imagewidth imageheight xorigin yorigin $ translate 2 copy scale /imageheight exch def /imagewidth exch def /gray exch def imagewidth imageheight 8 [imagewidth 0 0 imageheight neg 0 imageheight] gray { { currentfile codestr readhexstring pop } image } { /colorimage where { pop /picstr imagewidth 3 mul string def { currentfile codestr readhexstring pop pop 0 1 imagewidth 1 sub { picstr exch dup 3 mul exch colortbl exch codestr exch get 3 mul 3 getinterval putinterval } for picstr } false 3 colorimage } { { currentfile codestr readhexstring pop pop 0 1 imagewidth 1 sub { codestr exch dup graytbl exch codestr exch get get put } for codestr } image } ifelse } ifelse } def