X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Foutput%2Fcairo-pager.c;h=e87ec325248f2cff94d2fbdd2c57d7d1febc6a07;hb=a09789d93e0160b14f1b06ad91080a249c252253;hp=6249a3ab8e09829a5aecff5df351b5f4625007cc;hpb=e333a444bba7a84682b26a68c0894a8ca4f353a4;p=pspp diff --git a/src/output/cairo-pager.c b/src/output/cairo-pager.c index 6249a3ab8e..e87ec32524 100644 --- a/src/output/cairo-pager.c +++ b/src/output/cairo-pager.c @@ -322,6 +322,14 @@ xr_pager_add_page (struct xr_pager *p, cairo_t *cr) fs->size[H], fs->size[V] + ps->object_spacing, fs->font_resolution); + cairo_surface_t *surface = cairo_get_target (cr); + if (cairo_surface_get_type (surface) == CAIRO_SURFACE_TYPE_PDF) + { + char *page_label = xasprintf ("%d", page_number); + cairo_pdf_surface_set_page_label (surface, page_label); + free (page_label); + } + xr_pager_run (p); } @@ -443,27 +451,8 @@ xr_pager_run (struct xr_pager *p) } p->n_opens = 0; - const char *text; - if (is_table_item (p->item)) - { - const struct table_item_text *title - = table_item_get_title (to_table_item (p->item)); - text = title ? title->content : "Table"; - } - else if (is_chart_item (p->item)) - { - const char *title - = chart_item_get_title (to_chart_item (p->item)); - text = title ? title : "Chart"; - } - else - text = (is_page_eject_item (p->item) ? "Page Break" - : is_page_setup_item (p->item) ? "Page Setup" - : is_message_item (p->item) ? "Message" - : is_text_item (p->item) ? "Text" - : NULL); - if (text) - add_outline (p->cr, parent_group_id, text, attrs, 0); + add_outline (p->cr, parent_group_id, + output_item_get_label (p->item), attrs, 0); free (attrs); } free (dest_name);