Hi Teck,

Teck Hua Lee <gteck...@gmail.com> wrote on 05/11/2010 11:45:49 AM:

> >    The problem is that a single draw operation can generate several
> > elements.  Some in the draw tree some in the 'defs' tree.
> 
> I think most users are interested in the "target" SVG element (e.g.
> draw:<path>, drawString:<text>).
> The obvious use case is to attach JS code on the elements.

        This could be useful in some cases however I've often found
that I want/need to add my JS code to a group containing elements
rather than many individual elements. So some mechanism for 'forcing'
the start of a new group (and a similar 'end' method) would I think 
also be very useful.

> These "target" elements seem to be created by the SVGGraphics2D draw
> methods directly, so SVGGraphics2D should be able to maintain the
> reference to the last created target element. [...]

        OK, that might work.

> (The same argument applies to the strange requirement for us to write 
our own
> ExtensionHandlers for java.awt.Linear/RadialGradientPaint)

    These were added in JDK 1.6, we target JDK 1.4.  So any reference
to these would have to be optional (i.e. in a contrib directory or 
something similar).

> I can easily extend SVGGraphics2D for this purpose but I feel that
> this should be a common functionality in the base framework.

        Batik is an open source project so contributions are welcome.

---

> On Tue, May 11, 2010 at 5:37 AM, <thomas.dewe...@kodak.com> wrote:
> >
> > Hi Teck,
> >
> > Teck Hua Lee <gteck...@gmail.com> wrote on 05/10/2010 09:45:24 PM:
> >
> > > http://markmail.org/message/znky4hbn76ytrdr5
> > >
> > > Thomas DeWeese wrote:
> > >> At any point you can get the generated subtree by calling
> > >> 'svgg2d.getRoot(parent)'. So you can get the just generated 
element.
> > >> You can also look at extending the SVGGeneratorContext (see the web
> > >> page for some examples).
> >
> > > Do I have to manually keep track of the "parent" element?
> >
> >    The short answer is yes, but the question implies this represents
> > significant effort which it should not.  In theory you could pass the
> > same element to 'getRoot' every time, this would make finding the new
> > element(s) a little tricky so instead you might have two one you use
> > to get the new elements and then a second that you 'transfer' those
> > new elements to for later use.
> >
> > > Do you think it would be helpful to include a getCurrentElement()
> > > API on SVGGraphics2D?
> >
> >    The problem is that a single draw operation can generate several
> > elements.  Some in the draw tree some in the 'defs' tree.  So adding
> > the ability to call 'getCurrentElement' would significantly impact
> > the quality of the generated SVG content in the more normal case of
> > just drawing a bunch of stuff you want to save as SVG (every draw
> > operation would have to result in a 'stand-alone' subtree, which would
> > also probably mean needlessly introducing extra groups etc).
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: batik-users-unsubscr...@xmlgraphics.apache.org
> For additional commands, e-mail: batik-users-h...@xmlgraphics.apache.org
> 

Reply via email to