- char *dest_name = NULL;
- if (p->page_style->include_outline)
- {
- static int counter = 0;
- dest_name = xasprintf ("dest%d", counter++);
- char *attrs = xasprintf ("name='%s'", dest_name);
- cairo_tag_begin (p->cr, CAIRO_TAG_DEST, attrs);
- free (attrs);
- }
+ static int counter = 0;
+ dest_name = xasprintf ("dest%d", counter++);
+ char *attrs = xasprintf ("name='%s'", dest_name);
+ cairo_tag_begin (p->cr, CAIRO_TAG_DEST, attrs);
+ free (attrs);
+ }
+
+ int spacing = p->fsm_style->object_spacing;
+ int chunk = xr_fsm_draw_slice (p->fsm, p->cr,
+ p->fsm_style->size[V] - p->y);
+ p->y += chunk + spacing;
+ cairo_translate (p->cr, 0, xr_to_pt (chunk + spacing));