xmlgraphics-batik-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas E Deweese <thomas.dewe...@kodak.com>
Subject entity selection and max. size of svg using batik
Date Mon, 12 Nov 2001 14:07:42 GMT
>>>>> "PB" == Prajakta Bhanage <prajaktabhanage@yahoo.com> writes:

PB> I would like to know if there is any way in which i can select a
PB> single entity in SVG. I am using JSVGCanvas to display SVG and i
PB> need to modify a part of the drawing displayed.  The only way I
PB> can think as of now is by using mouse events in java, and
PB> modifying the svg/xml, and redisplaying it....

PB> I would appreciate any more i/p on this..

    Well, I think you have it right, in Batik you need to capture the
mouse clicks (there is support for this in GVT and of course DOM).
Then you need to modify the elements and redisplay.

    There exists a text selection API in Batik but there is no element
selection API.  In general there isn't a good way to "select"
something since you never know what it will be over.  Text selection
does it's best but it tends to either be really ugly (Xor mode) or not
always as high contrast as is desirable (transparent overlay).

    Anyway I would look at the Text selection stuff if you are happy
with what it does it should be fairly straight forward to add a
similar element selection overlay to the JSVGCanvas...

    There are also issues around scaling (so an element could be a
small fraction of one pixel or many times the size of the viewport).

PB> I would also like to know the maximum size of SVG that
PB> can be displayed using JSVGCanvas using the listeners
PB> provided by batik like the GVTTreeRendererListener
PB> I have an SVG of 94 KB size, and it surely takes away
PB> my patience to open it and display...

    Well I've brought up a 1.5Mb file in 34sec, and I've seen 10K
files that take a minute or two.  So it depends a lot on what is in
the file.  If you are curious about where all that time is going you
can go to Edit->Preferences...->Browser Options->Show Debug Trace

    This will show time for load (parsing XML), build (building GVT
tree from XML DOM), Rendering Prep (mostly text layout), Rendering
(actually rendering the document, this is the only part that is
repeated for each drawing...).

    Also a fairly large number of performance improvements have been
checked in recently, so you might want to look at current CVS.

PB> If anyone has any idea on this....

PB> I've posted these questions to the batik-users list,
PB> however, i need an urgent reply to this.. hence
PB> sending it on this id..

    Hope this helps...

To unsubscribe, e-mail: batik-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: batik-dev-help@xml.apache.org

View raw message