OPALE - 10.0 - Utilisation - La commande MAP XPS

Différence entre versions

De MappingDoc
imported>Admin
(Extraction de pages)
 
(76 révisions intermédiaires par 6 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 +
<languages/>
 +
<translate>
 +
==Introduction== <!--T:1-->
  
=='''Introduction'''==
+
<!--T:2-->
 
La commande MAP_XPS est l'une des commandes principales d'OPALE Server. Elle permet d'effectuer un nombre important de traitements listés ci-dessous.
 
La commande MAP_XPS est l'une des commandes principales d'OPALE Server. Elle permet d'effectuer un nombre important de traitements listés ci-dessous.
  
 +
<!--T:3-->
 
Dans un traitement typique, le fichier à maquetter est d'abord produit au format XPS via la commande MAPCPYSPLF, puis la commande MAP_XPS prend le relais pour effectuer les traitements souhaités sur le fichier XPS.
 
Dans un traitement typique, le fichier à maquetter est d'abord produit au format XPS via la commande MAPCPYSPLF, puis la commande MAP_XPS prend le relais pour effectuer les traitements souhaités sur le fichier XPS.
  
[[File:Xps-intro.PNG|200px|thumb|center|]]   
+
<!--T:4-->
 +
[[File:Xps-intro.PNG|200px|center|sans_cadre]]   
  
  
 +
<!--T:5-->
 
Pour utiliser la commande MAP_XPS, il faut passer par un <code> CALL PGM(MAP_XPS) PARM ('-infile:/home/map2019/file.PDF' '-outfile:/home/map2019/file.xps' '-toXPS' '-fromPDF') </code>
 
Pour utiliser la commande MAP_XPS, il faut passer par un <code> CALL PGM(MAP_XPS) PARM ('-infile:/home/map2019/file.PDF' '-outfile:/home/map2019/file.xps' '-toXPS' '-fromPDF') </code>
  
 +
<!--T:6-->
 
La commande MAPXPS (sans underscore) existe également. Elle possède moins de fonctionnalités et permet de réaliser principalement des conversions. Par contre, il faut d'abord charger la bibliothèque en question.
 
La commande MAPXPS (sans underscore) existe également. Elle possède moins de fonctionnalités et permet de réaliser principalement des conversions. Par contre, il faut d'abord charger la bibliothèque en question.
  
=='''Conversions de fichiers'''==
+
==Conversions de fichiers== <!--T:7-->
 
=== Conversion de documents en entrée ===
 
=== Conversion de documents en entrée ===
  
 +
<!--T:8-->
 
Le principe est de convertir des documents existants au format XPS, en vue de leur prise en charge et de leurs traitements futurs dans Mapping.  
 
Le principe est de convertir des documents existants au format XPS, en vue de leur prise en charge et de leurs traitements futurs dans Mapping.  
  
 +
<!--T:9-->
 
Les langages d’entrée supportés sont : AFP, ESCP, IGP, Image (BMP, JPG, PCX, PNG et TIFF), PCL, PDF, PS, SCS, TXT, Xerox, XPS, ZEBRA (ou ZPL), TEC
 
Les langages d’entrée supportés sont : AFP, ESCP, IGP, Image (BMP, JPG, PCX, PNG et TIFF), PCL, PDF, PS, SCS, TXT, Xerox, XPS, ZEBRA (ou ZPL), TEC
  
 +
 +
<!--T:10-->
 
Exemples :
 
Exemples :
 
  map_xps -infile:/home/map2019/email.pcl -fromPCL -outfile:/home/map2019/email.xps -toXPS  
 
  map_xps -infile:/home/map2019/email.pcl -fromPCL -outfile:/home/map2019/email.xps -toXPS  
Ligne 28 : Ligne 39 :
 
  map_xps -infile:/home/map2019/image.jpg -fromImage -outfile:/home/map2019/image.xps -toXPS -profile:fromJPEG
 
  map_xps -infile:/home/map2019/image.jpg -fromImage -outfile:/home/map2019/image.xps -toXPS -profile:fromJPEG
  
 +
<!--T:11-->
 
Ce principe de conversion peut en outre être affiné en utilisant un profil défini dans le fichier de configuration.
 
Ce principe de conversion peut en outre être affiné en utilisant un profil défini dans le fichier de configuration.
  
[[File:Mapxps entree.PNG|600px|thumb|center|]]
+
<!--T:12-->
 +
[[File:Mapxps entree.PNG|600px|center|sans_cadre]]
 +
 
 +
=== Conversion des fichiers XPS vers un format de sortie === <!--T:13-->
  
=== Conversion des fichiers XPS vers un format de sortie ===
+
<!--T:14-->
 
Le principe est de convertir des fichiers XPS (générés ou non par Mapping) en vue de leur diffusion finale (impression, envoi par mail, archivage…) et en fonction de leur canal de diffusion.  
 
Le principe est de convertir des fichiers XPS (générés ou non par Mapping) en vue de leur diffusion finale (impression, envoi par mail, archivage…) et en fonction de leur canal de diffusion.  
  
 +
<!--T:15-->
 
Les langages de sortie supportés sont : AFP, BMP, DOCX, DPL, EPL, ESC, ESCP, HTML, IGP, JPG, Monarch, PCL, PDF, PNG, ProPrinter, PS, RTF, TEC, TIF, TXT, XMLDRAW, XPS, ZEBRA / ZPL.
 
Les langages de sortie supportés sont : AFP, BMP, DOCX, DPL, EPL, ESC, ESCP, HTML, IGP, JPG, Monarch, PCL, PDF, PNG, ProPrinter, PS, RTF, TEC, TIF, TXT, XMLDRAW, XPS, ZEBRA / ZPL.
  
 +
<!--T:16-->
 
Exemples :
 
Exemples :
 
  map_xps -infile:/home/map2019/email.xps -toPCL -outfile:/home/map2019/email.pcl  
 
  map_xps -infile:/home/map2019/email.xps -toPCL -outfile:/home/map2019/email.pcl  
 
  map_xps -infile:/home/map2019/email.xps -toPDF -outfile:/home/map2019/email.pdf
 
  map_xps -infile:/home/map2019/email.xps -toPDF -outfile:/home/map2019/email.pdf
  
[[File:MAP_XPS.PNG|600px|thumb|center|]]   
+
<!--T:17-->
 +
[[File:MAP_XPS.PNG|600px|center|sans_cadre]]   
 +
 
  
 +
<!--T:18-->
 
Ce principe de conversion peut en outre être affiné en utilisant un profil défini dans le fichier de configuration.  
 
Ce principe de conversion peut en outre être affiné en utilisant un profil défini dans le fichier de configuration.  
  
 +
<!--T:19-->
 
Exemple :
 
Exemple :
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –convert –config:MYPDF
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –convert –config:MYPDF
  
[[File:Mapxps-profil.PNG|600px|thumb|center|]]   
+
<!--T:20-->
 +
[[File:Mapxps-profil.PNG|600px|center|sans_cadre]]   
  
 +
<!--T:21-->
 
Avec les paramètres :
 
Avec les paramètres :
  -config:XXXX ou -profile:XXXX => sélection du profil à utiliser pour la conversion
+
  <code>-config:XXXX</code> ou <code>-profile:XXXX</code> => sélection du profil à utiliser pour la conversion
  -convert => force la conversion en utilisant le profil sélectionné
+
  <code>-convert</code> => force la conversion en utilisant le profil sélectionné
  
 +
<!--T:22-->
 
Et un profil MYPDF défini dans le fichier de configuration :
 
Et un profil MYPDF défini dans le fichier de configuration :
 
  <MYPDF>
 
  <MYPDF>
Ligne 61 : Ligne 85 :
 
  <color>ON</color>
 
  <color>ON</color>
 
  </MYPDF>
 
  </MYPDF>
 
Pour appeler un profil de conversion en ligne de commande, le langage doit être à « *AUTO » sur
 
iSeries, et ne doit pas être "forcé" sur Unix ou Windows (pas d’utilisation simultanée des arguments - profile:XXX et -toPCL par exemple).
 
  
=== Paramètres spécifiques pour la sortie AFPDS ===
+
<!--T:23-->
 +
Pour appeler un profil de conversion en ligne de commande, le langage doit être à <code>*AUTO</code> sur IBM i, et ne doit pas être "forcé" sur Unix ou Windows (pas d’utilisation simultanée des arguments <code>-profile:XXX</code> et <code>-toPCL</code> par exemple).
 +
 
 +
 
 +
<!--T:24-->
 +
Remarque :
 +
 
 +
<!--T:25-->
 +
Sur IBM i, le fichier XPSConfig.conf se trouve dans le dossier home/mapping.
 +
 
 +
=== Paramètres spécifiques pour la sortie AFPDS === <!--T:26-->
  
 +
<!--T:27-->
 
En complément de la conversion XPS vers AFPDS, il est possible de forcer la résolution des polices et des images :
 
En complément de la conversion XPS vers AFPDS, il est possible de forcer la résolution des polices et des images :
 
  -fontRes:300 : résolution des polices
 
  -fontRes:300 : résolution des polices
 
  -imageRes:300 : résolution des images  
 
  -imageRes:300 : résolution des images  
  
 +
<!--T:28-->
 
Valeurs supportées : 240, 300 ou 600 dpi.
 
Valeurs supportées : 240, 300 ou 600 dpi.
  
=== Utilisation des paramètres de profils ===
+
=== Utilisation des paramètres de profils === <!--T:29-->
 +
 
 +
<!--T:30-->
 
Tous les paramètres mentionnés et expliqués dans les conversions (entrée ou sortie) sont également utilisables en ligne de commande. Pour cela, la syntaxe suivante devra être ajoutée à la commande map_xps de conversion :
 
Tous les paramètres mentionnés et expliqués dans les conversions (entrée ou sortie) sont également utilisables en ligne de commande. Pour cela, la syntaxe suivante devra être ajoutée à la commande map_xps de conversion :
 
  -param:nom_du_paramètre=valeur
 
  -param:nom_du_paramètre=valeur
  
 +
<!--T:31-->
 
Exemple :
 
Exemple :
 
  map_xps -infile:/home/map2019/label.xps -outfile:/home/map2019/label.zpl -toZPL -param:resolution=203 -param:barcode=off
 
  map_xps -infile:/home/map2019/label.xps -outfile:/home/map2019/label.zpl -toZPL -param:resolution=203 -param:barcode=off
  
===Gestion des critères d’indexation===
+
===Gestion des critères d’indexation=== <!--T:32-->
 
 
==== Lister les index disponibles et leurs valeurs ====
 
==== Lister les index disponibles et leurs valeurs ====
 +
 +
<!--T:33-->
 
Pour lister tous les critères d’indexation présents dans le document
 
Pour lister tous les critères d’indexation présents dans le document
  
 +
<!--T:34-->
 
Exemple :
 
Exemple :
 
  map_xps -infile:/home/map2019/email.xps -dumpIndex
 
  map_xps -infile:/home/map2019/email.xps -dumpIndex
  
[[File:Mapxps-index.PNG|600px|thumb|center|]]  
+
<!--T:35-->
 +
[[File:Mapxps-index.PNG|600px|center|sans_cadre]]  
  
 +
 +
<!--T:36-->
 
Pour lister toutes les valeurs d’un index présent dans le document Indexation d’un document
 
Pour lister toutes les valeurs d’un index présent dans le document Indexation d’un document
  
 +
 +
<!--T:37-->
 
Exemple :
 
Exemple :
 
  map_xps -infile:/home/map2019/email.xps –dumpIndex:CUSTOMER
 
  map_xps -infile:/home/map2019/email.xps –dumpIndex:CUSTOMER
  
====Ajout d’une valeur d’index sur toutes les pages d’un document====
+
====Ajout d’une valeur d’index sur toutes les pages d’un document==== <!--T:38-->
  
 +
<!--T:39-->
 
Dans certains cas, il se peut qu’un critère d’indexation soit bien présent sur toutes les pages, mais sans valeur pour certaines pages, ou bien que le critère d’indexation ne soit pas présent sur toutes les pages. La commande suivante permet alors de réindexer le document en copiant, pour les pages sans valeur d’index, la valeur de l’index se trouvant sur la page précédente.
 
Dans certains cas, il se peut qu’un critère d’indexation soit bien présent sur toutes les pages, mais sans valeur pour certaines pages, ou bien que le critère d’indexation ne soit pas présent sur toutes les pages. La commande suivante permet alors de réindexer le document en copiant, pour les pages sans valeur d’index, la valeur de l’index se trouvant sur la page précédente.
  
 +
 +
<!--T:40-->
 
Exemple :
 
Exemple :
 
  map_xps -infile:/home/map2019/email.xps –copyEmptyIndex:INVOICE
 
  map_xps -infile:/home/map2019/email.xps –copyEmptyIndex:INVOICE
  
 +
<!--T:41-->
 
Fichier avant passage de la commande :  
 
Fichier avant passage de la commande :  
 
  Page Index Valeur
 
  Page Index Valeur
Ligne 111 : Ligne 158 :
 
  5
 
  5
  
 +
<!--T:42-->
 
Fichier après passage de la commande :
 
Fichier après passage de la commande :
 
  Page Index Valeur
 
  Page Index Valeur
Ligne 119 : Ligne 167 :
 
  5 INVOICE 3
 
  5 INVOICE 3
  
=='''Ajout de critères d’indexation au document'''==
+
==Ajout de critères d’indexation au document== <!--T:43-->
  
 +
<!--T:44-->
 
Le principe est d’indexer un document en ajoutant un ou plusieurs critères.
 
Le principe est d’indexer un document en ajoutant un ou plusieurs critères.
  
 +
<!--T:45-->
 
Les valeurs de chaque critère peuvent être précisées en clair sur la ligne de commande : toutes les pages du  document auront alors la même valeur d’index.
 
Les valeurs de chaque critère peuvent être précisées en clair sur la ligne de commande : toutes les pages du  document auront alors la même valeur d’index.
  
 +
 +
<!--T:46-->
 
Exemple :
 
Exemple :
 
   map_xps -infile:/home/map2019/email.xps -addCriteria:NUMORDER=123456
 
   map_xps -infile:/home/map2019/email.xps -addCriteria:NUMORDER=123456
  
[[File:Mapxps-criteria.PNG|600px|thumb|center|]]
 
  
 +
<!--T:47-->
 +
[[File:Mapxps-criteria.PNG|600px|center|sans_cadre]]
 +
 +
 +
<!--T:48-->
 
Plus généralement, les valeurs d’un index seront issues d’une extraction préalable d’informations contenues dans le document lui-même, et stockées dans un fichier texte temporaire (consulter ci-après). La syntaxe précédente doit utiliser le mot clé « FILE: » pour spécifier que les valeurs de l’index ajouté doivent être reprises du fichier créé précédemment.
 
Plus généralement, les valeurs d’un index seront issues d’une extraction préalable d’informations contenues dans le document lui-même, et stockées dans un fichier texte temporaire (consulter ci-après). La syntaxe précédente doit utiliser le mot clé « FILE: » pour spécifier que les valeurs de l’index ajouté doivent être reprises du fichier créé précédemment.
  
 +
 +
<!--T:49-->
 
Exemple :
 
Exemple :
  map_xps -infile:/home/map2019/email.xps -addCriteria:NUMORDER=FILE:/home/map2019/email.txt [ –outfile:/home/map2019/email_indexed.xps ]
+
  map_xps -infile:/home/map2019/email.xps -addCriteria:NUMORDER=FILE:/home/map2019/email.txt [ –outfile:/home/map201/email_indexed.xps]
  
=='''Extraction de valeurs de critères du document'''==
+
==Extraction de valeurs de critères du document== <!--T:50-->
  
 +
<!--T:51-->
 
Le principe est de rechercher des informations contenues dans le document et de les extraire dans un fichier temporaire, pour ensuite les ajouter comme valeurs d’un critère d’indexation du même document. Le fichier temporaire créé est au format texte, en Unicode, avec la syntaxe suivante : "valeur[TAB]page[CRLF]"
 
Le principe est de rechercher des informations contenues dans le document et de les extraire dans un fichier temporaire, pour ensuite les ajouter comme valeurs d’un critère d’indexation du même document. Le fichier temporaire créé est au format texte, en Unicode, avec la syntaxe suivante : "valeur[TAB]page[CRLF]"
  
 +
<!--T:52-->
 
La collecte des informations dans le document peut se faire par mot clé ou par position.
 
La collecte des informations dans le document peut se faire par mot clé ou par position.
  
 +
<!--T:53-->
 
Les informations retournées peuvent être nettoyées des espaces superflus avant et/ou après le texte, avec les paramètres suivants :
 
Les informations retournées peuvent être nettoyées des espaces superflus avant et/ou après le texte, avec les paramètres suivants :
 
  -ltrim : suppression des espaces avant le texte
 
  -ltrim : suppression des espaces avant le texte
Ligne 146 : Ligne 207 :
 
  -trim : suppression des espaces avant et après le texte
 
  -trim : suppression des espaces avant et après le texte
  
 +
<!--T:54-->
 
Exemple 1 : recherche par mot clé
 
Exemple 1 : recherche par mot clé
 
  map_xps -infile:/home/map2019/email.xps -extract:/home/map2019/email.txt
 
  map_xps -infile:/home/map2019/email.xps -extract:/home/map2019/email.txt
 
  "-filter:Invoice for order" -length:10 –shift:2 -rtrim
 
  "-filter:Invoice for order" -length:10 –shift:2 -rtrim
  
 +
<!--T:55-->
 
Extraction de 10 caractères, situés 2 caractères après le mot clé "Invoice for order", en supprimant les espaces superflus après le texte retourné
 
Extraction de 10 caractères, situés 2 caractères après le mot clé "Invoice for order", en supprimant les espaces superflus après le texte retourné
  
 +
<!--T:56-->
 
Exemple 2 : recherche par position
 
Exemple 2 : recherche par position
 
  map_xps -infile:/home/map2019/email.xps -extract:/home/map2019/email.txt "-box:100,150,180,30,mm"
 
  map_xps -infile:/home/map2019/email.xps -extract:/home/map2019/email.txt "-box:100,150,180,30,mm"
  
 +
<!--T:57-->
 
Les paramètres de la « box » précisent ses dimensions. La syntaxe est : xx.xx,xx.xx,xx.xx,xx.xx[,cm|in|mm]
 
Les paramètres de la « box » précisent ses dimensions. La syntaxe est : xx.xx,xx.xx,xx.xx,xx.xx[,cm|in|mm]
  
 +
<!--T:58-->
 
4 nombres décimaux, spécifiant dans l’ordre : top (haut), bottom (bas), left (gauche), right (droite)
 
4 nombres décimaux, spécifiant dans l’ordre : top (haut), bottom (bas), left (gauche), right (droite)
  
 +
<!--T:59-->
 
Le séparateur de décimale est le ‘.’
 
Le séparateur de décimale est le ‘.’
  
 +
<!--T:60-->
 
Le séparateur de valeurs est ‘,’ ou ‘;’
 
Le séparateur de valeurs est ‘,’ ou ‘;’
  
Le dernier paramètre (optionnel) est l’unité de ces coordonnées : en point (pour une résolution de 96dpi) par défaut, en millimètre (mm), en centimètre (cm) ou en pouce (in)
+
<!--T:61-->
 +
Le dernier paramètre est l’unité de ces coordonnées : en point (pour une résolution de 96dpi) par défaut, en millimètre (mm), en centimètre (cm) ou en pouce (in).
  
=='''Exporter les index et leurs valeurs'''==
+
==Exporter les index et leurs valeurs== <!--T:62-->
  
 +
<!--T:63-->
 
Le principe est la création d’un fichier d’index à partir d’un document, en vue de son archivage dans un logiciel tiers. Le fichier d’index peut être au format TXT, XML, ou IND (compatible Content Manager).
 
Le principe est la création d’un fichier d’index à partir d’un document, en vue de son archivage dans un logiciel tiers. Le fichier d’index peut être au format TXT, XML, ou IND (compatible Content Manager).
  
 +
<!--T:64-->
 
Le paramètre « -duplicateindex » permet d’exporter également les index dont la valeur est la même sur plusieurs pages.
 
Le paramètre « -duplicateindex » permet d’exporter également les index dont la valeur est la même sur plusieurs pages.
  
 +
 +
<!--T:65-->
 
Exemples :
 
Exemples :
 
  map_xps -infile:/home/map2019/mail.xps -indexfile:/home/map2019/file.txt –toXPS [-duplicateindex]  
 
  map_xps -infile:/home/map2019/mail.xps -indexfile:/home/map2019/file.txt –toXPS [-duplicateindex]  
Ligne 176 : Ligne 249 :
 
  map_xps -infile:/home/map2019/email.xps -indexfile:/home/map2019/file.ind -toXPS [-duplicateindex]
 
  map_xps -infile:/home/map2019/email.xps -indexfile:/home/map2019/file.ind -toXPS [-duplicateindex]
  
[[File:Mapxps-exportxml.PNG|600px|thumb|center|]]
+
<!--T:66-->
 +
[[File:Mapxps-exportxml.PNG|600px|center|sans_cadre]]
  
=='''Utilisation des critères d’indexation'''==
+
==Utilisation des critères d’indexation== <!--T:67-->
 
 
=== Trier un document ===
 
=== Trier un document ===
  
 +
<!--T:68-->
 
Le principe est de trier un document suivant les valeurs d’un ou plusieurs critères d’indexation. Un seul fichier sera créé en sortie. Le tri s’effectue par ordre croissant sur des valeurs numériques par défaut. L’utilisation de l’option ALPHA permet de réaliser un tri sur des valeurs alphanumériques, l’option REVERSE permet un tri par ordre décroissant.
 
Le principe est de trier un document suivant les valeurs d’un ou plusieurs critères d’indexation. Un seul fichier sera créé en sortie. Le tri s’effectue par ordre croissant sur des valeurs numériques par défaut. L’utilisation de l’option ALPHA permet de réaliser un tri sur des valeurs alphanumériques, l’option REVERSE permet un tri par ordre décroissant.
  
 +
 +
<!--T:69-->
 
Exemples :
 
Exemples :
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –sort:CUSTNBR -toPDF  
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –sort:CUSTNBR -toPDF  
Ligne 190 : Ligne 266 :
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -sort:CUSTNBR,REVERSE:INV_NBR -toPDF
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -sort:CUSTNBR,REVERSE:INV_NBR -toPDF
  
[[File:Mapxps-trie.PNG|600px|thumb|center|]]
+
<!--T:70-->
 +
[[File:Mapxps-trie.PNG|600px|center|sans_cadre]]
  
=== Éclater un document ===
+
=== Éclater un document === <!--T:71-->
 
Le principe est d’éclater un document suivant les valeurs d’un ou plusieurs critères d’indexation. Autant de fichiers peuvent être créés en sortie qu’il y a de valeurs différentes du ou des critères utilisés.
 
Le principe est d’éclater un document suivant les valeurs d’un ou plusieurs critères d’indexation. Autant de fichiers peuvent être créés en sortie qu’il y a de valeurs différentes du ou des critères utilisés.
  
 +
 +
<!--T:72-->
 
Exemple :
 
Exemple :
  <code><nowiki>map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[MAPSEND]].pdf –toPDF</nowiki></code>
