+/* If PAGE is smaller than SIZE along AXIS, inserts extra space to increase
+ its size to SIZE. */
+void
+render_page_stretch (struct render_page *page, enum table_axis axis,
+ int size)
+{
+ int extra = size - render_page_get_size (page, axis);
+ if (extra > 0)
+ {
+ int n = page->n[axis];
+ int error = 0;
+ int adjust = 0;
+ int i;
+
+ for (i = 2; i <= 2 * n + 1; i++)
+ {
+ if (!(i & 1))
+ {
+ error += extra;
+ adjust += error / n;
+ error %= n;
+ }
+ page->cp[axis][i] += adjust;
+ }
+ }
+}
+