Victor Mote wrote:
Unless the spec indicates something different, my naive solution would be to
distribute it in proportion to their pre-existing (optimal) size.
The spec basically leaves it to the implementation. There is
only a vague comment "User agents may choose to use the value of
'leader-length.optimum' to determine where to break the line"
(sect. 7.20.4, nicely repeated in

So with 3 leaders, A, B, & C:
  new sizeA = sizeA + (sizeA / (sizeA + sizeB + sizeC) * slack)

Compute the above for each leader, limiting each to the max. If any max out,
they are completed, and the excess returns to the pool. Repeat this for
remaining leaders until excess is used up or all of them max out. Don't
apply your rounding until the end. If all of them max out, it would seem
reasonable to distribute any remaining slack equally as space between the
This is an excellent formulation of what was only vaguely
forming in my head. Thanks!


To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to