+
  <nowiki>map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[MAPSEND]].pdf –toPDF</nowiki>
 +
 
 +
<!--T:73-->
 +
[[File:Mapxps-eclater.PNG|600px|center|sans_cadre]]
  
[[File:Mapxps-eclater.PNG|600px|thumb|center|]]
 
  
 +
<!--T:74-->
 
Le mode BUNDLEONINDEX permet de créer des lots en fonction du nombre de pages pour chaque valeur de critère (par exemple : 1 fichier avec les documents de 1 à 4 pages, 1 fichier pour les documents de 5 à 9 pages, un fichier pour les documents de plus de 10 pages). Il est possible de créer autant de lots que souhaité.
 
Le mode BUNDLEONINDEX permet de créer des lots en fonction du nombre de pages pour chaque valeur de critère (par exemple : 1 fichier avec les documents de 1 à 4 pages, 1 fichier pour les documents de 5 à 9 pages, un fichier pour les documents de plus de 10 pages). Il est possible de créer autant de lots que souhaité.
  
 +
 +
<!--T:75-->
 
Exemple :
 
Exemple :
<code><nowiki> map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[BUNDDLEONINDEX,MAPSEND,1,5,10]].pdf –toPDF</nowiki></code>
+
<nowiki>map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[BUNDLEONINDEX,MAPSEND,1,5,10]].pdf –toPDF</nowiki>
  
 +
