simon steiner commented on FOP-2438:

The patch breaks some unit tests, can you try running ant junit

> [PATCH] Non-breaking space causes alignment problems with 
> text-align-last="justify"
> -----------------------------------------------------------------------------------
>                 Key: FOP-2438
>                 URL: https://issues.apache.org/jira/browse/FOP-2438
>             Project: FOP
>          Issue Type: Bug
>    Affects Versions: 1.1, 2.0, trunk, 2.1
>            Reporter: Martin Doucha
>         Attachments: nbsp.patch, test.fo
> Non-breaking spaces are not included in stretch factor calculation under 
> special circumstances but they are stretched by the resulting (oversized) 
> stretch factor, leading to text overflowing out of block. Those special 
> circumstances are:
> - text-align-last="justify"
> - text-align="start" (or anything else other than justify)
> - the non-breaking space has to get positioned on the last line of the block
> Here's Knuth sequence for block "Test Test Test" with the above 
> alignment settings:
> <KnuthSequence [box w=17220, glue w=2500 stretch=1250 shrink=0, box w=17220, 
> aux. box w=2500, box w=17220, penalty p=-INFINITE w=0 (forced break, ??? 
> (-1))]>
> Notice that the second space is represented as box instead of glue with 
> penalty.
> Here's Knuth sequence for the same block but this time with alignment 
> justify/justify:
> <KnuthSequence [box w=17220, glue w=2500 stretch=1250 shrink=833, box 
> w=17220, aux. box w=0, aux. penalty p=INFINITE w=0, glue w=2500 stretch=1250 
> shrink=833, box w=17220, penalty p=-INFINITE w=0 (forced break, ??? (-1))]>
> This gets rendered correctly.

This message was sent by Atlassian JIRA

Reply via email to