I'm not sure exactly what you mean--are you indicating
it might be best to pull out the interators from
FOText and flow.Inline and have everything done within
flow.Block? That could work well.
A further optimization might be to do all this before
the Block is even parsed into FOText and Inline
objects, as many spaces-only objects would end up not
even needing to be created.
I was originally thinking of the other
direction--instead of all the bouncing code between
Block and FOText, just put all the logic in FOText,
and have FOText completely responsible for its own
whitespace removal. Problem with this though is that
we'd have to duplicate the whitespace processing logic
into Inline as well, also, there's the issue of
whitespace between consecutive FOText and/or Inline
objects still needing to be handled. So this probably
wouldn't be a good idea.
--- Simon Pepping <[EMAIL PROTECTED]> wrote:
> I should add that I have realized that the rules of
> handling in the FO spec are quite complicated, and
> that it is unwise
> to handle whitespace outside of the
> Block.handleWhiteSpace method.
> Regards, Simon
> Simon Pepping
> home page: http://www.leverkruid.nl