def do_expose_event(self, event): cr = self.window.cairo_create() cr.rectangle(event.area.x, event.area.y, event.area.width, event.area.height) cr.clip() width = self.bbox[2] - self.bbox[0] height = self.box.height depth = self.box.depth backend = MathtexBackendCairo() backend.set_canvas_size(self.box.width, self.box.height, self.box.depth, 100) backend.render(self.glyphs, self.rects) backend.render_to_context(cr)
def _draw_mathtext(self, gc, x, y, s, prop, angle): if _debug: print '%s.%s()' % (self.__class__.__name__, _fn_name()) if not HAVE_MATHTEX: return ctx = gc.ctx m = Mathtex(s, rcParams['mathtext.fontset'], prop.get_size_in_points(), self.dpi, rcParams['mathtext.default'], cache=True) b = MathtexBackendCairo() m.render_to_backend(b) ctx.save() ctx.translate(x, y - m.height - m.depth) if angle: ctx.rotate (-angle * npy.pi / 180) b.render_to_context(ctx) ctx.restore()
def _draw_mathtext(self, gc, x, y, s, prop, angle): if _debug: print '%s.%s()' % (self.__class__.__name__, _fn_name()) if not HAVE_MATHTEX: return ctx = gc.ctx m = Mathtex(s, rcParams['mathtext.fontset'], prop.get_size_in_points(), self.dpi, rcParams['mathtext.default'], cache=True) b = MathtexBackendCairo() m.render_to_backend(b) ctx.save() ctx.translate(x, y - m.height - m.depth) if angle: ctx.rotate(-angle * npy.pi / 180) b.render_to_context(ctx) ctx.restore()