<!--T:76-->
 
En mode BUNDLEONINDEX, l’éclatement peut également se faire suivant un nombre de feuilles (en fonction des informations de recto/verso ou non), la syntaxe devient :
 
En mode BUNDLEONINDEX, l’éclatement peut également se faire suivant un nombre de feuilles (en fonction des informations de recto/verso ou non), la syntaxe devient :
 
   
 
   
<code><nowiki>map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[BUNDDLEONINDEX=LEAF,MAPSEND,1,5,10]].pdf –toPDF</nowiki></code>
+
<nowiki>map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[BUNDLEONINDEX=LEAF,MAPSEND,1,5,10]].pdf –toPDF</nowiki>
  
=== Filtres sur des valeurs de critères ===
+
=== Filtres sur des valeurs de critères === <!--T:77-->
 
Le principe est "d’isoler" certaines pages d’un document en fonction des valeurs d’un ou plusieurs critères d’indexation. Cela peut servir notamment pour créer un document en sortie ne concernant que certains clients.
 
Le principe est "d’isoler" certaines pages d’un document en fonction des valeurs d’un ou plusieurs critères d’indexation. Cela peut servir notamment pour créer un document en sortie ne concernant que certains clients.
  
 +
 +
<!--T:78-->
 
Exemples :
 
Exemples :
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -toPDF –filter:CUSTOMER=426
+
<code>map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -toPDF –filter:CUSTOMER=426</code>
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -toPDF "-filter:(CUSTOMER=4026) OR (CUSTOMER=1458) AND (PRICE=15)"
+
<code>map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -toPDF "-filter:(CUSTOMER=4026) OR (CUSTOMER=1458) AND (PRICE=15)"</code>
  
 +
<!--T:79-->
 
Cela peut également s’avérer très utile pour n’effectuer des actions que sur certaines pages, dépendant de valeurs de critères (notamment la gestion des PrintTickets).
 
Cela peut également s’avérer très utile pour n’effectuer des actions que sur certaines pages, dépendant de valeurs de critères (notamment la gestion des PrintTickets).
  
=='''Concaténer des fichiers XPS'''==
+
==Concaténer des fichiers XPS== <!--T:80-->
 
Le principe est d’ajouter plusieurs documents les uns à la suite des autres. Le document de sortie est la concaténation de tous les fichiers précisés sur la ligne de commande, dans l’ordre où ils ont été précisés.
 
Le principe est d’ajouter plusieurs documents les uns à la suite des autres. Le document de sortie est la concaténation de tous les fichiers précisés sur la ligne de commande, dans l’ordre où ils ont été précisés.
  
 +
<!--T:81-->
 
On peut ensuite imaginer un tri suivant des critères d’indexation préalablement définis sur chaque
 
On peut ensuite imaginer un tri suivant des critères d’indexation préalablement définis sur chaque
 
fichier pour faire du regroupement de fichiers de plusieurs sources différentes (facture + CGV + lettre d’information…)
 
fichier pour faire du regroupement de fichiers de plusieurs sources différentes (facture + CGV + lettre d’information…)
  
 +
 +
<!--T:82-->
 
Exemples :
 
Exemples :
  
 +
<!--T:83-->
 
Concaténation de plusieurs fichiers XPS en une seule fois :
 
Concaténation de plusieurs fichiers XPS en une seule fois :
 
  map_xps -outfile:/home/map2019/final.xps -add:/home/map2019/test1.xps -add:/home/map2019/test2.xps –add:/home/map2019/test3.xps
 
  map_xps -outfile:/home/map2019/final.xps -add:/home/map2019/test1.xps -add:/home/map2019/test2.xps –add:/home/map2019/test3.xps
  
 +
<!--T:84-->
 
Concaténation en plusieurs fois, dans le cas où l’on ne connait pas d’avance le nombre de fichiers XPS en entrée :
 
Concaténation en plusieurs fois, dans le cas où l’on ne connait pas d’avance le nombre de fichiers XPS en entrée :
 
   map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test1.xps  
 
   map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test1.xps  
Ligne 234 : Ligne 327 :
 
   map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test3.xps
 
   map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test3.xps
  
 +
==Gestion des PrintTickets== <!--T:85-->
  
=='''Gestion des "PrintTickets"'''==
+
<!--T:86-->
 
 
 
Le principe est de gérer les différents paramètres d’un travail d’impression pour un document, soit au niveau travail complet, soit à la page.
 
Le principe est de gérer les différents paramètres d’un travail d’impression pour un document, soit au niveau travail complet, soit à la page.
  
 +
<!--T:87-->
 
La syntaxe générale est :
 
La syntaxe générale est :
 
  map_xps -infile:/home/map2019/email.xps -set:NOM=VALEUR
 
  map_xps -infile:/home/map2019/email.xps -set:NOM=VALEUR
  
 +
<!--T:88-->
 
L’option « -filter:XXX » permet de n’affecter un attribut d’impression que sur certaines pages, en fonction de valeurs d’indexation du document.
 
L’option « -filter:XXX » permet de n’affecter un attribut d’impression que sur certaines pages, en fonction de valeurs d’indexation du document.
  
 +
<!--T:89-->
 
Les différents attributs "PrintTicket" reconnus sont :
 
Les différents attributs "PrintTicket" reconnus sont :
 
   
 
   
Ligne 250 : Ligne 346 :
 
* long/short/F : recto/verso en suivant les bords longs ou courts, ou recto seul
 
* long/short/F : recto/verso en suivant les bords longs ou courts, ou recto seul
  
 +
<!--T:90-->
 
FRONTSIDE (on/off): force l’impression sur le recto (en sortie PCL uniquement, en combinaison avec les options -filter:XXX et -pages:*)
 
FRONTSIDE (on/off): force l’impression sur le recto (en sortie PCL uniquement, en combinaison avec les options -filter:XXX et -pages:*)
  
 +
<!--T:91-->
 
INPUTBIN / OUTPUTBIN (valeur numérique) : gestion des bacs d’entrée/sortie
 
INPUTBIN / OUTPUTBIN (valeur numérique) : gestion des bacs d’entrée/sortie
 
* ORIENTATION (valeur numérique)  
 
* ORIENTATION (valeur numérique)  
Ligne 258 : Ligne 356 :
 
* 2: ReversePortrait (portrait retourné/inversé) 3: ReverseLandscape (paysage retourné/inversé)
 
* 2: ReversePortrait (portrait retourné/inversé) 3: ReverseLandscape (paysage retourné/inversé)
  
 +
<!--T:92-->
 
COPY (valeur numérique) : nombre de copies
 
COPY (valeur numérique) : nombre de copies
  
 +
<!--T:93-->
 
STAPLE (valeur numérique) : agrafage
 
STAPLE (valeur numérique) : agrafage
 
* 1 = SaddleStitch (agrafage au milieu de la feuille)  
 
* 1 = SaddleStitch (agrafage au milieu de la feuille)  
Ligne 269 : Ligne 369 :
 
* 7 = StapleDualTop (agrafage en haut)
 
* 7 = StapleDualTop (agrafage en haut)
 
* 8 = StapleTopLeft (agrafage en haut à gauche)  
 
* 8 = StapleTopLeft (agrafage en haut à gauche)  
* 9 = StapleTopRight (agrafage en bas à droite)  
+
* 9 = StapleTopRight (agrafage en haut à droite)  
 
* 10 = None (stopper l’agrafage)
 
* 10 = None (stopper l’agrafage)
  
 +
 +
<!--T:94-->
 
