🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.postscript
Article #131

Re: Conversion form Postscript to AI Postscript

#131
From: Stephen Zisk
Date: Tue, 03 Nov 1992 19:37
58 lines
3540 bytes
In article <4372@vidiot.UUCP>, brown@vidiot.UUCP (Vidiot) wrote:
> 
> In article <1992Oct30.185358.5012@news.yale.edu> dipak@radiant.eng.yale.edu writes:
> <
> <Hi,
> <     Does anyone know about any program that converts different graphics
> <formats (Like Hijaack). I am particularly interested in one that can 
> <convert regular  Postscript to AI (Adobe Illustrator) PostScript. Thanks in
> <advance.
> 
> Huh?  What the Hell is AI PostScript?  PostScript is PostScript.  Yes, you may
> have heard of DSC, EPS and EPSF, but that has to do with document structuring.
> The PostScript code that is contained within any document structure is standard
> PostScript.
> 
> Is there some kind of document structure that Adobe Illustrator is using that
> is different then the definitions that Adobe help set up?

I beleive what is being referenced here is the structured format which
Adobe Illustrator uses as its standard file format. This consists of
editable "objects" Illustrator can parse without need of a full
interpreter,
especially since Illustrator has a fixed set of tools for the user to
change
things. Illustrator can, of course, include an arbitrary EPS file as an
"object", but you can only do a very limited set of changes to it.

The format is a set of PostScript procedure culls in a stylized format.
If you save an Illustrator file as EPS, you get a prolog which defines
these procedures, so you have a "standard" PostScript file, including
DSC adherence. If you just print a file to a PostScript printer from
Illustrator, Illustrator will prepend the procedure definitions, again
adhering to DSC. If you attempt to send the non-EPS version of an
Illustrator file directly to a printer, you will get an "undefined"
error for some object because the prolog is missing. The file still *looks*
like it obeys DSC, but cannot be printed alone.

This same scheme is also used by Aldus Freehand and, I beleive, Corel Draw.
Adobe has published the format for Illustrator 88, but has not yet
published
the format for Illustrator 3.0 (although it can be reverse-engineered
easily
enough).

Turning arbitrary PostScript code meaningfully into Illustrator format
is an AI problem (pun intended). For example, figuring out that a series
of show operators is a single string with font changes, kerning, and
vertical offsets to represent fractions, etc is not an easy problem. It
would be possible to construct an "atomic" level version of an Illustrator
file using, for example, a modified version of the distillery, but I am
not sure it would be worth it for the general case. If you are attempting
to construct the Illustrator file from PostScript emitted by some
particular well-behaved, well understood application, you could probably
do it by parsing (and translating) the output structures. This is how
Freehand converts Illustrator files to its own format, after all.

Regards,
Steve Zisk
Technical Details
Message-ID: <zisk-031192142048@macne023.boston.us.adobe.com>
Path: arc1-ca.pugleaf.net!sparky!uunet!usc!zaphod.mps.ohio-state.edu!cs.utexas.edu!swrinde!elroy.jpl.nasa.gov!decwrl!adobe!macne023.boston.us.adobe.com!user
References: <4365@vidiot.UUCP> <1992Oct30.185358.5012@news.yale.edu> <4372@vidiot.UUCP>

Show Full Headers
Complete Article Headers
Newsgroups: comp.lang.postscript
Path: arc1-ca.pugleaf.net!sparky!uunet!usc!zaphod.mps.ohio-state.edu!cs.utexas.edu!swrinde!elroy.jpl.nasa.gov!decwrl!adobe!macne023.boston.us.adobe.com!user
From: zisk@adobe.com (Stephen Zisk)
Subject: Re: Conversion form Postscript to AI Postscript
Message-ID: <zisk-031192142048@macne023.boston.us.adobe.com>
Followup-To: comp.lang.postscript
Sender: usenet@adobe.com (USENET NEWS)
Organization: Adobe Systems Incorporated
References: <4365@vidiot.UUCP> <1992Oct30.185358.5012@news.yale.edu> <4372@vidiot.UUCP>
Date: Tue, 3 Nov 1992 19:37:53 GMT
Lines: 58