Hi Jan

> On 22 Jul 2015, at 00:36, Jan Tosovsky <j.tosov...@email.cz> wrote:
> <snip />
> But 'Item 2.1' is wrapped by BasicLinkLM and during its processing in
> TextLayoutManager.addMappingAreas() a special treatment is performed as
> context.getIPDAdjust() returns non zero value. So instead of width 39743
> (21395 + 3058 + 15290) one gets 41102. And this difference matches that
> shift of the page number.
> What does that IPDAdjust represent?

While I cannot immediately say what the "ipd adjustment" is supposed to 
represent, I did notice something that does influence the result: the extra 
layer of fo:inlines, that only seem to be there to carry the 
keep-together.within-line property. 

If you remove those, the overall alignment already looks much better. Could be 
that IPDAdjust gets that value due to the parent fo:inline.

Checking the usages of LayoutContext.setIPDAdjust(), I only get two: one in 
ContentLayoutManager.addAreas() --always to 0.0-- and one in 
LineLayoutManager.addInlineArea() --to LineBreakPosition.ipdAdjust. I suspect 
the latter is causing the problem.



Reply via email to