On Wed, Nov 16, 2005 at 08:15:47AM +0800, Manuel Mall wrote:
> I have no problems with the suggestion to move the white space handling
> from Block into its own class so other fo's that need it can make use
> of it.
> However, I still need to be convinced that pushing it down to inline
> level is actually of benefit. I am afraid we will end up with the same
> problem we now have at LM level, that is text for a paragraph needs to
> be analysed across fo boundaries and the current LM structures are very
> much in the way of doing that. Whitespace needs to be handled across fo
> boundaries as well. The current iterator structure was designed to
> exactly facilitate that. It seems to be doing it well and I see no
> reason to replace it.
linefeed-treatment is a local operation on a single character.
white-space-collapse does not cross FO boundaries because the spec
limits this to sibling character FOs.
Only white-space-treatment extends beyond FO boundaries, but its
treatment in handleWhitespace is only the first stage. At line
building it needs to be revisited.
That means that theoretically handleWhitespace can be done within each
FO. But practically it may be better to wait until we have settled
ideas about this stage, scanning for linebreak opportunities and
gathering of Knuth elements.
home page: http://www.leverkruid.nl