After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 359032 - Scale setting doesn't affect printed size
Scale setting doesn't affect printed size
Status: RESOLVED FIXED
Product: evince
Classification: Core
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: Evince Maintainers
Evince Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-10-02 15:40 UTC by Luke Hutchison
Modified: 2007-01-04 17:16 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Luke Hutchison 2006-10-02 15:40:42 UTC
When printing a document from Evince with the new GTK printing framework, changing the scale of printing doesn't affect the size of printed output.
Comment 1 Ghee Teo 2006-10-09 15:57:21 UTC
This is a Evince bug not GTK+ printing bug,
The new GTK+ printing API determines the printing capabilities based on 2 things:
- Application specified capabilities using the API, gtk_print_unix_dialog_set_manual_capabilities
- The backend printing specified capabilities in the method, backend_class->printer_get_capabilities
For example, the CUPS backend specified that it is capable of handlingstatic GtkPrintCapabilities
cups_printer_get_capabilities (GtkPrinter *printer)
{
  return
    GTK_PRINT_CAPABILITY_COPIES |
    GTK_PRINT_CAPABILITY_COLLATE |
    GTK_PRINT_CAPABILITY_REVERSE;
}

Hence, it can handle multiple copies, collate or not and reverse or not.
The application need to handle this.

The problem here is that evince in ev-window.c claims to handle
GTK_PRINT_CAPABILITY_SCALE |

but when the user selects the scale factor, it does not generate PS that includes the scaling factor before sending to the backend.
Evince should really do a,

+      scale = gtk_print_settings_get_scale (window->priv->print_settings);

Apply that to the pages to be printed.
I have tried it, but only manage to get print current page and range to work, but not knowing evince enough to create a complete patch.

Does someone know how to transfer this bug to evince?


Comment 2 Luke Hutchison 2006-10-14 20:09:30 UTC
Hmm, the same seems true of "pages per sheet" -- setting the option doesn't change the printed output.  I suspect this is related to the scale issue.

It would also be nice if there were a "Fit to page" option that overrides a specific scale percentage.  On some other systems they combine some or all of "pages per sheet", "fit to page" and "fit to specfic scale" into a single combobox.

Comment 3 Sebastien Bacher 2006-10-23 19:49:17 UTC
Ubuntu bug somewhat similar: 
https://launchpad.net/distros/ubuntu/+source/evince/+bug/67164

"The settings made in page setup like "print only even pages" or "2 pages per sheet" are not respected on printing.

I think this is a major issue..."
Comment 4 Carlos Garcia Campos 2006-10-24 18:43:29 UTC
Yes, I know it's a major issue. Sorry for this problems, it's not clear enough to me which settings will be handled by GtkPrintJob and which settings have to be handled by evince. 

It should be fixed in head. Scale, copies, collate and inverse settings are taken into account now. 
Comment 5 Luke Hutchison 2006-10-24 21:35:13 UTC
Personally I think that if a program is using the Cairo interface to GtkPrintJob (rather than the direct Postscript option that e.g. OOo uses), GTK should handle it, otherwise everybody is going to be writing the same code over and over again :o(  There should at least be default handling that can be overridden...
Comment 6 Bruce Cowan 2007-01-04 17:02:51 UTC
Building GTK+ with the patch on bug #355350 fixes this for me.
Comment 7 Luke Hutchison 2007-01-04 17:16:12 UTC
Sounds good, but does that patch also work for PDF printing output?  That patch is for the CUPS backend only, AFAICT.