Hi, Our whiteboard implementation is done with Batik. I don't use the SVGGraphics2D to draw; rather I translate mouse clicks and gestures and directly append events to the DOM. For a rectangle, I'd capture the X/Y of the mouse pressed, the X/Y of the mouse released, translate the coordinates to the SVGDocument and create an Element based on that.
I'd started with using SVGGraphics2D and found it wasn't the way to go and with a lot of help from this list, got started on the implementation we have today. I think your questions will be invalidated if you go this route. SVGGraphics2D is really intended to render an entire document at once, not a create/update/delete model. Our XMPP Client (with Whiteboard) can be found at https://xmpp.je.jfcom.mil/ and our submitted spec (written last year, not in 2001; the date's wrong) can be found at http://www.xmpp.org/extensions/inbox/whiteboard2.html. Michael Bishop From: Keywan Najafi Tonekaboni Sent: Tue 4/8/2008 12:19 PM To: [email protected] Subject: Parsing SVG and grouping actions Hi, I work on a whiteboard for Jabber/XMPP. I use Batik and JSVGCanvas for the GUI. I found in another whiteboard implementation [1] (which is not using Batik) the class SVGUtil[2]. This class is a parser for SVG and connected with the other classes doing the SVG, as far as I understand. My question: Is there a ready parser from Batik available, which I could use instead? Another question: I draw something on the canvas with this code: svgG2D.setPaint(new Color(color.getRed(), color.getGreen(), color.getBlue(), 64)); svgG2D.fill(shape); svgG2D.setPaint(Color.BLACK); svgG2D.setStroke(new BasicStroke((float)1.5)); svgG2D.draw(shape); // svgG2D.drawString("Keywan - 12.3.2007", (float)start.getX()+5, (float)start.getY()+5); Element root = doc.getDocumentElement(); svgG2D.getRoot(root); Can I group it somehow to one parent element, which I could append to my jabber messages and send it.. I recognised, that the above code created stanzas like this in the SVG-file: <!--Generated by the Batik Graphics2D SVG Generator--> <defs id="genericDefs"/> <g> <g stroke-width="1.5"> <rect fill="none" x="637" width="17" height="15" y="450"/> </g> <g fill="rgb(255,0,0)" stroke-width="1.5" fill-opacity="0.251" stroke-opacity="0.251" stroke="rgb(255,0,0)"> <rect x="637" width="17" height="15" y="450" stroke="none"/> </g> </g> If I could grab this parent-<g>, this would help me a much. Am I on the wrong track? Regards, Keywan [1] http://version2software.com/v2whiteboard.html [2] http://www.prometoys.net/downloads/svg/SVGUtil.java --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
smime.p7s
Description: S/MIME cryptographic signature
