Hi Simon,

Ok, I've taken out my LaTeX book again to be sure I understand you.


Your proposal to improve the algorithm for the placement of footnotes
and before-floats sounds fine. A few comments.

'Ideally there would be a configuration setting telling which ratio of
the page should be filled with normal content; if this ratio is null
then pages only made of out-of-line objects would be allowed.' I think
this may be split into several configuration settings:
- The minimum amount of normal content on a page.

OK. This corresponds to the \textfraction parameter, right?

- Whether float pages are allowed. Even when the minimum amount is not
  zero, the user may set this to true.

OK. ...mmmh, found no dedicated LaTeX parameter for that.

- The minimum amount of float content on a float page before it may be
  considered feasible. Only relying on the normal demerits calculation
  for the stretch or shrink may be too restrictive.

Moreover, if the figures are made of images, there is likely to be few
This is also the \floatpagefraction parameter? Actually I don't really
understand this parameter. At least, I don't understand its interest:
this means that underfull float-only pages are acceptable? This looks
weird to me.

But as it would be easy to implement, I can do it. Related question:
would footnotes be allowed on float-only pages, or only before-floats?
This may be useful for books with many many footnotes. But for other
books this can look weird. WDYT? Another config parameter?

In fact, these are configuration parameters in LaTeX.

Regarding the demerits for deferred out-of-line objects, a simple
multiplication with the page difference produces a linear
relation. This may be too weak, and a squared or steeper relation may
be preferable.

No. Period.

Ok, some explanations ;-) This would break the property of optimal
substructure which makes the dynamic programming approach work. In his
thesis, Plass proved that using a squared function leads to an
NP-complete problem. In "Pagination Reconsidered", Br├╝ggeman-Klein et
al. showed that using a linear function is nearer to a human's feelings,
is solvable by dynamic programming, and gives satisfying results. So
I think we may go with it.

Regards, Simon

Thank you,

Reply via email to