Methods and apparatus for variable document printing are disclosed in
which a graphical user interface is configured to allow user manipulation
of layout rules associated with content containers within a template for
variable document generation. One method involves laying out (626)
container objects (407, 408) forming part of a template (624) intended
for a variable data document. The objects each have a rectangular
boundary in two-dimensional space, and the method comprises detecting an
operation (628, 2800) to modify a position of at least one edge of at
least one of the objects. Then, rules of association between edges of the
objects having a corresponding orientation to the one edge are
identified. A position of at least the one edge is then modified whilst
observing the rules of association between all the correspondingly
oriented edges. Finally an objective function derived from the rules of
association between the correspondingly oriented edges is minimized
(3009) to thereby balance a layout of the objects in at least the
dimension of modification. Other methods involve maintaining the
objective function for a group of edges, the addition and removal of
constraints in respect of correspondingly oriented edges, the removal,
addition and then removal of constraints in modifying the width of a
container, the calculation of text container sizes, and the creation of
tables, particularly for text containers.