IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Lazarus Pascal Discussion :

Problème d'impression sous Fedora [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut Problème d'impression sous Fedora
    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

  2. #2
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Citation Envoyé par ovni76 Voir le message
    en utilisant la fonction débogueur Printer.XDPI est inconnu ce qui fait que le coefficient XP_RESOL qui devrait être à 2 est à 1
    Quand le débogueur n'y arrive pas, il faut recourir au bon vieux ShowMessage !
    Genre ShowMessage(IntToStr(Printer.XDPI)); pour voir ce que ça te remonte (faudra peut-être changer integer en double, je n'ai pas vérifié).
    Ou logguer dans un TMemo prévu pour ça, avec sa propriété visible (en debug) ou pas (en prod).

    Pour .XDPI, te souviens-tu de cette discussion et de son dernier post ?


    Citation Envoyé par ovni76 Voir le message
    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
    Ah, ça, c'est la nouvelle calamité des versions à partir de la 2.0, on dirait...
    Je l'ai souvent aussi, et c'est d'autant plus inexploitable que mon gdb est largement > à 5.3 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    gdb --version
    GNU gdb (Debian 10.1-1.7) 10.1.90.20210103-git
    Pas de solution, en ce qui me concerne, à part examiner attentivement la ligne donnée, où il doit y avoir une blagounette, ou dans le code qui l'appelle...
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  3. #3
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Merci de me répondre eh non je n'avais pas souvenir de ce post lmais que veux-tu je vais avoir cette année 80 balais alors les neurones sont un peu fatigués.
    Mais j'ai fait des essais et j'arrive à un point où pour une raison inconnue les paramètres de l'imprimante ont disparus j'ai ajouté un composant supplémentaire PrinterSetupDialog et dans mon module j'ai ajouté la commande PrinterSetupDialog .execute, à l'exécution j'ai une fenêtre affichant normalement les paramètres de l'imprimante et ils sont vides. Ce qui voudrait dire que l'imprimante n'est pas reconnue par mon application. C'est bien étrange car elle imprime pas au format que je souhaite donc il me semble qu'il faudrait ajouter une commande pour lui demander sa configuration et en particulier sa résolution puisque c'est cette valeur qui déclenche les calculs de mise en page.
    Pour l'instant je n'ai pas trouvé la commande adéquate.
    Je vais relire l'ancien post il y a peut-être la solution, mais c'est quand même étrange que cette application fonctionnait depuis plusieurs années et puis plouf.
    Merci
    A+

  4. #4
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 730
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 730
    Points : 15 132
    Points
    15 132
    Par défaut
    Bonjour,

    moi je partirais d'une application complètement vierge à laquelle je rajouterais l'unité Printer et je la torturerais pour lui faire cracher toutes les informations qu'elle connait, genre (au pif car je n'ai pas d'imprimante dans cette machine) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MyPrinter := TPrinter.Create;
    MyPrinter.
    et j'étudie ce que propose la complétion.

    Ensuite, à coups de ShowMessage ou log dans un TMemo, extraire les infos intéressantes.

    Tu vois l'idée ?
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  5. #5
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Bonjour,
    J'ai une application ancienne que j'ai créé de toutes pièces ou modifiée depuis un exemple je ne sais plus dans laquelle je teste les différents composants relatif à l'impression et en l'utilisant j'ai des résultats étranges au premier lancement de par exemple setupInfo venant du composant PrinterSetup j'ai la bonne résolution mais par la suite je reviens à l'ancienne de 300x300 mais dans ces essais j'ai trouvé plusieurs imprimantes possibles je vais donc chercher le pourquoi de cette anomalie je n'ai qu'une imprimante.
    Alors A+ dans les jours qui viennent car j'ai du boulot dans mon jardin.

  6. #6
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Bonsoir,
    Me revoilà je crois avoir compris mon problème :
    1/ j'avais pour une raison x surement une erreur de ma part plusieurs imprimantes plus où moins bien déclarées ( j'ai eu brother laser couleur hl-l3270cdw qui ne s'installe pas très sous fedora il faut l'installer avec les drivers proposés par le constructeur depuis une version live) donc dans des essais depuis cups il peut y avoir plusieurs si on n'est pas assez rigoureux ou compétent) Donc j'ai désinstallé cups puis je l'ai réinstallé, installer mon imprimante comme indiqué ci-dessus et j'ai testé la résolution trouvée, elle est bien en 600x600. Dans le cas de mon problème l'application recherchée une imprimante via les fonctions "printer.xx" et choisissée une imprimante parmi les 3 noms disponibles, vu avec le composant PrintDialogSetup je crois donc trouvée une résolution pas toujours la bonne puisque pas issue de la bonne imprimante.
    Tout celà demande a être confirmée mais c'est le résultats de mes essais. J'en conclus que pour mon application il risque d'avoir un problème si il existe sur le PC utilisé plusieurs imprimantes non sélectionnables comme par exemple avec l'impression depuis libreoffice ou gimp.
    Donc sauf grosse erreur de ma part mon post peut-être clos, a moi de modifier mon application pour la rendre plus universelle.
    Encore merci A+

  7. #7
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2008
    Messages
    385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2008
    Messages : 385
    Points : 223
    Points
    223
    Par défaut
    Bonjour,
    Après du temps passé à rechercher mon problème et enfin mon application est bonne, le problème était la déclaration de l'imprimante sous fedora. Aptès de nombreux essais et recherche l'imprimante est bien fonctionnelle il manquait un module perl.
    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème d'impression sous firefox
    Par neptuna dans le forum Firefox
    Réponses: 6
    Dernier message: 01/09/2010, 15h46
  2. Problème d'impression sous Vista
    Par dialdre dans le forum Windows Vista
    Réponses: 1
    Dernier message: 23/02/2009, 00h41
  3. problème avec eclipse sous fedora
    Par oswalidos dans le forum RedHat / CentOS / Fedora
    Réponses: 8
    Dernier message: 22/01/2009, 14h16
  4. Problème d'impression sous Windows
    Par bobbafet dans le forum Windows
    Réponses: 0
    Dernier message: 13/09/2008, 11h47
  5. Problème d'impression sous 4D
    Par flesblue dans le forum 4D
    Réponses: 3
    Dernier message: 30/08/2007, 03h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo