def device_show_text(self, text): x, y = self.get_text_position() ttm = self.get_text_matrix() ctm = self.get_ctm() # not device_ctm!! m = affine.concat(ctm, ttm) tx, ty, sx, sy, angle = affine.trs_factor(m) angle = '"%3.3f"' % (angle / pi * 180.0) height = self.get_full_text_extent(text)[1] self.contents.write("%3.3f %3.3f moveto\n" % (x, y)) r, g, b, a = self.state.line_color self.contents.write("%1.3f %1.3f %1.3f setrgbcolor\n" % (r, g, b)) self.contents.write("(%s) show\n" % text)
def device_show_text(self, text): x,y = self.get_text_position() x,y = self._fixpoints([[x,y]])[0] ttm = self.get_text_matrix() ctm = self.get_ctm() # not device_ctm!! m = affine.concat(ctm,ttm) tx,ty,sx,sy,angle = affine.trs_factor(m) angle = '%3.3f' % (-angle / pi * 180.) height = self.get_full_text_extent(text)[1] self.contents.write('<g transform="translate(%(x)f,%(y)f)">\n' % locals()) self.contents.write('<g transform="scale(1,-1)">\n') self._emit('text', contents=text, transform='"rotate('+angle+')"', kw={'font-family':repr(self.font.fontName), 'font-size': '"'+ str(self.font_size) + '"'}) self.contents.write('</g>\n') self.contents.write('</g>\n')