DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Editeurs / Editeur d'états / Principes
  • Présentation
  • Imprimer un état créé avec l'éditeur d'états
  • Imprimer un état au format PDF
  • Remarques
  • Exemples
  • Imprimer une impression programmée en WLangage
  • Imprimer une impression WLangage au format PDF
  • Remarques
  • Exemples
  • Imprimer un PDF depuis le visualisateur de rapports
  • Principe
  • Evénement "Avant réimpression de l'état"
  • Remarques et limitations
  • Remarques
  • Conseil général
  • Disponibilité des champs dans les états
  • Champ au format RTF
  • PDF en fond d'état
  • Impression au format PDF/A-1b
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
WINDEV, WEBDEV et WINDEV Mobile permettent de créer un fichier PDF lors d'une impression.
Ce fichier PDF peut être créé :
  • WINDEVWEBDEV - Code ServeurUniversal Windows 10 AppiPhone/iPad à partir d'un état créé sous l'éditeur d'états.
  • à partir d'une impression réalisée à l'aide des fonctions WLangage.
  • WINDEVEtats et Requêtes directement par l'utilisateur final via le visualisateur de rapports.
Universal Windows 10 AppAndroidWidget AndroidiPhone/iPadJava Remarques :
  • AndroidWidget AndroidJava Seules les impressions réalisées par programmation et au format PDF sont disponibles. Il n'est pas possible de réaliser une impression via l'éditeur d'états.
  • Universal Windows 10 AppiPhone/iPad Seules les impressions au format PDF sont disponibles (impression d'états ou impression réalisée par programmation).
WINDEVWEBDEV - Code ServeurUniversal Windows 10 AppiPhone/iPad
Imprimer un état créé avec l'éditeur d'états

Imprimer un état au format PDF

Pour imprimer un état au format PDF :
  1. Créez l'état voulu sous l'éditeur d'états.
  2. Dans le traitement d'impression de l'état au format PDF :
    • Configurez les options d'impression au format PDF grâce à la fonction iParamètrePDF. Vous pouvez définir :
      • le mot de passe utilisé pour l'ouverture du fichier PDF.
      • les options de compression des images.
      • les options de présence des signets.
      • les options de protection du fichier PDF. Il est également possible de définir le mot de passe permettant de modifier ces options de protection.
      • l'utilisation du format Unicode.
      • WINDEVWEBDEV - Code Serveur l'utilisation du format PDF/A (la version gérée est PDF/A-1b).
    • Définissez la destination de l'état grâce à la fonction iDestination. Dans ce cas, l'état doit être imprimé au format PDF (constante iPDF ou iPDFGénérique).
    • Lancez l'impression de l'état au format PDF grâce à la fonction iImprimeEtat.

Remarques

  • L'ordre d'utilisation des fonctions iDestination et iParamètrePDF n'a aucune importance.
  • WINDEVWEBDEV - Code Serveur Il est possible de signer le fichier PDF généré grâce au champ Signature.
  • WINDEVWEBDEV - Code Serveur Si l'état doit être imprimé au format PDF/A, il est possible d'activer les erreurs d'UI spécifiques à ce format :
    1. Affichez la fenêtre de description de l'état (option "Description de l'état" du menu contextuel).
    2. Dans l'onglet "Options", cochez l'option "Activer les erreurs spécifiques à l'export PDF/A-1b et PDF/A-3b".
    3. Validez la fenêtre de description de l'état et enregistrez l'état. Les erreurs sont affichées dans le volet "Erreurs de compilation".
  • iPhone/iPad Si nécessaire, le fichier PDF créé peut être imprimé depuis le matériel grâce à la fonction iImprimePDF. Cette fonction permet d'utiliser la fenêtre native du système pour configurer l'impression du fichier.
  • Universal Windows 10 AppiPhone/iPad Il est possible d'ouvrir directement le fichier PDF généré grâce à la fonction LanceAppliAssociée.

Exemples

iDestination(iPDF)
iImprimeEtat(ETAT_MonEtatPDF)
iDestination(iPDF)
// Protection du fichier PDF contre l'impression
// et contre la sélection et le copier/coller
// Pas de mot de passe pour l'ouverture du fichier PDF
// Mot de passe pour modifier les mesures de protection
iParamètrePDF(iProtectionImpression + iProtectionSélection, "", "Protection")
// Impression de l'état
iImprimeEtat(ETAT_MonEtatPDF)
Imprimer une impression programmée en WLangage

Imprimer une impression WLangage au format PDF

Pour réaliser une impression WLangage au format PDF :
  1. Définissez la destination de l'impression et les paramètres du fichier PDF à générer avec les fonctions :
    • iDestination pour définir l'impression au format PDF (constante iPDF ou iPDFGénérique).
    • iParamètrePDF pour configurer les options d'impression au format PDF. Vous pouvez définir :
      • le mot de passe utilisé pour l'ouverture du fichier.
      • les options de compression des images.
      • les options de présence des signets.
      • les options de protection du PDF. Il est également possible de définir le mot de passe permettant de modifier ces options de protection.
      • WINDEVWEBDEV - Code Serveur l'utilisation du format PDF/A (la version gérée est PDF/A-1b).
  2. Utilisez les fonctions d'impression pour définir le contenu de l'impression.
  3. Lancez l'impression grâce à la fonction iFinImprime.

Remarques

  • L'ordre d'utilisation des fonctions iDestination et iParamètrePDF n'a aucune importance.
  • WINDEVWEBDEV - Code Serveur Il est possible de signer le fichier PDF généré grâce à la fonction iImprimeSignature. Cette fonction doit être utilisée en même temps que les fonctions d'impression.
  • AndroidWidget AndroidiPhone/iPad Si nécessaire, le fichier PDF créé peut être imprimé depuis le matériel grâce à la fonction iImprimePDF.
    • iPhone/iPad Cette fonction permet d'utiliser la fenêtre native du système pour configurer l'impression du fichier.
    • AndroidWidget Android Cette fonction permet d'imprimer le fichier en utilisant le service Cloud Print de Google.
  • Universal Windows 10 AppAndroidWidget AndroidiPhone/iPad Il est possible d'ouvrir directement le fichier PDF généré grâce à la fonction LanceAppliAssociée.
  • AndroidWidget Android Les impressions PDF supportent uniquement les polices standards Adobe (non Unicode) : Courrier, Helvetica, Times, Symbol et ZapFDingbats.

Exemples

// Création du PDF
iDestination(iPDF, "C:\Temp\MonPDF.PDF")
// Code d'impression
iCréePolice(1, 16, iGras, iRoman)
//Appel de procédures permettant d'imprimer le contenu
ImprimeTitre()
ImprimeTexte()
// Fin de l'impression et fermeture du fichier PDF créé
iFinImprime()
WINDEVWEBDEV - Code Serveur
// Protection du PDF contre l'impression
// et contre la sélection et le copier/coller
// Pas de mot de passe pour l'ouverture du PDF
// Mot de passe pour modifier les mesures de protection
iParamètrePDF(iProtectionImpression + iProtectionSélection, "", "Protection")
// Création du PDF
iDestination(iPDF, "C:\Temp\MonPDF.PDF")
// Code d'impression
iCréePolice(1, 16, iGras, iRoman)
//Appel de procédures permettant d'imprimer le contenu
ImprimeTitre()
ImprimeTexte()
// Fin de l'impression et fermeture du fichier PDF créé
iFinImprime()
WINDEVEtats et Requêtes
Imprimer un PDF depuis le visualisateur de rapports

Principe

Dans les applications WINDEV, l'utilisateur final a la possibilité de choisir le mode d'impression depuis le visualisateur de rapports. Il peut choisir d'imprimer au format PDF si l'option "PDF" est disponible dans le volet "Exporter" du visualisateur de rapports.
Dans ce cas, les options définies avec la fonction iParamètrePDF sont automatiquement prises en compte.

Evénement "Avant réimpression de l'état"

L'événement "Avant réimpression de l'état" permet de connaître le mode d'impression de l'état choisi par l'utilisateur. Il est possible dans cet événement de paramétrer par exemple les options de génération du fichier PDF en fonction de choix effectués par l'utilisateur.
Exemple : Lors de l'impression via le visualisateur de rapports, le code suivant permet d'ouvrir une fenêtre pour demander le mot de passe du fichier PDF à générer :
// -- Evénement Avant réimpression de l'état
SI iDestination = iPDF ALORS
sMotdepasse est une chaîne = Ouvre(FEN_ParametragePDF)
iParamètrePDF(sMotdepasse)
FIN
Remarques et limitations
WINDEVWEBDEV - Code Serveur

Remarques

Des fonctions spécifiques à la gestion des fichiers PDF sont également disponibles. Pour plus de détails, consultez Fonctions de gestion des fichiers PDF.

Conseil général

Pour un meilleur rendu, utilisez des polices TrueType ou OpenType.
Attention : les polices OpenType ne sont pas incorporées dans le PDF généré. Il est nécessaire d'installer ces polices sur le poste client pour obtenir un rendu correct.

Disponibilité des champs dans les états

Les champs suivants ne sont pas disponibles :
  • LinuxUniversal Windows 10 AppiPhone/iPad Champ RTF
  • Universal Windows 10 AppiPhone/iPad Champ de saisie
  • LinuxUniversal Windows 10 AppiPhone/iPad Champ Signature
  • Universal Windows 10 AppiPhone/iPad Champ Agenda
  • Universal Windows 10 AppiPhone/iPad Champ Planning
  • LinuxUniversal Windows 10 AppiPhone/iPad Champ Diagramme de Gantt
  • LinuxUniversal Windows 10 AppiPhone/iPad Champ Tableau croisé dynamique
  • Universal Windows 10 AppiPhone/iPad Champ Tableur
  • LinuxUniversal Windows 10 AppiPhone/iPad Champ HTML
  • Champ Graphe : Seuls les champs Graphe créés à partir de la version 17 sont disponibles.

Champ au format RTF

Limitations générales :
  • Le libellé au format RTF peut être tronqué lors d'un saut de page.
  • Les tableaux contenus dans un champ RTF ne sont pas imprimés.
  • Les images utilisées dans les champs RTF ne sont pas imprimées.
La fonction iParamètre utilisée avec le paramètre "RTFWINDOWS=NON" ou avec la constante iRTFAvecImagesEtTableaux permet d'imprimer correctement les tableaux et les images contenus dans les champs RTF.
LinuxUniversal Windows 10 AppiPhone/iPad Les champs RTF et les options de format RTF ne sont pas disponibles.
LinuxUniversal Windows 10 AppiPhone/iPad

PDF en fond d'état

Il n'est pas possible d'utiliser un PDF en image de fond de l'état.
WINDEVWEBDEV - Code Serveur

Impression au format PDF/A-1b

  • La transparence des images n'est pas gérée :
    • Si l'image contient dans son format un fond transparent, l'image sera dessinée sur un fond blanc.
    • Si la couleur "Magenta transparent" est utilisée, le rendu de l'image pourra être différent dans le PDF généré.
  • Les polices de type "Opentype" ne sont pas gérées car les polices "Opentype" ne sont pas incorporables dans le PDF généré.
  • Toutes les polices utilisées doivent être incorporables dans le PDF généré et doivent contenir tous les caractères affichés.
    • En Windows, s'il manque des caractères, la police de substitution utilisée est "Arial Unicode ms".
    • En Linux, s'il manque des caractères, une erreur est affichée.
Astuce : Comment savoir si l'impression au format PDF/1-1b sera correcte ?
  • Si l'impression est réalisée à partir d'un état, il est possible d'activer les erreurs d'IHM spécifiques à ce format (onglet "Options" de la fenêtre de description de l'état, option "Activer les erreurs spécifiques à l'export PDF/A-1b").
  • Dans tous les cas, lors d'un audit dynamique, les erreurs spécifiques à la gestion des PDF/A-1b sont détectées et affichées.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale