[comp.sys.mac.programmer] Comments on Comments

fry@walsh.harvard.edu (David Fry) (10/10/88)

I recently posted some information about PicComments that was 
misleading, and I'd like to set the record straight.

I said that Apple's LaserWriter drivers were no longer supporting the 
MacDraw PicComments that draw polygons, splines, and rotated text.  My 
statements were based on some remarks from Tech Support, and by the fact 
that if you set a Clip Region while drawing on a LaserWriter, the 
PicComments ignore the clipping and draw on the whole page anyway.

It turns out that the drivers all expand the clip region to the size of 
the entire page before processing any PicComment, and then resets it 
after the PicComment is completed.  This includes PicComment which 
include PostScript code, so it's impossible to avoid this effect even 
with PS.

MacDraw does no clipping when drawing its structures; you can't drag 
something off the end of the page and objects don't clip each other if 
they overlap.  The problems develop when other applications get MacDraw 
PicComment-ed objects via cut-and-paste.  Then the objects ignore the 
clipping region and you get the distasteful results I mentioned earlier.

Developers using these PicComments should be aware of the situations 
that can develop when they are pasted into other applications.  It may 
be the case that you can develop a workaround that will suffice, even if 
you must sacrifice some niceties.  For instance, you could translate the 
PicComment calls into QuickDraw equivalents before exporting them to the 
clipboard.  Rotated text could be replaced with CopyBits calls of the 
bitmap containing the rotated image (which is already passed with the 
PicComment), although it could not be edited in MacDraw and it will look 
bad when printed.  This may or may not be the best solution for your 
application.

I hope this clears up any confusion I may have caused.

David Fry				fry@huma1.harvard.EDU
Department of Mathematics		fry@huma1.bitnet
Harvard University			...!harvard!huma1!fry
Cambridge, MA  02138