ONYX - 9.0 - Utilisation

Finishing option management (PrintTickets)

De MappingDoc
Révision datée du 3 janvier 2025 à 08:07 par Jdieu (discussion | contributions) (Page créée avec « ::no   → front only »)
Autres langues :
English • ‎français

Introduction

We can see print tickets as printing options carried by a job intended to be printed. (Selection of input drawer, output drawer, double-sided, etc.)


This documentation deals with print tickets embedded in the XPS MAPPING file.

Operating principle

General

The XPS format was invented by Microsoft. Its first release dates from 2006. Mapping now uses (partially on its IBM-i OPALE version and completely on its Linux/Windows ONYX version) this format as a pivot format. In the case of XPS operation, the composition engine necessarily generates an XPS stream. Then MAPPING uses one of its converters to convert this XPS format into final streams (Zebra/TEC for label printing, PDF, PCL, etc.)

The principle is to position finishing information in the XPS document which will be taken up and translated by the conversions into the printing languages. The switch to use is -set:OPTION=value of the map_xps command. Options can be set globally (for the document) or at page level with either of the -pages:xxx (page selection) or -filter:xxx switches (page selection based on index values).

Different levels of the XPS file

The XPS format is a very structured format (unlike PDF for example) and also includes printing options (print tickets or finishing options). It is a compressed file (ZIP format). Its behavior structure 3 different levels:

  1. JOB level
  2. DOCUMENT level
  3. PAGE level

Each sub-level overloads its higher level.

Each of these levels can include print ticketing commands as well as other concepts. The /Metadata/Job_PT.xml file for the level in question contains the print ticket commands:

  1. Job level: /Metadata/Job_PT.xml
  2. Document level: /Documents/1/Metadata/Job_PT.xml (for the 1st document) or /Documents/2/Metadata/Job_PT.xml (for the 2nd document)
  3. Page level: /Documents/1/Pages/Metadata/Page1_PT.xml (for the 1st page of the 1st document) or /Documents/2/Pages/Metadata/Page10_PT.xml (for the 10th page of the 2nd document)

Example file Job_PT.xml or PageXX_PT.xml

Job level

The file containing print ticket information at job level is /Metadata/Job_PT.xml Mapping does not manage print tickets at the job level. Therefore, the content of this file remains the same for all XPS MAPPINGs. It is not possible to change it.

Here is its content:

<?xml version="1.0" encoding="UTF-16" standalone="yes"?>
<psf:PrintTicket xmlns:psf="http://schemas.microsoft.com/windows/2003/08/printing/printschemaframework" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" version="1" 
xmlns:nsmappingsuite="http://www.mappingsuite.com/XMLSchema/2008/3/mappingsuitexpsdocumentwriter" 
xmlns:psk="http://schemas.microsoft.com/windows/2003/08/printing/printschemakeywords">
</psf:PrintTicket>


Document level

The file containing print ticket information at document level is /Documents/1/Metadata/Job_PT.xml' (for the 1st document)


Here is an example of content:

<?xml version="1.0" encoding="UTF-16" standalone="yes"?>
<psf:PrintTicket xmlns:psf="http://schemas.microsoft.com/windows/2003/08/printing/printschemaframework" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" version="1" 
xmlns:nsmappingsuite="http://www.mappingsuite.com/XMLSchema/2008/3/mappingsuitexpsdocumentwriter" 
xmlns:psk="http://schemas.microsoft.com/windows/2003/08/printing/printschemakeywords">
<psf:Feature name="psk:PageMediaType">
<psf:Option name="psk:MEDIATYPE1">
</psf:Option>
</psf:Feature>
</psf:PrintTicket>


We can see that a print ticket command of mediatype which has the value MEDIATYPE1 has been inserted there.

<psf:Feature name="psk:PageMediaType">
<psf:Option name="psk:MEDIATYPE1">
</psf:Option>


In fact, the difference between the content of the file at job level (File not changed by print tickets) and this one is the insertion of these lines.


Example command to insert a medyatype command at document level:

IBM-i :

CALL PGM(MAP_XPS) PARM('-infile:/home/in.xps' '-set:MEDIATYPE=MEDIATYPE1' '-outfile:/home/out.xps')

Linux/Windows :

map_xps '-infile:/home/in.xps' '-set:MEDIATYPE=MEDIATYPE1' '-outfile:/home/out.xps'

