Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!cs.utexas.edu!sdd.hp.com!decwrl!adobe!heaven!glenn From: glenn@heaven.woodside.ca.us (Glenn Reid) Newsgroups: comp.sys.next Subject: Re: PostScript Printing Errors Message-ID: <190@heaven.woodside.ca.us> Date: 29 Jun 90 05:56:27 GMT References: <4554@milton.u.washington.edu> Reply-To: glenn@heaven.UUCP (Glenn Reid) Organization: Skyline Press, Woodside CA Lines: 50 In article <4554@milton.u.washington.edu> wrb@milton.u.washington.edu (William Barker) writes: >I have recently been plagued with problems printing PostScript files to the >NeXT printer. The PS code in question is generally created on some other >platform (ie, not NeXT-created). Symptoms include printing multiple pages of >the same thing, spreading the image across 4 pages, and errors such as >"Couldn't print file because of malformed PostScript" >"Error:limitcheck; Offending Command:printerdevice" > >Anybody got any clues on what differences exist between NeXT PS and PS >from other systems--differences that might cause the above symptoms? A common problem is that PostScript prepared for other systems (or other printers) is not entirely well-behaved. Some undocumented operators or called, or features are assumed to be present that may not be. I have developed a few routines that I use to "emulate" some printer features that aren't part of standard PostScript that can be helpful in getting jobs to print from other systems (unfortunately I can't find it just now; I'll look for it). The basic idea is to make up definitions for the things that cause problems. For example, I think you can get rid of the "limitcheck" on "printerdevice" problems by redefining a few page size operators like this: %! /letter { } def /legal { } def /note { } def /lettertray { } def /legaltray { } def There are a few other things that are worth defining, like those called by the Mac print shop; I think one of them went something like this: /statusdict where { pop } { %ifelse /statusdict 20 dict def statusdict begin /setrealdevice { } def % others here end } ifelse I wish I could find the file; I'm afraid it's on my optical disk, and my optical drive is (sigh) non-functional. So much for backups.... Drop me mail if you have problems, or if you have a specific file that you can't get to work. Glenn Reid glenn@heaven.woodside.ca.us