[cups.general] CUPS 1.1.23 pstops and %%BeginFeature...%%EndFeature

Michael Sweet mike at easysw.com
Tue May 16 04:13:36 PDT 2006


Johannes Meixner wrote:
> Hello,
> 
> in CUPS 1.1.23 the pstops filter does not remove
> %%BeginFeature...%%EndFeature stuff which it gets as input.
> 
> Why is it not removed from the input in any case?

Because for some options (particular CustomPageSize True) we have
no way to reconstruct the original option, so it is not safe to
remove if we want to retain the original document intent.

CUPS 1.2 adds support for %%IncludeFeature:, and we are encouraging
developers to use it or %cupsJobTicket: instead of embedding
printer-specific commands.

> ...
> We have many user problem reports because applications
> (in particular Mozilla/Firefox and OOo) like to add whatever
> %%BeginFeature...%%EndFeature stuff to their PostScript output
> and then this interferes with what pstops will add.

Normally this is not an issue - the worst issues come with
Foomatic-based drivers and Level 1 PS printers, which don't
implement options the same way as other drivers/printers...

> I wrote tons of explanations to the Mozilla/Firefox and OOo people
> to let their applications simply produce printer-independent generic
> PostScript if CUPS is used and then printing would simply work
> but they permanently insist not to understand :-(
> 
> Nevertheless I wonder whether the real meaning of Adobe DSC spec.
> may be a bit misunderstood because Adobe did not have CUPS in mind
> when they made it.

Actually, they did - the pstops filter is the document processor.

That said, DSC *does* have its limits and is really showing its
age.  There isn't much more you can do with the constraints of
PostScript, though, which is why we are so interested in moving
towards PDF as the standard/primary high-level document format and
PostScript as the fallback...

> Isn't it in fact for CUPS always the case that pstops can assume
> that it is "sent to a different printer than originally intended"
> when there is %%BeginFeature...%%EndFeature stuff in the pstops input?

No, applications like OOo use the PPD file and are formatted for
the printer.

> When the application had added %%BeginFeature...%%EndFeature stuff
> into its PostScript output then it had made it for whatever printer
> but the CUPS pstops filter cannot know for which printer the
> application has made it and therefore it must assume that the
> application's %%BeginFeature...%%EndFeature stuff will not
> match for the actual printer to which CUPS will send it.

Actually, we can't make that assumption...  There are certainly
things we can add to detect mismatched options, but we can't just
drop those commands since it will change how the document is printed,
possibly in a very unpredictable way.

-- 
______________________________________________________________________
Michael Sweet, Easy Software Products           mike at easysw dot com
Internet Printing and Publishing Software        http://www.easysw.com




More information about the cups mailing list