Note: The absence of the -pages:X parameter in the map_xps command automatically positions its action (here the mediatype) at the document level and not at the page level


The different options that can be positioned in XPS are:


⇒ DUPLEX: front/back management


Possible values:
yes (or long)   → front/back following the long edges


shorts   → front/back following the short edges


no   → front only


⇒ FRONTSIDE : force l’impression d’une page sur un recto (utilisé en sortie PCL 5 uniquement, et à positionner au niveau page obligatoirement, soit en combinaison avec les options -filter:XXX et -pages:NN)

Valeurs possibles: yes / no


Attention : pour les XPS multi documents, le changement de document implique par défaut un retour sur recto, et ce quel que soit l'information "frontside" de la première page des document. Pour débrayer ce fonctionnement afin de permettre une impression R/V continue à travers tous les documents (c'est-à-dire sans tenir compte de la notion de document), il est possible d'ajouter un paramètre dans le XPSConfig.conf : <jobduplexalldocumentscontiguously>ON</jobduplexalldocumentscontiguously>


⇒ INPUTBIN / OUTPUTBIN : gestion des bacs d’entrée et de sortie

Valeurs possibles : valeur numérique uniquement


⇒ ORIENTATION : gestion de l’orientation des pages du document

Valeurs possibles:
0   Portrait
1   Paysage
2   Portrait inversé
3   Paysage inversé


⇒ COPY : nombre de copies (document complet ou certaines pages)

Valeurs possibles : valeur numérique uniquement


⇒ STAPLE : gestion de l’agrafage

Valeurs possibles:
1   SaddleStitch (agrafage au milieu de la feuille)
2   StapleBottomLeft (agrafage en bas à gauche)
3   StapleBottomRight (agrafage en bas à droite)
4   StapleDualBottom (agrafage en bas)
5   StapleDualLeft (agrafage à gauche)
6   StapleDualRight (agrafage à droite)
7   StapleDualTop (agrafage en haut)
8   StapleTopLeft (agrafage en haut à gauche)
9   StapleTopRight (agrafage en bas à droite)
10   None (pour stopper l’agrafage)


⇒ MEDIATYPE : gestion du type de papier

Valeurs possibles: valeur alphanumérique (exemples : Archive, Etiquette, Bristol, Préimprimé…)


⇒ NUP : regroupement de 1, 2 ou 4 pages du document initial sur 1 page en sortie

Valeurs possibles : 1, 2 ou 4


⇒ LEFTOFFSET : gestion de la marge gauche

Valeurs possibles: numérique, exprimée en points


⇒ TOPOFFSET : gestion de la marge haute

Valeurs possibles : numérique, exprimée en points


⇒ JOBCUT : commande de rupture de job (pour utiliser le couteau sur les imprimantes équipées)

Valeurs possibles : 0 ou 1


⇒ TOGGLE : commande de décalage du papier dans le bac de sortie des imprimantes

Valeurs possibles : 0 ou 1


Remarque :

Les commutateurs suivants sont respectivement équivalents (sauf pour l’orientation) : -duplex:XXX, -frontside:XXX, -inputbin:NN, -outputbin:NN, -copy:NN, -staple:NN, -mediatype:XXX, -nup:NN, -leftoffset:NN, -topoffset:NN, -jobcut:NN, -toggle:NN.


Exemples :

⇒ Pour paramétrer le recto/verso sur un fichier XPS existant :

map_xps -infile:/tmp/myfile.xps -set:DUPLEX=yes -outfile:/tmp/myoutfile.xps

⇒ Pour paramétrer le recto uniquement sur un fichier XPS existant :

map_xps -infile:/tmp/myfile.xps -set:DUPLEX=no -outfile:/tmp/myoutfile.xps

⇒ Pour forcer l’impression de certaines pages sur un bac d’entrée particulier :

map_xps -infile:/tmp/myfile.xps -set:INPUTBIN=2 -pages:2,3 -outfile:/tmp/myoutfile.xps

⇒ Pour paramétrer le recto sur la première page et recto/verso sur les suivantes :

map_xps -infile:/tmp/myfile.xps -set:DUPLEX=yes -outfile:/tmp/tmpfile.xps
map_xps -infile:/tmp/tmpfile.xps -set:DUPLEX=no -pages:1 -outfile:/tmp/myoutfile.xps