On Nov 9, 2005, at 23:38, J.Pietschmann wrote:

Manuel Mall wrote:
What's the opinion around the group on how external-graphics / instream-foreign-objects are suppose to be handled with respect to determining linebreak opportunities.

FOP 0.20.5 implemented b). I read the UAX14 catch all rule LB20 the way
that it also recommends b).

Also seems to make sense, because both e-g and i-f-o are monolithic inlines.

Now, I have another question / remark.

Look at InlineCharIterator: the boundary EOT characters for start and end of the inline, are they passed on to Layout? If so, currently the following fragment:

...</fo:inline><fo:external-graphic src="..." />

would, according to UAX#14 LB2b, always create a favorable line- break, even without adding explicit ZWSP.

<fo:block><fo:external-graphic .../> = no break-before (already starting a line)
</fo:block><fo:external-graphic .../> = idem dito

Now I'm confused: are there any cases where option a) (in combination with surrounding characters/sibling nodes) is different from option b)? (That is, apart from adding 'boundary characters' between the graphic and the surrounding content?)

IOW: Would the element list not always look like the one described in option b), if we take into account the influence from surrounding elements and/or PCDATA? (Even in case of option a))

If one focuses solely on the element list for e-g or i-f-o, I'd still go for a), but I do agree that even if we decide on following that option, the end-result would look more or less the same as option b) because an e-g/i-f-o cannot appear completely loose in the source document. There is always a parent block, neighbouring inline and/or preceding/following characters, which would generate the penalties (correct?)



Reply via email to