PDF Printer

Introduction

PDF Printer est un module Dolibarr permettant de générer des documents PDF totalement personnalisables à l’aide de blocs.

Pour s’assurer du bon fonctionnement du module, veuillez vous assurer que vous disposez de la dernière version du module depuis le votre Compte.

La numérotation des versions est effectuée de la manière suivante:

  • 1er nombre: version max compatible de Dolibarr;
  • 2ème nombre: version majeure de PDF Printer (modification des fonctionnalités, tables SQL, …);
  • 3ème nombre: corrections et mises à jour mineures;

Installation et mise à jour

Téléchargez le fichier archive «module_ancodepdfprinter-x.y.z.zip» depuis vos Téléchargements.

Vous pouvez, soit décompresser ce fichier dans le répertoire racine de Dolibarr ou dans le répertoire «custom», soit sélectionner ce fichier depuis l’installateur de modules de Dolibarr. Attention, le fichier à importer est assez lourd.

Les tables SQL du module pourront être modifiées à chaque mise à jour majeure, mais ne seront jamais supprimées automatiquement en désactivant ou en supprimant le module.

Gestion des Médias (Feuilles)

Démonstration
Utilisateurdemo
Mot de passedemodemodemo
URLhttps://demo.dolibarr.ancode.fr

Une feuille est une page indivisible qui peut être composée d’une ou plusieurs cellules, un peu comme un tableur office. Chaque cellule peut accueillir un gabarit.

Par exemple, il peut tout aussi bien s’agir:

  • D’une planche étiquettes au format A4 sur laquelle est disposée 24 étiquettes (donc 24 cellules) 70x37mm,
  • D’une simple feuille A4 pour créer des documents à entêtes personnalisées (1 cellule),
  • D’un feuillet 102x152mm, détachable d’un rouleau, sur laquelle n’est disposée qu’une seule étiquette (une seule cellule),
  • D’une boîte d’emballage, d’un carton ou d’une enveloppe à personnaliser (1 cellule également);

La gestion des feuilles se trouve dans les paramètres du module. Elle permet d’ajouter, de modifier ou de supprimer des feuilles comme bon vous semble. Quelques feuilles sont d’ores et déjà disponibles par défaut à titre d’exemple.

Pour ajouter une nouvelle feuille, il suffit de renseigner les champs suivants:

  • Nom: Le libellé qui sera affiché sur le formulaire d’impression;
  • Orientation: L’orientation de la feuille;
  • Format: Le format est la taille de la page. Il peut être indiqué de manière littérale pour les formats les plus communs (A4, A5, B2, …), ou numériquement en millimètre (210×297, 102×152, 57×32, …);
  • Marges horizontales: Les marges horizontales sont les espaces hors zone d’impression situées à gauche et à droite de la feuille. La valeur attendue correspond à la largeur de la marge gauche en millimètre;
  • Marges verticales: Les marges verticales sont les espaces hors zone d’impression situées en haut et en bas de la feuille. La valeur attendue correspond à la hauteur de la marge haute en millimètre;
  • Largeur cellule: La largeur d’une cellule en millimètre.
  • Hauteur cellule: La hauteur d’une cellule en millimètre.
  • Nombre de lignes: Le nombre de lignes de cellules (Soit le nombre de cellules dans une colonne).
  • Nombre de colonnes: Le nombre de colonnes de cellules (soit le nombre de cellule dans une ligne).

À noter que les dimensions des marges entre-cellules sont automatiquement calculées par le module et n’ont donc pas besoin d’être renseignées.

Exemple

Prenons pour exemple une page A4 multi-étiquettes sur laquelle se trouve 16 étiquettes au format 86.4 x 33.9 mm.

Les paramètres à saisir seront les suivants:

  • Nom: Peu importe
  • Orientation: Portrait
  • Format: A4 ou 210×297
  • Marges horizontales: 19
  • Marges verticales: 12.5
  • Largeur cellule: 86.4
  • Hauteur cellule: 33.9
  • Nombre de lignes: 8
  • Nombre de colonnes: 2

Gestion des Gabarits

Démonstration
Utilisateurdemo
Mot de passedemodemodemo
URLhttps://demo.dolibarr.ancode.fr

La gestion des gabarits se trouve dans les paramètres du module. Le gabarit contient toute la mise en forme d’un document ou d’une cellule sous forme de blocs.

