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

QuickReport Discussion :

impression des tailles personnalisées


Sujet :

QuickReport

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2009
    Messages
    53
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Août 2009
    Messages : 53
    Points : 26
    Points
    26
    Par défaut impression des tailles personnalisées
    Je dispose d'une application développée sous delphi 5



    dans mon application j'ai plusieurs tailles personnalisé de mes etats de sorties l'impression de fait sur une imprimante matricielle epson lq2080.

    à chaque fois que veux imprimer je serai obliger de modifier la taille du papier de l'imprimante selectionnée.


    j'ai meme créé des tailles personnalisés ( nouveau formulaire) sur proprieté de serveur d'impression (imprimantes et télecopies)



    ces procedures (de changer à chaque fois les tailles et de créer des nouveaux formulaire sur le serveur d'impression )

    fatigue l'utilisateur.

    Question:

    est ce qu'il y a un code delphi qui me permet de creer une taille personnalisé sur le serveur d'impression (imprimantes et telecopies) et de selctionner cette taille pour impression.



    j'espere que j'ai bien decrit le probleme.

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 057
    Points : 41 003
    Points
    41 003
    Billets dans le blog
    62
    Par défaut
    j'espere que j'ai bien décrit le probleme.
    ben non , pas vraiment


    je ne comprends pas , ce sont les états quickreport qui ont des tailles personnalisées ? Quel est le besoin de faire toutes ces manips ? (à part bien sur d'avoir a changer le papier)
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Nouveau membre du Club
    Inscrit en
    Août 2009
    Messages
    53
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Août 2009
    Messages : 53
    Points : 26
    Points
    26
    Par défaut
    je pense que tu m'as pas bien compri ou bien pas bien expliqué.

    je refais :

    J'ai developpé d'une application développée sous delphi 5 sur windows xp 2


    je precise : gestion de la paie.

    j'ai plusieurs etats de sortie de tailles diffrents.

    etat de paiment : 35 cm x 28 cm taille personnalisée sur le quickrep 3

    etat de virement : 14 cm x 28 cm taille personnalisée sur le quickrep 3

    avis de virement : 14 cm x 10 cm taille personnalisée sur le quickrep 3

    pour l'instant :
    pour imprimer l'utilisateur doit changer d'un etat à un autre le format de papier (taille de papier sur epson lq2080). sur le windows.


    je que je veux et je cherche : Le format de papier se charge automatiquement, sans que l'utilisateur change la taille du papier de l'imprimante sur windows ( sauf le papier sur imprimante bien sur).


    j'espre que j'ai bien expliqué cette fois ,

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 057
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 057
    Points : 41 003
    Points
    41 003
    Billets dans le blog
    62
    Par défaut
    un peu plus clair

    ce n'est pas le Quickreport qu'il faut changer donc , mais le propriétés imprimante par programmation .

    Je n'ai jamais changer la taille de papier , mais j'ai déjà changer les bacs ou autres propriétés (duplex etc.. ) donc cela me semble possible

    Quelques pistes :

    Utiliser l'unité printers

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    uses Printers
     
       FPrinter : TPrinter;
     
    fprinter := tprinter.Create;
    fprinter.PrinterIndex := -1;         // imprimante par défaut
    pour mes besoins voici une procedure que j'utilisais / utilise avec D3

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
     
    const
         BIGSTRING = 10000;
    type
      LPBYTE = ^byte;
      PPr_info_2 = ^TPrinterInfo2;
     
      TBinNames = array[ 0..99,0..23] of char;
      PTBinNames = ^TBinNames;
     
    procedure TForm1.GetDriverInfo;
    var I: Integer;
        FDevice : PChar;
        FDriver : PChar;
        FPort : PChar;
        BinCodes : PChar;
        Bin : PWORD;
        DeviceMode : THandle;
        Driver_info_2 : pDriverinfo2;
        CapBuffer : PChar;
        BinNames : PTBinNames;
        NumCaps : integer;
    begin
        Memo2.Clear;
        Memo2.Lines.Add('Impossible d''obtenir les informations');
        if not assigned(fPrinter) then exit;
        GetMem(FDevice, 1000);
        GetMem(FDriver, 1000);
        GetMem(FPort, 1000);
        GetMem(Driver_info_2, 255);
        GetMem(CapBuffer, 10000);
        GetMem( binnames, 2400);
        Printer.GetPrinter(FDevice, FDriver, FPort, DeviceMode);
        // Bin names
        NumCaps := DeviceCapabilities(FDevice, FPort, DC_BINNAMES, CapBuffer, nil);
        copymemory( pointer(binnames), capbuffer, 2400);
        memo2.clear;
        NumCaps :=DeviceCapabilities(FDevice, FPort, DC_BINS,nil, nil);
        GetMem(BinCodes,NumCaps*Sizeof(word));
        // Bin codes
        NumCaps := DeviceCapabilities(FDevice, FPort, DC_BINS,BinCodes, nil);
        for I := 0 to NumCaps-1 do
        begin
           if trim(binnames[i]) <> '' then
             begin
                Bin:=@bincodes[i*Sizeof(Word)];
                memo2.lines.add( binnames[i]+ format( '  >> %d',[bin^]));
             end;
        end;
        FreeMem(Driver_info_2, 255);
        FreeMem(CapBuffer, 10000);
        FreeMem( binnames, 2400);
        FreeMem(FDevice, 1000);
        FreeMem(FDriver, 1000);
        FreeMem(FPort, 1000);
        FreeMem(BinCodes,NumCaps*Sizeof(Word));
    end;
    pour les tailles de papier ? mais ça doit être de la même veine
    DeviceCapabilities
    DC_PAPER ou DC_PAPERNAME

    ceci pour obtenir les infos , pour changer le papier j'ai vu ce tip ou ce post
    rien qu'en un peu avec comme mots clefs "delphi change printer paper "
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  5. #5
    Nouveau membre du Club
    Inscrit en
    Août 2009
    Messages
    53
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Août 2009
    Messages : 53
    Points : 26
    Points
    26
    Par défaut
    merci mon ami,

    inchallah je vais essayer ,

  6. #6
    Nouveau membre du Club
    Inscrit en
    Août 2009
    Messages
    53
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Août 2009
    Messages : 53
    Points : 26
    Points
    26
    Par défaut merci
    la meilleur solution est de mettre Usestandarprinter=true.
    propriété du quickrep

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

Discussions similaires

  1. FMX, impression avec taille personnalisée
    Par Artza dans le forum Composants FMX
    Réponses: 2
    Dernier message: 27/07/2014, 10h59
  2. [TChart] : afficher des marques personnalisées
    Par PpPool dans le forum Composants VCL
    Réponses: 1
    Dernier message: 04/08/2005, 18h21
  3. Non impression des couleurs dans le tableau.
    Par sebduduf dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 27/07/2005, 16h13
  4. Réponses: 2
    Dernier message: 31/05/2005, 07h04
  5. [] Impression des donnees sur etiquettes
    Par der dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/12/2002, 15h43

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