I'm at a point now where I run against a wall whatever I look at to do
next. I wanted to put off the page breaking issue as long as possible to
give myself more time to understand all the implications. It turns out
that this wasn't such a bad idea because I got a lot of hints along the
way where I need to pay attention. As you may have seen, my last point
was preparing collapsing borders. The painting works, so the whole
resolution remains. I started with that and realized that the borders
have to be resolved during the layout stage and cannot be resolved
beforehand (see note in 1.3 in [1]). It always comes down to this: I
need to rewrite the page breaking now.

I went back to Simon's and Finn's ideas about page breaking and I see
some overlap. For example, both push top-level BPs to a PageLM. Both
approaches sound good on first read but since this was only the broad
overview of the approach there are obviously some questions popping up,

How does table layout fit in? If you look at the illustration at the
bottom of [1], a BP from a table will most probably need to have
information on what it comprises within each column. Take for example,
the second to last orange line which shows an example BP that comprises
the "text" line (row 1, cells 3-4), but nothing from columns 1 and 2. Or
rather the RowLM must probably generate some vertical padding for
columns 1 and 2 to fill up the area. BTW, that's where table-cell3a.xml
currently fails.

That smells a lot like there are some additional information items
inside such a BreakPoss/KnuthBox so the addArea stage can later
correctly reproduce what content to generate for a top-level BP. If I'm
thinking about adjusting min/opt/max inside these structures and
handling things like footnotes, floats, collapsing borders and
table-footers, my head starts spinning but that's because I still don't
understand the whole of the Knuth algorithm for example. Thankfully, I
got confirmation yesterday that my copy of "Digital Typography" is
finally on its way. I should have it by Wednesday.

So this is just my way to tell you guys what I'm doing right now. I'm
going to document everything I find out and appreciate any help here.
And forgive me if right now, I can't keep up with you, yet (But that
should change real quickly now), and if I might seem to have ignored your
earlier input. I didn't. I appreciate it very much and depend on it.

[1] http://wiki.apache.org/xmlgraphics-fop/TableLayout

Jeremias Maerki

Reply via email to