Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 026a72e

Browse files
author
Steve Chaplin
committed
SC
svn path=/trunk/matplotlib/; revision=1465
1 parent d40e581 commit 026a72e

File tree

3 files changed

+15
-27
lines changed

3 files changed

+15
-27
lines changed

lib/matplotlib/backends/backend_cairo.py

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ def _fn_name(): return sys._getframe(1).f_code.co_name
3737

3838
_version_required = (0,5,0)
3939
if cairo.version_info < _version_required:
40-
raise SystemExit ("PyCairo %d.%d.%d is installed\n"
41-
"PyCairo %d.%d.%d or later is required"
40+
raise SystemExit ("Pycairo %d.%d.%d is installed\n"
41+
"Pycairo %d.%d.%d or later is required"
4242
% (cairo.version_info + _version_required))
4343
backend_version = cairo.version
4444
del _version_required
@@ -405,8 +405,7 @@ def get_text_width_height(self, s, prop, ismath):
405405

406406
def new_gc(self):
407407
if _debug: print '%s.%s()' % (self.__class__.__name__, _fn_name())
408-
gc = GraphicsContextCairo (renderer=self,
409-
surface=self.surface)
408+
gc = GraphicsContextCairo (renderer=self, surface=self.surface)
410409
return gc
411410

412411

@@ -433,14 +432,10 @@ def __init__(self, renderer, surface):
433432
GraphicsContextBase.__init__(self)
434433
self.renderer = renderer
435434
self.ctx = cairo.Context (surface)
436-
# default is 0.1, raise value to increase performance
437-
# (and lower quality)
438-
#self.ctx.set_tolerance(0.5)
439435

440436
def set_alpha(self, alpha):
441437
self._alpha = alpha
442438
rgb = self._rgb
443-
#self.ctx.set_alpha(alpha)
444439
self.ctx.set_source_rgba (rgb[0], rgb[1], rgb[2], alpha)
445440

446441
#def set_antialiased(self, b):
@@ -565,22 +560,20 @@ def print_figure_fn(figure, filename, dpi=150, facecolor='w', edgecolor='w',
565560
fc.print_figure(filename, dpi, facecolor, edgecolor, orientation)
566561

567562
else:
568-
warnings.warn('Format "%s" is not supported.\nSupported formats: %s.' %
569-
(ext, ', '.join(IMAGE_FORMAT)))
563+
warnings.warn('Format "%s" is not supported.\nSupported formats: '
564+
'%s.' % (ext, ', '.join(IMAGE_FORMAT)))
570565

571566

572567
def _save_png (figure, filename):
573568
width, height = figure.get_width_height()
574569
width, height = int(width), int(height)
575570

576-
surface = cairo.ImageSurface (cairo.FORMAT_ARGB32, width, height)
577-
ctx = cairo.Context (surface)
578-
579571
renderer = RendererCairo (figure.dpi)
580572
renderer._set_width_height (width, height)
581-
renderer.surface = ctx.get_target()
573+
renderer.surface = cairo.ImageSurface (cairo.FORMAT_ARGB32, width, height)
574+
582575
figure.draw (renderer)
583-
surface.write_to_png (filename)
576+
renderer.surface.write_to_png (filename)
584577

585578

586579
def _save_ps_pdf (figure, filename, ext, orientation):

lib/matplotlib/backends/backend_gtkcairo.py

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,18 @@
88
import cairo
99
import cairo.gtk
1010

11-
try: cairo.version_info
12-
except AttributeError:
13-
backend_version = 'PyGTK(%d.%d.%d),PyCairo ??' % gtk.pygtk_version
14-
else:
15-
backend_version = 'PyGTK(%d.%d.%d),PyCairo(%d.%d.%d)' % (gtk.pygtk_version + cairo.version_info)
11+
backend_version = 'PyGTK(%d.%d.%d),Pycairo(%d.%d.%d)' % (gtk.pygtk_version + cairo.version_info)
1612

1713

18-
DEBUG = False
14+
_debug = False
15+
#_debug = True
1916

2017

2118
def new_figure_manager(num, *args, **kwargs):
2219
"""
2320
Create a new figure manager instance
2421
"""
25-
if DEBUG: print 'backend_gtkcairo.%s()' % fn_name()
22+
if _debug: print 'backend_gtkcairo.%s()' % fn_name()
2623
thisFig = Figure(*args, **kwargs)
2724
canvas = FigureCanvasGTKCairo(thisFig)
2825
return FigureManagerGTK(canvas, num)
@@ -31,5 +28,5 @@ def new_figure_manager(num, *args, **kwargs):
3128
class FigureCanvasGTKCairo(FigureCanvasGTK):
3229
def _renderer_init(self):
3330
"""Override to use Cairo rather than GDK renderer"""
34-
if DEBUG: print 'backend_gtkcairo.%s()' % fn_name()
31+
if _debug: print '%s.%s()' % (self.__class__.__name__, _fn_name())
3532
self._renderer = RendererCairo (self.figure.dpi)

lib/matplotlib/figure.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -549,10 +549,8 @@ def _set_artist_props(self, a):
549549
a.set_transform(self.transFigure)
550550

551551
def get_width_height(self):
552-
'return the figure width and height in pixels'
553-
w = self.bbox.width()
554-
h = self.bbox.height()
555-
return w, h
552+
'return the figure width and height in pixels (as floats)'
553+
return self.bbox.width(), self.bbox.height()
556554

557555

558556
def gca(self, **kwargs):

0 commit comments

Comments
 (0)