One PSfrag user reports that XFig's "pattern fill" commands are
incompatible with PSfrag. I haven't yet figured out what to do about
this in the long term, but I do have an immediate workaround.
The problem has to do with the fact that both PSfrag and XFig redefine
PostScript's "show" command. As far as I can tell, they _shouldn't_
conflict with each other, but they do. This workaround is evidence of
this fact; perhaps someone can suggest who is at fault here---XFig,
PSfrag, or both---and provide a fix for each that will be robust to
situations like this.
Given any XFig figure converted to Encapsulated PostScript (from
recent versions of XFig, at least), look for the "/PATfill" command.
Inside this subroutine, replace "show" with "oldshow" (there is only
one occurrence). This seems to allow the figure to display properly,
_and_ PSfrag to replace the text properly.
"oldshow" is the place where XFig stores the "old" version of the show
routine, before it redefines "show" for its own purposes.
If you can determine why this fix works, and convince the Xfig
maintainers to make the change, great! If you can convince me that
PSfrag is in the wrong here, and can suggest a way to fix _that_,
that's great too. Just drop us a line at [email protected]
with your tips.
Thanks
Michael
|