Job Tickets are created with a dedicated Proxy Printer marked as Job Ticket Printer. As with any printer, a PPD extension file can be linked to this virtual printer.
In the PPD Extension file, special extensions are available to define Job Ticket IPP options, including Cost Rules. These IPP options are generic and abstracted from physical printers. When handling the ticket, the operator interprets the option values, selects a suitable printer, assures the right media are present in the target tray, and redirects the job to it.
Job Ticket IPP options can be defined for scope Media (single side of a page sheet), Sheet (single page sheet), Copy (sheet collection of a printed copy) and Set (the complete set of copies). The syntax is as follows:
*SPJobTicket/<scope>: <attr> \ [*|+]<value> ...
The | |
One or more option values. An NoteThe # Virtual print color mode, with dummy PPD option and values. *VPrintColorMode print-color-mode *VPrintColorMode dummy monochrome *VPrintColorMode dummy +color |
Cost Rules are introduced for each option scope in the sections below.
IPP Options defined in the Job Ticket context are not mapped to their PPD counterparts. Therefore, their chosen values will not be send with the print job.
IPP attributes describing media characteristics, like
media-color
and media-type
are
supported. Each option is prefixed with *SPJobTicket/Media:
Some examples:
*SPJobTicket/Media: media-color *white int.colored *SPJobTicket/Media: media-type *paper transparency labels ext.letterhead-1
Media Cost is charged per media side, and
specified for a combination of IPP values for media attributes. Each cost rule
is prefixed with *SPJobTicket/Media/Cost:
and formatted like
this:
The IPP <media*>/<value>
pairs referred to in
*SPJobTicket/Media/Cost
must either be automatically
picked up from the PPD, or be defined as PPD to IPP Mapping or
*SPJobTicket/Media
.
Some examples:
*SPJobTicket/Media/Cost: 0.0430 white-A4-080-S \ media-type/ext.paper-80 \ media-color/white \ media/iso_a4_210x297mm \ sides/one-sided *SPJobTicket/Media/Cost: 0.0610 color-A4-120-S \ media-type/ext.paper-120 \ media-color/!white \ media/iso_a4_210x297mm \ sides/one-sided *SPJobTicket/Media/Cost: 0.0390 white-A4-080-D \ media-type/ext.paper-80 \ media-color/white \ media/iso_a4_210x297mm \ sides/!one-sided *SPJobTicket/Media/Cost: 0.0790 letterhead-A4-S \ media-type/ext.letterhead-1 \ media/iso_a4_210x297mm \ sides/one-sided
When *SPJobTicket/Media/Cost items are present, they acts as constraint. When a user sets print job properties, a cost rule must be present that matches chosen media options. When no rule is found, a warning message is displayed to the user.
The calculated cost of the first cost rule, that applies to the Job Ticket option values, is used as media cost.
Job Ticket Sheet options specify finishing
actions, performed on a single printed sheet. Each option is prefixed with
*SPJobTicket/Sheet:
For example:
*SPJobTicket/Sheet: org.savapage-finishings-ext *none laminate
org.savapage-finishings-ext option to select an extra finishing to be performed manually by Job Ticket operator. |
Sheet Cost is charged per media sheet, and
specified for a combination of SPJobTicket/Sheet
and other
(media*
) attribute values. Each cost rule is prefixed
with *SPJobTicket/Sheet/Cost:
and formatted like this:
For example:
*SPJobTicket/Sheet/Cost: 0.5000 laminate-A4 org.savapage-finishings-ext/laminate \ media/iso_a4_210x297mm *SPJobTicket/Sheet/Cost: 0.7500 laminate-A3 org.savapage-finishings-ext/laminate \ media/iso_a3_297x420mm
The calculated cost of all sheet cost rules, that apply to the Job Ticket option values, are accumulated as cost per sheet.
Job Ticket Copy options specify finishing
actions, performed on a single printed copy. Each option is prefixed with
*SPJobTicket/Copy:
Some examples:
*SPJobTicket/Copy: org.savapage-cover-type *no-cover ext.printfront-1 *SPJobTicket/Copy: org.savapage-finishings-ext *none laminate bind adhesive ext.binder
org.savapage-cover-type option to select a cover
type. | |
org.savapage-finishings-ext option to select an
extra finishing to be performed manually by Job Ticket operator.
|
Copy Cost is charged per job copy, and
specified for a combination of SPJobTicket/Copy
and other
(media*
) attribute values. Each cost rule is prefixed
with *SPJobTicket/Copy/Cost:
and formatted like this:
For example:
*SPJobTicket/Copy/Cost: 0.5000 folder-A4 org.savapage-finishings-ext/ext.folder \ media/iso_a4_210x297mm
The calculated cost of all copy cost rules, that apply to the Job Ticket option values, are accumulated as cost per copy.
Job Ticket Copy Options are not confined to regular IPP attributes and Internal IPP Extensions. By utilizing External IPP Extensions, you can fully customize your Job Tickets Copy options and cost rules. For example:
*SPJobTicket/Copy: org.savapage.ext-myoption \ *none ext.choice-1 ext.choice-2 *SPJobTicket/Copy/Cost: 0.1000 myrule-1 \ org.savapage.ext-myoption/ext.choice-1 media/iso_a4_210x297mm *SPJobTicket/Copy/Cost: 0.1500 myrule-2 \ org.savapage.ext-myoption/ext.choice-2 media/iso_a3_297x420mm
Job Ticket Set options specify actions performed on the complete set of copies[55]. Each option is prefixed with
*SPJobTicket/Set:
For example:
*SPJobTicket/Set: org.savapage-job-sheets \ +none *job-start-sheet *SPJobTicket/Set: org.savapage-job-sheets-media \ *iso_a4_210x297mm +iso_a3_297x420mm
org.savapage-job-sheets option to select a job-sheet. | |
org.savapage-job-sheets-media option to select the job-sheet media. |
Set Cost is charged per job, and specified
for a combination of SPJobTicket/Set
and other
(org.savapage-job-sheets-*
) attribute values. Each cost
rule is prefixed with *SPJobTicket/Set/Cost:
and formatted
like this:
For example:
*SPJobTicket/Set/Cost: 0.05 banner-A4 org.savapage-job-sheets/!none \ org.savapage-job-sheets-media/iso_a4_210x297mm
The calculated cost of all cost rules, that apply to the Job Ticket option values, are accumulated as cost per set.
[55] The Job Ticket Set includes all copies, and therefore differs from the Set as defined in RFC8011, where it is “a logical boundary between the delivered Media Sheets of a printed Job. For example, in the case of a ten-page single Document with collated pages and a request for 50 copies, each of the 50 printed copies of the Document constitutes a Set. If the pages were uncollated, then 50 copies of each of the individual pages within the Document would represent each Set.”