MEDIATYPE (valeur alphabétique) : type de papier Exemples : Archive, Etiquette, Bristol, AutoSelect…
 
MEDIATYPE (valeur alphabétique) : type de papier Exemples : Archive, Etiquette, Bristol, AutoSelect…
  
 +
<!--T:95-->
 
NUP (valeur numérique : 1, 2 ou 4) : regroupement de 1, 2 ou 4 pages du document initial sur 1 page en sortie
 
NUP (valeur numérique : 1, 2 ou 4) : regroupement de 1, 2 ou 4 pages du document initial sur 1 page en sortie
  
 +
<!--T:96-->
 
LEFTOFFSET : marge de gauche en points
 
LEFTOFFSET : marge de gauche en points
  
 +
<!--T:97-->
 
TOPOFFSET : marge supérieure en points
 
TOPOFFSET : marge supérieure en points
  
 +
<!--T:98-->
 
JOBCUT : yes/no. Commande de rupture de job (pour utiliser le cutter sur les imprimantes possédant le dispositif)
 
JOBCUT : yes/no. Commande de rupture de job (pour utiliser le cutter sur les imprimantes possédant le dispositif)
  
 +
<!--T:99-->
 
TOGGLE : yes/no. Commande de décalage du papier.
 
TOGGLE : yes/no. Commande de décalage du papier.
  
  
 +
<!--T:100-->
 
Remarque :
 
Remarque :
  
 +
<!--T:101-->
 
Tous ces différents paramètres devront ensuite être gérés dans des profils de conversion du fichier XPSConfig.conf, en fonction de la destination finale des documents.Il est également possible d’utiliser ces paramètres lors d’une conversion directe sans passer par le -set : -duplex:LONG au lieu de -set:DUPLEX=LONG.
 
Tous ces différents paramètres devront ensuite être gérés dans des profils de conversion du fichier XPSConfig.conf, en fonction de la destination finale des documents.Il est également possible d’utiliser ces paramètres lors d’une conversion directe sans passer par le -set : -duplex:LONG au lieu de -set:DUPLEX=LONG.
  
  
 +
<!--T:102-->
 
Exemples :
 
Exemples :
 
*Pour paramétrer le recto/verso sur un fichier XPS existant :
 
*Pour paramétrer le recto/verso sur un fichier XPS existant :
Ligne 301 : Ligne 411 :
 
   map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=no -pages:1
 
   map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=no -pages:1
  
===Envoyer un email===
+
==Envoyer un email== <!--T:103-->
 
Principe : en sortie des traitements effectués par la commande map_xps, envoi direct du fichier résultant par email.  
 
Principe : en sortie des traitements effectués par la commande map_xps, envoi direct du fichier résultant par email.  
  
 +
<!--T:104-->
 
Paramètres obligatoires :
 
Paramètres obligatoires :
 
  -toEmail | -toMail
 
  -toEmail | -toMail
Ligne 311 : Ligne 422 :
 
  -infile:XXX => fichier XPS à joindre à l’email envoyé
 
  -infile:XXX => fichier XPS à joindre à l’email envoyé
  
 +
<!--T:105-->
 
Paramètres optionnels (le caractère optionnel ou non de certains arguments listés ci-après peut dépendre du serveur SMTP adressé) :
 
Paramètres optionnels (le caractère optionnel ou non de certains arguments listés ci-après peut dépendre du serveur SMTP adressé) :
 
  -domain:mydomain.net => domaine du serveur SMTP
 
  -domain:mydomain.net => domaine du serveur SMTP
Ligne 321 : Ligne 433 :
 
  "-body:This is my body" => corps du message au format texte
 
  "-body:This is my body" => corps du message au format texte
 
  -bodyhtml:XXX => corps du message au format HTML
 
  -bodyhtml:XXX => corps du message au format HTML
  -bodyhtml:FILE:c:\tmp\bodyhtml.html
+
  -bodyhtml:FILE:/home/izaopale/bodyhtml.html
 
  -footer:XXX => Pied de page du mail au format texte
 
  -footer:XXX => Pied de page du mail au format texte
 
  -footerhtml:XXX => Pied de page du mail au format HTML
 
  -footerhtml:XXX => Pied de page du mail au format HTML
  -footerhtml:FILE=c:\tmp\footer.html
+
  -footerhtml:FILE=/home/izaopale/footer.html
 
  -attachment:XXX => ajout de pièce(s) jointe(s) supplémentaire(s), séparées par une virgule
 
  -attachment:XXX => ajout de pièce(s) jointe(s) supplémentaire(s), séparées par une virgule
 
  -outfile:XXX => dans le cas de l’envoi d’email, cet argument sert à nommer la pièce jointe principale (argument infile) envoyée
 
  -outfile:XXX => dans le cas de l’envoi d’email, cet argument sert à nommer la pièce jointe principale (argument infile) envoyée
  
 +
 +
<!--T:106-->
 
Exemple 1 :
 
Exemple 1 :
map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -outfile:nomPJ.xps
+
<code>map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -outfile:nomPJ.xps</code>
  
 +
 +
<!--T:107-->
 
Exemple 2 : avec ajout de 2 pièces jointes
 
Exemple 2 : avec ajout de 2 pièces jointes
map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -outfile:nomPJ.xps -attachment:/home/izaopale/PJ1.pdf,/home/izaopale/PJ2.pdf
+
<code>map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -outfile:nomPJ.xps -attachment:/home/izaopale/PJ1.pdf,/home/izaopale/PJ2.pdf</code>
  
 +
 +
<!--T:108-->
 
Exemple 3 : avec conversion en PDF de la pièce jointe
 
Exemple 3 : avec conversion en PDF de la pièce jointe
map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -toPDF -outfile:nomPJ.pdf
+
<code>map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -toPDF -outfile:nomPJ.pdf</code>
  
=='''Maquettage avec sortie imprimée – Redirection dans une OUTQ'''==
+
==Maquettage avec sortie imprimée – Redirection dans une OUTQ== <!--T:109-->
  
 +
<!--T:110-->
 
Maquettage du document et conversion implicite / explicite en sortie  
 
Maquettage du document et conversion implicite / explicite en sortie  
 
   
 
   
 
Les langages de sortie supportés lors d’un MAPCPYSPLF sont les suivants : o Paramètre TYPLAN :   
 
Les langages de sortie supportés lors d’un MAPCPYSPLF sont les suivants : o Paramètre TYPLAN :   
+
 
Valeur Remarque
+
<!--T:111-->
 
*PCL  
 
*PCL  
 
*AFPDS  
 
*AFPDS  
Ligne 355 : Ligne 474 :
 
*PDF  
 
*PDF  
 
*EPL  
 
*EPL  
*XPS
+
*XPS
 
   
 
   
 +
 +
<!--T:112-->
 
La valeur spéciale *AUTO reprend la valeur du paramètre saisi dans l’option 1 du Menu Mapping.
 
La valeur spéciale *AUTO reprend la valeur du paramètre saisi dans l’option 1 du Menu Mapping.
 
   
 
   
Ligne 372 : Ligne 493 :
 
La valeur spéciale *AUTO permet de récupérer le nom de profil de l’imprimante qui est paramétré dans l’option Définition des paramètres imprimantes de Menu d’exploitation.
 
La valeur spéciale *AUTO permet de récupérer le nom de profil de l’imprimante qui est paramétré dans l’option Définition des paramètres imprimantes de Menu d’exploitation.
  
 +
 +
<!--T:113-->
 
<u>Exemple de définition</u>:  
 
<u>Exemple de définition</u>:  
 
    
 
    
Ligne 383 : Ligne 506 :
 
## This file contains the conversion profile for Mapping.   
 
## This file contains the conversion profile for Mapping.   
 
## You can create your own profile based on the Mapping documentation. BE CAREFUL WITH THE FILE STRUCTURE.  
 
## You can create your own profile based on the Mapping documentation. BE CAREFUL WITH THE FILE STRUCTURE.  
## PROFILE NAME STARTING WITH * ARE RESERVED FOR MAPPING. SO DO NOT CREATE OR MODIFY A PROFILE STARTING WITH *.  
+
## PROFILE NAMES STARTING WITH * ARE RESERVED FOR MAPPING. SO DO NOT CREATE OR MODIFY A PROFILE STARTING WITH *.  
 
  <*XPS>  
 
  <*XPS>  
 
  <label>DO NOT MODIFY - standard XPS</label>  
 
  <label>DO NOT MODIFY - standard XPS</label>  
Ligne 395 : Ligne 518 :
  
 
   
 
   
Dans cet exemple, le profil *PCL utilise le langage PCL (paramètre <language> du profil.   
+
<!--T:114-->
 +
Dans cet exemple, le profil *PCL utilise le langage PCL (paramètre <language> du profil).   
 
   
 
   
 
   
 
   
Ligne 410 : Ligne 534 :
 
Mais ce paramètre accepte aussi la valeur *AUTO : Auquel cas, le programme récupère la valeur positionnée dans le menu Mapping/Option 1.
 
Mais ce paramètre accepte aussi la valeur *AUTO : Auquel cas, le programme récupère la valeur positionnée dans le menu Mapping/Option 1.
  
 +
<!--T:115-->
 
XPSCONVERT :
 
XPSCONVERT :
 
Conversion implicite réalisée en sortie. Ici, avec *AUTO le profil utilisé est celui qui est paramétré dans l’option 6 dans le menu Exploitation.   
 
Conversion implicite réalisée en sortie. Ici, avec *AUTO le profil utilisé est celui qui est paramétré dans l’option 6 dans le menu Exploitation.   
Ligne 416 : Ligne 541 :
 
Autre exemple de commande :  
 
Autre exemple de commande :  
  
 +
<!--T:116-->
 
MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX)  
 
MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX)  
MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*PCL)  
+
MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*PCL)  
 
   
 
   
  
 +
<!--T:117-->
 
<u>Explications</u> :  
 
<u>Explications</u> :  
 
   
 
   
Ligne 431 : Ligne 558 :
 
Exemple :  
 
Exemple :  
 
   
 
   
  MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX)  
+
MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX)  
  MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*PCL) XPSOUTFILE(‘/home/map2019/invoice.pcl’)
+
MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*PCL) XPSOUTFILE(‘/home/map2019/invoice.pcl’)
 +
 
 +
==Rediriger la log dans un fichier== <!--T:118-->
  
+
<!--T:119-->
=='''Rediriger la log dans un fichier'''==
 
 
Principe : récupérer toutes les logs des commandes map_xps dans un fichier texte.  
 
Principe : récupérer toutes les logs des commandes map_xps dans un fichier texte.  
  
 +
<!--T:120-->
 
Exemple :
 
Exemple :
 
  map_xps -infile:/home/map2019/email.xps –logfile:/tmp/mylog.log
 
  map_xps -infile:/home/map2019/email.xps –logfile:/tmp/mylog.log
  
