DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=31206>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=31206 Improvements over the new line breaking algorithm ------- Additional Comments From [EMAIL PROTECTED] 2004-09-19 18:34 ------- Luca, I have a few remarks: 1. InlineStackingLM implements InlineLM. LineLM extends InlineStackingLM and thus implements InlineLM. IMHO it should not. Implementing InlineLM should be equivalent to generatesInlineAreas returning true. 2. TextLM now extends LeafNodeLM instead of AbstractLM. What is the gain? I see no related changes in TextLM. 3. In LineLM: // this constant is used to create elements when text-align is center: // every TextLM descendant of LineLM must use the same value, // otherwise the line breaking algorithm does not find the right // break point public static final int DEFAULT_SPACE_WIDTH = 3336; private static final int INFINITE_RATIO = 1000; If these are static final, they might be better placed in InlineLM. Alternatively, they might be attributes of the LineLM object, which allows changing them per paragraph, e.g. depending on the font. But then the problem arises how to propagate them to the descendant LMs. 4. The textheight of the large font is rather large. The property lineheight is not followed (reproduce existing behaviour). 5. LineLayoutManager:675: line is always 3, so that firstElementIndex = 1 for the first line, and the first box is skipped in the line height calculation. I attach a test fo that illustrates the text and line height issues. Regards, Simon