evince patch for multipage collated even odd sheets
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Evince |
Expired
|
Medium
|
|||
evince (Ubuntu) |
Fix Released
|
Low
|
Ubuntu Desktop Bugs |
Bug Description
Binary package hint: evince
This patch against evince_
* multiple pages per sheet (lp107025)
* even and odd sheets (lp107025)
* multiple collated copies + multiple pages per sheet (lp282659)
In this context it is important to know that it behaves likes lpr with n-up and even/odd options passed:
if you have a document with 5 pages and want to print 2 pages per sheet, MANUAL duplex
print odd sheets:
{1,2} , {5}
flip sheets and print even sheets:
{3,4}
IE: you need to make sure to remove the sheet with page 5 from the stack, evince will not produce empty sheets to fully automate the process. This would be nice, but it would mess with other things. Besides, it is the way multipage even & odd printing works on other platforms and the native GtkPrintOperation.
------------------
It does NOT solve bugs related to:
* multiple pages per sheet + reverse order (lp377102)
* the weird ordering of pages when pages_per_sheet = 6 (related to: lp328143)
as that would require a complete rethinking of the way the output is assembled for printing.
------------------
It MAY solve:
* evince prints multiple (collated) copies as one job
* weird stapling behaviour with multiple copies
ie: lp258364
I'm not sure about this because as far as I can tell the multiple copies are still sent as one print job, but by solving lp282659 we introduce blank spaces on sheets so the two copies are clearly separated, it depends on how the driver treats this.
----------------
Although this IS an upstream issue, upstream is completely reworking EvPrintOperation to use GtkPrintOperation if possible (AFAIK). I will submit an upstream bug but this patch could solve problems on ubuntu at least.
The patch needs some testing though as there is potential for regressions with duplex printers (as I don't have one to test) and there is danger of a division by zero. (although I think the variable in question is guaranteed to be nonzero, you never know with multithreading)
Changed in evince: | |
status: | Unknown → New |
Changed in evince: | |
status: | New → Confirmed |
Changed in evince: | |
importance: | Unknown → Medium |
Changed in evince: | |
status: | Confirmed → Expired |
I just realized that my printer (samsung ml-2010) has a duplex functionality (for instance: collated, copies=2, print all pages, long edge, pages per sheet=2) where the printer itself splits the job in two and waits for the user to reinsert the pages and push a button. I can confirm that this functionality is NOT broken by the patch and would therefore assume that fully automatic duplex printers are not broken either.