Oleg Tkachenko wrote: > elaborate it further in implementation section. My problem is > that I still > doesn't have clear bidi implementation design in my mind, moreover the > processing model as described in the spec sounds too quirky to > me, all that > fo-tree manipulation and directionality explicitiveness confuses > me because I > was grown on a principle that text must always be preserved in > logical order > up to the latest stage - rendering. And all bidi processing > should be done by > *renderer*, btw AWT renderer, which is bidi-aware on its own does render > Hebrew ok even in the branch code!
Wow -- I have never read through that section of the standard before. I am surprised that they require actually changing the FO tree. It also seems that this is another case where our layout-before-knowing-context model bites us. We don't really have a "refinement" stage in our model. The only other place where I have felt like I needed one is text-transform. Using the work that you did as a starting place, I was able to sneak text-transform functionality in as part of the FOText object constructor (this was in the branch, and I haven't had a chance to bring it over to the trunk). This was the /only/ place after seeing the input and before it was getting laid out in lines. The reason the refinement stage is important is because some of these things require a knowledge of the context. I implemented text-transform by looking at only preceding text in the same block, but was worried that we would find some aspect of text-transform that needed to know what came after -- if so, there is no clean way to handle it. It seems like this might fall into that same category. As far as whether reordering should get done at layout or rendering time, I think that the standard lumps these two concepts, distinct to us, into one super-concept that they call formatting. So (and I may be wrong) it seems that you are free to implement that in the renderers. If I understood the standard, we just need to slide the appropriate Unicode bidi codes into the text during the formatting stage that effectively implement the net effect all of the directionality information. I think you are right that any text reordering must be done by the renderers (or perhaps the RenderingContext that has been discussed in another thread). Not just AWT, but probably PDF, now or in the future, will handle the reordering. Its search routines need to have the text in logical order as well. Victor Mote --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
