J'ai déja exposé mon problème dans un autre post mais après recherche et installation d'une version ancienne de Lazarus, je me suis rendu compte que mon dossier exemples de Lazarus sauvegardé était ancien. De ce fait l'exemple de l'application PRINT date semble-t-il de 2018 et n'existe plus dans le dossier exemple d'une version de Lazarus. Ce qui fait qu'une modification du système Lazarus doit gérer les imprimantes autrement.
Alors je suis à la recherche de comment gérer une imprimante avec la dernière version de Lazarus.
Dans mon application de l'impression d'enveloppe j'utilisais l'unité PRINTER et des fonctions comme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
printer.XDPI ou  // calculs propres au format paysage
  Printer.Orientation:=poLandscape;
  XLARG_PAGE:= Printer.PaperSize.PaperRect.PhysicalRect.Right-Left;
  // 3508 > 297,01 mm  pour l'HP avec une résolution de 300 x 300
  XHAUT_PAGE:= Printer.PaperSize.PaperRect.PhysicalRect.Bottom-Top;
  // 2480 > 209,89 mm  pour l'HP avec une résolution de 300 x 300
  XMARGE:=Round((XHAUT_PAGE-XHAUT_ENV)/2);
  XLIG_DER:=XHAUT_PAGE-XMARGE-XLIG_CODE+90;
  XDEB_IMP:=XLARG_PAGE-XMARG_IMP-XMARG_ZONE-XLARG_ZONE+XDEB_CODE;
Mais aujourd'hui je n'obtiens plus les bons résultats.
Alors si une bonne âme peut m"aider merci d'avance.