def _render(self, name, intent, dataGetter, **kwds): from xml.sax.saxutils import escape spec = self.intentSpecs[intent] valueName = spec.valueName D = self._defaults.get(intent, {}).copy() escapeAction = D.get('escape') D.update(kwds) if self.uppercase and 'content' in D and isinstance(D['content'], str): D['content'] = self.upper(D['content']) if valueName not in kwds: data = dataGetter(name, intent) if self.uppercase and isinstance(data, str): data = self.upper(data) if escapeAction == 'escape': data = escape(data) D[valueName] = data if spec.preRenderFunc: spec.preRenderFunc(D) rml = [] add = rml.append if 'rotation' in D: angle = D['rotation'] add('<saveState/><rotate degrees="%s"/>' % angle) angle = float(angle) from reportlab.graphics.shapes import rotate, inverse, transformPoint D['x'], D['y'] = transformPoint(inverse(rotate(float(angle))), (float(D['x']), float(D['y']))) add(spec.rml(D)) if 'rotation' in D: add('<restoreState/>') return ''.join(rml) #+('<!--%s-->' % name)
def _render(self,name,intent,dataGetter,**kwds): from xml.sax.saxutils import escape spec = self.intentSpecs[intent] valueName = spec.valueName D=self._defaults.get(intent,{}).copy() escapeAction=D.get('escape') D.update(kwds) if self.uppercase and 'content' in D and isinstance(D['content'],str): D['content'] = self.upper(D['content']) if valueName not in kwds: data = dataGetter(name, intent) if self.uppercase and isinstance(data,str): data = self.upper(data) if escapeAction == 'escape': data = escape(data) D[valueName] = data if spec.preRenderFunc: spec.preRenderFunc(D) rml = [] add = rml.append if 'rotation' in D: angle = D['rotation'] add('<saveState/><rotate degrees="%s"/>' % angle) angle = float(angle) from reportlab.graphics.shapes import rotate, inverse, transformPoint D['x'],D['y'] = transformPoint(inverse(rotate(float(angle))),(float(D['x']),float(D['y']))) add(spec.rml(D)) if 'rotation' in D: add('<restoreState/>') return ''.join(rml)#+('<!--%s-->' % name)
def transformAndFlatten(A, p): ''' transform an flatten a list of points A transformation matrix p points [(x0,y0),....(xk,yk).....] ''' if tuple(A) != (1, 0, 0, 1, 0, 0): iA = inverse(A) p = transformPoints(iA, p) return tuple(flatten(p))
def transformAndFlatten(A,p): ''' transform an flatten a list of points A transformation matrix p points [(x0,y0),....(xk,yk).....] ''' if tuple(A)!=(1,0,0,1,0,0): iA = inverse(A) p = transformPoints(iA,p) return tuple(flatten(p))