[[File:Mapxps-log.PNG|600px|thumb|center|]]
+
<!--T:121-->
 +
[[File:Mapxps-log.PNG|600px|center|sans_cadre]]
  
=='''Lister les ressources'''==
+
==Lister les ressources== <!--T:122-->
 
Principe : affichage de toutes les ressources (polices et images) embarquées dans un fichier XPS.  
 
Principe : affichage de toutes les ressources (polices et images) embarquées dans un fichier XPS.  
  
 +
<!--T:123-->
 
Exemple :
 
Exemple :
  map_xps -infile:/home/izaopale/email.xps –listResource
+
  map_xps -infile:/home/map2019/email.xps –listResource
  
[[File:Mapxps-listerR.PNG|600px|thumb|center|]]
+
<!--T:124-->
 +
[[File:Mapxps-listerR.PNG|600px|center|sans_cadre]]
  
=='''Extraction de pages'''==
+
==Extraction de pages== <!--T:125-->
  
 +
<!--T:126-->
 
Principe : définir des intervalles et/ou des sélections de pages à traiter. Les intervalles de pages sont à préciser sur la ligne de commande, les sélections peuvent être dans un fichier texte, où la syntaxe est : numéro de page+CRLF. L’utilisation du caractère ‘*’ est possible pour les intervalles de pages, pour choisir la fin du document.
 
Principe : définir des intervalles et/ou des sélections de pages à traiter. Les intervalles de pages sont à préciser sur la ligne de commande, les sélections peuvent être dans un fichier texte, où la syntaxe est : numéro de page+CRLF. L’utilisation du caractère ‘*’ est possible pour les intervalles de pages, pour choisir la fin du document.
  
 +
<!--T:127-->
 
Exemples :
 
Exemples :
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:1,3,4,7,10 –toPDF  
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:1,3,4,7,10 –toPDF  
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:3-10 –toPDF  
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:3-10 –toPDF  
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:1,5,10-* –toPDF  
 
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:1,5,10-* –toPDF  
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:FILE:/tmp/test.txt –toPDF
+
  map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:FILE:/home/map2019/test.txt –toPDF
  
=='''Extraction des données en XML (pour M-Designer)'''==
+
==Extraction des données en XML (pour M-Designer)== <!--T:128-->
 +
 
 +
<!--T:129-->
 
Principe : créer un fichier XML compatible pour M-Designer, dans lequel toutes les données textes du fichier XPS sont extraites. Chaque zone de texte dans le fichier XPS devient un champ XML, nommé de manière unique par ses positions en X et Y. Les positions X et Y sont définies en 72 dpi.
 
Principe : créer un fichier XML compatible pour M-Designer, dans lequel toutes les données textes du fichier XPS sont extraites. Chaque zone de texte dans le fichier XPS devient un champ XML, nommé de manière unique par ses positions en X et Y. Les positions X et Y sont définies en 72 dpi.
 
   
 
   
Ligne 467 : Ligne 603 :
 
   
 
   
  
 +
<!--T:130-->
 
Exemple :
 
Exemple :
  map_xps -infile:/home/izaopale/billing.xps –toXMLDRAW -outfile:/home/izaopale/billing.draw.xml
+
  map_xps -infile:/home/map2019/billing.xps –toXMLDRAW -outfile:/home/map2019/billing.draw.xml
  
[[File:Mapxps-d-xml.PNG|500px|thumb|center|]]  
+
<!--T:131-->
 +
[[File:Mapxps-d-xml.PNG|500px|center|sans_cadre]]
  
=='''Format et taille des pages d’un document :'''==  
+
==Format et taille des pages d’un document :== <!--T:132-->
  
 +
<!--T:133-->
 
Pour modifier la taille des pages du document, ou la taille des données à l’intérieur d’une page, il existe 3 arguments de la ligne de commande, ayant chacun leur fonctionnel :
 
Pour modifier la taille des pages du document, ou la taille des données à l’intérieur d’une page, il existe 3 arguments de la ligne de commande, ayant chacun leur fonctionnel :
-paper:XXX : permet de changer la taille du papier (de la page), sans toucher au contenu.
+
<code>-paper:XXX : permet de changer la taille du papier (de la page), sans toucher au contenu.</code>
-scale:XXX : permet de changer la taille du contenu, sans toucher au papier.
+
<code>-scale:XXX : permet de changer la taille du contenu, sans toucher au papier.</code>
-changeformat:XXX : permet de changer le format du document, en modifiant la taille du papier tout en adaptant en contenu (avec conservation des proportions).
+
<code>-changeformat:XXX : permet de changer le format du document, en modifiant la taille du papier tout en adaptant en contenu (avec conservation des proportions).</code>
  
=== Syntaxes ===
+
<!--T:134-->
 +
<U>Syntaxes</U>
 +
 
 +
<!--T:135-->
 
Pour une mise à l’échelle du contenu d’une page, l’argument « -scale:XXX » prend des valeurs de pourcentage, de 0 à l'infini (attention aux pertes de données avec des valeurs supérieures à 100, puisque la taille du papier n’est pas modifiée).
 
Pour une mise à l’échelle du contenu d’une page, l’argument « -scale:XXX » prend des valeurs de pourcentage, de 0 à l'infini (attention aux pertes de données avec des valeurs supérieures à 100, puisque la taille du papier n’est pas modifiée).
  
 +
<!--T:136-->
 
Pour modifier la taille de la page en sortie, avec modification ou non du contenu, les arguments  « -  changeformat:XXX » et « -paper:XXX » permettent de définir la taille du format, soit à la norme ISO, soit en personnalisé.
 
Pour modifier la taille de la page en sortie, avec modification ou non du contenu, les arguments  « -  changeformat:XXX » et « -paper:XXX » permettent de définir la taille du format, soit à la norme ISO, soit en personnalisé.
  
 +
<!--T:137-->
 
Valeurs possibles ISO : AUTO, EXECUTIVE, LETTER, LEGAL, LEDGER, A4, A3, A2, A1, A0, MONARCH, COM10, DL, CS, B5
 
Valeurs possibles ISO : AUTO, EXECUTIVE, LETTER, LEGAL, LEDGER, A4, A3, A2, A1, A0, MONARCH, COM10, DL, CS, B5
 
Syntaxe pour taille personnalisée : -changeformat:xx.xx,xx.xx[,cm|in|mm]
 
Syntaxe pour taille personnalisée : -changeformat:xx.xx,xx.xx[,cm|in|mm]
Ligne 489 : Ligne 633 :
 
Le séparateur de valeurs est ‘,’ ou ‘;’
 
Le séparateur de valeurs est ‘,’ ou ‘;’
  
 +
<!--T:138-->
 
L’unité est optionnelle : cm (par défaut), mm ou in (pour inch) Exemples :
 
L’unité est optionnelle : cm (par défaut), mm ou in (pour inch) Exemples :
 
   
 
   
  map_xps -infile:/home/izaopale/billing.xps –scale:50 -outfile:/home/izaopale/out.xps  
+
  map_xps -infile:/home/map2019/billing.xps –scale:50 -outfile:/home/izaopale/out.xps  
  map_xps -infile:/home/izaopale/billing.xps –changeformat:A4 -outfile:/home/izaopale/out.xps
+
  map_xps -infile:/home/map2019/billing.xps –changeformat:A4 -outfile:/home/izaopale/out.xps
  map_xps -infile:/home/izaopale/billing.xps –changeformat:21,29.7,cm -outfile:/home/izaopale/out.xps
+
  map_xps -infile:/home/map2019/billing.xps –changeformat:21,29.7,cm -outfile:/home/izaopale/out.xps
  
=='''Rotation de documents'''==
+
==Rotation de documents== <!--T:139-->
  
 +
<!--T:140-->
 
Principe : effectuer une rotation sur un fichier XPS
 
Principe : effectuer une rotation sur un fichier XPS
  
 +
<!--T:141-->
 
L’angle de rotation (en degré) est précisé sur la ligne de commande, le sens de rotation par défaut étant le sens trigonométrique (anti horaire). Sur le principe, tous les angles sont supportés, mais seuls les angles droits respectent la cohérence des dimensions de la page d’origine.
 
L’angle de rotation (en degré) est précisé sur la ligne de commande, le sens de rotation par défaut étant le sens trigonométrique (anti horaire). Sur le principe, tous les angles sont supportés, mais seuls les angles droits respectent la cohérence des dimensions de la page d’origine.
  
 +
<!--T:142-->
 
D’où les valeurs supportées suivantes : -90 (rotation de 90° dans le sens horaire), 90, 180, 270.
 
D’où les valeurs supportées suivantes : -90 (rotation de 90° dans le sens horaire), 90, 180, 270.
 
Notes : les valeurs -180 et -270 ne sont pas supportées (page blanche en sortie), il convient d’utiliser respectivement 180 et 90.
 
Notes : les valeurs -180 et -270 ne sont pas supportées (page blanche en sortie), il convient d’utiliser respectivement 180 et 90.
  
 +
<!--T:143-->
 +
[[File:Mapxps-rotate.png|600px|center|sans_cadre]] 
  
 +
<!--T:144-->
 
Exemple :
 
Exemple :
  map_xps -infile:/home/izaopale/fichier.xps -outfile:/home/izaopale/fichier_90.xps –rotation:90 -toXPS
+
  map_xps -infile:/home/map2019/fichier.xps -outfile:/home/map2019/fichier_90.xps –rotation:90 -toXPS
 +
 
 +
==Fusion d’un fond de page sur un document existant== <!--T:145-->
  
=='''Fusion d’un fond de page sur un document existant'''==
 
  
 +
<!--T:146-->
 
Principe : sur un document XPS existant, il est possible de venir rajouter un autre document en tant que fond de page, ou calque. Par exemple : ajouter un logo sur une facture existante n’en comportant pas.
 
Principe : sur un document XPS existant, il est possible de venir rajouter un autre document en tant que fond de page, ou calque. Par exemple : ajouter un logo sur une facture existante n’en comportant pas.
  
 +
<!--T:147-->
 
De plus, l’argument optionnel « -mergemode:XXX » permet de contrôler plus finement la manière dont est rajouté ce calque.
 
De plus, l’argument optionnel « -mergemode:XXX » permet de contrôler plus finement la manière dont est rajouté ce calque.
  
  
 +
<!--T:148-->
 
Exemple :
 
Exemple :
<code> map_xps -infile:/home/izaopale/billing.xps -merge:/home/izaopale/logo.xps -mergemode:REPEATALL -outfile:/home/izaopale/final.xps </code>
+
<code> map_xps -infile:/home/map2019/billing.xps -merge:/home/map2019/logo.xps -mergemode:REPEATALL -outfile:/home/map2019/final.xps </code>
 +
 
  
 +
