
The reason for using psfrag is a kind of “coding style”, because I use a lot of complex symbols/equations defined by \newcommand statements in the latex document. While some nice LaTeX-rending features are being introduced into the more recent releases of Inkscape, the benefit of PSfrag was nicely expressed by commenter emw on a Inkspace forum: There is some indication that a newer release of Cairo will fix this problem, but it hasn’t yet worked its way into the public release. This makes it impossible for PSfrag to find a matching string. Specifically, string “abc” is no longer identified in the EPS file as (abc)Tj, but rather Tj. However, this is a real problem for those of us that use PSfrag. This is done to reduce file size, and improve performance.


Rather than store strings directly, references are made to a structure of characters actually used in the file. This problem is related to the use of the Cairo package from the GTK+ Project to export EPS files. (The most recent Inkscape release is version 0.48.)

Long story short, the only way I could find to make Inkscape play nicely with PSfrag was reverting to version 0.46. However, Inkscape seems to be having some of the same problems as I was recently experiencing with Adobe Illustrator.

Given the vast amount of cruft that Illustrator includes in its EPS files, this sounded like it might be a good alternative. While browsing through some of the old TeXtip posts on Twitter, I was reminded of the possibility of using Inkscape to generate LaTeX-compatible illustrations.