La conception d’un gabarit consiste à ajouter des éléments les uns à la suite des autres, soit en renseignant leurs coordonnées, soit en indiquant leur position par rapport à l’élément précédent.

Comme les coordonnées et les dimensions de chaque élément peuvent être renseignées en pourcentage, et qu’un gabarit n’est pas lié à un format de cellule précis, un même gabarit peut s’adapter à différents formats de feuilles et de cellules.

Créer un gabarit

Pour créer un nouveau gabarit, il suffit d’indiquer le nom que vous souhaitez lui donner.

Le nouveau gabarit sera alors ajouté dans la liste. Il suffit alors de cliquer sur le crayon pour l’éditer.

La page d’édition comporte plusieurs onglets:

  • Conception: Est l’endroit où vous allez pouvoir éditer les éléments du gabarit et le visualiser en temps réel;
  • Paramètres: Où vous allez pouvoir, notamment, modifier le nom ou la visibilité du gabarit.
  • Images: Pour gérer les images importées.
  • Polices: Pour gérer les polices de caractères personnalisées.
  • Export: Qui va vous permettre de télécharger le gabarit en 1 clic.

Conception

Cet onglet permet de concevoir le gabarit en y ajoutant différents types d’éléments comme du texte, un code-barre ou une ligne, par exemple.

La page est divisée en deux parties avec, à gauche, la prévisualisation, et à droite, la liste des éléments positionnés sur le gabarit.

Prévisualisation

Chaque fois que vous enregistrez ou supprimez un élément, la partie «Prévisualisation» s’actualise pour vous permettre de visualiser le rendu en temps réel.

La section «Paramètres» permet de sélectionner la feuille à utiliser, l’orientation, si vous souhaitez afficher toute la feuille ou une seule cellule, l’entité (exemple: Produit, Commande, Ligne de facture, …), et l’identifiant de l’entité.

On trouve généralement l’identifiant d’une entité dans son URL. Par exemple, je souhaite utiliser une commande spécifique pour prévisualiser le rendu de mon gabarit.

Je me rends sur la page de cette commande, et son URL est la suivante: http://mondolibarr.exemple/commande/card.php?id=123&mainmenu=home

On saisira donc, dans les paramètres de prévisualisation, l’entité «Commande» et l’identifiant «123».

Les éléments

Ajoutez un élément en cliquant sur le bouton «Ajouter», situé en haut à droite de la liste des éléments. Puis, sélectionnez le type d’élément que vous souhaitez ajouter:

  • Texte/Expression: Une ligne de texte simple pouvant accueillir des variables ou une expression PHP à calculer;
  • Paragraphe: Un bloc de texte de plusieurs lignes pouvant accueillir des variables;
  • Rectangle: Un simple rectangle pouvant disposer de bordures et d’une couleur d’arrière plan. Il peut être utilisé pour délimiter différentes zones sur le gabarit, par exemple;
  • Ligne: Un segment pouvant, par exemple, être utilisé pour barrer ou délimiter une zone sur le gabarit;
  • Code-barre: Le code-barre peut représenter n’importe quelle valeur disponible, sous n’importe quel type de code-barre;
  • Adresse: Permet de formater une adresse selon le pays, et d’agir comme un seul et même bloc, pour être centré plus facilement et offrir plus de possibilités de personnalisation.

Chaque élément disposent d’options communes, et des options qui lui sont propres, divisées en plusieurs groupes.

Groupe « Informations générales »

Dans ce groupe, vous pouvez activer ou désactiver l’élément, lui donner un nom, et définir une condition à remplir pour que l’élément s’active.

Le champs « Condition » est un champs calculé, qui sera interprété par le moteur PHP.

Groupe « Position »

Ce groupe d’options va permettre de définir la position de l’élément sur le gabarit.

Chaque élément peut être positionné soit en indiquant des coordonnées (Fixes), en millimètre ou en pourcentage, Soit en indiquant sa position par rapport à un autre élément (Relatives: en dessous, à droite, etc.).

En mode «Relatives», vous pouvez positionner l’élément à côté d’un autre, sélectionné dans le champs «Après».

Grâce au champ «Ancrage», on sélectionne où va se placer l’élément par rapport à celui sélectionné dans le champ «Après».

De manière générale, on utilisera les options «À droite», «Au dessous» ou «À la ligne suivante»:

à droite de l’élément précédent
au-dessous du précédent
à la ligne suivante

