Luca, can you have a look at this please - this is my code after integrating your patch to add the knuth elements for line end / start border/padding for the common justify="start" or "end" case. What I am getting now is a space at the beginning of each line break!:
if (lineStartBAP != 0 || lineEndBAP != 0) { sequence.add (new KnuthGlue(lineEndBAP, 0, 0, new LeafPosition(this, -1), true)); sequence.add (new KnuthPenalty(0, 0, false, new LeafPosition(this, -1), true)); sequence.add (new KnuthGlue(wordSpaceIPD.opt - (lineStartBAP + lineEndBAP), wordSpaceIPD.max - wordSpaceIPD.opt, wordSpaceIPD.opt - wordSpaceIPD.min, new LeafPosition(this, -1), true)); sequence.add (new KnuthInlineBox(0, 0, 0, 0, notifyPos(new LeafPosition(this, -1)), true)); sequence.add (new KnuthPenalty(0, KnuthElement.INFINITE, false, new LeafPosition(this, -1), true)); sequence.add (new KnuthGlue(lineStartBAP, 0, 0, new LeafPosition(this, vecAreaInfo.size() - 1), false)); } else { ... } Manuel On Thu, 8 Sep 2005 06:48 pm, you wrote: > Author: lfurini > Date: Thu Sep 8 03:47:57 2005 > New Revision: 279551 > > URL: http://svn.apache.org/viewcvs?rev=279551&view=rev > Log: > Removing trailing spaces at the end of text areas: this is done by > storing the Position, whose value points to the AreaInfo created for > a space, inside the glue element that is ignored if there is a line > break. > > This fixes item 2) in bug 36533. > > Modified: > > xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/inline/TextLa >youtManager.java > xmlgraphics/fop/trunk/test/layoutengine/testcases/wrapper_text-transf >orm_1.xml > > Modified: > xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/inline/TextLa >youtManager.java URL: > http://svn.apache.org/viewcvs/xmlgraphics/fop/trunk/src/java/org/apac >he/fop/layoutmgr/inline/TextLayoutManager.java?rev=279551&r1=279550&r2 >=279551&view=diff > ===================================================================== >========= --- > xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/inline/TextLa >youtManager.java (original) +++ > xmlgraphics/fop/trunk/src/java/org/apache/fop/layoutmgr/inline/TextLa >youtManager.java Thu Sep 8 03:47:57 2005 @@ -458,14 +458,14 @@ > wordSpaceIPD, false)); > sequence.add > (new KnuthGlue(0, 3 * > LineLayoutManager.DEFAULT_SPACE_WIDTH, 0, - > new LeafPosition(this, vecAreaInfo.size() - 1), false)); > + new LeafPosition(this, -1), > false)); sequence.add > (new KnuthPenalty(0, 0, false, > new LeafPosition(this, > -1), true)); sequence.add > (new KnuthGlue(wordSpaceIPD.opt, > - 6 * > LineLayoutManager.DEFAULT_SPACE_WIDTH, 0, - > new LeafPosition(this, -1), true)); + > new LeafPosition(this, vecAreaInfo.size() - 1), > true)); sequence.add > (new KnuthInlineBox(0, 0, 0, 0, > new LeafPosition(this, -1), > true)); @@ -486,14 +486,14 @@ > wordSpaceIPD, false)); > sequence.add > (new KnuthGlue(0, 3 * wordSpaceIPD.opt, 0, > - new LeafPosition(this, > vecAreaInfo.size() - 1), false)); + > new LeafPosition(this, -1), false)); sequence.add > (new KnuthPenalty(0, 0, false, > new LeafPosition(this, > -1), true)); sequence.add > (new KnuthGlue(wordSpaceIPD.opt, > - 3 * wordSpaceIPD.opt, 0, > - new LeafPosition(this, -1), > true)); + new > LeafPosition(this, vecAreaInfo.size() - 1), true)); iNextStart ++; > break; > > > Modified: > xmlgraphics/fop/trunk/test/layoutengine/testcases/wrapper_text-transf >orm_1.xml URL: > http://svn.apache.org/viewcvs/xmlgraphics/fop/trunk/test/layoutengine >/testcases/wrapper_text-transform_1.xml?rev=279551&r1=279550&r2=279551 >&view=diff > ===================================================================== >========= --- > xmlgraphics/fop/trunk/test/layoutengine/testcases/wrapper_text-transf >orm_1.xml (original) +++ > xmlgraphics/fop/trunk/test/layoutengine/testcases/wrapper_text-transf >orm_1.xml Thu Sep 8 03:47:57 2005 @@ -41,7 +41,8 @@ > <checks> > <eval expected="none: This tExT is left as-IS." > xpath="//flow/block[1]"/> <eval expected="capitalize: This TExT Is > Capitalized." xpath="//flow/block[2]"/> - <eval > expected="uppercase: THIS TEXT IS CONVERTED TO UPPERCASE. LIBERTÉ, > ÉGALITÉ, FRATERNITÉ UND KÄSE." xpath="//flow/block[3]"/> - > <eval expected="lowercase: this text is converted to lowercase. > liberté, égalité, fraternité und käse." > xpath="//flow/block[4]"/> + <!-- spaces are discarded when around > a line break --> > + <eval expected="uppercase: THIS TEXT IS CONVERTED TO > UPPERCASE.LIBERTÉ, ÉGALITÉ, FRATERNITÉ UND KÄSE." > xpath="//flow/block[3]"/> + <eval expected="lowercase: this text > is converted to lowercase. liberté, égalité,fraternité und > käse." xpath="//flow/block[4]"/> </checks> > </testcase> > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: > [EMAIL PROTECTED] For additional > commands, e-mail: [EMAIL PROTECTED]