home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / pstoedit.zip / source.zip / pstoedit.2.50 / src / pstoedit.ph < prev    next >
Text File  |  1996-12-26  |  18KB  |  587 lines

  1. // DO NOT CHANGE THIS FILE. THIS FILE IS GENERATED FROM pstoedit.pro 
  2. // You can get pstoedit.pro from the author of pstoedit
  3. // pstoedit.pro contains a lot more comments and explanations than pstoedit.ph
  4. const char * PS_prologue[] = 
  5. {
  6. //Title: pstoedit.pro / pstoedit.ph; This file is part ot pstoedit
  7. // 
  8. // This file contains some redefinitions of PostScript(TM) operators
  9. // useful for the conversion of PostScript into a vector format via Ghostscript
  10. //
  11. // Copyright (C) 1993,1994,1995,1996 Wolfgang Glunz, Wolfgang.Glunz@zfe.siemens.de
  12. //
  13. //    This program is free software; you can redistribute it and/or modify
  14. //    it under the terms of the GNU General Public License as published by
  15. //    the Free Software Foundation; either version 2 of the License, or
  16. //    (at your option) any later version.
  17. //
  18. //    This program is distributed in the hope that it will be useful,
  19. //    but WITHOUT ANY WARRANTY; without even the implied warranty of
  20. //    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  21. //    GNU General Public License for more details.
  22. //
  23. //    You should have received a copy of the GNU General Public License
  24. //    along with this program; if not, write to the Free Software
  25. //    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  26. //
  27. // All lines starting with // are copied to pstoedit.ph
  28.  " /pstoeditcopyright (Copyright \\(C\\) 1993,1994,1995,1996 Wolfgang Glunz) def ",
  29.  " currentdict /maptoisolatin1 known not { /maptoisolatin1 true def} if ",
  30.  " currentdict /textastext known not { /textastext true def} if ",
  31.  " currentdict /flatnesstouse known not { /flatnesstouse 1.0 def} if ",
  32.  " currentdict /escapetext known not { /escapetext false def} if ",
  33.  " currentdict /usepdfmark known not { /usepdfmark false def} if ",
  34.  " currentdict /outputfilename known not { /outputfilename (%stdout) def} if ",
  35.  " currentdict /inputfilename  known not { /inputfilename  (%stdin) def} if ",
  36.  " currentdict /doflatten      known not { /doflatten      true  def} if ",
  37.  " /overload { bind def } bind def ",
  38.  " /outstream outputfilename (w) file def ",
  39.  " /errstream (%stderr) (w) file def ",
  40.  " /print { errstream exch writestring } overload ",
  41.  " /flush { errstream flushfile } overload ",
  42.  " /-print  { outstream exch writestring } def ",
  43.  " /-fill   /fill load def ",
  44.  " /-eofill /eofill load def ",
  45.  " /-stroke /stroke load def ",
  46.  " /-awidthshow   /awidthshow load def ",
  47.  " /-showpage /showpage load def ",
  48.  " /pstoedit.x 1 store ",
  49.  " /pstoedit.y 1 store ",
  50.  " /pstoedit.dumpstring () store ",
  51.  " /pstoedit.dumpop {} store ",
  52.  " /pstoedit.y1 1 store ",
  53.  " /pstoedit.x1 1 store ",
  54.  " /pstoedit.y2 1 store ",
  55.  " /pstoedit.x2 1 store ",
  56.  " /pstoedit.inputchar 0 store ",
  57.  " /pstoedit.outputchar 0 store ",
  58.  " /pstoedit.glyphname () store ",
  59.  " /pstoedit.inverseDict 0 store ",
  60.  " /pstoedit.currentstring () store ",
  61.  " /pstoedit.angle 0 store ",
  62.  " /pstoedit.pathnumber 0 def ",
  63.  " /pstoedit.deviceheight 0 def ",
  64.  " /pstoedit.deviceinfoshown false def ",
  65.  " /pstoedit.devicedpi 0 def ",
  66.  " /pstoedit.dpiscale 1 def ",
  67.  " /pstoedit.currentscale 1 def ",
  68.  " /pstoedit.glyphname 0 store ",
  69.  " /pstoedit.glyphcounter 0 def ",
  70.  " /-findfont /findfont load def ",
  71.  " /pstoedit.lastfindfont /pstoedit.defaultrootfont def ",
  72.  " /-definefont /definefont load def ",
  73.  " /-currentrgbcolor /currentrgbcolor load def ",
  74.  " /s100 100 string def ",
  75.  " /s1000 1000 string def ",
  76.  " usepdfmark { ",
  77.  " systemdict begin ",
  78.  " /pdfmark {  ",
  79.  " ([ ) -print  ",
  80.  " ] { showpdfmarkelement ( ) -print } forall % close array and dump all entries ",
  81.  " (pdfmark\\n) -print  ",
  82.  " } def ",
  83.  " end ",
  84.  " /showpdfmarkelement { ",
  85.  " dup type pdftype begin exec end ",
  86.  " } def ",
  87.  " /pdftype 20 dict def ",
  88.  " pdftype begin ",
  89.  " /arraytype { ([ ) -print { showpdfmarkelement ( ) -print } forall ( ]) -print } def  ",
  90.  " /booleantype { s1000 cvs -print } def ",
  91.  " /conditiontype { pop } def ",
  92.  " /devicetype { pop } def ",
  93.  " /dicttype { pop } def ",
  94.  " /filetype { pop } def ",
  95.  " /fonttype { pop } def ",
  96.  " /gstatetype { pop } def ",
  97.  " /integertype { s1000 cvs -print } def ",
  98.  " /locktype { pop } def ",
  99.  " /marktype { pop } def ",
  100.  " /nametype { ( /) -print s1000 cvs -print } def ",
  101.  " /nulltype { pop } def ",
  102.  " /operatortype { pop } def ",
  103.  " /packedarraytype { pop } def ",
  104.  " /realtype { s1000 cvs -print } def ",
  105.  " /savetype { pop } def ",
  106.  " /stringtype { (\\() -print -print (\\)) -print } def ",
  107.  " end ",
  108.  " /pdfmark systemdict /pdfmark get def % overwrite pdfmark in userdict ",
  109.  " /currentdistillerparams 1 dict def ",
  110.  " currentdistillerparams begin ",
  111.  " /CoreDistVersion 2000 def ",
  112.  " end ",
  113.  " } if ",
  114.  " /debugprint { ",
  115.  " (\\% PRINT ) -print  ",
  116.  " -print ",
  117.  " ( MSG\\n) -print ",
  118.  " } def ",
  119.  " /onechar 1 string def ",
  120.  " /inttosinglechar { ",
  121.  " onechar exch 0 exch put  ",
  122.  " onechar 1 string cvs ",
  123.  " } def ",
  124.  " /InverseISO 256 dict def ",
  125.  " /InversePDF 256 dict def ",
  126.  " /unmappablecharacter (#) def ",
  127.  " /pstoedit.initialize { ",
  128.  " 0 0 transform  ",
  129.  " /pstoedit.deviceheight exch store ",
  130.  " pop ",
  131.  " /pstoedit.deviceinfoshown false store ",
  132.  " deviceinfo /HWResolution get 0 get /pstoedit.devicedpi exch store ",
  133.  " pstoedit.devicedpi 72 div /pstoedit.dpiscale exch store % normalize dpi to 72 ",
  134.  " /pstoedit.glyphcounter 0 store ",
  135.  " ISOLatin1Encoding ",
  136.  " { ",
  137.  " /pstoedit.glyphname exch store ",
  138.  " InverseISO pstoedit.glyphname known not ",
  139.  " {  ",
  140.  " InverseISO pstoedit.glyphname pstoedit.glyphcounter inttosinglechar put  ",
  141.  " InversePDF pstoedit.glyphname pstoedit.glyphcounter inttosinglechar put  ",
  142.  " }  ",
  143.  " if ",
  144.  " /pstoedit.glyphcounter pstoedit.glyphcounter 1 add store ",
  145.  " } forall ",
  146.  " InverseISO     begin ",
  147.  " /.notdef unmappablecharacter def ",
  148.  " /quotesinglbase (,) def ",
  149.  " /florin (f) def ",
  150.  " /quotedblbase (,,) def ",
  151.  " /ellipsis (...) def ",
  152.  " /perthousand (%o) def ",
  153.  " /guilsinglleft (<) def ",
  154.  " /OE (OE) def ",
  155.  " /quotedblleft (\") def ",
  156.  " /quotedblright (\") def ",
  157.  " /bullet (*) def ",
  158.  " /endash (-) def ",
  159.  " /emdash (-) def ",
  160.  " /trademark (TM) def ",
  161.  " /guilsinglright (>) def ",
  162.  " /oe (oe) def ",
  163.  " /Ydieresis (Y) def ",
  164.  " /fraction (/) def ",
  165.  " /fi (fi) def ",
  166.  " /fl (fl) def ",
  167.  " end ",
  168.  " InversePDF     begin ",
  169.  " /breve 24 inttosinglechar def ",
  170.  " /caron 25 inttosinglechar def ",
  171.  " /circumflex 26 inttosinglechar def ",
  172.  " /dotaccent 27 inttosinglechar def ",
  173.  " /hungarumlaut 28 inttosinglechar def ",
  174.  " /ogonek 29 inttosinglechar def ",
  175.  " /ring 30 inttosinglechar def ",
  176.  " /tilde 31 inttosinglechar def ",
  177.  " /quotesingle 39 inttosinglechar def ",
  178.  " /grave 96 inttosinglechar def ",
  179.  " /bullet 128 inttosinglechar def ",
  180.  " /dagger 129 inttosinglechar def ",
  181.  " /daggerdbl 130 inttosinglechar def ",
  182.  " /ellipsis 131 inttosinglechar def ",
  183.  " /emdash 132 inttosinglechar def ",
  184.  " /endash 133 inttosinglechar def ",
  185.  " /florin 134 inttosinglechar def ",
  186.  " /fraction 135 inttosinglechar def ",
  187.  " /guilsinglleft 136 inttosinglechar def ",
  188.  " /guilsinglright 137 inttosinglechar def ",
  189.  " /minus 138 inttosinglechar def ",
  190.  " /perthousand 139 inttosinglechar def ",
  191.  " /quotedblbase 140 inttosinglechar def ",
  192.  " /quotedblleft 141 inttosinglechar def ",
  193.  " /quotedblright 142 inttosinglechar def ",
  194.  " /quoteleft 143 inttosinglechar def ",
  195.  " /quoteright 144 inttosinglechar def ",
  196.  " /quotesinglbase 145 inttosinglechar def ",
  197.  " /trademark 146 inttosinglechar def ",
  198.  " /fi 147 inttosinglechar def ",
  199.  " /fl 148 inttosinglechar def ",
  200.  " /Lslash 149 inttosinglechar def ",
  201.  " /OE 150 inttosinglechar def ",
  202.  " /Scaron 151 inttosinglechar def ",
  203.  " /Ydieresis 152 inttosinglechar def ",
  204.  " /Zcaron 153 inttosinglechar def ",
  205.  " /dotlessi 154 inttosinglechar def ",
  206.  " /lslash 155 inttosinglechar def ",
  207.  " /oe 156 inttosinglechar def ",
  208.  " /scaron 157 inttosinglechar def ",
  209.  " /zcaron 158 inttosinglechar def ",
  210.  " /hyphen 45 inttosinglechar def ",
  211.  " /caron 25 inttosinglechar def ",
  212.  " /space 32 inttosinglechar def ",
  213.  " end ",
  214.  " } def ",
  215.  " /getfrominverse     { ",
  216.  " /pstoedit.inverseDict exch store     ",
  217.  " 0 get % get first and only char of string as int ",
  218.  " /pstoedit.inputchar exch store ",
  219.  " currentfont /Encoding get pstoedit.inputchar get /pstoedit.glyphname exch store ",
  220.  " pstoedit.inverseDict pstoedit.glyphname known  ",
  221.  " { pstoedit.inverseDict pstoedit.glyphname get } ",
  222.  " { unmappablecharacter }  ",
  223.  " ifelse ",
  224.  " /pstoedit.outputchar exch store ",
  225.  " pstoedit.outputchar ",
  226.  " } def ",
  227.  " /normalizecharacter { ",
  228.  " currentfont /Encoding get 65 get /A eq maptoisolatin1 and { ",
  229.  " usepdfmark  ",
  230.  " { InversePDF } ",
  231.  " { InverseISO }  ",
  232.  " ifelse  ",
  233.  " getfrominverse ",
  234.  " }  ",
  235.  " {  ",
  236.  " } ",
  237.  " ifelse ",
  238.  " } def ",
  239.  " /FontHistory 256 dict def ",
  240.  " /pstoedit.lastfindfont () def ",
  241.  " /findfont { ",
  242.  " dup /pstoedit.lastfindfont exch store ",
  243.  " -findfont ",
  244.  " } overload ",
  245.  " /definefont { ",
  246.  " exch ",
  247.  " dup s100 cvs (/) -print -print ( /) -print pstoedit.lastfindfont s100 cvs -print ( pstoedit.newfont\\n) -print ",
  248.  " dup FontHistory exch pstoedit.lastfindfont put ",
  249.  " exch ",
  250.  " -definefont ",
  251.  " } overload ",
  252.  " /rootFont { ",
  253.  " dup  ",
  254.  " FontHistory exch known { ",
  255.  " FontHistory exch get rootFont ",
  256.  " }  ",
  257.  " if ",
  258.  " } def ",
  259.  " /printTOS { ",
  260.  " ( ) -print s100 cvs -print  ",
  261.  " } def ",
  262.  " /prpoints { ",
  263.  " -1 1 { pop        % the loop control variable ",
  264.  " transform  % transform to device coordinates ",
  265.  " false ",
  266.  " { ",
  267.  " exch ",
  268.  " pstoedit.dpiscale div  ",
  269.  " printTOS   % the x value ",
  270.  " pstoedit.deviceheight exch sub % fix flipped y coordinate ",
  271.  " pstoedit.dpiscale div  ",
  272.  " printTOS   % the y value ",
  273.  " } ",
  274.  " { ",
  275.  " matrix defaultmatrix  ",
  276.  " itransform ",
  277.  " exch ",
  278.  " printTOS   % the x value ",
  279.  " printTOS   % the y value ",
  280.  " } ",
  281.  " ifelse ",
  282.  " } for ",
  283.  " } def ",
  284.  " /getcurrentscale {  ",
  285.  " 100 0 transform % x1' y1' ",
  286.  " /pstoedit.y1 exch store ",
  287.  " /pstoedit.x1 exch store ",
  288.  " 0 0 transform % x2' y2' ",
  289.  " /pstoedit.y2 exch store ",
  290.  " /pstoedit.x2 exch store ",
  291.  " pstoedit.x1 pstoedit.x2 sub dup mul  ",
  292.  " pstoedit.y1 pstoedit.y2 sub dup mul  ",
  293.  " add sqrt ",
  294.  " 100 div abs ",
  295.  " pstoedit.dpiscale div ",
  296.  " } def ",
  297.  " /printstate { ",
  298.  " gsave ",
  299.  " pstoedit.deviceinfoshown not { ",
  300.  " /pstoedit.deviceinfoshown true store ",
  301.  " deviceinfo /PageSize known { ",
  302.  " deviceinfo /PageSize get ",
  303.  " pstoedit.deviceheight 0.0 ne { ",
  304.  " dup 1 get  ",
  305.  " pstoedit.dpiscale mul  ",
  306.  " /pstoedit.deviceheight exch store ",
  307.  " } if ",
  308.  " { ",
  309.  " printTOS ",
  310.  " } forall ",
  311.  " ( setPageSize\\n) -print ",
  312.  " } if ",
  313.  " } if ",
  314.  " currentlinecap ",
  315.  " printTOS ",
  316.  " ( setlinecap\\n) -print  ",
  317.  " currentdash ",
  318.  " exch ",
  319.  " ( [) -print ",
  320.  " { ",
  321.  " getcurrentscale mul ",
  322.  " printTOS ",
  323.  " } forall % dump array ",
  324.  " ( ]) -print ",
  325.  " printTOS %index ",
  326.  " ( setdash\\n) -print ",
  327.  " currentlinewidth ",
  328.  " getcurrentscale mul ",
  329.  " printTOS ",
  330.  " ( setlinewidth\\n) -print ",
  331.  " -currentrgbcolor ",
  332.  " 3 1 roll exch ",
  333.  " printTOS ",
  334.  " printTOS ",
  335.  " printTOS ",
  336.  " ( setrgbcolor\\n) -print ",
  337.  " grestore ",
  338.  " } def ",
  339.  " /print-path { ",
  340.  " { ",
  341.  " { 1 prpoints ( moveto\\n)    -print } ",
  342.  " { 1 prpoints ( lineto\\n)    -print } ",
  343.  " { 3 prpoints ( curveto\\n)   -print } ",
  344.  " {            ( closepath\\n) -print } ",
  345.  " pathforall ",
  346.  " } stopped { ",
  347.  " } if ",
  348.  " } def ",
  349.  " /dumppath { ",
  350.  " /pstoedit.dumpstring exch store ",
  351.  " /pstoedit.dumpop exch store ",
  352.  " (\\n) -print ",
  353.  " (\\%) -print ",
  354.  " /pstoedit.pathnumber pstoedit.pathnumber 1 add store ",
  355.  " pstoedit.pathnumber printTOS ",
  356.  " ( pathnumber\\n) -print ",
  357.  " printstate ",
  358.  " -print ",
  359.  " gsave ",
  360.  " { ",
  361.  " doflatten  ",
  362.  " { ",
  363.  " flatnesstouse setflat ",
  364.  " flattenpath % replaces curves by lines ",
  365.  " } if ",
  366.  " } stopped { ",
  367.  " grestore ",
  368.  " gsave ",
  369.  " } if ",
  370.  " (newpath\\n) -print ",
  371.  " print-path ",
  372.  " pstoedit.dumpstring -print (\\n) -print ",
  373.  " grestore ",
  374.  " pstoedit.dumpop ",
  375.  " } def ",
  376.  " /eofill    { ",
  377.  " (\\% eofilledpath\\n) {-eofill} (eofill) dumppath ",
  378.  " } overload ",
  379.  " /fill      { ",
  380.  " (\\% filledpath\\n) {-fill} (fill) dumppath ",
  381.  " } overload ",
  382.  " /stroke    { ",
  383.  " (\\% strokedpath\\n) {-stroke} (stroke) dumppath ",
  384.  " } overload ",
  385.  " /pstoedit.forcedrawtext { ",
  386.  " currentfont begin ",
  387.  " /FontName where { ",
  388.  " pop % the dict ",
  389.  " FontName s100 cvs % FontName is a name or is already a string ",
  390.  " cvn dup  ",
  391.  " /pstoedit.knownFontNames where { ",
  392.  " pop % the dict ",
  393.  " pstoedit.knownFontNames exch known { ",
  394.  " pop ",
  395.  " false % don't force drawing mode ",
  396.  " } { ",
  397.  " rootFont  ",
  398.  " pstoedit.knownFontNames exch known { ",
  399.  " false % don't force drawing mode ",
  400.  " } { ",
  401.  " true ",
  402.  " } ifelse ",
  403.  " } ifelse ",
  404.  " } { ",
  405.  " pop pop ",
  406.  " false % if pstoedit.knownFontNames is not defined, 'show' text ",
  407.  " } ifelse ",
  408.  " } { ",
  409.  " true % if FontName is not known ",
  410.  " } ifelse  ",
  411.  " end ",
  412.  " } def ",
  413.  " /awidthshow { ",
  414.  " printstate ",
  415.  " /pstoedit.currentstring exch store ",
  416.  " 5 copy % save for real operator ",
  417.  " gsave ",
  418.  " textastext             % text shall be shown as text and ",
  419.  " currentfont /FontType get 1 eq     % current font is type 1 ",
  420.  " and ",
  421.  " pstoedit.forcedrawtext not    % and not forced draw due to font restrictions ",
  422.  " and ",
  423.  " { ",
  424.  " currentfont begin ",
  425.  " /FontName where { ",
  426.  " pop FontName dup  ",
  427.  " Fontmap exch known { ",
  428.  " s100 cvs % FontName is a name or is already a string ",
  429.  " } { ",
  430.  " s100 cvs % FontName is a name or is already a string ",
  431.  " dup ",
  432.  " cvn ",
  433.  " rootFont  ",
  434.  " (\\% ) -print ",
  435.  " s100 cvs -print ( ) -print dup -print  ",
  436.  " ( nonstandard font\\n) -print ",
  437.  " } ifelse ",
  438.  " } { ",
  439.  " (Courier) ",
  440.  " } ifelse  ",
  441.  " (/) -print ",
  442.  " -print ",
  443.  " end ",
  444.  " ( findfont ) -print ",
  445.  " currentfont begin ",
  446.  " false ",
  447.  " { ",
  448.  " gsave ",
  449.  " currentpoint translate ",
  450.  " currentfont /FontMatrix get concat  ",
  451.  " 1000 1000 dtransform dup mul exch dup mul add 2 div sqrt ",
  452.  " grestore ",
  453.  " }  ",
  454.  " { ",
  455.  " FontMatrix 0 get % get the x-scale of the font matrix ",
  456.  " 0 ",
  457.  " dtransform ",
  458.  " dup mul exch dup mul add sqrt ",
  459.  " 1000 mul % standard fonts have factor of .001 (let's hope) ",
  460.  " }  ",
  461.  " ifelse ",
  462.  " pstoedit.dpiscale div ",
  463.  " s100 cvs -print ",
  464.  " end ",
  465.  " ( scalefont setfont\\n) -print ",
  466.  " currentfont begin ",
  467.  " /FontInfo where { ",
  468.  " pop  ",
  469.  " FontInfo begin ",
  470.  " FontInfo /FamilyName known { FamilyName } { (unknown) } ifelse ",
  471.  " (\\% ) -print -print  ( FamilyName\\n) -print ",
  472.  " FontInfo /FullName   known { FullName   } { (unknown) } ifelse    ",
  473.  " (\\% ) -print -print  ( FullName\\n) -print ",
  474.  " FontInfo /Weight     known { Weight     } { (unknown) } ifelse ",
  475.  " (\\% ) -print -print  ( Weight\\n) -print ",
  476.  " end ",
  477.  " } if ",
  478.  " end ",
  479.  " /pstoedit.angle 1 0 dtransform exch atan -1 mul 360 add store ",
  480.  " gsave ",
  481.  " currentpoint translate ",
  482.  " currentfont /FontMatrix get concat 0 0 transform ",
  483.  " grestore  ",
  484.  " itransform ",
  485.  " /pstoedit.y exch store /pstoedit.x exch store ",
  486.  " pstoedit.x pstoedit.y 1 prpoints ( moveto\\n)    -print ",
  487.  " pstoedit.angle 360.0 ne { ",
  488.  " pstoedit.x pstoedit.y 1 prpoints ( translate\\n) -print ",
  489.  " ( ) -print ",
  490.  " pstoedit.angle s100 cvs -print ( rotate\\n) -print ",
  491.  " }  ",
  492.  " { ",
  493.  " ( ) -print ",
  494.  " 0             s100 cvs -print ( rotate\\n) -print ",
  495.  " } ",
  496.  " ifelse ",
  497.  " getcurrentscale dup /pstoedit.currentscale exch store ",
  498.  " mul ",
  499.  " exch ",
  500.  " pstoedit.currentscale mul ",
  501.  " 5 -2 roll  ",
  502.  " pstoedit.currentscale mul ",
  503.  " exch ",
  504.  " pstoedit.currentscale mul ",
  505.  " printTOS printTOS % c ",
  506.  " 3 -1 roll ",
  507.  " printTOS    % char ",
  508.  " printTOS printTOS % a ",
  509.  " ( setshowparams\\n) -print ",
  510.  " (\\() -print ",
  511.  " escapetext ",
  512.  " { ",
  513.  " pstoedit.currentstring { ",
  514.  " inttosinglechar ",
  515.  " normalizecharacter ",
  516.  " dup (\\() eq { (\\\\) -print } if ",
  517.  " dup (\\)) eq { (\\\\) -print } if ",
  518.  " dup (\\\\) eq { (\\\\) -print } if ",
  519.  " -print ",
  520.  " } forall ",
  521.  " } ",
  522.  " { ",
  523.  " pstoedit.currentstring { ",
  524.  " inttosinglechar ",
  525.  " normalizecharacter ",
  526.  " dup dup (\\r) eq exch (\\n) eq or ",
  527.  " { pop }  ",
  528.  " { -print } ",
  529.  " ifelse ",
  530.  " } forall ",
  531.  " } ",
  532.  " ifelse ",
  533.  " (\\) awidthshow\\n) -print ",
  534.  " pstoedit.angle 360.0 ne { ",
  535.  " ( ) -print ",
  536.  " pstoedit.angle neg s100 cvs -print ( rotate\\n) -print ",
  537.  " pstoedit.x pstoedit.y 1 prpoints ",
  538.  " ( ntranslate\\n) -print ",
  539.  " } if ",
  540.  " } ",
  541.  " { ",
  542.  " pop pop pop pop pop ",
  543.  " currentpoint ",
  544.  " stroke % dump current path and start new path ",
  545.  " moveto ",
  546.  " pstoedit.currentstring ",
  547.  " true charpath  ",
  548.  " eofill  ",
  549.  " } ",
  550.  " ifelse ",
  551.  " grestore ",
  552.  " pstoedit.currentstring ",
  553.  " -awidthshow ",
  554.  " } overload ",
  555.  " /widthshow  {  ",
  556.  " 0 exch 0 exch awidthshow } overload ",
  557.  " /kshow      {exch pop show} overload ",
  558.  " /ashow      { 0 0 32  ",
  559.  " 6 3 roll awidthshow } overload ",
  560.  " /show        { 0 0 32 0 0    6 -1 roll awidthshow } overload ",
  561.  " /showpage { ",
  562.  " (showpage\\n) -print ",
  563.  " -showpage ",
  564.  " } overload ",
  565.  " pstoedit.initialize ",
  566.  " (\\%!\\n) -print ",
  567.  " (\\% generated by pstoedit\\n) -print ",
  568.  " (/setPageSize { pop pop } def\\n) -print ",
  569.  " (/ntranslate { neg exch neg exch translate } def\\n) -print ",
  570.  " (/setshowparams { } def\\n) -print ",
  571.  " (/pstoedit.newfont { ) -print ",
  572.  " (80 string cvs ) -print ",
  573.  " ( findfont ) -print ",
  574.  " ( dup length dict begin {1 index /FID ne {def} {pop pop} ifelse} forall ) -print ",
  575.  " ( /Encoding ISOLatin1Encoding def  ) -print ",
  576.  " ( dup 80 string cvs /FontName exch def ) -print ",
  577.  " ( currentdict end ) -print ",
  578.  " ( definefont pop) -print ",
  579.  " ( } def\\n) -print ",
  580.  " NOBIND ",
  581.  " { /bind /.bind load def } ",
  582.  " if ",
  583.  " inputfilename run ",
  584.  " (\\% normal end reached by pstoedit.pro\\n) -print ",
  585. 0
  586. };
  587.