Cependant, si l’élément sélectionné dans le champs «Après» est incliné, il est possible que vous souhaitiez coller l’élément actuel au précédent tout en gardant l’inclinaison.

Pour cela, on utilisera donc les «Ancrages» de type «Même pente».

Placement relatif normal
Placement relatif «Même pente»

En mode «Fixes», vous devez renseigner les coordonnées horizontales et verticales de l’élément.

Les coordonnées d’un élément correspondent à l’emplacement de son coin supérieur gauche (droit si RTL) sur le gabarit.

Si aucune coordonnée n’est renseignée, l’élément sera positionné au point zéro situé en haut à gauche (droite si RTL) du gabarit.

La position de l’élément dans la liste a peu d’importance en mode «Fixes», cependant il est possible de l’ajuster avec le sélecteur «Après».

Le champs «Rotation» permet de faire pivoter un élément autour de son coin supérieur gauche.

La «Hauteur» et la «Largeur», comme toutes les dimensions, doivent être renseignées en pourcentage ou en millimètres.

L’option «Ajuster» permet de redimensionner automatiquement l’élément pour le contenir dans l’espace disponible.

Si l’option «Ratio fixe» est activé, le redimensionnement sera effectué en gardant les proportions d’origine.

Groupe « Police »

Disponible dans les éléments textuels, vous pouvez, dans ce groupe, paramétrer la police de caractère.

Il dispose des options de personnalisation les plus communes.

Groupe « Ligne de texte »

Comme le groupe précédent, ce groupe d’options sera essentiellement disponible dans les éléments textuels.

Ces options vont permettre d’agir sur le style d’une ligne de texte, comme son alignement, son étirement, sa case, sa hauteur, et son nombre de caractères max.

Grâce à l’option « Contenir », vous pouvez également demander au module de réduire la taille de la police automatiquement, si le texte dépasse les limites du gabarit.

Groupe « Bordures »

Ce groupe offre des options simples pour définir facilement les bordures de chaque élément. Rien de compliqué ici.

Groupe « Marges »

Les marges sont les espacements situés au delà des bordures. Vous pouvez définir des marges pour créer un espace entre 2 éléments, par exemple.

Groupe « Remplissages »

Comme les marges, les remplissage sont des espacements. Ils sont situés entre le contenu d’un élément et sa bordure.

Comme chaque paramètre de dimensionnement, les marges et les remplissages peuvent être définis en pourcentage ou en millimètre.

Unités de mesure

Toutes les dimensions et coordonnées peuvent être renseignées en millimètre ou en pourcentage.

Si vous êtes amené à utiliser plusieurs formats de médias différents pour le même gabarit, il est possible de rendre ce dernier adaptable (responsive) en renseignant toutes ses mesures en pourcentage.

Les variables

Les variables sont des valeurs dynamiques qui correspondent aux valeurs des champs d’une fiche métier, comme par exemple, un produit, une facture, une ligne de commande ou un contact.

Selon la page depuis laquelle est lancée l’impression, le module ira chercher la valeur correspondante.

Il est possible d’insérer des variables dans chaque champs textuels, même les champs optionnels et les chemins vers les images.

Vous pouvez saisir une variable de la manière suivante:

{{Objet::champs}}

Ou, vous pouvez ouvrir la liste complète en cliquant sur le bouton {{ }} situé à droite des champs compatibles.

Si vous avez déjà une idée du nom du champ, vous pouvez commencer par dégrossir la liste en utilisant la barre de filtrage.

Cliquez ensuite sur la variable désirée pour l’insérer dans le champs de saisie, là où est positionné le curseur.

La liste des variables disponibles dépend directement des paramètres de visibilité du gabarit.

Si un variable vous manque, veuillez me contacter, et je ferai le nécessaire dans la mesure du possible.

Visibilité

Depuis les paramètres de chaque gabarit, vous avez la possibilité de limiter leur visibilité à certaines fiches métier.

Cela va vous permettre d’éviter d’encombrer le formulaire d’impression et de lister les gabarits uniquement là où c’est nécessaire.

Bibliothèque d’images

Chaque gabarit dispose de sa propre bibliothèque d’images.

Chaque fois que vous importerez une image depuis un élément «image», celle-ci sera listée dans la bibliothèque d’images.

Depuis la bibliothèque, vous pouvez ajouter ou supprimer des images, comme bon vous semble.

