[cups.general] duplex doesn't work - please help

Johannes Meixner jsmeix at suse.de
Thu Apr 7 01:53:54 PDT 2005


could you please comment whether arbitrary JCL options can be
added to arbitrary Foomatic PPF files?
Many thanks!

On Apr 6 22:58 Wolfgang Wegner wrote (shortened):
> In my case, I see this problem with my Lexmark 4039: its postscript
> is too slow to be usable with "modern" (*sigh*) documents, so I use
> ghostscript. However, to be able to use duplex, I have to use the
> ljet3d driver (which does duplex and only duplex), if I want to print
> simplex, I have to use lj4dith or similar - and this while the
> printer perfectly understands PJL

A 100% perfect framework exists: Use an appropriate PPD file.

As Lexmark seems not to care at all about Linux you won't get
an appropriate PPD file from them.
You may like to tell Lexmark about
because only when many many real users request Linux support
again and again form the manufacturers, they will care about it.

On the other hand do not expect that free software developers
have exactly your printer so that you may not get an appropriate
PPD file from them.

But of course you can make the appropriate PPD file for your
printer by yourself.
It is much easier as it looks on the first glance.
But don't expect to have it ready tomorrow.
You must of course learn how PPD files work.

In your case the general idea is:

Via "JCL" options (Job Control Language) you can specify any PJL
commands (PJL is one kind of a JCL) in the PPD file and of course
you can make the JCL options (like any other option) available for
the user to select a particular setting, e.g. add something like:
*JCLBegin: "<1B>%-12345X<0A>"
*JCLEnd: "<1B>%-12345X<0A>"

*JCLOpenUI *PJLDuplex/Duplex: Boolean
*DefaultPJLDuplex: False
*OrderDependency: 10 JCLSetup *PJLDuplex
*PJLDuplex True/Duplex: "@PJL SET DUPLEX = ON<0A>"
*PJLDuplex False/No Duplex: "@PJL SET DUPLEX = OFF<0A>"
*JCLCloseUI: *PJLDuplex

This works for any PostScript printer and it works in
a special way for the  Foomatic PPD file for the pxlmono
Ghostscript driver but at the moment I don't know whether
arbitrary JCL options work with the foomatic-rip filter for
any Ghostscript driver i.e. whether you can simply add something
like the above JCL option to any Foomatic PPD file.

If it doesn't work with JCL and Foomatic PPD files,
an alternative framework exists: Use appropriate CUPS filters.
I.e. you can add your own filtering scripts which do both
the Ghostscript conversion and the PJL stuff, see

Kind Regards
Johannes Meixner
SUSE LINUX Products GmbH, Maxfeldstrasse 5      Mail: jsmeix at suse.de
90409 Nuernberg, Germany                    WWW: http://www.suse.de/

More information about the cups mailing list