<!--T:149-->
 +
[[Fichier:Mapxps-fusion.png|centré|734x734px|sans_cadre]]
  
 +
 +
<!--T:150-->
 
L’argument « -merge:XXX » précise le nom du fichier à ajouter en tant que calque sur le document d’entrée. L’argument « -mergemode:XXX » précise la méthode d’ajout:
 
L’argument « -merge:XXX » précise le nom du fichier à ajouter en tant que calque sur le document d’entrée. L’argument « -mergemode:XXX » précise la méthode d’ajout:
  
 +
<!--T:151-->
 
REPEATALL : toutes les pages sont fusionnées, en répétant le calque jusqu’à la fin du fichier d’entrée. C’est le fonctionnement par défaut si rien n’est précisé.
 
REPEATALL : toutes les pages sont fusionnées, en répétant le calque jusqu’à la fin du fichier d’entrée. C’est le fonctionnement par défaut si rien n’est précisé.
  
 +
<!--T:152-->
 
Exemple :
 
Exemple :
 
* En entrée : fichier d’entrée de 5 pages (identifiées par 1,2,3,4,5) et un calque de 2 pages (identifiées a,b)  
 
* En entrée : fichier d’entrée de 5 pages (identifiées par 1,2,3,4,5) et un calque de 2 pages (identifiées a,b)  
 
* En sortie : un fichier de 5 pages identifiées 1a,2b,3a,4b,5a
 
* En sortie : un fichier de 5 pages identifiées 1a,2b,3a,4b,5a
  
 +
<!--T:153-->
 
REPEATFULL : toutes les pages sont fusionnées, en répétant le calque tant qu’il peut être inséré entièrement.  
 
REPEATFULL : toutes les pages sont fusionnées, en répétant le calque tant qu’il peut être inséré entièrement.  
  
 +
<!--T:154-->
 
Exemple :
 
Exemple :
 
* Avec les mêmes entrées que précédemment, on aura en sortie un fichier de 5 pages identifiées 1a,2b,3a,4b,5 (la dernière page n’étant donc pas modifiée).
 
* Avec les mêmes entrées que précédemment, on aura en sortie un fichier de 5 pages identifiées 1a,2b,3a,4b,5 (la dernière page n’étant donc pas modifiée).
  
 +
<!--T:155-->
 
ONCE : le calque n’est inséré qu’une seule fois, sur la ou les premières pages du fichier d’entrée.  
 
ONCE : le calque n’est inséré qu’une seule fois, sur la ou les premières pages du fichier d’entrée.  
  
 +
<!--T:156-->
 
Exemple :
 
Exemple :
 
* Avec les mêmes entrées que précédemment, on aura en sortie un fichier de 5 pages identifiées 1a,2b,3,4,5.
 
* Avec les mêmes entrées que précédemment, on aura en sortie un fichier de 5 pages identifiées 1a,2b,3,4,5.
  
 +
<!--T:157-->
 
Variable d’environnement exportée
 
Variable d’environnement exportée
  
 +
<!--T:158-->
 
MAP_XPSFILE : contient le nom du fichier en cours d’extraction.
 
MAP_XPSFILE : contient le nom du fichier en cours d’extraction.
  
[[Category:PrivateData]]
+
 
 +
==Gestion des input box== <!--T:159-->
 +
 
 +
<!--T:160-->
 +
Le nom de la zone input text doit être « SUBMIT ».
 +
-param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost?
 +
 
 +
<!--T:161-->
 +
map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.pdf -toPDF
 +
-param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost?
 +
 
 +
<!--T:162-->
 +
map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.html -toHTML
 +
-param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost?
 +
 
 +
<!--T:163-->
 +
Avec envoi d’e-mail :
 +
 
 +
<!--T:164-->
 +
<code>map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.html -toHTML</code>
 +
<code>-param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost? -toMail -from:exp@mydomain.net -to:dest@mydomain.net</code>
 +
<code>-subject:form -server:192.168.1.2 -domain:mydomain.net</code>
 +
</translate>
 +
 
 +
map_xps
 +
sort
 +
map_xps -sort
 +
trier un fichier xps

Version actuelle datée du 4 octobre 2023 à 14:29

Autres langues :
English • ‎français

Introduction

La commande MAP_XPS est l'une des commandes principales d'OPALE Server. Elle permet d'effectuer un nombre important de traitements listés ci-dessous.

Dans un traitement typique, le fichier à maquetter est d'abord produit au format XPS via la commande MAPCPYSPLF, puis la commande MAP_XPS prend le relais pour effectuer les traitements souhaités sur le fichier XPS.

Xps-intro.PNG


Pour utiliser la commande MAP_XPS, il faut passer par un CALL PGM(MAP_XPS) PARM ('-infile:/home/map2019/file.PDF' '-outfile:/home/map2019/file.xps' '-toXPS' '-fromPDF')

La commande MAPXPS (sans underscore) existe également. Elle possède moins de fonctionnalités et permet de réaliser principalement des conversions. Par contre, il faut d'abord charger la bibliothèque en question.

Conversions de fichiers

Conversion de documents en entrée

Le principe est de convertir des documents existants au format XPS, en vue de leur prise en charge et de leurs traitements futurs dans Mapping.

Les langages d’entrée supportés sont : AFP, ESCP, IGP, Image (BMP, JPG, PCX, PNG et TIFF), PCL, PDF, PS, SCS, TXT, Xerox, XPS, ZEBRA (ou ZPL), TEC


Exemples :

map_xps -infile:/home/map2019/email.pcl -fromPCL -outfile:/home/map2019/email.xps -toXPS 
map_xps -infile:/home/map2019/email.pdf -fromPDF -outfile:/home/map2019/email.xps -toXPS 
map_xps -infile:/home/map2019/email.afp -fromAFP -outfile:/home/map2019/email.xps -toXPS 
map_xps -infile:/home/map2019/email.igp -fromIGP -outfile:/home/map2019/email.xps -toXPS 
map_xps -infile:/home/map2019/email.zpl -fromZPL -outfile:/home/map2019/email.xps -toXPS 
map_xps -infile:/home/map2019/email.ps -fromPS -outfile:/home/map2019/email.xps -toXPS  
map_xps -infile:/home/map2019/image.jpg -fromImage -outfile:/home/map2019/image.xps -toXPS -profile:fromJPEG

Ce principe de conversion peut en outre être affiné en utilisant un profil défini dans le fichier de configuration.

Mapxps entree.PNG

Conversion des fichiers XPS vers un format de sortie

Le principe est de convertir des fichiers XPS (générés ou non par Mapping) en vue de leur diffusion finale (impression, envoi par mail, archivage…) et en fonction de leur canal de diffusion.

Les langages de sortie supportés sont : AFP, BMP, DOCX, DPL, EPL, ESC, ESCP, HTML, IGP, JPG, Monarch, PCL, PDF, PNG, ProPrinter, PS, RTF, TEC, TIF, TXT, XMLDRAW, XPS, ZEBRA / ZPL.

Exemples :

map_xps -infile:/home/map2019/email.xps -toPCL -outfile:/home/map2019/email.pcl 
map_xps -infile:/home/map2019/email.xps -toPDF -outfile:/home/map2019/email.pdf
MAP XPS.PNG


Ce principe de conversion peut en outre être affiné en utilisant un profil défini dans le fichier de configuration.

Exemple :

map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –convert –config:MYPDF
Mapxps-profil.PNG

Avec les paramètres :

-config:XXXX ou -profile:XXXX	=> sélection du profil à utiliser pour la conversion
-convert	=> force la conversion en utilisant le profil sélectionné

Et un profil MYPDF défini dans le fichier de configuration :

<MYPDF>
<label>for Adobe Reader</label>
<language>PDF</language>
<embeddedfont>OFF</embeddedfont>
<color>ON</color>
</MYPDF>

Pour appeler un profil de conversion en ligne de commande, le langage doit être à *AUTO sur IBM i, et ne doit pas être "forcé" sur Unix ou Windows (pas d’utilisation simultanée des arguments -profile:XXX et -toPCL par exemple).


Remarque :

Sur IBM i, le fichier XPSConfig.conf se trouve dans le dossier home/mapping.

Paramètres spécifiques pour la sortie AFPDS

En complément de la conversion XPS vers AFPDS, il est possible de forcer la résolution des polices et des images :

-fontRes:300 : résolution des polices
-imageRes:300 : résolution des images 

Valeurs supportées : 240, 300 ou 600 dpi.

Utilisation des paramètres de profils

Tous les paramètres mentionnés et expliqués dans les conversions (entrée ou sortie) sont également utilisables en ligne de commande. Pour cela, la syntaxe suivante devra être ajoutée à la commande map_xps de conversion :

-param:nom_du_paramètre=valeur

Exemple :

map_xps -infile:/home/map2019/label.xps -outfile:/home/map2019/label.zpl -toZPL -param:resolution=203 -param:barcode=off

Gestion des critères d’indexation

Lister les index disponibles et leurs valeurs

Pour lister tous les critères d’indexation présents dans le document

Exemple :

map_xps -infile:/home/map2019/email.xps -dumpIndex
Mapxps-index.PNG


Pour lister toutes les valeurs d’un index présent dans le document Indexation d’un document


Exemple :

map_xps -infile:/home/map2019/email.xps –dumpIndex:CUSTOMER

Ajout d’une valeur d’index sur toutes les pages d’un document

Dans certains cas, il se peut qu’un critère d’indexation soit bien présent sur toutes les pages, mais sans valeur pour certaines pages, ou bien que le critère d’indexation ne soit pas présent sur toutes les pages. La commande suivante permet alors de réindexer le document en copiant, pour les pages sans valeur d’index, la valeur de l’index se trouvant sur la page précédente.


Exemple :

map_xps -infile:/home/map2019/email.xps –copyEmptyIndex:INVOICE

Fichier avant passage de la commande :

Page	Index	Valeur
1	INVOICE	1
2
 
3	INVOICE	2
4	INVOICE	3
5

Fichier après passage de la commande :

Page	Index	Valeur
1	INVOICE	1
2	INVOICE	1
3	INVOICE	2
4	INVOICE	3
5	INVOICE	3

Ajout de critères d’indexation au document

Le principe est d’indexer un document en ajoutant un ou plusieurs critères.

Les valeurs de chaque critère peuvent être précisées en clair sur la ligne de commande : toutes les pages du document auront alors la même valeur d’index.


Exemple :

 map_xps -infile:/home/map2019/email.xps -addCriteria:NUMORDER=123456


Mapxps-criteria.PNG


Plus généralement, les valeurs d’un index seront issues d’une extraction préalable d’informations contenues dans le document lui-même, et stockées dans un fichier texte temporaire (consulter ci-après). La syntaxe précédente doit utiliser le mot clé « FILE: » pour spécifier que les valeurs de l’index ajouté doivent être reprises du fichier créé précédemment.


Exemple :

map_xps -infile:/home/map2019/email.xps -addCriteria:NUMORDER=FILE:/home/map2019/email.txt [ –outfile:/home/map201/email_indexed.xps]

Extraction de valeurs de critères du document

Le principe est de rechercher des informations contenues dans le document et de les extraire dans un fichier temporaire, pour ensuite les ajouter comme valeurs d’un critère d’indexation du même document. Le fichier temporaire créé est au format texte, en Unicode, avec la syntaxe suivante : "valeur[TAB]page[CRLF]"

La collecte des informations dans le document peut se faire par mot clé ou par position.

Les informations retournées peuvent être nettoyées des espaces superflus avant et/ou après le texte, avec les paramètres suivants :

-ltrim : suppression des espaces avant le texte
-rtrim : suppression des espaces après le texte
-trim : suppression des espaces avant et après le texte

Exemple 1 : recherche par mot clé

map_xps -infile:/home/map2019/email.xps -extract:/home/map2019/email.txt
"-filter:Invoice for order" -length:10 –shift:2 -rtrim

Extraction de 10 caractères, situés 2 caractères après le mot clé "Invoice for order", en supprimant les espaces superflus après le texte retourné

Exemple 2 : recherche par position

map_xps -infile:/home/map2019/email.xps -extract:/home/map2019/email.txt "-box:100,150,180,30,mm"

Les paramètres de la « box » précisent ses dimensions. La syntaxe est : xx.xx,xx.xx,xx.xx,xx.xx[,cm|in|mm]

4 nombres décimaux, spécifiant dans l’ordre : top (haut), bottom (bas), left (gauche), right (droite)

Le séparateur de décimale est le ‘.’

Le séparateur de valeurs est ‘,’ ou ‘;’

Le dernier paramètre est l’unité de ces coordonnées : en point (pour une résolution de 96dpi) par défaut, en millimètre (mm), en centimètre (cm) ou en pouce (in).

Exporter les index et leurs valeurs

Le principe est la création d’un fichier d’index à partir d’un document, en vue de son archivage dans un logiciel tiers. Le fichier d’index peut être au format TXT, XML, ou IND (compatible Content Manager).

Le paramètre « -duplicateindex » permet d’exporter également les index dont la valeur est la même sur plusieurs pages.


Exemples :

map_xps -infile:/home/map2019/mail.xps -indexfile:/home/map2019/file.txt –toXPS [-duplicateindex] 
map_xps -infile:/home/map2019/email.xps -indexfile:/home/map2019/file.xml -toXPS [-duplicateindex]  
map_xps -infile:/home/map2019/email.xps -indexfile:/home/map2019/file.ind -toXPS [-duplicateindex]
Mapxps-exportxml.PNG

Utilisation des critères d’indexation

Trier un document

Le principe est de trier un document suivant les valeurs d’un ou plusieurs critères d’indexation. Un seul fichier sera créé en sortie. Le tri s’effectue par ordre croissant sur des valeurs numériques par défaut. L’utilisation de l’option ALPHA permet de réaliser un tri sur des valeurs alphanumériques, l’option REVERSE permet un tri par ordre décroissant.


Exemples :

map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –sort:CUSTNBR -toPDF 
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –sort:ALPHA:MAPSEND -toPDF
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf –sort:CUSTNBR,INV_NBR -toPDF 
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -sort:CUSTNBR,REVERSE:INV_NBR -toPDF
Mapxps-trie.PNG

Éclater un document

Le principe est d’éclater un document suivant les valeurs d’un ou plusieurs critères d’indexation. Autant de fichiers peuvent être créés en sortie qu’il y a de valeurs différentes du ou des critères utilisés.


Exemple :

map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[MAPSEND]].pdf –toPDF
Mapxps-eclater.PNG


Le mode BUNDLEONINDEX permet de créer des lots en fonction du nombre de pages pour chaque valeur de critère (par exemple : 1 fichier avec les documents de 1 à 4 pages, 1 fichier pour les documents de 5 à 9 pages, un fichier pour les documents de plus de 10 pages). Il est possible de créer autant de lots que souhaité.


Exemple :

map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[BUNDLEONINDEX,MAPSEND,1,5,10]].pdf –toPDF

En mode BUNDLEONINDEX, l’éclatement peut également se faire suivant un nombre de feuilles (en fonction des informations de recto/verso ou non), la syntaxe devient :

map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email_[[BUNDLEONINDEX=LEAF,MAPSEND,1,5,10]].pdf –toPDF

Filtres sur des valeurs de critères

Le principe est "d’isoler" certaines pages d’un document en fonction des valeurs d’un ou plusieurs critères d’indexation. Cela peut servir notamment pour créer un document en sortie ne concernant que certains clients.


Exemples : map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -toPDF –filter:CUSTOMER=426 map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -toPDF "-filter:(CUSTOMER=4026) OR (CUSTOMER=1458) AND (PRICE=15)"

Cela peut également s’avérer très utile pour n’effectuer des actions que sur certaines pages, dépendant de valeurs de critères (notamment la gestion des PrintTickets).

Concaténer des fichiers XPS

Le principe est d’ajouter plusieurs documents les uns à la suite des autres. Le document de sortie est la concaténation de tous les fichiers précisés sur la ligne de commande, dans l’ordre où ils ont été précisés.

On peut ensuite imaginer un tri suivant des critères d’indexation préalablement définis sur chaque fichier pour faire du regroupement de fichiers de plusieurs sources différentes (facture + CGV + lettre d’information…)


Exemples :

Concaténation de plusieurs fichiers XPS en une seule fois :

map_xps -outfile:/home/map2019/final.xps -add:/home/map2019/test1.xps -add:/home/map2019/test2.xps –add:/home/map2019/test3.xps

Concaténation en plusieurs fois, dans le cas où l’on ne connait pas d’avance le nombre de fichiers XPS en entrée :

 map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test1.xps 
 map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test2.xps 
 map_xps -tempfile:/home/map2019/final.xps -add:/home/map2019/test3.xps

Gestion des PrintTickets

Le principe est de gérer les différents paramètres d’un travail d’impression pour un document, soit au niveau travail complet, soit à la page.

La syntaxe générale est :

map_xps -infile:/home/map2019/email.xps -set:NOM=VALEUR

L’option « -filter:XXX » permet de n’affecter un attribut d’impression que sur certaines pages, en fonction de valeurs d’indexation du document.

Les différents attributs "PrintTicket" reconnus sont :

DUPLEX : gestion du recto/verso

  • yes/no : recto/verso en suivant les bords longs, ou recto seul
  • long/short/F : recto/verso en suivant les bords longs ou courts, ou recto seul

FRONTSIDE (on/off): force l’impression sur le recto (en sortie PCL uniquement, en combinaison avec les options -filter:XXX et -pages:*)

INPUTBIN / OUTPUTBIN (valeur numérique) : gestion des bacs d’entrée/sortie

  • ORIENTATION (valeur numérique)
  • 0: Portrait
  • 1: Landscape (paysage)
  • 2: ReversePortrait (portrait retourné/inversé) 3: ReverseLandscape (paysage retourné/inversé)

COPY (valeur numérique) : nombre de copies

STAPLE (valeur numérique) : agrafage

  • 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 haut à droite)
  • 10 = None (stopper l’agrafage)


MEDIATYPE (valeur alphabétique) : type de papier Exemples : Archive, Etiquette, Bristol, AutoSelect…

NUP (valeur numérique : 1, 2 ou 4) : regroupement de 1, 2 ou 4 pages du document initial sur 1 page en sortie

LEFTOFFSET : marge de gauche en points

TOPOFFSET : marge supérieure en points

JOBCUT : yes/no. Commande de rupture de job (pour utiliser le cutter sur les imprimantes possédant le dispositif)

TOGGLE : yes/no. Commande de décalage du papier.


Remarque :

Tous ces différents paramètres devront ensuite être gérés dans des profils de conversion du fichier XPSConfig.conf, en fonction de la destination finale des documents.Il est également possible d’utiliser ces paramètres lors d’une conversion directe sans passer par le -set : -duplex:LONG au lieu de -set:DUPLEX=LONG.


Exemples :

  • Pour paramétrer le recto/verso sur un fichier XPS existant :
 map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=yes
  • Pour paramétrer le recto uniquement sur un fichier XPS existant :
 map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=no
  • Pour gérer les PrintTickets au niveau page :
 map_xps -infile:/home/map2019/email.xps -set:INPUTBIN=2 -pages:2,3
  • Pour paramétrer le recto sur la première page et recto/verso sur les suivantes :
 map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=yes
 map_xps -infile:/home/map2019/myfile.xps -set:DUPLEX=no -pages:1

Envoyer un email

Principe : en sortie des traitements effectués par la commande map_xps, envoi direct du fichier résultant par email.

Paramètres obligatoires :

-toEmail | -toMail
-server:XXX => serveur SMTP
-from:XXX	=> expéditeur
-to:XXX	=> destinataire(s)
-infile:XXX => fichier XPS à joindre à l’email envoyé

Paramètres optionnels (le caractère optionnel ou non de certains arguments listés ci-après peut dépendre du serveur SMTP adressé) :

-domain:mydomain.net	=> domaine du serveur SMTP
-port:25	=> port du serveur SMTP
-login:username	=> identifiant de connexion au serveur SMTP
-passwd:*******	=> mot de passé de connexion au serveur SMTP
-cc:XXX	=> destinataire(s) en copie
-bcc:XXX	=> destinataire(s) en copie cachée
"-subject:This is my subject" => sujet du message
"-body:This is my body"	=> corps du message au format texte
-bodyhtml:XXX	=> corps du message au format HTML
-bodyhtml:FILE:/home/izaopale/bodyhtml.html
-footer:XXX	=> Pied de page du mail au format texte
-footerhtml:XXX	=> Pied de page du mail au format HTML
-footerhtml:FILE=/home/izaopale/footer.html
-attachment:XXX	=> ajout de pièce(s) jointe(s) supplémentaire(s), séparées par une virgule
-outfile:XXX	=> dans le cas de l’envoi d’email, cet argument sert à nommer la pièce jointe principale (argument infile) envoyée


Exemple 1 : map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -outfile:nomPJ.xps


Exemple 2 : avec ajout de 2 pièces jointes map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -outfile:nomPJ.xps -attachment:/home/izaopale/PJ1.pdf,/home/izaopale/PJ2.pdf


Exemple 3 : avec conversion en PDF de la pièce jointe map_xps -infile:/home/map2019/fichier.xps -toMail -from:XXX -to:XXX -login:XXX -passwd:XXX -server:XXX "-subject:Test envoi email" "-body:Ceci est un test" -toPDF -outfile:nomPJ.pdf

