No subject
Tue Oct 7 11:14:41 PDT 2008
ter in
that report.
Duplex printing on my Brother Laser printer using PostScript output
has has always been problematic with every SUSE version I have used
with this printer. The printer is PostScript capable (BR-Script3).
This printer series has an unusual "feature". In
order to print in duplex a lever at the back has to be in a
specific position to match the used paper size (I only use A4).
However the printjobs generated by many programs (e.g. all KDE jobs)
cause the printer to request (via its status display) the movement=20
of this lever to the "Letter" paper size position although I have
specified "A4" in the page setup dialogs. While the document prints
after moving the lever the output is unusable because it is
not correctly positioned on the paper (in fact some area is even
missing).
With wireshark I found that the problematic jobs all contain the
following PostScript code:
/pdfSetup {
3 1 roll 2 array astore
/setpagedevice where {
pop 3 dict begin
/PageSize exch def
/ImagingBBox null def
/Policies 1 dict dup begin /PageSize 3 def end def
{ /Duplex true def } if
currentdict end setpagedevice
} {
pop pop
} ifelse
} def
I initially had problems locating the software which is responsible
for inserting this code but a binary grep of the /usr partition
finally found it in libpoppler. Changing the code above to
use "/PageSize 1" (instead of "/PageSize 3") fixes my problem.
Adobes "PostScript Language Reference (3rd ed.)" describes the
"/PageSize n" command as follows:
n=3D3 Select the nearest available medium and adjust the page to =EF=AC=81t=
, as de-
scribed below under =E2=80=9CRecovery Policies and Media Selection.=E2=
=80=9D
n=3D1 Do not consider the PageSize parameter in media selection. Subse-
quent calls to currentpagedevice will return a dictionary whose
PageSize entry describes the medium that was actually selected.
For me the description does not really help to see if the code as=20
used by libpoppler is actually correct. With n=3D3 the printer may select a
different paper size then I selected in the print setup=20
which is contrary to what I would expect since I explicitly requested a
page size in the print setup. On the other hand Brothers selection is
also quite clearly wrong (since it selects a paper size which it
in principle could handle but which is not available and then prints
incorrectly on the "A4" paper).
I don't have a wide selection of PostScript Printers available to
test if the change to "/PageSize 1" causes any problems on other
printers so I don't know if this is an appropriate fix.
--=20
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=3Demail
------- You are receiving this mail because: -------
You are the assignee for the bug.=
More information about the Poppler-bugs
mailing list