On Nov 4, 2005, at 17:05, Luca Furini wrote:

Hi Manuel / Luca,

Manuel Mall wrote:

Here are some of the combinations I have identified:
<snip />
6. Breaking / elastic / non removable - eg. U+3000 Ideographic space
        => Must handle border/padding
        => Must handle text-align
Question: XSL-FO does not define U+3000 as removable white space but would under common CJK typesetting conventions this be removed at a line break?

I think so. That's precisely what the definition for the "auto" value of suppress-at-line-break warns about. Does this mean that the use of a fo:character is mandated if the user wants it removed? Yes, IMO.

Unless the editors can be persuaded to make U+3000 an exception to the default "retain", like common spaces (U+0020), compliance means treating this character maybe a bit counter-intuitively.

7. Breaking / elastic / removable - eg. U+0020 Space
        => Can occur in runs which must be wholly removed
        => Must handle border/padding
        => Must handle text-align
Any combinations I have missed, e.g. is there a "break / non elastic / remove at break" case?

Maybe the fixed width spaces?

More generally: any fixed-width character, added through a fo:character, implying a feasible/favorable break before or after, and having suppress-at-line-break="suppress".

I could put:

<fo:character character="a" suppress-at-line-break="suppress" />

in a document, surrounded by non-collapsible whitespace, and the formatter may decide to break before/after and drop the 'a'.

Fixed-width spaces could be viewed as a subset. If they aren't added via a fo:character, they would belong to category 'break - non- elastic - non-removable'. (speaking strictly XSL-FO)


Cheers,

Andreas

Reply via email to