- if (export_to_ps) {
- EvPrintRange *ranges = NULL;
- EvPageCache *page_cache;
- gint n_ranges = 0;
- gint current_page;
- gint width;
- gint height;
-
- ev_window_clear_print_job (window);
-
- current_page =
- gtk_print_unix_dialog_get_current_page (GTK_PRINT_UNIX_DIALOG (dialog));
-
- switch (print_pages) {
- case GTK_PRINT_PAGES_CURRENT:
- ranges = g_new0 (EvPrintRange, 1);
-
- ranges->start = current_page;
- ranges->end = current_page;
- n_ranges = 1;
-
- break;
- case GTK_PRINT_PAGES_RANGES: {
- GtkPageRange *page_range;
-
- page_range = gtk_print_settings_get_page_ranges (window->priv->print_settings,
- &n_ranges);
- if (n_ranges > 0)
- ranges = g_memdup (page_range, n_ranges * sizeof (GtkPageRange));
- }
- break;
- default:
- break;
- }
-
- page_cache = ev_page_cache_get (window->priv->document);
- ev_page_cache_get_size (page_cache,
- current_page,
- 0, 1.0,
- &width, &height);