Thanks for the pointers.

The intended meaning of un-"touched" was to say that no line-breaking or other processing takes place on the elements, just returning the element list.

What is unclear to me is how I can get the element list for a specific table-cell. Here is what how I see things :

1. create a TableRowIterator for the table-body elements
2. do a prefetchAll()
3. Iterate over row = EffRow[] getNextRowGroup()
3.1 Get the element list of each table-cell ? This is where I am unsure how I should get the element lists :
           row.getGridUnits().getPrimary().getElements() ?
3.2 Once I have the element list of the cell I can easily get its "full" length.

As well, is there any reading I can do to get a deeper understanding of GridUnits ?

Thank you,

Patrick Paul

Andreas L Delmelle wrote:

On Jul 18, 2006, at 21:30, Patrick Paul wrote:

Now I need a little pointer on how best to fly over table rows without "touching" them. I have some idea but I would prefer to check with the experts.


Tricky indeed... the TableRowIterator constructs the very list it is supposed to iterate over --I mean: it creates the elements from another list instead of simply returning them un-"touched". prefetchAll() is unused ATM, exactly because you would "touch" all rows (if I catch your intended meaning of that word correctly?)

OTOH, that method seems to have been added with auto-layout in mind anyway, so give it a shot, but mind the large tables...

Seems like, instead of simply prefetchNext(), you could try refining it to:

1) prefetchNext() [= get the row *group*, minor yet important detail]
2) doing what you need [= calculate content-length?]
3) immediately dispose of it

Another option would be to use an altered version of prefetchNext() altogether.

HTH!

Cheers,

Andreas

Reply via email to