> For the complete documentation index, see [llms.txt](https://documentation.efalia.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.efalia.com/documentations/efalia-compose/mapping-suite/onyx-server/workflows/workflows-dautomatisation/generation-de-fichiers-pdf.md).

# Génération de fichiers PDF

## Description de l’interface

Pour accéder à l’interface de génération de PDF, double\_cliquer sur la commande en question, choisir “XPS to Web format”, choisir “Vers PDF”.

### Onglet standard

<figure><img src="/files/6MScq5z7eb7kXToRXOeH" alt="OX S XPS-PDF STD.png"><figcaption></figcaption></figure>

Input filename : Fichier XPS à convertir en PDF (chemin + nom du fichier renseignés en dur ou MAP\_FILE\_IN)

Output file : Chemin + nom du ou des fichiers PDF à générer (en dur ou MAP\_FILE\_OUT)

Profile : Profil de conversion à utiliser (FACULTATIF)

### Onglet pages

<figure><img src="/files/KAXjZM0sQ78tjWgLzPca" alt="OX S XPS-PDF PG.png"><figcaption></figcaption></figure>

Ces paramètres permettent de spécifier le numéro de page de début et le numéro de page de fin du PDF à générer.

Output start page : Numéro de page de début (valeur en dur ou paramètre MAP\_STARTPAGE reprenant les numéros de pages du fichier XPS en entrée)

Output end page : Numéro de page de fin (valeur en dur ou paramètre MAP\_STOPPAGE reprenant les numéros de pages du fichier XPS en entrée)

### Onglet indexes

<figure><img src="/files/IBxX3aNChEuTMTKA50DH" alt="OX S XPS-PDF index.png"><figcaption></figcaption></figure>

Cet onglet permet de générer un fichier d’index (XML, TXT ou CMOD) avec le ou les fichiers PDF (Fichiers d’indexes) Index export type : Ce paramètre permet de spécifier le type de fichiers d’indexes généré

Output index file name : Ce paramètre permet de spécifier le chemin et le nom du fichier d’index à générer

Export all indexes values on all pages : Ce paramètre définit la façon d’exporter les valeurs.

Soit le fichier d’index contient les indexes de toutes les pages (coché), soit le fichier d’index contient uniquement 1 seule fois l’index. (Les pages ayant le même index ne sont pas répétées)

Export indexes with no value : Si coché, ce paramètre permet également d’exporter les indexes ayant une valeur vide, sinon (non coché), uniquement les indexes avec une valeur non nulle seront exportés.

### Onglet signature

L’ensemble des paramètres suivants permettent d’apposer une signature électronique aux documents PDF en sortie d’Onyx Server :

```
<signclass>3</signclass>
<signmode>FILENAME</signmode>
<signpassword>test</signpassword>
<signdriver>OPENSSL</signdriver>
<signsha1hash>3eb783643e522c81d1e34c1943e6f4163e9ad439</signsha1hash>
<signpemfile>C:\tmp\test.pem</signpemfile>
<signcerfile>C:\tmp\test.cer</signcerfile>
<signpfxfile>C:\tmp\valid.pfx</signpfxfile>
<timestampurl>http://servertemp.domain/tsp</timestampurl>
```

Par défaut, les documents PDF produits par Onyx Server ne sont pas signés.

Si **signmode** est vide alors **La signature est désactivée** et aucun des autres paramètres n’aura un effet

<figure><img src="/files/bkR2ldTLOUndm28BD4GV" alt="OX S sig.png"><figcaption></figcaption></figure>

### Onglet encrypt

<figure><img src="/files/MYvpXLsJlPV2tRYMXx1t" alt="OX S Encrypt.png"><figcaption></figcaption></figure>

Cet onglet permet de protéger le fichier PDF par un mot de passe (obligatoire dans la gestion des droits spéciaux des PDF, voir Onglet « Encrypt advanced »).

Encrypt mode : Ce paramètre permet d’activer ou de désactiver la mise en place d’un mot de passe sur le PDF :

* Default : L’encryptage est désactivé
* No : L’encryptage est désactivé
* Yes : L’encryptage est activé

Encrypt user password : Ce paramètre permet de saisir un mot de passe qui sera demandé à chaque ouverture du PDF. L’accès par le mot de passe utilisateur ne donne pas accès aux fonctionnalités bloquées.

Encrypt owner password : Ce paramètre permet de saisir un mot de passe qui sera demandé pour pouvoir modifier les autorisations (impression, modification, copie, etc.) une fois que le PDF sera créé.

Remarques :

* Si le mot de passe utilisateur et le mot de passe propriétaire sont identiques, l’utilisateur aura toutes les autorisations à l’ouverture du fichier.
* Adobe Reader demande le mot de passe à l’ouverture uniquement s’il y a un mot de passe utilisateur. S’il n’y a qu’un mot de passe propriétaire, on ne peut passer en mode propriétaire qu’avec la version payante d’Abobe Reader.
* Le paramètre « Encrypt mode » à default = no.
* Si le paramètre « Encrypt mode » à no = pas de prise en compte de la gestion des mots de passe et des droits sur les fichiers.

### Onglet encrypt advanced

<figure><img src="/files/uQ0XG0WBH4a2yBMy8NeV" alt="OX S encryptadvanced.png"><figcaption></figcaption></figure>

Cet onglet permet la gestion des droits spéciaux appliqués au fichier PDF généré. Les droits en question sont :

* Droit d’impression : Donne la possibilité d’imprimer ou non le PDF
* Droit de modification : Donne la possibilité ou non de modifier le PDF (via Acrobat Reader Pro par exemple)
* Droit d’extraction de page : Donne la possibilité ou non d’extraire des pages (via PDF Fill par exemple) :<https://www.pdfill.com/document_pages_extract.html>
* Droit de commentaire : Donne la possibilité ou non d’ajouter des commentaires
* Droit de signature : Donne la possibilité ou non d’apposer une signature
* Droit d’accessibilité : Donne la possibilité ou non de copier le contenu du fichier PDF
* Droit d’assemblage : Donne la possibilité ou non de modifier l’ordre des pages, d’en supprimer ou d’en insérer
* Droit de hauteur de page : Modifie la résolution d’impression Si No = Basse résolution (150pp), si Yes = Haute résolution

Remarques :

* Pour jouer avec les différents droits, il faut mettre un mot de passe utilisateur et mot de passe propriétaire. (Onglet Encrypt) et ouvrir le PDF avec le mot de passe de l’utilisateur. :
  * Le propriétaire a toujours tous les droits sur le PDF (donc les droits spécifiés dans l’onglet « Encrypt advanced » ne sont pas pris en compte).
  * L’utilisateur a les droits spécifiés dans l’onglet « Encrypt advanced »
* La valeur « default » a pour valeur YES.
* Si « Encrypt allow all » = YES ou DEFAULT alors l’utilisateur a tous les droitsSi « Encrypt allow all » = NO alors l’utilisateur a les droits spécifiés dans les listes déroulantes suivantes

## Exemples

### Variante 1 : Création dun simple PDF

Prenons pour exemple le workflow suivant :

<figure><img src="/files/FtATSyGrc3PXNVyWaSi5" alt="OX S CRT PDF.png"><figcaption></figcaption></figure>

A)Action « Parameter » : FILE\_NAME

