Bonjour,
J'utilise depuis plusieurs années une petite application qui via des tables sqlite me permet d'éditer des enveloppes de plusieurs formats avec les adresses venant d'une table sqlite, mais voilà que l'impression ne donne plus le résultat attendu.
Cette application ayant été développée avec une imprimante de résolution 300 j'ai ajouté un coefficient pour utiliser une imprimante avec une autre résolution mais voilà aujourd'hui je ne trouve plus les bonnes valeurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// calcul coeficient résolution par rapport à la valeur de base 300
  Printer.Copies:=XNB;
  XK_RESOL:=Round(Printer.XDPI/300);
  // calcul des nouvelles valeurs de formatage de la zone adresse
  XK:=1181*XK_RESOL;
  XLARG_ZONE:= 1417*XK_RESOL;
  XMARG_ZONE:=130*XK_RESOL;
  XMARG_IMP:=120*XK_RESOL;
  XDEB_CODE:=96*XK_RESOL;
  XLIG_CODE:=410*XK_RESOL;
  MLARGEUR:=data.Modeles.FieldByName('LARGEUR').AsString;
  MHAUTEUR:=data.Modeles.FieldByName('HAUTEUR').AsString;
  XHAUT_ENV:=Round((StrToInt(MHAUTEUR)*(XK))/100);
  XLARG_ENV:=Round((StrToInt(MLARGEUR)*(XK))/100);
en utilisant la fonction débogueur Printer.XDPI est inconnu ce qui fait que le coefficient XP_RESOL qui devrait être à 2 est à 1
D'autre part si je lance 2 impressions différentes j'ai un message d'erreur
"unknown ## Not supported on GDB <5.3 ### dans le fichier unix/cupsprinter.inc ligne 941
Une idée pour corriger cela
Merci d'avance