Maquettage avec sortie imprimée – Redirection dans une OUTQ

Maquettage du document et conversion implicite / explicite en sortie

Les langages de sortie supportés lors d’un MAPCPYSPLF sont les suivants : o Paramètre TYPLAN :

  • PCL
  • AFPDS
  • ZEBRA
  • DATAMAX
  • AUTO
  • IGP
  • TEC
  • IPL
  • F_D
  • PDF
  • EPL
  • XPS


La valeur spéciale *AUTO reprend la valeur du paramètre saisi dans l’option 1 du Menu Mapping.

Dans ce cas, si *AUTO est spécifié dans le paramètre TYPLAN de la commande, le logiciel utilisera les maquettes développées en langage PCL.

o Paramètre XPSCONVERT :

Valeur Remarque

  • AUTO Valeur du 14/14 - Paramètre PROFILE

Valeur de profil Celui spécifié dans le XPSConfig.conf


La valeur spéciale *AUTO permet de récupérer le nom de profil de l’imprimante qui est paramétré dans l’option Définition des paramètres imprimantes de Menu d’exploitation.


Exemple de définition:

Ici, pour toutes les imprimantes, le profil *PCL est spécifié. Ce qui permet par exemple, de ne pas avoir à spécifier le nom de toutes les Outq / Devices du système si les imprimantes physiques sont des Laser.

Ce nom de profil doit être paramétré dans le fichier XPSConfig.conf (situé dans l’IFS, sous la racine du répertoire MAPPING).

Un fichier de configuration par défaut est installé avec les valeurs suivantes :

<xpsconfig>

    1. This file contains the conversion profile for Mapping.
    2. You can create your own profile based on the Mapping documentation. BE CAREFUL WITH THE FILE STRUCTURE.
    3. PROFILE NAMES STARTING WITH * ARE RESERVED FOR MAPPING. SO DO NOT CREATE OR MODIFY A PROFILE STARTING WITH *.
	<*XPS> 
	 	<label>DO NOT MODIFY - standard XPS</label> 
	 	<language>XPS</language> 
	</*XPS> 
	<*PCL> 
	 	<label>DO NOT MODIFY - standard PCL5/e</label> 
	 	<language>PCL</language> 
	 	<color>off</color> 
	</*PCL> 


Dans cet exemple, le profil *PCL utilise le langage PCL (paramètre <language> du profil).


Exemple de commandes pour sortie imprimée

Exemple de commande :

 MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX) 
 MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*AUTO) 

Explications:

TYPLAN : Pour positionner le langage de la maquette. Mais ce paramètre accepte aussi la valeur *AUTO : Auquel cas, le programme récupère la valeur positionnée dans le menu Mapping/Option 1.

XPSCONVERT : Conversion implicite réalisée en sortie. Ici, avec *AUTO le profil utilisé est celui qui est paramétré dans l’option 6 dans le menu Exploitation.


Autre exemple de commande :

MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX) 
MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*PCL) 

Explications :

XPSCONVERT : Conversion explicite réalisée en sortie. Ici, avec *PCL, c’est le profil *PCL du fichier XPSConfig.conf qui sera utilisé.

Maquettage avec sortie fichier dans l’IFS /Maquettage du document avec conversion et stockage dans l’IFS

Les mêmes commandes peuvent être utilisées afin de placer le résultat du maquettage et de la conversion dans un dossier de l’IFS. Il suffit pour cela de renseigner le paramètre XPSOUTFILE. En effet, la valeur par défaut de XPSOUTFILE est à *PRINT, pour ne pas générer de sortie fichier.

Exemple :

MAPCPYSPLF SPLF(SPOOL) SPLNUM(7) JOB(QPADEV003K) JOBNUM(062592) USER(XXX) 
MAPNAM(INVOICEXPS) MAPSEQ(00010) OUTQ(PCLPRT) TYPLAN(*XPS) XPSCONVERT(*PCL) XPSOUTFILE(‘/home/map2019/invoice.pcl’)

Rediriger la log dans un fichier

Principe : récupérer toutes les logs des commandes map_xps dans un fichier texte.

Exemple :

map_xps -infile:/home/map2019/email.xps –logfile:/tmp/mylog.log
Mapxps-log.PNG

Lister les ressources

Principe : affichage de toutes les ressources (polices et images) embarquées dans un fichier XPS.

Exemple :

map_xps -infile:/home/map2019/email.xps –listResource
Mapxps-listerR.PNG

Extraction de pages

Principe : définir des intervalles et/ou des sélections de pages à traiter. Les intervalles de pages sont à préciser sur la ligne de commande, les sélections peuvent être dans un fichier texte, où la syntaxe est : numéro de page+CRLF. L’utilisation du caractère ‘*’ est possible pour les intervalles de pages, pour choisir la fin du document.

Exemples :

map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:1,3,4,7,10 –toPDF 
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:3-10 –toPDF 
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:1,5,10-* –toPDF 
map_xps -infile:/home/map2019/email.xps -outfile:/home/map2019/email.pdf -pages:FILE:/home/map2019/test.txt –toPDF

Extraction des données en XML (pour M-Designer)

Principe : créer un fichier XML compatible pour M-Designer, dans lequel toutes les données textes du fichier XPS sont extraites. Chaque zone de texte dans le fichier XPS devient un champ XML, nommé de manière unique par ses positions en X et Y. Les positions X et Y sont définies en 72 dpi.

Ce mode est aussi utilisé pour créer un fichier XML servant de base à l’ajout de codes OMR.


Exemple :

map_xps -infile:/home/map2019/billing.xps –toXMLDRAW -outfile:/home/map2019/billing.draw.xml
Mapxps-d-xml.PNG

Format et taille des pages d’un document :

Pour modifier la taille des pages du document, ou la taille des données à l’intérieur d’une page, il existe 3 arguments de la ligne de commande, ayant chacun leur fonctionnel : -paper:XXX : permet de changer la taille du papier (de la page), sans toucher au contenu. -scale:XXX : permet de changer la taille du contenu, sans toucher au papier. -changeformat:XXX : permet de changer le format du document, en modifiant la taille du papier tout en adaptant en contenu (avec conservation des proportions).

Syntaxes

Pour une mise à l’échelle du contenu d’une page, l’argument « -scale:XXX » prend des valeurs de pourcentage, de 0 à l'infini (attention aux pertes de données avec des valeurs supérieures à 100, puisque la taille du papier n’est pas modifiée).

Pour modifier la taille de la page en sortie, avec modification ou non du contenu, les arguments « - changeformat:XXX » et « -paper:XXX » permettent de définir la taille du format, soit à la norme ISO, soit en personnalisé.

Valeurs possibles ISO : AUTO, EXECUTIVE, LETTER, LEGAL, LEDGER, A4, A3, A2, A1, A0, MONARCH, COM10, DL, CS, B5 Syntaxe pour taille personnalisée : -changeformat:xx.xx,xx.xx[,cm|in|mm] 2 valeurs décimales correspondant respectivement à largeur et hauteur Le séparateur de décimale est le ‘.’ Le séparateur de valeurs est ‘,’ ou ‘;’

L’unité est optionnelle : cm (par défaut), mm ou in (pour inch) Exemples :

map_xps -infile:/home/map2019/billing.xps –scale:50 -outfile:/home/izaopale/out.xps 
map_xps -infile:/home/map2019/billing.xps –changeformat:A4 -outfile:/home/izaopale/out.xps
map_xps -infile:/home/map2019/billing.xps –changeformat:21,29.7,cm -outfile:/home/izaopale/out.xps

Rotation de documents

Principe : effectuer une rotation sur un fichier XPS

L’angle de rotation (en degré) est précisé sur la ligne de commande, le sens de rotation par défaut étant le sens trigonométrique (anti horaire). Sur le principe, tous les angles sont supportés, mais seuls les angles droits respectent la cohérence des dimensions de la page d’origine.

D’où les valeurs supportées suivantes : -90 (rotation de 90° dans le sens horaire), 90, 180, 270. Notes : les valeurs -180 et -270 ne sont pas supportées (page blanche en sortie), il convient d’utiliser respectivement 180 et 90.

Mapxps-rotate.png

Exemple :

map_xps -infile:/home/map2019/fichier.xps -outfile:/home/map2019/fichier_90.xps –rotation:90 -toXPS

Fusion d’un fond de page sur un document existant

Principe : sur un document XPS existant, il est possible de venir rajouter un autre document en tant que fond de page, ou calque. Par exemple : ajouter un logo sur une facture existante n’en comportant pas.

De plus, l’argument optionnel « -mergemode:XXX » permet de contrôler plus finement la manière dont est rajouté ce calque.


Exemple : map_xps -infile:/home/map2019/billing.xps -merge:/home/map2019/logo.xps -mergemode:REPEATALL -outfile:/home/map2019/final.xps


Mapxps-fusion.png


L’argument « -merge:XXX » précise le nom du fichier à ajouter en tant que calque sur le document d’entrée. L’argument « -mergemode:XXX » précise la méthode d’ajout:

REPEATALL : toutes les pages sont fusionnées, en répétant le calque jusqu’à la fin du fichier d’entrée. C’est le fonctionnement par défaut si rien n’est précisé.

Exemple :

  • En entrée : fichier d’entrée de 5 pages (identifiées par 1,2,3,4,5) et un calque de 2 pages (identifiées a,b)
  • En sortie : un fichier de 5 pages identifiées 1a,2b,3a,4b,5a

REPEATFULL : toutes les pages sont fusionnées, en répétant le calque tant qu’il peut être inséré entièrement.

Exemple :

  • Avec les mêmes entrées que précédemment, on aura en sortie un fichier de 5 pages identifiées 1a,2b,3a,4b,5 (la dernière page n’étant donc pas modifiée).

ONCE : le calque n’est inséré qu’une seule fois, sur la ou les premières pages du fichier d’entrée.

Exemple :

  • Avec les mêmes entrées que précédemment, on aura en sortie un fichier de 5 pages identifiées 1a,2b,3,4,5.

Variable d’environnement exportée

MAP_XPSFILE : contient le nom du fichier en cours d’extraction.


Gestion des input box

Le nom de la zone input text doit être « SUBMIT ».

-param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost?
map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.pdf -toPDF
-param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost?
map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.html -toHTML
-param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost?

Avec envoi d’e-mail :

map_xps -infile:/tmp/form_vide.xps -outfile:/tmp/test.html -toHTML -param:url=http://127.0.0.1:8002/cgi-bin/mapsoapserver.exe/mapRunPost? -toMail -from:exp@mydomain.net -to:dest@mydomain.net -subject:form -server:192.168.1.2 -domain:mydomain.net

map_xps sort map_xps -sort trier un fichier xps