DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer pour Linux
  • Présentation
  • Configuration nécessaire
  • Comment lancer directement le PDF généré lors d'une impression ?
  • Imprimer des états au format PDF en Linux
  • Limitations : champs d'un état supportés en Linux
  • Impression en WLangage sous Linux
  • Etape 1 : Configuration des paramètres d'impression
  • Etape 2 : Création des polices d'impression
  • Etape 3 : Impression de caractères, d'images
  • Etape 4 : Lancement de l'impression
  • Liste des fonctions d'impression disponibles en Linux
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 et WEBDEV permettent de réaliser des impressions en WLangage sous Linux au format PDF. Il est possible d'effectuer :
  • des impressions WLangage au format PDF.
  • des impressions d'états réalisés avec l'éditeur d'états au format PDF.
L'impression se fait à l'aide des fonctions WLangage de la même façon que pour une impression classique.
Cette page d'aide présente les limitations de l'impression sous Linux.

Configuration nécessaire

Pour utiliser les impressions en WEBDEV Linux, il est nécessaire d'installer :
  • la librairie QT (Core et GUI), version 5 minimale.
    Sous Ubuntu, la librairie QT peut être installée avec les commandes suivantes :
    sudo apt-get install libqtcore5
    sudo apt-get install libqtgui5
  • la librairie LibFreeType.so (32 ou 64 bits), version 6 minimale.
    Attention : Le framework de PC SOFT recherche la librairie libfreetype.so. Si seul le fichier libfreetype.so.6 existe, il est nécessaire de créer un lien symbolique grâce à la commande suivante :
    ln -s /usr/lib/libfreetype.so.6 /usr/lib/libfreetype.so
Note : Il est possible d'installer des polices Microsoft sous Linux, pour obtenir des états plus fidèles à leur aperçu sous Windows. Sous Ubuntu, ces polices peuvent être rajoutées en suivant la procédure ci après : http://doc.ubuntu-fr.org/msttcorefonts.
Remarque : Les distributions Linux supportées sont les suivantes :
  • Debian 5.02
  • Ubuntu 10.04

Comment lancer directement le PDF généré lors d'une impression ?

Pour lancer directement le PDF créé lors de l'impression, il suffit d'utiliser les commandes suivantes :
xdg-open url
ou
gnome-open url
Imprimer des états au format PDF en Linux
Les étapes pour imprimer des états en Linux sont les suivantes :
  • Étape 1 : Configuration de la destination de l'impression.
    Cette configuration est réalisée avec la fonction iDestination. Seule l'impression au format PDF est disponible en Linux, il est donc nécessaire d'utiliser la fonction iDestination avec les constantes de génération des fichiers PDF (iPDF ou iPDFGénérique).
  • Étape 2 : Lancement de l'impression.
    Le lancement de l'impression de l'état est réalisé avec la fonction iImprimeEtat.

Limitations : champs d'un état supportés en Linux

Les champs supportés dans un état imprimé sous Linux sont les suivants :
  • Champ Libellé (le type RTF n'est pas supporté).
  • Champ Calculé.
  • Champ Image.
  • Champ Pré-défini.
  • Champ Forme.
  • Champ Etat Interne.
  • Champ Lien.
  • Champ de saisie.
  • Champ Code-Barres.
  • Champ Graphe.
  • Champ Interrupteur.
  • Champ Agenda.
  • Champ Planning.
  • Champ Tableur.
Les champs non supportés sont les suivants :
  • Champ Libellé de type RTF.
  • Champ Tableau croisé dynamique.
  • Champ Diagramme de Gantt.
  • Champ Signature.
  • Champ Libellé de type HTML.
Impression en WLangage sous Linux
Les étapes pour imprimer en WLangage sont :

Etape 1 : Configuration des paramètres d'impression

Cette étape permet de choisir les paramètres d'impression du document (qualité d'impression, orientation).
Cette étape est facultative.
Les différentes manipulations possibles sont les suivantes :
  1. Sélection des paramètres d'impression du document (fonction iParamètre). Lors de l'impression en Linux, Il est possible de paramétrer uniquement le format de la page ou son orientation.
  2. Re-définition des marges d'impression (fonction iMarge). Il est possible de modifier les marges basse, haute, gauche et droite. Si cette fonction n'est pas appelée, les marges par défaut (différentes selon l'imprimante sélectionnée) sont utilisées.
Attention : L'ordre des manipulations présentées ci-dessus doit être respecté. Si une impression est en cours, la fonction iParamètre provoque la fermeture de l'impression en cours.

Etape 2 : Création des polices d'impression

Cette étape permet de définir et de choisir les différentes polices qui seront utilisées dans le document imprimé.
Il est uniquement possible de choisir des polices spécifiques à l'impression : ces polices ne pourront être utilisées que lors de l'impression avec les fonctions du WLangage.
Cette étape est facultative.
Si aucune police n'est définie pour l'impression, la police par défaut est utilisée.
  • Fonte : Don't care
  • Police numéro 0,
  • taille : 12 points pica,
  • style normal.
  • couleur : noir
Les polices d'impression sont créées avec la fonction iCréePolice.
Remarques :
  • En Linux, seules les polices TrueType (*.ttf) sont utilisables.
  • Si des polices autres que les polices de base doivent être utilisées, il est nécessaire de les installer sur le serveur WEBDEV (en utilisant les répertoires de la distribution utilisée). Pour plus de détails, consultez la documentation de la distribution utilisée.

Etape 3 : Impression de caractères, d'images

Cette étape consiste à "envoyer à l'impression" les différents éléments à imprimer :
  • texte,
  • images,
  • dessins, ...
L'impression en PDF (configuré avec la fonction iDestination) ne sera effective qu'à la fin de l'impression (fonction iFinImprime).
Plusieurs fonctions WLangage permettent d'imprimer du texte, des images, etc. Pour plus de détails, consultez la liste des fonctions d'impression utilisables en Linux.
Remarque : Impression des images : En Linux, les images au format JPEG, BMP, PNG et GIF peuvent être imprimées.

Etape 4 : Lancement de l'impression

Cette étape consiste à lancer l'impression (fonction iFinImprime).
Liste des fonctions d'impression disponibles en Linux
Les fonctions d'impression suivantes sont disponibles en Linux :
iCadreImprime un cadre aux coordonnées spécifiées.
iCadreArrondiImprime un cadre avec des bords arrondis aux coordonnées spécifiées.
iChangeSousEtatSourceModifie par programmation l'état associé à un sous-état dans un état composite.
iConfigureEtatConfigure l'imprimante en ouvrant directement la fenêtre de configuration (WINDEV et WINDEV Mobile).
iCréePoliceCrée une nouvelle police d'impression.
iDernierFichierRenvoie :
  • le nom complet du dernier fichier généré lors de l'impression (PDF, RTF, Texte, ...).
  • la liste des fichiers duplicata créés.
iDestinationParamètre la destination de l'impression.
iEllipseImprime une ellipse (à l'intérieur d'un rectangle).
iEnchaînementAjouteAjoute un état dans un enchaînement d'impressions d'états.
iEnchaînementImprimeDéclenche l'impression d'un enchaînement d'états.
iEscapeEnvoie une commande ESCAPE ou une commande de données à une imprimante.
iFenêtreAbandonParamètre l'affichage de la fenêtre permettant l'abandon de l'impression en cours...
iFermeEtatArrête immédiatement l'impression de l'état en cours.
iFichierEnCoursRenvoie le nom du fichier en cours de génération.
iFinEtatForce l'arrêt de l'impression d'un état.
iFinImprimeSignale la fin du document à imprimer et lance l'impression effective des données actuellement stockées dans la file d'attente de l'imprimante par les fonctions iImprime, iImprimeImage, iLigne, etc.
iForceComplémentForce l'impression d'un bloc de complément de corps.
iGroupeAjouteAjoute un état à un groupe d'états.
iGroupeImprimeLance l'impression d'un état présent dans un groupe d'états.
iGroupeParamètreModifie les paramètres d'un état présent dans un groupe d'états.
iHautBasPageImbriquéImprime ou non les hauts et bas de page de l'état imbriqué.
iHauteurImageCalcule la hauteur de l'image à imprimer (en millimètres).
iHauteurPageCalcule la hauteur de la page imprimable (en millimètres) en tenant compte des marges (hautes ou bases) définies.
iHauteurRestantePageCalcule la hauteur disponible (en millimètres) restant sur la page en cours en tenant compte des marges (hautes ou basses) définies.
iHauteurTexteCalcule la hauteur de la police du texte à imprimer (en millimètres).
iHauteurZoneCalcule la hauteur nécessaire d'une zone de largeur fixe pour que l'ensemble d'un texte utilisant la police en cours puisse être imprimé dans cette zone.
iImpressionAbandonnéePermet de savoir si l'utilisateur a demandé l'abandon de l'impression du document en cours.
iImpressionDemandéePermet de savoir si l'utilisateur a demandé l'impression du document depuis le visualisateur de rapports.
iImprimeEnvoie au buffer d'impression la chaîne de caractères passée en paramètre.
iImprimeBlocForce l'impression d'un bloc de l'état en cours d'impression.
iImprimeCodeBarreImprime un code-barres (à l'intérieur d'un rectangle).
iImprimeComplémentCorpsForce l'impression d'un bloc de complément de corps en spécifiant la hauteur du bloc de complément.
iImprimeEtatImprime un état réalisé avec l'éditeur d'états.
iImprimeImageEnvoie au buffer d'impression le fichier image à imprimer.
iImprimeMotEnvoie au "buffer" d'impression la chaîne de caractères passée en paramètre.
iImprimeZoneImprime un texte dans une zone rectangulaire.
iInfoImprimanteRécupère les caractéristiques de l'imprimante en cours ou de l'imprimante par défaut.
iInitRequêteEtatInitialise la requête liée à l'état (cas d'une requête paramétrée).
iInitRequêteEtatConnexionInitialise la requête liée à l'état.
iInitSousEtatInitialise les paramètres d'un sous-état d'un état composite.
iLargeurImageCalcule la largeur de l'image à imprimer (en millimètres).
iLargeurPageCalcule la largeur de la page imprimable (en millimètres) en tenant compte des marges (gauches ou droites) définies.
iLargeurTexteCalcule la largeur (en millimètres) du texte à imprimer en fonction de la police spécifiée.
iLigneImprime une ligne (au standard Windows, avec le bout arrondi) aux coordonnées spécifiées.
iListeEtatsImbriquésRenvoie :
  • la liste des états imbriqués en cours d'impression (états lancés par la fonction iImprimeEtat dans un des traitements de l'état en cours d'impression).
  • la liste des états enchaînés en cours d'impression (fonction iEnchaînementAjoute).
