Revision: 8851 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8851&view=rev Author: leejjoon Date: 2010-12-29 08:29:11 +0000 (Wed, 29 Dec 2010)
Log Message: ----------- pdf backend support affine-transformed image Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py Modified: trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py 2010-12-29 05:21:56 UTC (rev 8850) +++ trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py 2010-12-29 08:29:11 UTC (rev 8851) @@ -1386,15 +1386,42 @@ def get_image_magnification(self): return self.image_dpi/72.0 - def draw_image(self, gc, x, y, im): + def option_scale_image(self): + """ + pdf backend support arbitrary scaling of image. + """ + return True + + def draw_image(self, gc, x, y, im, dx=None, dy=None, transform=None): self.check_gc(gc) h, w = im.get_size_out() - h, w = 72.0*h/self.image_dpi, 72.0*w/self.image_dpi + + if dx is None: + w = 72.0*w/self.image_dpi + else: + w = dx + + if dy is None: + h = 72.0*h/self.image_dpi + else: + h = dy + imob = self.file.imageObject(im) - self.file.output(Op.gsave, w, 0, 0, h, x, y, Op.concat_matrix, - imob, Op.use_xobject, Op.grestore) + if transform is None: + self.file.output(Op.gsave, + w, 0, 0, h, x, y, Op.concat_matrix, + imob, Op.use_xobject, Op.grestore) + else: + tr1, tr2, tr3, tr4, tr5, tr6 = transform.to_values() + + self.file.output(Op.gsave, + tr1, tr2, tr3, tr4, tr5, tr6, Op.concat_matrix, + w, 0, 0, h, x, y, Op.concat_matrix, + imob, Op.use_xobject, Op.grestore) + + def draw_path(self, gc, path, transform, rgbFace=None): self.check_gc(gc, rgbFace) self.file.writePath( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ Matplotlib-checkins mailing list Matplotlib-checkins@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins