*** svglib-0.5.py Tue Jun 11 18:01:21 2002 --- svglib.py Fri Mar 14 09:15:38 2003 *************** *** 19,25 **** Dinu Gherman gherman at darwin in-berlin de ! June 2002 """ ### imports ### --- 19,25 ---- Dinu Gherman gherman at darwin in-berlin de ! March 2003 """ ### imports ### *************** *** 35,41 **** pt = 1 ! __version__ = '0.5' __license__ = '90 day beta evaluation version for personal use' LOGMESSAGES = 0 --- 35,41 ---- pt = 1 ! __version__ = '0.5.1' __license__ = '90 day beta evaluation version for personal use' LOGMESSAGES = 0 *************** *** 619,632 **** getAttr = node.getAttribute width, height = map(getAttr, ('width', 'height')) width, height = map(self.attrConverter.convertLength, (width, height)) - if not width or not height: - print "Aborting! SVG node has no 'width' and/or 'height' attribute." - sys.exit(1) - self.drawing = Drawing(width, height) viewBox = getAttr('viewBox') if viewBox: ! if LOGMESSAGES: ! print "Ignoring attribute: svg.viewBox" return self.drawing --- 619,629 ---- getAttr = node.getAttribute width, height = map(getAttr, ('width', 'height')) width, height = map(self.attrConverter.convertLength, (width, height)) viewBox = getAttr('viewBox') + viewBox = self.attrConverter.convertLengthList(viewBox) if viewBox: ! width, height = viewBox[2:4] ! self.drawing = Drawing(width, height) return self.drawing *************** *** 1081,1086 **** --- 1078,1086 ---- The transformation is the value of an SVG transform attribute like transform="scale(1, -1) translate(10, 30)". + + rotate( [ ]) is equivalent to: + translate( ) rotate() translate(- -) """ tr = self.attrConverter.convertTransform(transform) *************** *** 1093,1099 **** values = values[0], values[1] apply(group.translate, values) elif op == 'rotate': ! group.rotate(values) elif op == 'skewX': group.skew(values, 0) elif op == 'skewY': --- 1093,1105 ---- values = values[0], values[1] apply(group.translate, values) elif op == 'rotate': ! if type(values) != types.TupleType or len(values) == 1: ! group.rotate(values) ! elif len(values) == 3: ! angle, cx, cy = values ! group.translate(cx, cy) ! group.rotate(angle) ! group.translate(-cx, -cy) elif op == 'skewX': group.skew(values, 0) elif op == 'skewY':