iMargeDéfinit les marges "logiques" d'impression.
iMMVersPicaConvertit les coordonnées d'un point (exprimées en millimètres) en coordonnées système.
iNationImpressionModifie la langue courante pour la prochaine impression (impression programmée ou impression d'états).
iNumColonneRenvoie le numéro de la colonne en cours dans un état multi-colonnes.
iNumPageRenvoie ou initialise le numéro de la page en cours d'impression.
iParamètreRécupère le paramétrage de l'imprimante et paramètre l'impression.
iParamètreEtatConfigure l'imprimante en ouvrant directement la fenêtre de configuration.
iParamètrePDFFixe les options du fichier PDF généré.
iPicaVersMMConvertit les coordonnées d'un point (exprimées en coordonnées système) en millimètres.
iPoliceSélectionne la police par défaut.
iPoliceDidotSélectionne l'unité à utiliser pour la hauteur des polices (créées avec la fonction iCréePolice) : point DIDOT ou point PICA.
iPosXPermet de gérer la position horizontale (abscisse ou colonne) du curseur d'impression dans la page.
iPosYPermet de gérer la position verticale (ordonnée ou ligne) du curseur d'impression dans la page.
iRAZRé-initialise les paramètres d'impression (marges, police, format du papier, orientation, ...) mémorisés dans la librairie d'impression.
iRAZNbPagesRéinitialise le nombre de pages courant, utilisé dans les champs prédéfinis de type "Nombre de pages" et "Numéro et nombre de pages".
iSauteLigneForce un ou plusieurs sauts de ligne.
iSautePageGénère un saut de page : le code correspondant est envoyé dans la file d'impression de l'imprimante.
iSelectPoliceCrée une nouvelle police d'impression depuis la fenêtre standard de sélection des polices de Windows...
iStatusImpressionEtatRenvoie l'état de l'impression en cours.
iSubstBlocSubstitue un bloc de l'état par un autre bloc au cours de l'impression de l'état.
iTermineColonneForce un saut de colonne dans un état multicolonne.
iTerminePageForce le passage à la page suivante au cours de l'impression d'un état.
iTraitImprime un trait aux coordonnées spécifiées.
iTraitHImprime un trait horizontal aux coordonnées spécifiées.
iTraitVImprime un trait vertical aux coordonnées spécifiées.
Remarque : Les fonctions de type iImprimexxx fonctionnent uniquement avec les nouvelles distributions Linux.
Version minimum requise
  • Version 10
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 19/04/2023

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