Module pagebuilders.pageant
The page·ant "new page builder" for re·sil·ient.
Derived from SILE's base/default pagebuilder.
Some code in this file comes from SILE's core pagebuilder.
License: MIT. Copyright (c) The SILE Organization / Simon Cozens et al.
This file is part of re·sil·ient, a set of extensions to SILE.
License: MIT. Copyright (c) 2025 Didier Willis / Omikhkeia
Class pagebuilders.pageant
pagebuilder:_init () | (Constructor) Initialize the pagebuilder. |
pagebuilder:collateVboxes (vboxlist) | (Collate a list of vboxes into a single vbox. |
pagebuilder:findBestBreak (options) | Find the best page break in a list of vboxes. |
Class pagebuilders.pageant
- pagebuilder:_init ()
- (Constructor) Initialize the pagebuilder.
- pagebuilder:collateVboxes (vboxlist)
-
(Collate a list of vboxes into a single vbox.
FIXME: This has nothing to do here.
Parameters:
- vboxlist table A list of vboxes
- pagebuilder:findBestBreak (options)
-
Find the best page break in a list of vboxes.
Note: Almost 1/3 of the time in a typical SILE in taken iterating through this function. As a result there are some micro-optimizations here that make it a-typical of preferred coding styles. In particular note that we absolutize heavily iterated lengths as early as possible and make make direct calls to their integer amounts, assumed to be in points by the point they are called without actually checking!
Parameters:
- options table Options table (vboxlist, target, force)