How to reverse-engineer a CUPS printer/print job?
7
votes
3
answers
2393
views
I have quality issue with PDF printing local (CUPS) vs. Google Cloud Printing. (GCP is better, with CUPS I get wrong size, wrong characters, wrong fonts. So I want to know what CUPS does!)
The printer can handle a couple of formats natively:
application/pdf (≥ 1.0, ≤ 1.7), image/jpeg, image/tiff, image/pwg-raster
I have added the printer to CUPS in different ways over the months, I also used it „driverless”, where CUPS detects the printer in the local network itself.
In all cases it prints PDF with errors; not entirely, but rendering the print useless to me. What happens: page is zoomed in by ~30%, starting from page 2 or 3 the fonts get mixed up, characters turn into symbols, paragraphs printed in bold, etc...
The same PDFs turn out great if printed via Google Cloud Print on the same printer. Directly feeding the printer a USB-stick with the PDF is equally great. – I want to have the same good results with printing from my computer!
My questions are:
- I want to know what pipeline each CUPS printer takes on my machine before it is sent to the real printer. Does it detect the format? How? Will it reconvert to PDF again? Which PPD will it use? What other decisions is the pipeline taking and what conversions?
- From a passed print job I want to know: What did CUPS detect? What conversions did it do? Where can I fetch the intermediate outputs generated?
I found no good entry point for CUPS debugging/reverse-engineering so far (with _my_ questions in mind)...
Asked by Robert Siemer
(2445 rep)
Jul 17, 2018, 01:00 PM
Last activity: Jan 18, 2023, 03:05 AM
Last activity: Jan 18, 2023, 03:05 AM