Cette action initialise une variable avec une partie d’une autre variable.

Ici nous :

* Créons une variable : FILE\_NAME
* Initialisons cette variable avec le basename de la variable MAP\_TITLE

(ex : MAP\_TITLE : C:\Repertoire\monfichier.txt -> Le basename est : monfichier.txt)

Cette variable est utilisée dans le nommage du PDF. Voir documentation : Workflow String

B)Action « Parameter » : FILE\_NAME

Cette action convertit un fichier XPS en PDF. Le nom du PDF sera fonction de la variable créée précédemment.

<figure><img src="/files/rPRpcI0x1RC7Z4nISbqp" alt="OX S CRTPDF.png"><figcaption></figcaption></figure>

### Variante 2 : Création d’un fichier PDF avec un fichier d’index

Cette variante permet en plus de créer un fichier PDF, la création d’un fichier XML listant les indexes du fichier XPS d’origine.

<figure><img src="/files/ttH9EQeqjwyCrMc4MmMd" alt="OX S CRTPDFINDEX.png"><figcaption></figcaption></figure>

Exemples de génération de fichier d’index :

“Exporter toutes les valeurs d’index sur toutes les pages” **non cochée**

“Écrire les index même s’ils n’ont pas de valeur” **non cochée**

* Exporte les indexes une seule fois (uniquement sur la 1ere page trouvée)

“Exporter toutes les valeurs d’index sur toutes les pages” **Non cochée**

“Écrire les index même s’ils n’ont pas de valeure” **Cochée**

* Export les indexes une seule fois (uniquement sur la 1ere page trouvée)
* Export des indexes sans valeur ex : IDX\_DESCRL

“Exporter toutes les valeurs d’index sur toutes les pages” **Cochée**

“Écrire les index même s’ils n’ont pas de valeur” **Cochée**

* Exporte les indexes de toutes les pages, même si ayant les mêmes valeurs que la page précédente.

### Variante 3 : Eclatement par valeur d’index

Dans l’exemple ci-dessus (Variante 2), nous avons vu que le fichier XPS d’origine comporte des indexes sur certaines pages. Cette variante montre comment nous pouvons utiliser ces indexes pour créer un fichier PDF par valeur d’index. Prenons pour exemple un fichier XPS de 3 pages, 1 page par client différent. Nous voulons éclater le PDF par numéro de client (Index IDX\_CUSTOMER).

<figure><img src="/files/YymZfpXPE5H3uUgxX0eK" alt="OX S EcltValIndx.png"><figcaption></figcaption></figure>

* Remarque 1: La syntaxe \[\[NOM\_INDEX]]dans le nom du PDF génère 1 PDF par valeur différente d’index \[\[NOM\_INDEX]]
* Remarque 2: Si dans le nom, nous avons 2 valeurs d’index :`C:\TEST_AUTO\TOPDF\OUT\DOCUMENT_[[IDX_DOCNUM]]_CUST_[[IDX_CUSTOMER]].pdf`

Il y aura autant de fichiers PDF créés que de combinaisons de valeurs différentes des 2 indexes.

Dans cet exemple :

3 PDF d’une page ayant comme nom DOCUMENT\_CUST\_00001.pdf, DOCUMENT\_CUST\_00002.pdf, DOCUMENT\_CUST\_00003.pdf

### Variante 4 :Gestion des droits

Cette variante permet de créer un fichier PDF avec des droits spécifiques.

1. Tout d’abord, il faut spécifier un mot de passe pour le propriétaire et un mot de passe pour l’utilisateur :

<figure><img src="/files/RNC4aLueufpARWIt2VaD" alt="OX S gestiondroits.png"><figcaption></figcaption></figure>

Le « encrypt mode » doit être à YES. Sinon l’encryptage ne sera pas activé et les mots de passe renseignés n’auront aucun effet. Ici, le mot de passe utilisateur est « user » et le mot de passe propriétaire est « owner ».

2. Ensuite, il faut renseigner les droits spécifiques :

<figure><img src="/files/FwbWTYtd7fBhGgeVI0ic" alt="OX S GestDroit advancd.png"><figcaption></figcaption></figure>

« Encrypt allow all » doit être à NO (si YES alors l’utilisateur aura tous les droits, peu importe les droits renseignés). L’utilisateur aura uniquement les droits d’impression sur le PDF généré. L’utilisateur est la personne qui ouvre le PDF avec le mot de passe utilisateur : « user ».

Si le PDF est ouvert grâce au mot de passe propriétaire « owner », alors tous les droits seront autorisés.

Remarque : Sur Acrobat Reader, les droits « Assemblage du document » et « Extraction de pages » sont toujours « Non autorisé(e) ». Acrobat Reader désactive automatiquement ces deux autorisations, même si le PDF d’origine les possède.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://documentation.efalia.com/documentations/efalia-compose/mapping-suite/onyx-server/workflows/workflows-dautomatisation/generation-de-fichiers-pdf.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