Chaque image peut-être utilisée dans n’importe quel élément «image» du gabarit actuel, mais ne peut pas être utilisée depuis un autre gabarit.

Bibliothèque de Polices de caractères

Chaque gabarit dispose de sa propre bibliothèque de polices de caractères.

Les polices de caractères ne peuvent-être sélectionnées que dans le gabarit où elle sont importées.

De la même manière que les images, il est donc nécessaire d’importer la police dans chaque gabarit où vous souhaitez l’utiliser.

Pour importer une nouvelle police, cliquez sur le bouton «importer».

Renseignez le nom, le type, l’encodage, les paramètres, et sélectionnez le fichier à importer.

Pour les polices TrueType, généralement, seul le nom et le fichier sont nécessaires.

La valeur par défaut de «Paramètres» est 32, ce qui correspond à une police normale, non symbolique.

Les valeurs possibles sont:

  • 1 pour une police fixe
  • 4 pour une police symbolique
  • 32 ou 0 pour une police non symbolique
  • 64 pour l’italique

Cependant, les modes fixe (1) et italique (64) sont généralement inutiles car détectés automatiquement avec les modes 32 (police non symbolique) ou 4 (police symbolique).

Paramètres par défaut

Cette section permet de définir des paramètres par défaut à tous les éléments.

Pour le moment, il s’agit uniquement de prédéfinir la famille de la police ainsi que la taille du texte.

Par défaut, lorsque ces paramètres ne sont pas définis, la famille de la police est «Helvetica» et la taille du texte est de 16 points.

Cependant, je ne peux que vous conseiller d’utiliser la police «Free mono», qui est mieux supporté par TCPDF en ce qui concerne l’alignement du texte.

Import et Export

L’exportation et l’importation permet notamment de sauvegarder votre gabarits et vos médias (feuilles) en lieu sûr, mais également de créer un gabarit sur un serveur différent de celui en production, par exemple.

L’exportation et l’importation s’effectuent au format JSON. C’est un format facilement modifiable depuis un simple éditeur de texte comme le «Bloc note» de Windows, ou le logiciel «Text» des Chromebooks, par exemple.

Tout le contenu du gabarit est inclus dans le fichier JSON, images et polices de caractères comprises.

Pour cette raison, si un gabarit contient beaucoup d’images ou de polices, il est possible que vous ayez à ajuster certains paramètres de votre serveur afin de permettre l’importation d’un fichier de plusieurs Mégaoctets.

Exporter

Pour exporter un gabarit, il suffit de se rendre sur la conception du gabarit, puis de cliquer sur le bouton «Exporter» situé dans le menu en haut de la page.

Concernant les médias, vous pouvez les exporter en cliquant sur le bouton d’action «Télécharger» correspondant, situé dans la dernière colonne de la liste des médias.

Importer

Importez un gabarit ou un média en cliquant sur le bouton «Importer» situé en haut de la liste correspondante.

Impression de documents

Sur chaque fiche métier et liste compatibles, vous trouverez un bouton «Imprimer», dans l’en-tête ou dans la liste des actions de masse, permettant d’imprimer les gabarits.

Cette action fera apparaître un formulaire d’impression ressemblant à ceci:

Ce formulaire vous propose différents choix selon le contexte de la page. Les principales options sont:

  • Le format de la feuille ou du média;
  • L’orientation de la feuille;
  • Le gabarit à utiliser par défaut et pour chaque tâche;
  • Le point de départ: lorsque la feuille dispose de plusieurs étiquettes, cette option permet de débuter l’impression depuis n’importe quelle étiquette. L’étiquette numéro 1 se trouve en haut à gauche (droite si RTL).
  • Le nombre d’exemplaire par objet;

Si votre gabarit contient un élément de type Adresse ou un élément sans valeur prédéfinie, il vous sera possible de personnaliser la valeur ou de sélectionner la valeur désirée.

Depuis certaines fiches métiers et certaines listes, un onglet «Utilisateur» vous permet de modifier et d’imprimer une adresse expéditeur personnalisée.

L’option «Sauvegarder comme valeur par défaut» permet d’enregistrer vos préférences pour une liste ou une fiche métier en particulier.

Vous pouvez choisir d’envoyer le document généré par email au lieu de l’afficher, en renseignant l’adresse du destinataire et en cliquant sur le bouton «Envoyer».