On Mon, May 01, 2006 at 08:20:04PM +0200, Simon Pepping wrote: > Hello, > > During the past weeks I added a test facility. This allows one to feed > test texts in an XHTML-like document. It is now available on my web > site, http://www.leverkruid.eu/GKPLinebreaking/index.html. Since > publication, I discovered that there is a problem with the treatment > of soft-hyphens. I am working on it.
The problem has been solved. In doing so I introduced a new element, box-penalty. I also added a section to my essay about a derivation of the elements. Finally I changed the title into something less generalized. > Note that I am changing web domain from nl to eu. > > On Mon, Apr 03, 2006 at 09:38:13PM +0200, Simon Pepping wrote: > > Hello, > > > > Some time ago Manuel Mall pointed out a number of problems with > > linebreaking in FOP. Specifically, there are some hard to solve > > problems with suppression of whitespace before a linebreak. > > > > I propose that the problems can be solved using a generalized set of > > building blocks (a.k.a. Knuth elements): > > > > 1. Box, with elastic width. A box has two boolean properties: > > > > 1. suppress-at-linebreak, default value false. According to > > the FO specification, in the default case in an FO text > > it is true for the space character U+0020. The user may > > deviate from the default and set it to false for the > > space character, and to true for other characters. > > > > 2. is-BP, default value false. This property indicates > > whether a box corresponds to a border and/or a padding > > width. It is true for boxes which are generated by > > padding widths and borders. > > > > 2. Penalty, with a penalty value and two elastic widths. When the > > penalty element is the chosen linebreak, it contributes the > > first elastic width before the linebreak and the second elastic > > width after the linebreak. > > > > Penalties are legal breakpoints. Boxes are not. Regards, Simon -- Simon Pepping home page: http://www.leverkruid.eu