Created attachment 1452844 [details] test file Description of problem: Evince doesn't print some characters of a PDF document Version-Release number of selected component (if applicable): evince-3.28.2-2.fc28.x86_64 How reproducible: always Steps to Reproduce: 1.open test document 2. 3. Actual results: some lines are not printed Expected results: complete printing Additional info: qpdf prints the full document (please compare it)
Hi, could you attach a photo of the printout here? I don't have any printer available this week.
Created attachment 1453526 [details] output of my printer when using evince when using qpdf print is correct, as the original Pdf document
Hi, it seems to me that this is an issue of the printer. I think that it advertises support for printing of PDFs but the support does not work well. I've tried to print this PDF here and it did not print at all. Which also indicates that the PDF is quite nonstandard. It has fonts stored in a strange way. Especially the "/Helv" one which is a resource in an object which is also a resource - so it is nested and the interpreter probably does not find it when it needs it. This probably confuses the PDF interpreters in the printers. Evince opens the file fine, just the printing is affected so the issue lower in the stack. I'm reassigning this to CUPS for evaluation. If I convert the file to ps and print, it prints ok. Regards
Hi Antonio and Marek! Thank you for reporting this issue and investigating it further! I managed to reproduce the issue on my HP OfficeJet Pro 8500 (I got similar output as Antonio) and on Canon ImageRunner (same result as Marek, the pdf wasn't print at all). From current research: I tried to print the attached pdf form evince, okular and by CUPS command line utility - lp: okular - file printed fine, but file from okular cups recognizes as postscript, so it used one more filter than others - gstopdf - so I won't investigate its behavior further (tried only on HP) , but other two - evince and lp - files from both are recognized as pdf by CUPS scheduler, so I focused on them (I'll write about printing it on Canon printer, because it produces true postscript, instead PCL for HP): lp - file was printed fine, using filters pdftopdf and foomatic-rip(which calls gs) evince - file wasn't printed at all, I saw in log: cupsd[1230]: This document does not conform to the Adobe Document Structuring Conventions and may not print correctly. Then I checked what lp and evince send to CUPS by pdfinfo command: - lp sends PDF file with version 1.4, optimized and produced by iText - evince sends PDF file with version 1.5, non-optimized, produced by cairo Binary content of files differs, but My hypothesis is - evince sends a pdf with different PDF version and some contents of attached pdf are kind of special and ghostcript crashes on it. Because when I print a file into FileDevice printer with Canon printer's ppd, output (which should go to the printer and already went through filters) has postscript file type, but it cannot be opened by gs. It ends with error: GPL Ghostscript 9.22 (2017-10-04) Copyright (C) 2017 Artifex Software, Inc. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. Error: /undefined in **** Operand stack: Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1999 1 3 %oparray_pop 1998 1 3 %oparray_pop 1982 1 3 %oparray_pop 1868 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- Dictionary stack: --dict:979/1684(ro)(G)-- --dict:0/20(G)-- --dict:84/200(L)-- Current allocation mode is local Last OS error: Resource temporarily unavailable Current file position is 2736 GPL Ghostscript 9.22: Unrecoverable error, exit code 1 So I would reassign it to ghostscript for more investigation (I'll look for exact command line option for gs). Antonio, would you mind attaching archive with files mentioned at https://fedoraproject.org/wiki/How_to_debug_printing_problems#Filing_a_bug_report to confirm my findings?
Created attachment 1458878 [details] troubleshoot file from system-config-printer not sure if it is sufficient
Thank you! (In reply to antonio montagnani from comment #5) > Created attachment 1458878 [details] > troubleshoot file from system-config-printer > > not sure if it is sufficient That's why there is mentioned to attach cupsd log too in the how-to... would you mind attaching these too?
Created attachment 1459113 [details] journal output of journalctl -u cups -e
su -c "lpinfo -l -v" Dispositivo: uri = serial:/dev/ttyS0?baud=115200 classe = serial info = Serial Port #1 marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = beh classe = network info = Backend Error Handler marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = cups-pdf:/ classe = file info = CUPS-PDF marca-e-modello = Virtual PDF Printer device-id = MFG:Generic;MDL:CUPS-PDF Printer;DES:Generic CUPS-PDF Printer;CLS:PRINTER;CMD:POSTSCRIPT; posizione = Dispositivo: uri = hp classe = direct info = HP Printer (HPLIP) marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = ipps classe = network info = Internet Printing Protocol (ipps) marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = https classe = network info = Internet Printing Protocol (https) marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = ipp classe = network info = Internet Printing Protocol (ipp) marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = usb://Samsung/ML-1610?serial=3921BRJL304582.. classe = direct info = Samsung ML-1610 marca-e-modello = Samsung ML-1610 device-id = MFG:Samsung;CMD:GDI;MDL:ML-1610;CLS:PRINTER;MODE:GDI;STATUS:IDLE; posizione = Dispositivo: uri = socket classe = network info = AppSocket/HP JetDirect marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = http classe = network info = Internet Printing Protocol (http) marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = lpd classe = network info = LPD/LPR Host o stampante marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = smb classe = network info = Windows Printer via SAMBA marca-e-modello = Unknown device-id = posizione = Dispositivo: uri = hpfax classe = direct info = HP Fax (HPLIP) marca-e-modello = Unknown device-id = posizione =
grep -H '^*NickName:' /etc/cups/ppd/*.ppd /etc/cups/ppd/Cups-PDF.ppd:*NickName: "Generic CUPS-PDF Printer" /etc/cups/ppd/Samsung-ML-1610.ppd:*NickName: "Samsung ML-1610, 2.0.0"
Created attachment 1459121 [details] cupsd.conf file
Thank you for the data! Unfortunately, attached cupsd log doesn't contain print job logs. I updated the how-to accordingly, to sum it up, would you mind following these steps: 1) print a file from evince 2) find out JID - job id - by 'lpstat -W all' - it's number after '-' in the last line of output 3) attach file with journal log acquired by '$ journalctl -r -u cups --since=<time_when _you_printed_a_file> > cupsd.log' 4) attach file with journal log for specific job '$ journalctl -r -u cups JID=N > job.log', where N is job id
lpstat -W all Cups-PDF-3 antonio 16384 lun 02 nov 2015 08:39:52 CET Cups-PDF-5 antonio 63488 ven 06 nov 2015 21:57:12 CET Cups-PDF-151 antonio 190464 ven 23 set 2016 17:37:43 CEST Samsung-ML-1610-269 antonio 1024 gio 31 mag 2018 13:37:06 CEST Samsung-ML-1610-270 antonio 1024 gio 31 mag 2018 17:34:29 CEST Samsung-ML-1610-271 antonio 1024 gio 31 mag 2018 17:53:30 CEST Samsung-ML-1610-272 antonio 698368 mer 06 giu 2018 21:12:34 CEST Samsung-ML-1610-273 antonio 596992 mer 06 giu 2018 21:22:02 CEST Samsung-ML-1610-274 antonio 140288 mer 06 giu 2018 21:52:08 CEST Samsung-ML-1610-275 antonio 65536 mer 06 giu 2018 21:54:46 CEST Samsung-ML-1610-276 antonio 698368 gio 07 giu 2018 00:02:11 CEST Samsung-ML-1610-277 antonio 1024 gio 07 giu 2018 00:03:00 CEST Samsung-ML-1610-278 antonio 1024 gio 07 giu 2018 00:03:12 CEST Samsung-ML-1610-279 antonio 599040 gio 07 giu 2018 12:48:56 CEST Samsung-ML-1610-280 antonio 578560 gio 07 giu 2018 14:53:09 CEST Samsung-ML-1610-281 antonio 128000 gio 07 giu 2018 16:07:55 CEST Samsung-ML-1610-282 antonio 235520 gio 07 giu 2018 16:44:18 CEST Samsung-ML-1610-283 antonio 235520 gio 07 giu 2018 16:45:41 CEST Samsung-ML-1610-284 antonio 235520 gio 07 giu 2018 16:46:49 CEST Samsung-ML-1610-285 antonio 384000 gio 07 giu 2018 21:06:06 CEST Samsung-ML-1610-286 antonio 157696 lun 18 giu 2018 14:50:50 CEST Samsung-ML-1610-287 antonio 39936 lun 18 giu 2018 14:51:06 CEST Samsung-ML-1610-288 antonio 157696 lun 18 giu 2018 14:53:16 CEST Samsung-ML-1610-289 antonio 160768 lun 18 giu 2018 15:12:00 CEST Samsung-ML-1610-290 antonio 77824 lun 18 giu 2018 15:14:15 CEST Samsung-ML-1610-291 antonio 160768 lun 18 giu 2018 15:23:00 CEST Samsung-ML-1610-292 antonio 586752 mar 19 giu 2018 11:47:40 CEST Samsung-ML-1610-293 antonio 599040 mar 19 giu 2018 11:51:45 CEST Samsung-ML-1610-294 antonio 384000 lun 25 giu 2018 16:55:12 CEST Samsung-ML-1610-295 antonio 58368 lun 25 giu 2018 18:22:05 CEST Samsung-ML-1610-296 antonio 578560 mer 27 giu 2018 12:21:19 CEST Samsung-ML-1610-297 antonio 698368 mer 27 giu 2018 12:22:21 CEST Samsung-ML-1610-298 antonio 408576 mer 27 giu 2018 14:57:16 CEST Samsung-ML-1610-299 antonio 128000 mer 27 giu 2018 15:01:00 CEST Samsung-ML-1610-300 antonio 81920 mer 27 giu 2018 15:08:07 CEST Samsung-ML-1610-301 antonio 54272 mer 27 giu 2018 15:08:31 CEST Samsung-ML-1610-302 antonio 98304 mer 27 giu 2018 15:08:46 CEST Samsung-ML-1610-303 antonio 599040 mer 27 giu 2018 15:15:27 CEST Samsung-ML-1610-304 antonio 578560 mer 27 giu 2018 15:17:06 CEST Samsung-ML-1610-305 antonio 140288 mer 27 giu 2018 15:29:14 CEST Samsung-ML-1610-306 antonio 76800 mer 27 giu 2018 15:30:15 CEST Samsung-ML-1610-307 antonio 76800 mer 27 giu 2018 15:34:19 CEST Samsung-ML-1610-308 antonio 164864 mer 27 giu 2018 15:40:28 CEST Samsung-ML-1610-309 antonio 57344 mer 27 giu 2018 15:40:47 CEST Samsung-ML-1610-310 antonio 41984 mer 27 giu 2018 15:41:03 CEST Samsung-ML-1610-311 antonio 35840 ven 29 giu 2018 11:01:08 CEST Samsung-ML-1610-312 antonio 28672 ven 29 giu 2018 11:56:49 CEST Samsung-ML-1610-313 antonio 538624 sab 30 giu 2018 12:05:03 CEST Samsung-ML-1610-314 antonio 584704 sab 30 giu 2018 12:06:07 CEST Samsung-ML-1610-315 antonio 72704 mer 11 lug 2018 15:56:01 CEST Samsung-ML-1610-316 antonio 72704 mer 11 lug 2018 16:34:42 CEST Samsung-ML-1610-317 antonio 17408 gio 12 lug 2018 15:10:59 CEST Samsung-ML-1610-318 antonio 17408 gio 12 lug 2018 15:12:35 CEST Samsung-ML-1610-320 antonio 157696 lun 16 lug 2018 12:27:19 CEST Samsung-ML-1610-321 antonio 135168 lun 16 lug 2018 15:34:32 CEST but the output journalctl -r -u cups JID=321 > job.log is empty -- Logs begin at Thu 2016-11-24 11:33:08 CET, end at Mon 2018-07-16 15:42:01 CEST. -- -- No entries -- why??
Created attachment 1459191 [details] cupsd.log shortened
What is your network topology? Is your machine, where you issue the printing, the same machine, where you gather logs and communicates with the printer directly - not through a server?
And other thing - these job logs goes away after some time in journal - so you will not get any logs for an old job (that's why I mentioned print a file before gathering) if you used an old job. I would have seen it from lpstat command's output, but I don't understand Italian.
Created attachment 1459346 [details] Files from troubleshooting Files which I created during troubleshooting - logs, pdf etc.
(In reply to Zdenek Dohnal from comment #14) > What is your network topology? Is your machine, where you issue the > printing, the same machine, where you gather logs and communicates with the > printer directly - not through a server? same machine where printer is connected
(In reply to Zdenek Dohnal from comment #15) > And other thing - these job logs goes away after some time in journal - so > you will not get any logs for an old job (that's why I mentioned print a > file before gathering) if you used an old job. > I would have seen it from lpstat command's output, but I don't understand > Italian. the last print was Samsung-ML-1610-321 antonio 135168 lun 16 lug 2018 15:34:32 CEST (juky 16, 2018) and immediately after printing I issued journalctl -r -u cups JID=321 > job.log that surprised me as it was empty.
(In reply to antonio montagnani from comment #17) > (In reply to Zdenek Dohnal from comment #14) > > What is your network topology? Is your machine, where you issue the > > printing, the same machine, where you gather logs and communicates with the > > printer directly - not through a server? > > same machine where printer is connected Hmm... if you are on the same machine where you issue printing and gather logs there, there should be logs. What is output of 'grep -i 'ErrorLog' /etc/cups/cups-files.conf'? And would you mind upload whole cups journal log when you issue a printing and printing successfully ends (f.e. you issue printing at 10:24 and it finishes 10:25, so you use 'journalctl -r -u cups --since=10:23 --until=10:27')? It is really curious.
journalctl -r -u cups --since=18:41 --until=18:44 > journal.log -- Logs begin at Sat 2016-12-24 23:57:15 CET, end at Tue 2018-07-17 18:44:37 CEST. -- lug 17 18:42:38 pcdesktop1 cupsd[939]: REQUEST localhost - - "POST /printers/Samsung-ML-1610 HTTP/1.1" 200 135237 Print-Job successful-ok [root@pcdesktop1 antonio]# grep -i 'ErrorLog' /etc/cups/cups-files.conf ErrorLog syslog
When I was going through cups mailing list, I found out it could be cairo issue. It is not same issue as they speak about, but symptoms are alike - when printing from evince, the document has missing letters. when printing from some other sw (by lp command or from okular, I didn't try others) - the printout has missing letters or didn't print at all: https://lists.cups.org/pipermail/cups/2018-September/074211.html The symptoms are very alike - reassigning to the cairo for more debugging.
Quote from thread, which makes me think it could be an issue in cairo: "Evince converts the submitted PDF to another PDF using Cairo before sending it to CUPS/cups-filters."
This message is a reminder that Fedora 28 is nearing its end of life. On 2019-May-28 Fedora will stop maintaining and issuing updates for Fedora 28. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '28'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 28 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
Fedora 28 changed to end-of-life (EOL) status on 2019-05-28. Fedora 28 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed.