You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by "simon steiner (JIRA)" <ji...@apache.org> on 2017/01/09 14:07:58 UTC

[jira] [Updated] (FOP-2438) [PATCH] Non-breaking space causes alignment problems with text-align-last="justify"

     [ https://issues.apache.org/jira/browse/FOP-2438?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

simon steiner updated FOP-2438:
-------------------------------
    Summary: [PATCH] Non-breaking space causes alignment problems with text-align-last="justify"  (was: Non-breaking space causes alignment problems with text-align-last="justify")

> [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&nbsp;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
(v6.3.4#6332)