Its good that this fixes the problem, but I don't see why
> flipping an image upside down should also change its
> size. There's probably still a bug in there somewhere, but
> its not too important if the SVG images look correct now.
I just simplified image handling, removing the "origin" arg to the
backend draw_image. In keeping with mpl's philosophy of keeping the
backends simple and dumb, I moved all the origin processing to the
front end.
There is a im.flipud_out() that flips and image upside down for the
backend. This is useful for backends whose default image orientation
is different than matplotlib's (see for example backend_gdk) but is
independent of the "origin" command.
I didn't port these changes to Cairo since I don't have that installed
right now, but Agg, GTK, PS and SVG are working.
JDH