[cups.bugs] [LOW] STR #2916: str2831 patchmade%%BeginFeature/%%EndFeature stop working
Helge Blischke
h.blischke at srz.de
Thu Aug 28 06:06:16 PDT 2008
Michael R Sweet wrote:
> Helge Blischke wrote:
>
>> Michael Sweet wrote:
>>
>>> [STR Closed w/o Resolution]
>>>
>>> You are using a local printer driver, along with a printer driver on the
>>> Linux system. Both get run, so the Linux driver interferes with the Mac
>>> driver.
>>>
>>> Use a raw queue on the Linux system or use CUPS printer sharing with the
>>> Mac system.
>>>
>>> Not a bug.
>>>
>>> Link: http://www.cups.org/str.php?L2916
>>> Version: 1.3.8
>>> Fix Version: Will Not Fix
>>>
>>
>> I *do* think it is a bug. It is quite common - and legitime - for
>> applications to insert reature requests/settings into the setup section
>> of a PS job (between the %%BeginSetup and %%EndSetup comments).
>
>
> Files containing device-specific commands need to be submitted using
> the application/vnd.cups-postscript document-format value. Otherwise
> we treat the file as device-independent PostScript, which has
> DIFFERENT rules to follow.
>
> Specifically, if you have an application that wants to produce a
> document that overrides the options the user has specified, it should
> use %%IncludeFeature or %cupsJobTicket instead of %%Begin/EndFeature
> to a) allow CUPS to know that it should apply those options instead
> and b) allow CUPS to insert the proper PostScript commands since you
> most likely have not done so.
>
> We do our best to not override %%Begin/EndFeature commands, however
> because the rules for embedding those things are not well-defined
> (i.e. no custom page size support, no support for copies, no ordering
> requirements, etc.) bad things can happen, and every "workaround" you
> come up with can cause problems. IMHO, we have only improved our
> track record for such things, since before it was possible to have
> jobs that would not even print.
>
I guess we aren't as much apart as it may seem: If we can agree on the
following:
- Emit whatever the PPD defines as *defaults* at the *beginning*
of the setup section. This assures that vital things like jobPatchFile
and the like are emitted.
- Emit whatever the user specifies as command line options or via
%cupsJobTicket at the end of the setup section.
So, what I do and mentioned in my previous post is just that - split
up the dp_setup function into two parts, one for the defaults and
one for the rest as described above.
Helge
--
Helge Blischke
Softwareentwicklung
H.Blischke at acm.org
More information about the cups-devel
mailing list