henesyinit from p9fce6d0435 years agoHistory
75 lines · 2.1 KB · Text
RawDownload
%    Copyright (C) 1990, 1992 Aladdin Enterprises.  All rights reserved.% % This file is part of Aladdin Ghostscript.% % Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author% or distributor accepts any responsibility for the consequences of using it,% or for whether it serves any particular purpose or works at all, unless he% or she says so in writing.  Refer to the Aladdin Ghostscript Free Public% License (the "License") for full details.% % Every copy of Aladdin Ghostscript must include a copy of the License,% normally in a plain ASCII text file named PUBLIC.  The License grants you% the right to copy, modify and redistribute Aladdin Ghostscript, but only% under certain conditions described in the License.  Among other things, the% License requires that the copyright notice and this notice be preserved on% all copies. % pcharstr.ps% Print the CharStrings and Subrs (if present) from a Type 1 font,% in symbolic form. % Load the Type 1 utilities.(type1ops.ps) run /printcs { dup type /stringtype eq    { printcs1 (\n) print }    { ( ) print == }   ifelse } bind def/printcs1 { save exch   4330 exch dup length string .type1decrypt exch pop   dup length lenIV sub lenIV exch getinterval   0 () /SubFileDecode filter   mark exch charstack_read   counttomark 1 sub -1 0    { index ( ) print ==only    }   for cleartomark restore } bind def /pfbbox 4 array def/printfont { currentfont begin Private begin 10 dict begin 	% Print the CharStrings and Subrs    CharStrings { exch ==only printcs } forall   /Subrs where    { pop	% the dictionary      0 1 Subrs length 1 sub       { dup =only         Subrs exch get printcs       } for    } if 	% Print the bounding boxes    gsave nulldevice FontMatrix matrix invertmatrix concat   0 1 Encoding length 1 sub    { dup Encoding exch get dup /.notdef eq       { pop pop       }       { 1 index =only ( ) print ==only ( ) print         ( ) dup 0 4 -1 roll put         newpath 0 0 moveto false charpath	 pathbbox pfbbox astore ==       }      ifelse    } for   grestore    end end end } bind def