Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PPD Generator for driverless printing: Workaround if printer reports faulty resolution #5088

Closed
tillkamppeter opened this issue Aug 18, 2017 · 2 comments
Assignees

Comments

@tillkamppeter
Copy link

There are some IPP Everywhere/PWG Raster printers with a firmware bug which report a wrong resolution as pwg-raster-document-resolution-supported IPP attribute. If this happens (horizontal and/or vertical resolution is < 75 dpi) the attached patch tries the printer-resolution-supported attribute and if this is also wrong (< 75 dpi) it falls back to 300 dpi.
The problem was reported on the Brother MFC-9340CDW (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=868360) which reports that it support PWG Raster but has the pwg-raster-document-resolution-supported IPP attribute reporting a resolution of 600x2dpi which the PPD generator of CUPS uses and then the filters of CUPS and cups-filters generate a wrong bitmap for the pages. Note that the poster of the Debian bug has returned the printer to the store before he could finally test the fix, so he cannot give further input.
I have applied the fix already to cups-filters, therefore the problem now only occurs when it is actually CUPS generating the PPD file (CUPS creates driverless queue fully automatically on-demand or "lpadmin -m everywhere").
Patch for CUPS:
pwg-raster-resolution-fallback.patch.txt
IPP attributes of Brother MFC-9340CDW:
Brother-MFC-9340CDW-ipp-attrs.txt

@tillkamppeter
Copy link
Author

Also the patch of Issue #5091 solves this.

@michaelrsweet
Copy link
Collaborator

We are not going to add infinite workarounds for buggy printers. This is an obvious bug that the printer vendor needs to fix - we are not going to add a workaround.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants