RoPS --- Roger's PostScript The RoPS interpreter is an implementation of the level 2 PostScript programming language interpreter described in Adobe Systems' book, the 'PostScript language reference manual'. RoPS is not an Adobe approved product. The name 'PostScript' is a registered trademark of Adobe Systems Incorporated. RoPS version 6.5c runs under Microsoft Windows NT, 95 and 98. The program will not run in a 16-bit environment. Features: + full Level 2 implementation + uses TrueType or Type 1 fonts + understands PostScript document structuring conventions: can randomly access any page of any document. + handles colour (process and contone) + anti-aliases text + can transfer PostScript documents to clipboard as graphics or text For additional information on the RoPS product, plus answers to various frequently asked questions, see the web pages at www.rops.org. -- RoPS builds aliases for the standard 35 fonts. The following font names are recognised (TrueType fonts included with Office, or public domain fonts obtainable from the Free Software Foundation under the GNU public license.) --For-- --Use-- AvantGarde Century Gothic, URWGothicL Bookman Bookman Old Style, URWBookmanL Courier Courier New, NimbusMonL Helvetica Arial, NimbusSanL Helvetica Narrow ArialNarrow, Arial Narrow, NimbusSanL condensed NewCenturySchlbk Century Schoolbook, CenturySchL Palatino Antiqua, URWPalladioL Symbol Symbol, StandardSymL Times Times New Roman, NimbusRomNo9L ZapfChancery Monotype Corsiva, URWChanceryL ZapfDingbats Monotype Sorts, Dingbats -- Version 6.5c adds the ability to display a bounding box; added a missing glyphshow procedure; fixes stack clear after rectstroke with real args. Version 6.5a fixes a number of small bugs: allow missing dict arg to filter; bind shouldn't moan about non-exec arrays; fax filter could miss eod; account for currently active procs during gc. Version 6.5 has enhanced stdout handling in tear off text window. Version 6.4 is a bug fix release Version 6.3a is first public release of level 2 interpreter Version 6.2 is first (beta) public release of level 2 interpreter Version 6.1 contains unquantifiable level 2 additions; DPS additions; linux/gcc revisited; rewrite parser Version 6.0 has Level 2 additions - local / global memory, required rewrite of name cache; bug fix to clip (assertion error due to edge being eliminated more than once); filters; rectclip and family; xyshow and family; dict form of 'image'; setcolorspace; can change font during kshow; Version 5.2d only accepts ansi and symbol encoded fonts during font scanning. Minor fix to installer to force icon update. Version 5.2c fixes incorrect palette when printing 24-bit pages to a mono printer; complex clip paths confused inside/outside; large uncached TrueType characters put spurious entry into cache. Version 5.2a fixes a versioning problem with the error handling code in ropsboot._ps ('error during error processing'); fixes a problem with 'clip' when many edges overlap; properly parses floating point numbers with very large negative exponents; can change font matrix during 'kshow.' Version 5.2 is a bug fix release: null is not an operator, 'copy' gets correct length for dictionary, cexec -> xexec (name clash); handle %%Begin/EndDocument; no auto-page-down if unstructured; better ink colours for process view, handle nested 'show' to null destination. Program is statically linked to avoid dll dependencies. Version 5.1 includes: CMYK colour extensions; Compute file extent correctly if eps file contains embedded fonts (dll only); save/restore was overly fussy (see Red Book A.2); added cleardictstack; allow pathforall to 'exit'; added string arg. version of status; improve nulldevice handling; properly handle lenIV in type 1 fonts, handle large TrueType bitmaps correctly. Font catalogue is sorted. Insert OrigFont and ScaleMatrix into fonts. Support for drag-drop and right click printing. Version 5c allows 'setpagedevice' in jobs (but ignores it.) Version 5b was skipped since the b looks like a 6. Minor change to registration details. Version 5a fixes a minor problem with false errors being reported when a job is closed. Version 5 includes: major update to GUI - 16-bit compatibility dropped. Minor fix to 'search' (match length was wrong); anti-alias all fonts. Printing now automatically scales to printer; can randomly access unindexed docs (by scanning forward from start); HP PJL header skipped; all params settable through dialogs; better colour printing; << & >>; added paper size selection; can 'cancel' stdout/stderr to close job. Stack, array and dictionary size limits increased. Fixed 'reversepath' (it can't ever have worked ...), optimised 'roll', badly aligned eexec could lose sync. All parameters now in registry, <~ & ~>, removed arbitrary size limit for TrueType characters. Version 4.5 adds the splash screen and registration information. Bugs fixed: the 'space' character had zero width under NT4; rudimentary support for type 1 fonts added (no hinting yet.) Yet another correction to 'clip'. Version 4.4 is primarily a bug-fix release. Added save-as and lru file list. Bugs fixed: a uncached type 3 character wouldn't advance the writing position, and uncached anti-aliased characters were corrupted; getprofile would gpf if the 'value' of a profile entry was empty; handling wrt readline is fixed; operators that should be disabled after setcachedevice are not disabled after setcharwidth; arcto with a zero radius does the required lineto; copy is properly range-checked during error handling; bind doesn't fail on read-only arrays; type 3 fonts with a translate component to their matrix work properly; a bug in clippath that resulted in a fatal error (unhook: can't find line) has been fixed; arcto is more relaxed about parameter checking (was producing invalidresult errors); the base font is properly restored if 'setfont' was called during a 'show'; the font cache BLIMIT is save/restored; fixed an oddity in name cacheing whereby 'end'ing a dictionary consumed VM. Version 4.3 fixes a rangecheck error in getinterval, adds the nohatch option, really fixes the fax m/c bug, handles errors during startup better, adds the 'don't build index' option, allows printing all pages of an unstructured document. Version 4.2 fixes a problem with certain fonts that made the output look like a faulty fax machine. A bug that prevented printing under Win95 has been fixed. Documents up to 1000 pages are supported. Version 4.1 fixed a number of problems experienced with earlier releases and in particular: long file names are handled properly; a 'fontscan' program has been added to create PostScript -> TrueType mappings automatically; Latin1Encoding has been added. Roger Willcocks roger@rops.org http://www.rops.org