From: Tobias Hoffmann <lprint-list@thax.hardliners.org>
To: Alex Korobkin <korobkin+op@gmail.com>
Cc: "printing-architecture@lists.linux-foundation.org"
<printing-architecture@lists.linux-foundation.org>,
Till Kamppeter <till.kamppeter@gmail.com>
Subject: Re: [Printing-architecture] Number of copies in pure PDF workflow
Date: Wed, 15 Oct 2014 12:50:16 +0200 [thread overview]
Message-ID: <543E5168.9010108@thax.hardliners.org> (raw)
In-Reply-To: <543D9108.6050307@thax.hardliners.org>
[-- Attachment #1: Type: text/plain, Size: 2342 bytes --]
On 14/10/14 23:09, Tobias Hoffmann wrote:
> On 14/10/14 21:17, Alex Korobkin wrote:
>> Shouldn't pdftopdf just insert PJL SET COPIES=X without any related
>> code in PPD? PJL SET COPIES seems to be a standard PJL command.
>
Hmm, the biggest problem seems to be that everything from ppd->jcl_begin
(i.e. for PCL: "\033%-12345X@") until ppd->jcl_ps (set to
*JCLToPDFInterpreter in pdftopdf, i.e."ENTER LANGUAGE") is written by
cups's ppdEmitJCL() function.
As far as I understand it, this are the options:
a) stick to what cups provides in terms of PPD settings (and probably
move the Copies replacement code before ppdEmitJCL),
b) patch cups, namely ppdEmitJCL() in emit.c.
As cups does detect PCL as JCL here and sets "JOB NAME", "DISPLAY" or
"RDYMSG DISPLAY" that would be the best place to add PJL SET COPIES.
But this will affect all PPDs with JCL, e.g. when pure PostScript is
used... and, in case the patch is not accepted upstream, cups-filters
has to ship it(?)
c) do not use ppdEmitJCL at all. We would loose e.g. JOB NAME, but have
better control over the output...
If you don't set *JCLToPDFInterpreter, and use *pdftopdfJCLBegin,
together with more pdftopdfJCL* keywords, this could work. The current
emitJCLOptions implementation does not insert newlines, though. I'm not
sure if the PPD value could instead contain it, instead...
I think Koji Otani only used the pdftopdfJCL* insertion to pass stuff
to pdftoopvp, in a format that only used one line, separated by ";".
One of his examples is:
> *OpenUI *PageSize/Page Size: PickOne
> *DefaultPageSize: A4
> *PageSize A4/A4:
> *pdftopdfJCLPageSize A4/A4: "PS=A4;"
> *PageSize Letter/US Letter:
> *pdftopdfJCLPageSize Letter/US Letter: "PS=LT;"
> *CloseUI: *PageSize
I do not understand his original design fully, yet.
d) We can try a hacky workaround: In pdftopdf_jcl.c, emitPreamble(), set
ppd->jcl_ps to an empty string. Then ppdEmitJCL will not skip JCL
processing all together, but it also will not write ENTER LANGUAGE at
the end. But it will result in an empty line. Would that be a problem in
PCL? After that we can write SET COPIES and ENTER LANGUAGE ourselves.
Or something like ppd->jcl_ps=concat("...SET COPIES...\n",
JCLToPDFInterpreter->value) ?
And yes, Till basically has to decide how to proceed.
Tobias
[-- Attachment #2: Type: text/html, Size: 3367 bytes --]
next prev parent reply other threads:[~2014-10-15 10:50 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-03 19:28 [Printing-architecture] Number of copies in pure PDF workflow Alex Korobkin
2014-10-03 19:49 ` Ira McDonald
2014-10-03 20:23 ` Alex Korobkin
2014-10-04 15:40 ` Michael Sweet
2014-10-04 17:36 ` Alex Korobkin
2014-10-04 19:47 ` Tobias Hoffmann
2014-10-05 4:58 ` Alex Korobkin
2014-10-04 19:48 ` Michael Sweet
2014-10-05 5:03 ` Alex Korobkin
2014-10-06 14:12 ` Michael Sweet
2014-10-06 15:07 ` Alex Korobkin
2014-10-06 15:32 ` Michael Sweet
2014-10-06 15:55 ` Alex Korobkin
2014-10-06 16:01 ` Michael Sweet
2014-10-07 11:49 ` Till Kamppeter
2014-10-07 11:55 ` Michael Sweet
2014-10-07 12:12 ` Till Kamppeter
2014-10-06 12:54 ` Till Kamppeter
2014-10-06 14:06 ` Alex Korobkin
2014-10-07 14:06 ` Alex Korobkin
2014-10-07 20:03 ` Till Kamppeter
2014-10-07 21:18 ` Alex Korobkin
2014-10-07 21:45 ` Tobias Hoffmann
2014-10-08 2:53 ` Alex Korobkin
2014-10-08 9:57 ` Till Kamppeter
2014-10-08 14:40 ` Tobias Hoffmann
2014-10-08 19:41 ` Alex Korobkin
2014-10-08 20:53 ` Tobias Hoffmann
2014-10-10 18:38 ` Alex Korobkin
2014-10-10 20:06 ` Tobias Hoffmann
2014-10-10 20:58 ` Till Kamppeter
2014-10-14 19:17 ` Alex Korobkin
2014-10-14 21:09 ` Tobias Hoffmann
2014-10-15 10:50 ` Tobias Hoffmann [this message]
2014-10-15 13:12 ` Till Kamppeter
2014-10-15 15:04 ` Till Kamppeter
2014-10-15 16:17 ` Till Kamppeter
2014-10-15 19:28 ` Tobias Hoffmann
2014-10-16 15:53 ` Till Kamppeter
2014-10-16 16:52 ` Alex Korobkin
2014-10-16 20:59 ` Tobias Hoffmann
2014-10-17 16:22 ` Alex Korobkin
2014-10-17 16:40 ` Till Kamppeter
2014-10-20 16:23 ` Alex Korobkin
2014-10-20 16:29 ` Till Kamppeter
2014-10-20 17:28 ` Alex Korobkin
2014-10-20 20:30 ` Till Kamppeter
2014-10-20 21:18 ` Alex Korobkin
2014-10-15 16:22 ` Tobias Hoffmann
2014-10-15 17:06 ` Alex Korobkin
2014-10-15 19:02 ` Tobias Hoffmann
2014-10-15 19:16 ` Tobias Hoffmann
2014-10-07 22:40 ` Michael Sweet
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=543E5168.9010108@thax.hardliners.org \
--to=lprint-list@thax.hardliners.org \
--cc=korobkin+op@gmail.com \
--cc=printing-architecture@lists.linux-foundation.org \
--cc=till.kamppeter@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.