[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#827040: cups-filters: Error when printing to Dell 2330dn printer



On Sun 12 Jun 2016 at 15:58:32 +0100, Sam Morris wrote:

> On Sun, 2016-06-12 at 15:18 +0100, Brian Potkin wrote:
> > Hello Sam; thank you for your report. I'm not too sure what is going on
> > here so a bit of futher explanation would be helpful.
> > 
> > On Sat 11 Jun 2016 at 14:25:12 +0100, Sam Morris wrote:
> > 
> > > My Dell 2330dn printer outputs an error half way through print jobs from
> > > Evolution. The output is:
> > 
> > Is the printing taking place directly from the Evolution print dialog?
> 
> That's correct.
> 
> 
> > >     ERROR:
> > >     invalidaccess
> > >     OFFENDING COMMAND:
> > >     copy
> > >     STACK:
> > >     --nostringval--
> > >     --nostringval--
> > >     --nostringval--
> > >     8.80119
> > >     -mark-
> > >     -mark-
> > >     -mark-
> > > 
> > > Attached is a job that reproduces the error, and the PPD for the printer
> > > in case that's helpful.
> > 
> > It would appear not beause this a PostScript file and the print dialog
> > generates a PDF. How are you printing this file? With lp/lpr?
> 
> The file is the result of printing the email, from Evolution via the
> GTK+ print dialog, to a test queue created like this:
> 
> lpadmin -p test -E -v file:/tmp/printout -P /etc/cups/ppd/dell2330.ppd

I take "job" to mean the file which is *input* to the filtering system,
not the file which is output to the printer from the filtering system. I
think I'm unconfused now! Colour me a pedant. :)

The input file is the email. From the GTK dialog Cairo always produces a
PDF and with your queue "test" the filtering is

  email -> pdftopdf -> pdftops -> PS to the printer

and the default renderer is gs.

> > printer-bug-public-repro.ps has
> > 
> >   %%Creator: GPL Ghostscript 919 (ps2write)
> > 
> > so it looks like pdftops was involved in producing it.
> > 
> > > I've tried using lpoptions to set the queue to use pdftops instead of
> > > gs, but it doesn't help. Although when I look at the generated ps, it
> > > doesn't seem very different after I set:

It won't be any different at all. lpoptions deals with the PPD file
options. You have to set up the queue to render with Poppler's pdftops,

  lpadmin -p dell2330 -E -v <whatever> -P /etc/cups/ppd/dell2330.ppd

How do you go on now with printing? 

> > >     lpoptions -p dell2330 -o pdftops-renderer=pdftops
> > > 
> > > Which resulted in the following ~/.cups/lpoptions:
> > > 
> > >     Dest dell2330 pdftops-renderer=pdftops
> > >     Dest test pdftops-renderer=pdftops psdebug=true
> > > 
> > > I believe Gtk's printing code obeys this file, so not sure what I did
> > > wrong here.
> > 
> > You have a PostScript PPD (there is no *cupsFilters line in it) so
> > cups-filters does not use pdftops.
> 
> Ok, that explains it. I thought pdftops might be involved in converting
> whatever Evolution (via GTK+'s printing system) output to PS for the
> printer to process.

If you were sending a PostScript job I would be correct. You are not, so
I am not correct. pdftops is used. I think we are on the same page now.

Regarding

   ERROR:
   invalidaccess
   etc,etc

The printer doesn't like the PostScript produced by Ghostscript; for my
money that is bug in its PS interpreter. I sent your output PS file to
my HP LaserJet using

  lp -d laserjet -o raw printer-bug-public-repro.ps

and it printed out perfectly.

Regards,

Brian.


Reply to: