Différences entre les versions de « ClapPrint - Utilisation »

De Wiki de Lapalys
Aller à la navigation Aller à la recherche
 
(32 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
Ce composant propose essentiellement deux éléments :
 
Ce composant propose essentiellement deux éléments :
* La fonction d'impression de table : sImprimeTable()
+
* La fonction d'impression de table : nImprimeTable()
* Une interface utilisateur permettant le paramétrage de la fonction.
+
* Une interface utilisateur permettant de gérer toutes les options de la fonction.
  
= La fonction sImprimeTable =
+
= La fonction nImprimeTable =
  
L'impression de la table se fait par une unique fonction : [[ClapPrint_-_Entrées_et_sorties|sImprimeTable]].  Une série de paramètres, donc certains peuvent être laissés par défaut, permettent de jouer sur les couleurs, sur l'existence ou pas des lignes (cadres, séparation), sur les formats (date, heure, monétaire, booléen), ...
+
L'impression de la table se fait par une unique fonction : [[ClapPrint_-_Entrées_et_sorties|nImprimeTable]].  Une série de paramètres, donc certains peuvent être laissés par défaut, permettent de jouer sur les couleurs, sur l'existence ou pas des lignes (cadre, séparations), sur les formats (date, heure, monétaire, booléen), ...
  
 
= L'interface utilisateur d'impression de table =
 
= L'interface utilisateur d'impression de table =
  
Cette interface propose non seulement de gérer l'ensemble des paramètres reconnus par la fonction sImprimeTable() mais aussi de sauver le tout dans des profils, de sorte à pouvoir rappeler un "profil" plus tard.
+
Cette interface propose non seulement de gérer l'ensemble des paramètres reconnus par la fonction [[ClapPrint_-_Entrées_et_sorties|nImprimeTable()]] mais aussi de sauver le tout dans des "profils", de sorte à pouvoir rappeler un profil pour une autre impression.
  
 
L'appel de cette fenêtre [[ClapPrint_-_La_fenêtre_FEN_ParamPrint|FEN_ParamPrint]] accepte deux paramètres principaux :
 
L'appel de cette fenêtre [[ClapPrint_-_La_fenêtre_FEN_ParamPrint|FEN_ParamPrint]] accepte deux paramètres principaux :
Ligne 15 : Ligne 15 :
 
* Le chemin complet d'un fichier INI pour sauvegarder les profils (optionnel)
 
* Le chemin complet d'un fichier INI pour sauvegarder les profils (optionnel)
  
Le contenu des onglets représente les mêmes options que pour l'appel de la fonction.  Veuillez vous reporter à [[ClapPrint_-_Entrées_et_sorties|ce chapitre]] pour plus de détails.
+
Le contenu des onglets représente les mêmes options que celles utilisées dans l'appel de la fonction.  Veuillez vous reporter à [[ClapPrint_-_Entrées_et_sorties|cette page]] pour plus de détails de ladite fonction.
  
 
== Le fichier INI ==
 
== Le fichier INI ==
  
Le fichier ini est exclusivement géré par l'interface utilisateur présentée ci-dessus. Chaque profil enregistré (avec le bouton "disquette") doit avoir un nom unique et correspondra à une section du fichier INI.  Pour éviter toute confusion dans le fichier INI (au cas où le nom d'un profil correspondrait à une section déjà existante), préférez avoir un fichier INI à l'usage unique de ce composant.
+
Le fichier ini est exclusivement géré par l'[[ClapPrint_-_La_fenêtre_FEN_ParamPrint|interface utilisateur]]. Chaque profil enregistré (avec le bouton "disquette") doit avoir un nom unique et correspondra à une section du fichier INI.  Pour éviter toute confusion dans le fichier INI déjà existant dans votre application (au cas où le nom d'un profil correspondrait à une section déjà existante), préférez avoir un fichier INI à l'usage unique de ce composant.
  
Pour information, voici les mots clés géré par la fenêtre.  Il est déconseillé de les modifier en dehors de cette fenêtre.
+
Pour information, voici les mots clés gérés reconnus dans le fichier INI.  Il est déconseillé de les modifier en dehors de cette [[ClapPrint_-_La_fenêtre_FEN_ParamPrint|fenêtre]].
  
  
 
<nowiki>[NomDuProfil]</nowiki>
 
<nowiki>[NomDuProfil]</nowiki>
  
