xmlgraphics-batik-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jonathan wood <jonathanshaww...@gmail.com>
Subject Re: getBBox() returns null
Date Thu, 27 Sep 2012 22:14:16 GMT
I'd also advise the changes be made in a single runnable as Thomas
suggested.  If you want a proof of concept for that, I'd point to some
rather old, but potentially useful code I wrote awhile ago...seems to be
doing something similar to what you want...look towards the end of the
conversation for the inlined example:

http://batik.2283329.n4.nabble.com/Status-of-FlowRoot-Overflow-Detection-td2979431.html


On Thu, Sep 27, 2012 at 6:04 PM, DeWeese Thomas <thomas.deweese@gmail.com>wrote:

> Hi fireball,
>         I suggest that you add the content and then set the properties.
>
>         Otherwise the result of getBBox may well be wrong. There are many
> properties that affect how text is rendered that will be inherited where
> the element is inserted in the document, so any calculation you make
> outside of it's final place in the document has a decent chance of being
> wrong.
>         If you add it and set the properties in one Runnable (sent to the
> UpdateManager's RunnableQueue) then it won't be rendered until your
> runnable exits.
>
>         If you really need to do this outside of the document (and I
> strong recommend against it in general) you can check out the link Jonathan
> gave for booting the SVG & CSS Dom.  However once again I must point out
> that for that to give you useful results the CSS context must be the same
> as where it will eventually be inserted into the document.
>
>         Thomas
>
> On Sep 27, 2012, at 10:16 AM, fireball <samiibrag@hotmail.com> wrote:
>
> > I think I might know what is happening. Correct me if I am wrong.
> >
> > The BBox is computed after the text is rendered. And my understanding of
> > rendering is that it happens when the text element is added to the
> canvas.
> >
> > What I am trying to do here is load an SVG file into a document, set some
> > properties and then add it into the canvas. Since I am trying to set
> > properties before adding to canvas, BBox is not computed yet.
> >
> > Is there a way to do that before adding to canvas?
> >
> >
> >
> > --
> > View this message in context:
> http://batik.2283329.n4.nabble.com/getBBox-returns-null-tp4655273p4655276.html
> > Sent from the Batik - Users mailing list archive at Nabble.com.
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: batik-users-unsubscribe@xmlgraphics.apache.org
> > For additional commands, e-mail: batik-users-help@xmlgraphics.apache.org
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: batik-users-unsubscribe@xmlgraphics.apache.org
> For additional commands, e-mail: batik-users-help@xmlgraphics.apache.org
>
>

Mime
View raw message