Orientation = 1 ou 2 (1=portrait, 2=paysage, par défaut=1)
+
'''CouleurTable''' = 0 ou 1 (0[défaut]=couleur personnalisée dans clapPrint, 1=récupère les couleurs de la table d'origine), voir remarque ci-dessous
  
Assemblage = 1 ou 2 (1=assemblé, 2=non-assemblé, par défaut=1), voir remarque ci-dessous
+
'''Orientation''' = 1 ou 2 (1[défaut]=portrait, 2=paysage)
  
Portrait = 0 ou 1 (0=portrait non forcé, 1=portrait forcé, par défaut=0)
+
'''Assemblage''' = 1 ou 2 (1[défaut]=assemblé, 2=non-assemblé), voir remarque ci-dessous
  
Titre = Valeur du titre du rapport (ne peut pas contenir de TAB, par défaut=vide)
+
'''Exemplaire''' = Nombre d'exemplaires identique à imprimer (1[défaut]).
  
RepeteTitre = 0 ou 1 (0=le titre s'affiche sur la première page uniquement, 1=répète le titre sur chaque page, par défaut=0)
+
'''Portrait''' = 0 ou 1 (0[défaut]=portrait non forcé, 1=portrait forcé)
  
TitreColonne = 0 ou 1 (0=n'affiche pas le titre des colonnes, 1=affiche le titre des colonnes, par défaut=0)
+
'''Titre''' = Valeur du titre du rapport (par défaut=vide). Pour les titres multi-lignes, utiliser les mots clés "Titre_1","Titre_2", ... dans ce cas "Titre" est alors ignoré.
  
CalculeColonne = 0 ou 1 (0=imprime la table telle qu'à l'écran, 1=sélectionne chaque ligne de la table pour que les colonnes calculées s'affichent correctement, par défaut=0)
+
'''RepeteTitre''' = 0 ou 1 (0[défaut]=le titre s'imprime sur la première page uniquement, 1=imprime le titre sur chaque page)
  
RepeteTitreColonne = 0 ou 1 (0=le titre des colonne s'affiche sur la première page uniquement, 1=répète le titre des colonnes sur chaque page, par défaut=0)
+
'''Logo''' = Chemin complet de l'image à afficher dans le coin supérieur gauche (par défaut pas de logo), voir remarque ci-dessous
  
NumPage = 0 ou 1 (0=n'affiche pas la # de page, 1=affiche le # de page en bas de chaque page, par défaut=0)
+
'''TitreColonne''' = 0 ou 1 (0[défaut]=n'imprime pas le titre des colonnes, 1=imprime le titre des colonnes)
  
Date = 0 ou 1 (0=n'affiche pas la date, 1=affiche la date en bas de chaque page, par défaut=0)
+
'''CalculeColonne''' = 0 ou 1 (0[défaut]=imprime la table sans exécuter le code "affichage d'une ligne dans la table", 1=sélectionne chaque ligne de la table pour que les colonnes calculées s'affichent correctement)
  
Heure = 0 ou 1 (0=n'affiche pas l'heure, 1=affiche l'heure en bas de chaque page, par défaut=0)
+
'''RepeteTitreColonne''' = 0 ou 1 (0[défaut]=le titre des colonne s'affiche sur la première page uniquement, 1=répète le titre des colonnes sur chaque page si TitreColonne = 1)
  
Booleen = 0 ou 1 (0=affiche comme des chiffres, 1=affiche comme des coches, par défaut=0)
+
'''TitreColonneMultiligne''' = 0 ou 1 (0[défaut]=un seule ligne, 1=le titre des colonnes s'imprime sur plusieurs lignes même si le titre est sur une ligne dans la table d'origine)
  
Multiligne = 0 ou 1 (0=mono-ligne, 1=multi-ligne, par défaut=0)
+
'''LigneSelectionne''' = 0 ou 1 (0[défaut]=imprime toutes les lignes de la table, 1=n'imprime que les lignes sélectionnées), voir remarque ci-dessous
  
Image = 0 ou 1 (0=n'affiche pas les images, 1=affiche les images, par défaut=0)
+
'''NumPage''' = 0 ou 1 (0[défaut]=n'imprime pas la # de page, 1=imprime le # de page en bas à droite de chaque page)
  
EcritureDaG = 0 ou 1 (0=écrit dans le sens par défaut déterminé par la fenêtre ou la table, 1=force l'écriture de droite à gauche, par défaut=0)
+
'''Date''' = 0 ou 1 (0[défaut]=n'imprime pas la date, 1=imprime la date en bas à gauche de chaque page)
  
Gris = 0 ou 1 (0=imprime en couleur, 1=imprime en tons de gris, par défaut=0)
+
'''Heure''' = 0 ou 1 (0[défaut]=n'imprime pas l'heure, 1=imprime l'heure en bas à gauche de chaque page)
  
Cadre = 0 ou 1 (0=pas de cadre, 1=imprime le cadre, par défaut=0)
+
'''Booleen''' = 0 ou 1 (0[défaut]=imprime les booléens comme des chiffres, 1=imprime les booléens comme des coches)
  
SeparateurV = 0,iContinu,iPointillé,iMixte,iTiret (0=pas de trait, par défaut=0)
+
'''ContenuMultiligne''' = 0 ou 1 (0[défaut]=contenu de chaque case sur une seule ligne, 1=contenu des cases sur plusieurs ligne)
  
SeparateurH = 0,iContinu,iPointillé,iMixte,iTiret (0=pas de trait, par défaut=0)  
+
'''Image''' = 0 ou 1 (0[défaut]=n'imprime pas les mémos images, 1=imprime les mémos images)
  
Police = Nom de la police de caractère à utiliser (par défaut=Arial)
+
'''EcritureDaG''' = 0 ou 1 (0[défaut]=écrit dans le sens par défaut déterminé par la table, 1=force l'écriture de droite à gauche)
  
PoliceTaille = Chiffre (par défaut=10)
+
'''Gris''' = 0 ou 1 (0[défaut]=imprime en couleur, 1=imprime en tons de gris)
  
RepeteCalcul = 0 ou 1 (0=calcul visible sur la dernière page, 1=calcul visible sur toutes les pages, par défaut=0)
+
'''Cadre''' = 0 ou 1 (0[défaut]=pas de cadre, 1=imprime le cadre)
  
DateFormat = [http://doc.pcsoft.fr/fr-fr/?3027025 voir la documentation PC SOFT de DateVersChaine]
+
'''SeparateurV''' = 0,iContinu,iPointillé,iMixte,iTiret (0[défaut]=pas de trait)
  
HeureFormat = [http://doc.pcsoft.fr/fr-fr/?3027023 voir la documentation PC SOFT de HeureVersChaine]
+
'''SeparateurH''' = 0,iContinu,iPointillé,iMixte,iTiret (0[défaut]=pas de trait)
  
MonetaireFormat = [http://doc.pcsoft.fr/fr-fr/?3024024 voir la documentation PC SOFT de NumériqueVersChaine]
+
'''Police''' = Nom de la police de caractère à utiliser (par défaut=Arial)
  
MagentaTransparent = 0 ou 1 (0=pas de transparence par le magenta, 1=le magenta de l'image sera transparent, par défaut=0)
+
'''PoliceTaille''' = numérique (par défaut=10 pour tous les textes sauf la première ligne de titre en 12)
  
Champ_x = NomDeLaColonne~Compteur~Moyenne~Total (Compteur, Moyenne, Total prennent la valeur 0 ou 1 selon qu'ils sont activés ou pas pour la colonne)
+
'''RepeteCalcul''' = 0 ou 1 (0[défaut]=calculs visibles uniquement sur la dernière page, 1=calculs visibles sur toutes les pages comme des valeurs intermédiaires)
  
Image_x = NomDeLaColonne~Valeur~CheminImage (valeur = valeur que prend la rubrique, CheminImage = chemin complet de l'image correspondante, voir illustration de l'onglet 4 ci-dessus)
+
'''DateFormat''' = [http://doc.pcsoft.fr/fr-fr/?3027025 voir la documentation PC SOFT de DateVersChaine]
  
COULEURPAIRE = 0 a 16777216 (couleur de fond des lignes paires, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''HeureFormat''' = [http://doc.pcsoft.fr/fr-fr/?3027023 voir la documentation PC SOFT de HeureVersChaine]
  
COULEURIMPAIRE = 0 a 16777216 (couleur de fond des lignes impaires, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''MonetaireFormat''' = [http://doc.pcsoft.fr/fr-fr/?3024024 voir la documentation PC SOFT de NumériqueVersChaine]
  
COULEURDONNEE = 0 a 16777216 (couleur de texte des données, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''MagentaTransparent''' = 0 ou 1 (0[défaut]=pas de transparence des mémos images et de l'image de titre s'ils contiennent du magenta, 1=le magenta des images sera transparent)
  
COULEURFONDPAGE = 0 a 16777216 (couleur de fond de page, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''Champ_x''' (x est le numéro de la colonne) = NomDeLaColonne~Compteur~Moyenne~Total (Compteur, Moyenne, Total prennent la valeur 0 ou 1 selon qu'ils sont activés ou pas pour la colonne; exemple COL_Nom~1~0~0)
  
COULEURVERTICAL = 0 a 16777216 (couleur des lignes verticales, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''Image_x''' (x est le numéro de la colonne) = NomDeLaColonne~Valeur~CheminImage (valeur = valeur de la "rubrique", CheminImage = chemin complet de l'image correspondante à la valeur; exemple COL_Genre~H~C:\Temp\Homme_16_1.png)
  
COULEURHORIZONTAL = 0 a 16777216 (couleur des lignes horizontales, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''Premiere''' = Numéro de la première page (1[défaut], n'est utile que si le numéro de page est imprimé > voir cette option)
  
COULEURTITRE = 0 a 16777216 (couleur de texte du titre, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''Ancre''' = Nom de la colonne qui doit être ancrée (cette colonne s'élargira au maximum pour respecter la largeur de la page)
  
COULEURFONDTITRE = 0 a 16777216 (couleur de fond du titre, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''HauteurLigne''' = Hauteur d'une ligne de la table (0[défaut]=hauteur de la police utilisée, en millimètres)
  
COULEURTITRECOL = 0 a 16777216 (couleur du texte des titres de colonne, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''MargeH''' = Marge en haut (0[défaut]=la marge haute minimum de l'imprimante, en millimètre, marge depuis le bord haut de la page qui sera ignorée si inférieure à la marge haute minimum de l'imprimante)
  
COULEURFONDTITRECOL = 0 a 16777216 (couleur de fond des titres de colonne, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''MargeB''' = Marge en bas (0[défaut]=la marge haute basse de l'imprimante, en millimètre, marge depuis le bord bas de la page qui sera ignorée si inférieure à la marge basse minimum de l'imprimante)
  
COULEURCADRE = 0 a 16777216 (couleur des lignes du cadre, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
+
'''MargeG''' = Marge à gauche (0[défaut]=la marge gauche basse de l'imprimante, en millimètre, marge depuis le bord gauche de la page qui sera ignorée si inférieure à la marge gauche minimum de l'imprimante)
  
 +
'''MargeD''' = Marge à droite (0[défaut]=la marge droite basse de l'imprimante, en millimètre, marge depuis le bord droit de la page qui sera ignorée si inférieure à la marge droite minimum de l'imprimante)
 +
 +
'''Pied''' = texte de pied de page (seule une seule ligne est pris en compte)
 +
 +
'''COULEURPAIRE''' = 0 a 16777216 (couleur de fond des lignes paires, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURIMPAIRE''' = 0 a 16777216 (couleur de fond des lignes impaires, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURDONNEEPAIRE''' = 0 a 16777216 (couleur de texte des données des lignes paires, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURDONNEEIMPAIRE''' = 0 a 16777216 (couleur de texte des données des lignes impaires, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURFONDPAGE''' = 0 a 16777216 (couleur de fond de page, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURVERTICAL''' = 0 a 16777216 (couleur des lignes verticales, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURHORIZONTAL''' = 0 a 16777216 (couleur des lignes horizontales, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURTITRE''' = 0 a 16777216 (couleur de texte du titre, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURFONDTITRE''' = 0 a 16777216 (couleur de fond du titre, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURTITRECOL''' = 0 a 16777216 (couleur du texte des titres de colonne, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURFONDTITRECOL''' = 0 a 16777216 (couleur de fond des titres de colonne, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURCADRE''' = 0 a 16777216 (couleur des lignes du cadre, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURPIED''' = 0 a 16777216 (couleur du texte de pied de page, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
'''COULEURFONDPIED''' = 0 a 16777216 (couleur de fond de pied de page, [http://doc.pcsoft.fr/fr-fr/?3029012 voir la documentation PC SOFT])
 +
 +
== Impression utilisant un profil ==
 +
 +
La notion de profil n'est présente que dans l'interface utilisateur et non dans l'instruction ''nImprimeTable''.  Pour directement imprimer une table utilisant un profil, il suffit de mettre le paramètre ''gbImprimeDirect'' à vrai.  La fenêtre charge le profil et imprime directement.  L'utilisateur ne voit pas la fenêtre s'ouvrir.
 +
 +
;Exemple :
 +
<syntaxhighlight lang="windev">
 +
//gsFichierIni est une variable chaine globale contenant le chemin du fichier INI dans lequel les profils sont sauvegardés
 +
iAperçu(i100)
 +
nNbPages est un entier = Ouvre(FEN_ParamPrint,TABLE_Client,gsFichierIni,Vrai)
 +
SI nNbPages=0 ET clapPrint.sClapPrintErreur()>"" ALORS Erreur(clapPrint.sClapPrintErreur())  //une erreur est survenue
 +
</syntaxhighlight>
  
 
= Contraintes techniques =
 
= Contraintes techniques =
* La fonction sTableImprime() ne peut pas être appelée dans un état (comme pour imprimer un sous-état)
 
  
 +
* La fonction [[ClapPrint_-_Entrées_et_sorties|nImprimeTable]] ne peut pas être appelée dans un état (comme pour imprimer un sous-état);
 +
* Le texte du titre et le texte du pied de page ne peuvent pas contenir de TAB si l'on utiliser un profil (le fichier ini n'accepte pas ces caractères);
 +
* L'option d'impression en tons de gris ne fonctionne que pour les textes, les lignes et les couleurs de fond; pas pour les images.
 +
* La fonction n'imprime que les colonnes visibles à l'écran, même si l'on insère le nom de la colonne dans le paramètre ''sCalculs''. En effet, l'impression se base sur la largeur des colonnes à l'écran. Ces dernières doivent donc être visibles de l'utilisateur (qui pourrait alors les modifier pour modifier la présentation de son rapport).
 +
* Lors de l'utilisation de l'option CouleurTable (fichier INI) / _clapPrintCouleurTable, seules les couleurs de fond et de caractères des lignes paires, des lignes impaires et cases sont prises en compte.  Les autres propriétés ne sont pas accessibles par programmation en WinDev.
  
 
= Astuces =
 
= Astuces =
  
 
*Le nom des colonnes à imprimer doit être sous forme NomDeFenêtre.NomDeTable.NomDeColonne, ceci pour garantir l'exacte correspondance entre ce qui est vu et ce qui est imprimé.
 
*Le nom des colonnes à imprimer doit être sous forme NomDeFenêtre.NomDeTable.NomDeColonne, ceci pour garantir l'exacte correspondance entre ce qui est vu et ce qui est imprimé.
*La fonction ne gère pas le paramètre [http://doc.pcsoft.fr/fr-fr/?3046069 iAperçu].  Vous devez donc, dans le code, utiliser (ou pas) [http://doc.pcsoft.fr/fr-fr/?3046069 iAperçu] avant d'appeler la fonction sImprimeTable.
+
*La fonction ne gère pas le paramètre [http://doc.pcsoft.fr/fr-fr/?3046069 iAperçu].  Vous devez donc, dans le code, utiliser (ou pas) [http://doc.pcsoft.fr/fr-fr/?3046069 iAperçu] avant d'appeler la fonction [[ClapPrint_-_Entrées_et_sorties|nImprimeTable]].
 
*Veillez, avant de lancer l'impression via la fonction ou la fenêtre [[ClapPrint_-_La_fenêtre_FEN_ParamPrint|FEN_ParamPrint]], de désactiver les timers et les événements tels que spécifiés [http://doc.pcsoft.fr/fr-fr/?3046053 dans la documentation de PC SOFT].
 
*Veillez, avant de lancer l'impression via la fonction ou la fenêtre [[ClapPrint_-_La_fenêtre_FEN_ParamPrint|FEN_ParamPrint]], de désactiver les timers et les événements tels que spécifiés [http://doc.pcsoft.fr/fr-fr/?3046053 dans la documentation de PC SOFT].
*Pour ne choisir que certaines colonnes d'une table, utilisez le paramètres sCalculs dans lequel il faut alors mettre NomColonne1+TAB+0+RC+NomColonne2+TAB+0+RC+...
+
*Pour ne choisir que certaines colonnes d'une table, utilisez le paramètres sCalculs dans lequel il faut laisser l'option de calcul à 0. Exemple : NomColonne1+TAB+0+RC+NomColonne2+TAB+0+RC+...  Dans ce cas, pour respecter la première astuce, utilisez dans votre code, pour le nom des colonnes '''MaTable.MaColonne..NomComplet'''+TAB+0+...
 +
*Lors d'un aperçu avant impression, si l'on utilise [[ClapPrint_-_Entrées_et_sorties|nImprimeTable]] et ensuite un iImprimeEtat() standard, il faut mettre un [http://doc.pcsoft.fr/fr-fr/?3046069 iAperçu]avant chacune des deux instructions.
 +
* Malgré que le composant n'imprime que les colonnes "visibles" (celles dont la propriété ..visible = vrai), il n'est pas interdit d'avoir la table invisible ou cachée dans une partie non visible de l'écran.  Cela permet de "préparer" le contenu à imprimer dans une table non visible de l'utilisateur et d'ensuite lancer une impression dessus.  Cette astuce peut être utilisée notamment lors de l'impression de table trop complexes ou contenant des fond de lignes images, ...
 +
 
 +
= Adaptation de l'impression à la largeur de la page =
 +
La fonction est construite de telle sorte à adapter la taille des caractères (et donc la hauteur et largeur des colonnes) automatiquement.  En effet, lorsque la largeur de la table dépasse la largeur d'une page (selon l'orientation demandée dans un autre paramètre), la procédure commence par diminuer la taille de caractères pour voir si la table peut finir par entrer dans la page (la taille minimale est de 3).  Si ce n'est pas possible, et que l'orientation portrait avait été choisie, la procédure passe automatiquement en paysage et refait le même calcul.  Pour éviter ce passage automatique en mode paysage, il faut explicitement cocher "Force orientation portrait" ou utiliser la constante ''_ClapPrintForcePortrait''.  Si finalement la ligne de table ne rentre pas dans la largeur de page, plusieurs pages seront prévues en largeur.  Dans ce cas, il faut être attentif aux options d'assemblage.
  
== Adaptation de l'impression à la largeur de la page ==
+
Dans l'autre sens, si une impression de table ne rempli pas la largeur de la page, et pour éviter que la dernière colonne soit plus large qu'elle n’apparaît, il est possible de sélectionner une colonne "ancrée" dont la largeur va s'adapter et gardera ainsi la proportion des autres colonnesHabituellement, l'on ancre la première colonne.
La fonction est construite de telle sorte à adapter la taille des caractères (et donc la hauteur et largeur des colonnes) automatiquement.  En effet, lorsque la largeur de la table dépasse la largeur d'une page (selon l'orientation demandée dans un autre paramètre), la procédure commence par diminuer la taille de caractères pour voir si la table peut finir par entrer dans la page (la taille minimale est de 3).  Si ce n'est pas possible, et que l'orientation portrait avait été choisie, la procédure passe automatiquement en paysage et refait le même calcul.  Pour éviter ce passage automatique en mode paysage, il faut explicitement cocher "Force orientation portrait" ou utiliser la constante ''_ImprimeForcePortrait''.  Si finalement la ligne de table ne rentre pas dans la largeur de page, plusieurs pages seront prévues en largeurDans ce cas, il faut être attentif aux options d'assemblage.
 
  
== Option d'assemblage ==
+
= Option d'assemblage =
Grâce à ces fonctions, il est donc possible d'imprimer soit toutes les pages en largeur et ensuite les prochains enregistrement, soit les premières colonnes sur tous les enregistrements et ensuite les colonnes suivantes sur tous les enregistrement.  Exemple : l'impression a besoin de 3 pages en largeur (pour contenir toutes les colonnes), soit a,b,c et 10 pages en hauteur (pour les 847 enregistrements) soit 1,2,3,4,..10.  Chaque page est alors identifiée comme 1a, 1b, 1c, 2a, 2b, 2c, 3a, 3b, 3c ... 10a, 10b et 10c.  
+
Grâce à ces fonctions, il est donc possible d'imprimer soit toutes les pages en largeur et ensuite les prochains enregistrements, soit les premières colonnes sur tous les enregistrements et ensuite les colonnes suivantes sur tous les enregistrements.  Exemple : l'impression a besoin de 3 pages en largeur (pour contenir toutes les colonnes), soit a,b,c et 10 pages en hauteur (pour les 847 enregistrements) soit 1,2,3,4,..10.  Chaque page est alors identifiée comme 1a, 1b, 1c, 2a, 2b, 2c, 3a, 3b, 3c ... 10a, 10b et 10c.  
  
- L'option "Assemblé" ou l'absence de constante _ImprimeNonAssemblée imprimera les pages dans l'ordre suivant : 1a, 2a, 3a, 4a, ... 10a, 1b, 2b, 3b, 4b ... 10b, 1c, 2c, 3c, 4c ... 10c
+
- L'option "Assemblé" ou l'absence de constante ''_ClapPrintNonAssemblée'' imprimera les pages dans l'ordre suivant : 1a, 2a, 3a, 4a, ... 10a, 1b, 2b, 3b, 4b ... 10b, 1c, 2c, 3c, 4c ... 10c
  
- L'option "Non assemblée" ou l'utilisation de la constante _ImprimeNonAssemblée imprimera les pages dans l'ordre suivant : 1a, 1b, 1c, 2a, 2b, 2c, ... 10a, 10b, 10c
+
- L'option "Non assemblée" ou l'utilisation de la constante ''_clapPrintNonAssemblée'' imprimera les pages dans l'ordre suivant : 1a, 1b, 1c, 2a, 2b, 2c, ... 10a, 10b, 10c
  
 
Attention, si l'on choisi un nombre de pages limité (différent de 0 qui imprime toutes les page), l'on imprime évidemment la table selon l'ordre précité.
 
Attention, si l'on choisi un nombre de pages limité (différent de 0 qui imprime toutes les page), l'on imprime évidemment la table selon l'ordre précité.
 +
 +
= Impression des lignes sélectionnées =
 +
Depuis la version 1.03, la fonction [[ClapPrint_-_Entrées_et_sorties|nImprimeTable()]] permet de n'imprimer que les lignes sélectionnées.  Pour faire cela, il faut d'une part ajouter l'option ''_clapPrintLigneSélectionnée'' et il faut ensuite être dans un des cas suivant : soit la table est multi-sélection (propriété [http://doc.pcsoft.fr/fr-FR/?1000017054 ..MultiSélection]) et l'impression se basera sur la propriété [http://doc.pcsoft.fr/fr-FR/?2510112 ..Sélectionnée] de chaque ligne de la table, soit la première colonne est de type "coche" et elle sera utilisé comme élément de sélection. Dans ce dernier cas, la première colonne est soit la première visible de la table (si le paramètre sCalcul n'est pas utilisé pour décrire les colonnes à imprimer), soit c'est la première colonne décrite dans le paramètre sCalcul utilisé dans la fonction [[ClapPrint_-_Entrées_et_sorties|nImprimeTable()]].
 +
 +
= Impression d'un logo (image) =
 +
Depuis la version 1.03, la fonction [[ClapPrint_-_Entrées_et_sorties|nImprimeTable()]] permet d'imprimer un logo dans le coin supérieur gauche.  Il faut, pour cela, que l'image soit sous forme de fichier (les images issues d'un mémo image doivent d'abord est sauvegardées sous forme de fichier).  Ensuite, il suffit juste de mettre le chemin de l'image dans le paramètre '''Titre''' séparé par un retour chariot : "Le titre de mon rapport"+RC+"D:\Images\LogoCompagnie.png". 
 +
 +
Attention, le logo s'imprimera sans "marges" programmées.  Si le logo est au bord de l'image, le cadre s'imprimera à raz de l'image.  Pour éviter cet effet visuel indésirable, ajoutez quelques pixels (grâce un logiciel de traitement d'image comme Paint livré en standard dans Windows) de chaque côté de l'image pour qu'il puisse, visuellement, se distancier du reste des éléments qui seront imprimés.
 +
 +
La taille de l'image imprimée est basée sur les deux instructions standards : [http://doc.pcsoft.fr/fr-FR/?3046057 iHauteurImage()] et [http://doc.pcsoft.fr/fr-FR/?3046061 iLargeurImage()].  Si l'image semble trop petite ou trop grande, merci de vérifier, grâce à ces instructions, combien de mm l'image prend en hauteur et largeur.  Pour changer la taille du logo, utilisez un logiciel de traitement d'image (comme Paint livré en standard dans Windows).
 +
 +
Le logo s'imprime dans la zone de titre et en avant plan de la couleur de fond de titre.
 +
 +
Attention, la zone de titre peut s'agrandir si la hauteur du logo dépasse celle des lignes de titre.  Les titres imprimés dans cette zone seront alors centrés verticalement sur la hauteur de la zone (et donc de l'image).
  
 
= Liens utiles =
 
= Liens utiles =
Ligne 133 : Ligne 198 :
 
[[clapPrint - La fenêtre FEN_ParamPrint|Détail de la fenêtre FEN_ParamPrint]]
 
[[clapPrint - La fenêtre FEN_ParamPrint|Détail de la fenêtre FEN_ParamPrint]]
  
[http://www.lapalys.ca/index.php/noslogiciels/clapprint Téléchargement et licence]
+
[http://www.lapalys.ca/logiciels/clapprint/ Téléchargement et licence]

Dernière version du 3 février 2015 à 18:37

Ce composant propose essentiellement deux éléments :

  • La fonction d'impression de table : nImprimeTable()
  • Une interface utilisateur permettant de gérer toutes les options de la fonction.

La fonction nImprimeTable

L'impression de la table se fait par une unique fonction : nImprimeTable. Une série de paramètres, donc certains peuvent être laissés par défaut, permettent de jouer sur les couleurs, sur l'existence ou pas des lignes (cadre, séparations), sur les formats (date, heure, monétaire, booléen), ...

L'interface utilisateur d'impression de table

Cette interface propose non seulement de gérer l'ensemble des paramètres reconnus par la fonction nImprimeTable() mais aussi de sauver le tout dans des "profils", de sorte à pouvoir rappeler un profil pour une autre impression.

L'appel de cette fenêtre FEN_ParamPrint accepte deux paramètres principaux :

  • Le nom de la table à imprimer (obligatoire, avec ou sans guillemets)
  • Le chemin complet d'un fichier INI pour sauvegarder les profils (optionnel)

Le contenu des onglets représente les mêmes options que celles utilisées dans l'appel de la fonction. Veuillez vous reporter à cette page pour plus de détails de ladite fonction.

Le fichier INI

Le fichier ini est exclusivement géré par l'interface utilisateur. Chaque profil enregistré (avec le bouton "disquette") doit avoir un nom unique et correspondra à une section du fichier INI. Pour éviter toute confusion dans le fichier INI déjà existant dans votre application (au cas où le nom d'un profil correspondrait à une section déjà existante), préférez avoir un fichier INI à l'usage unique de ce composant.

Pour information, voici les mots clés gérés reconnus dans le fichier INI. Il est déconseillé de les modifier en dehors de cette fenêtre.


[NomDuProfil]

CouleurTable = 0 ou 1 (0[défaut]=couleur personnalisée dans clapPrint, 1=récupère les couleurs de la table d'origine), voir remarque ci-dessous

Orientation = 1 ou 2 (1[défaut]=portrait, 2=paysage)

Assemblage = 1 ou 2 (1[défaut]=assemblé, 2=non-assemblé), voir remarque ci-dessous

Exemplaire = Nombre d'exemplaires identique à imprimer (1[défaut]).

Portrait = 0 ou 1 (0[défaut]=portrait non forcé, 1=portrait forcé)

Titre = Valeur du titre du rapport (par défaut=vide). Pour les titres multi-lignes, utiliser les mots clés "Titre_1","Titre_2", ... dans ce cas "Titre" est alors ignoré.

RepeteTitre = 0 ou 1 (0[défaut]=le titre s'imprime sur la première page uniquement, 1=imprime le titre sur chaque page)

Logo = Chemin complet de l'image à afficher dans le coin supérieur gauche (par défaut pas de logo), voir remarque ci-dessous

TitreColonne = 0 ou 1 (0[défaut]=n'imprime pas le titre des colonnes, 1=imprime le titre des colonnes)

CalculeColonne = 0 ou 1 (0[défaut]=imprime la table sans exécuter le code "affichage d'une ligne dans la table", 1=sélectionne chaque ligne de la table pour que les colonnes calculées s'affichent correctement)

RepeteTitreColonne = 0 ou 1 (0[défaut]=le titre des colonne s'affiche sur la première page uniquement, 1=répète le titre des colonnes sur chaque page si TitreColonne = 1)

TitreColonneMultiligne = 0 ou 1 (0[défaut]=un seule ligne, 1=le titre des colonnes s'imprime sur plusieurs lignes même si le titre est sur une ligne dans la table d'origine)

LigneSelectionne = 0 ou 1 (0[défaut]=imprime toutes les lignes de la table, 1=n'imprime que les lignes sélectionnées), voir remarque ci-dessous

NumPage = 0 ou 1 (0[défaut]=n'imprime pas la # de page, 1=imprime le # de page en bas à droite de chaque page)

Date = 0 ou 1 (0[défaut]=n'imprime pas la date, 1=imprime la date en bas à gauche de chaque page)

Heure = 0 ou 1 (0[défaut]=n'imprime pas l'heure, 1=imprime l'heure en bas à gauche de chaque page)

Booleen = 0 ou 1 (0[défaut]=imprime les booléens comme des chiffres, 1=imprime les booléens comme des coches)

ContenuMultiligne = 0 ou 1 (0[défaut]=contenu de chaque case sur une seule ligne, 1=contenu des cases sur plusieurs ligne)

Image = 0 ou 1 (0[défaut]=n'imprime pas les mémos images, 1=imprime les mémos images)

EcritureDaG = 0 ou 1 (0[défaut]=écrit dans le sens par défaut déterminé par la table, 1=force l'écriture de droite à gauche)

Gris = 0 ou 1 (0[défaut]=imprime en couleur, 1=imprime en tons de gris)

Cadre = 0 ou 1 (0[défaut]=pas de cadre, 1=imprime le cadre)

SeparateurV = 0,iContinu,iPointillé,iMixte,iTiret (0[défaut]=pas de trait)

SeparateurH = 0,iContinu,iPointillé,iMixte,iTiret (0[défaut]=pas de trait)

Police = Nom de la police de caractère à utiliser (par défaut=Arial)

PoliceTaille = numérique (par défaut=10 pour tous les textes sauf la première ligne de titre en 12)

RepeteCalcul = 0 ou 1 (0[défaut]=calculs visibles uniquement sur la dernière page, 1=calculs visibles sur toutes les pages comme des valeurs intermédiaires)

DateFormat = voir la documentation PC SOFT de DateVersChaine

HeureFormat = voir la documentation PC SOFT de HeureVersChaine

MonetaireFormat = voir la documentation PC SOFT de NumériqueVersChaine

MagentaTransparent = 0 ou 1 (0[défaut]=pas de transparence des mémos images et de l'image de titre s'ils contiennent du magenta, 1=le magenta des images sera transparent)

Champ_x (x est le numéro de la colonne) = NomDeLaColonne~Compteur~Moyenne~Total (Compteur, Moyenne, Total prennent la valeur 0 ou 1 selon qu'ils sont activés ou pas pour la colonne; exemple COL_Nom~1~0~0)

Image_x (x est le numéro de la colonne) = NomDeLaColonne~Valeur~CheminImage (valeur = valeur de la "rubrique", CheminImage = chemin complet de l'image correspondante à la valeur; exemple COL_Genre~H~C:\Temp\Homme_16_1.png)

Premiere = Numéro de la première page (1[défaut], n'est utile que si le numéro de page est imprimé > voir cette option)

Ancre = Nom de la colonne qui doit être ancrée (cette colonne s'élargira au maximum pour respecter la largeur de la page)

HauteurLigne = Hauteur d'une ligne de la table (0[défaut]=hauteur de la police utilisée, en millimètres)

MargeH = Marge en haut (0[défaut]=la marge haute minimum de l'imprimante, en millimètre, marge depuis le bord haut de la page qui sera ignorée si inférieure à la marge haute minimum de l'imprimante)

MargeB = Marge en bas (0[défaut]=la marge haute basse de l'imprimante, en millimètre, marge depuis le bord bas de la page qui sera ignorée si inférieure à la marge basse minimum de l'imprimante)

MargeG = Marge à gauche (0[défaut]=la marge gauche basse de l'imprimante, en millimètre, marge depuis le bord gauche de la page qui sera ignorée si inférieure à la marge gauche minimum de l'imprimante)

MargeD = Marge à droite (0[défaut]=la marge droite basse de l'imprimante, en millimètre, marge depuis le bord droit de la page qui sera ignorée si inférieure à la marge droite minimum de l'imprimante)

Pied = texte de pied de page (seule une seule ligne est pris en compte)

COULEURPAIRE = 0 a 16777216 (couleur de fond des lignes paires, voir la documentation PC SOFT)

COULEURIMPAIRE = 0 a 16777216 (couleur de fond des lignes impaires, voir la documentation PC SOFT)

COULEURDONNEEPAIRE = 0 a 16777216 (couleur de texte des données des lignes paires, voir la documentation PC SOFT)

COULEURDONNEEIMPAIRE = 0 a 16777216 (couleur de texte des données des lignes impaires, voir la documentation PC SOFT)

COULEURFONDPAGE = 0 a 16777216 (couleur de fond de page, voir la documentation PC SOFT)

COULEURVERTICAL = 0 a 16777216 (couleur des lignes verticales, voir la documentation PC SOFT)

COULEURHORIZONTAL = 0 a 16777216 (couleur des lignes horizontales, voir la documentation PC SOFT)

COULEURTITRE = 0 a 16777216 (couleur de texte du titre, voir la documentation PC SOFT)

COULEURFONDTITRE = 0 a 16777216 (couleur de fond du titre, voir la documentation PC SOFT)

COULEURTITRECOL = 0 a 16777216 (couleur du texte des titres de colonne, voir la documentation PC SOFT)

COULEURFONDTITRECOL = 0 a 16777216 (couleur de fond des titres de colonne, voir la documentation PC SOFT)

COULEURCADRE = 0 a 16777216 (couleur des lignes du cadre, voir la documentation PC SOFT)

COULEURPIED = 0 a 16777216 (couleur du texte de pied de page, voir la documentation PC SOFT)

COULEURFONDPIED = 0 a 16777216 (couleur de fond de pied de page, voir la documentation PC SOFT)

Impression utilisant un profil

La notion de profil n'est présente que dans l'interface utilisateur et non dans l'instruction nImprimeTable. Pour directement imprimer une table utilisant un profil, il suffit de mettre le paramètre gbImprimeDirect à vrai. La fenêtre charge le profil et imprime directement. L'utilisateur ne voit pas la fenêtre s'ouvrir.

Exemple
//gsFichierIni est une variable chaine globale contenant le chemin du fichier INI dans lequel les profils sont sauvegardés
iAperçu(i100)
nNbPages est un entier = Ouvre(FEN_ParamPrint,TABLE_Client,gsFichierIni,Vrai)
SI nNbPages=0 ET clapPrint.sClapPrintErreur()>"" ALORS Erreur(clapPrint.sClapPrintErreur())   //une erreur est survenue

Contraintes techniques

  • La fonction nImprimeTable ne peut pas être appelée dans un état (comme pour imprimer un sous-état);
  • Le texte du titre et le texte du pied de page ne peuvent pas contenir de TAB si l'on utiliser un profil (le fichier ini n'accepte pas ces caractères);
  • L'option d'impression en tons de gris ne fonctionne que pour les textes, les lignes et les couleurs de fond; pas pour les images.
  • La fonction n'imprime que les colonnes visibles à l'écran, même si l'on insère le nom de la colonne dans le paramètre sCalculs. En effet, l'impression se base sur la largeur des colonnes à l'écran. Ces dernières doivent donc être visibles de l'utilisateur (qui pourrait alors les modifier pour modifier la présentation de son rapport).
  • Lors de l'utilisation de l'option CouleurTable (fichier INI) / _clapPrintCouleurTable, seules les couleurs de fond et de caractères des lignes paires, des lignes impaires et cases sont prises en compte. Les autres propriétés ne sont pas accessibles par programmation en WinDev.

Astuces

  • Le nom des colonnes à imprimer doit être sous forme NomDeFenêtre.NomDeTable.NomDeColonne, ceci pour garantir l'exacte correspondance entre ce qui est vu et ce qui est imprimé.
  • La fonction ne gère pas le paramètre iAperçu. Vous devez donc, dans le code, utiliser (ou pas) iAperçu avant d'appeler la fonction nImprimeTable.
  • Veillez, avant de lancer l'impression via la fonction ou la fenêtre FEN_ParamPrint, de désactiver les timers et les événements tels que spécifiés dans la documentation de PC SOFT.
  • Pour ne choisir que certaines colonnes d'une table, utilisez le paramètres sCalculs dans lequel il faut laisser l'option de calcul à 0. Exemple : NomColonne1+TAB+0+RC+NomColonne2+TAB+0+RC+... Dans ce cas, pour respecter la première astuce, utilisez dans votre code, pour le nom des colonnes MaTable.MaColonne..NomComplet+TAB+0+...
  • Lors d'un aperçu avant impression, si l'on utilise nImprimeTable et ensuite un iImprimeEtat() standard, il faut mettre un iAperçuavant chacune des deux instructions.
  • Malgré que le composant n'imprime que les colonnes "visibles" (celles dont la propriété ..visible = vrai), il n'est pas interdit d'avoir la table invisible ou cachée dans une partie non visible de l'écran. Cela permet de "préparer" le contenu à imprimer dans une table non visible de l'utilisateur et d'ensuite lancer une impression dessus. Cette astuce peut être utilisée notamment lors de l'impression de table trop complexes ou contenant des fond de lignes images, ...

Adaptation de l'impression à la largeur de la page

La fonction est construite de telle sorte à adapter la taille des caractères (et donc la hauteur et largeur des colonnes) automatiquement. En effet, lorsque la largeur de la table dépasse la largeur d'une page (selon l'orientation demandée dans un autre paramètre), la procédure commence par diminuer la taille de caractères pour voir si la table peut finir par entrer dans la page (la taille minimale est de 3). Si ce n'est pas possible, et que l'orientation portrait avait été choisie, la procédure passe automatiquement en paysage et refait le même calcul. Pour éviter ce passage automatique en mode paysage, il faut explicitement cocher "Force orientation portrait" ou utiliser la constante _ClapPrintForcePortrait. Si finalement la ligne de table ne rentre pas dans la largeur de page, plusieurs pages seront prévues en largeur. Dans ce cas, il faut être attentif aux options d'assemblage.

Dans l'autre sens, si une impression de table ne rempli pas la largeur de la page, et pour éviter que la dernière colonne soit plus large qu'elle n’apparaît, il est possible de sélectionner une colonne "ancrée" dont la largeur va s'adapter et gardera ainsi la proportion des autres colonnes. Habituellement, l'on ancre la première colonne.

Option d'assemblage

Grâce à ces fonctions, il est donc possible d'imprimer soit toutes les pages en largeur et ensuite les prochains enregistrements, soit les premières colonnes sur tous les enregistrements et ensuite les colonnes suivantes sur tous les enregistrements. Exemple : l'impression a besoin de 3 pages en largeur (pour contenir toutes les colonnes), soit a,b,c et 10 pages en hauteur (pour les 847 enregistrements) soit 1,2,3,4,..10. Chaque page est alors identifiée comme 1a, 1b, 1c, 2a, 2b, 2c, 3a, 3b, 3c ... 10a, 10b et 10c.

- L'option "Assemblé" ou l'absence de constante _ClapPrintNonAssemblée imprimera les pages dans l'ordre suivant : 1a, 2a, 3a, 4a, ... 10a, 1b, 2b, 3b, 4b ... 10b, 1c, 2c, 3c, 4c ... 10c

- L'option "Non assemblée" ou l'utilisation de la constante _clapPrintNonAssemblée imprimera les pages dans l'ordre suivant : 1a, 1b, 1c, 2a, 2b, 2c, ... 10a, 10b, 10c

Attention, si l'on choisi un nombre de pages limité (différent de 0 qui imprime toutes les page), l'on imprime évidemment la table selon l'ordre précité.

Impression des lignes sélectionnées

Depuis la version 1.03, la fonction nImprimeTable() permet de n'imprimer que les lignes sélectionnées. Pour faire cela, il faut d'une part ajouter l'option _clapPrintLigneSélectionnée et il faut ensuite être dans un des cas suivant : soit la table est multi-sélection (propriété ..MultiSélection) et l'impression se basera sur la propriété ..Sélectionnée de chaque ligne de la table, soit la première colonne est de type "coche" et elle sera utilisé comme élément de sélection. Dans ce dernier cas, la première colonne est soit la première visible de la table (si le paramètre sCalcul n'est pas utilisé pour décrire les colonnes à imprimer), soit c'est la première colonne décrite dans le paramètre sCalcul utilisé dans la fonction nImprimeTable().

Impression d'un logo (image)

Depuis la version 1.03, la fonction nImprimeTable() permet d'imprimer un logo dans le coin supérieur gauche. Il faut, pour cela, que l'image soit sous forme de fichier (les images issues d'un mémo image doivent d'abord est sauvegardées sous forme de fichier). Ensuite, il suffit juste de mettre le chemin de l'image dans le paramètre Titre séparé par un retour chariot : "Le titre de mon rapport"+RC+"D:\Images\LogoCompagnie.png".

Attention, le logo s'imprimera sans "marges" programmées. Si le logo est au bord de l'image, le cadre s'imprimera à raz de l'image. Pour éviter cet effet visuel indésirable, ajoutez quelques pixels (grâce un logiciel de traitement d'image comme Paint livré en standard dans Windows) de chaque côté de l'image pour qu'il puisse, visuellement, se distancier du reste des éléments qui seront imprimés.

La taille de l'image imprimée est basée sur les deux instructions standards : iHauteurImage() et iLargeurImage(). Si l'image semble trop petite ou trop grande, merci de vérifier, grâce à ces instructions, combien de mm l'image prend en hauteur et largeur. Pour changer la taille du logo, utilisez un logiciel de traitement d'image (comme Paint livré en standard dans Windows).

Le logo s'imprime dans la zone de titre et en avant plan de la couleur de fond de titre.

Attention, la zone de titre peut s'agrandir si la hauteur du logo dépasse celle des lignes de titre. Les titres imprimés dans cette zone seront alors centrés verticalement sur la hauteur de la zone (et donc de l'image).

Liens utiles

Les entrées/sorties du composant

Détail de la fenêtre FEN_ParamPrint

Téléchargement et licence