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

MFC Discussion :

FAQ - imprimer une boîte de dialogue


Sujet :

MFC

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 76
    Points : 20
    Points
    20
    Par défaut FAQ - imprimer une boîte de dialogue
    salut,

    j'ai utilisé le code donné par Farscape sur la FAQ (http://c.developpez.com/faq/vc/?page...intDialgoBox).

    et l'image imprimée est toute petite (environ 1.5cm). J'ai raté quelquechose ?

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    il faut dilater le bitmap en fonction de la resolution de l'imprimante ,dans la faq j'ai juste centré le bitmap resultant sur la feuille.
    en changeant le rectangle d'impression on zoom le bitmap...

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 76
    Points : 20
    Points
    20
    Par défaut
    hm hm, alors je vais avoir un pb si je ne connais pas la résolution des imprimantes utilisées ?

    comment chopper cette info et l'intégrer dans mon code ?

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    tu l'a dans mon post ! avec getdevicecaps

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 76
    Points : 20
    Points
    20
    Par défaut
    ok, alors si c'est dans le code, pourquoi ça le fait pas ?

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    hum on reprend ,
    si tu lis bien le code de la faq qui est commenté ,
    je prends le bitmap je regarde sa taille et je le centre sur la feuille point.
    il faut rappeler que un ecran c'est entre 200 et 250 dpi et une imprimante laser entre 600 et 1200 dpi voir plus.
    donc si ton bitmap fait 100* 200 pixels une sur une surface de 6000 * xx pixels il sera petit .
    il suffit de specifier le ration en changeant le rectangle d'impression:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     // rectangle d'impression
    CRect rect;   
    // le bitmap est centré !!!!! sans dilatation.
    rect.SetRect(CPoint(nX,nY),CPoint(nX+bmpInfo.bmWidth,nY+bmpInfo.bmHeight));

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 76
    Points : 20
    Points
    20
    Par défaut
    ok pour le principe.

    j'ai testé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        // rectangle d'impression
            CRect rect;
            rect.SetRect(CPoint(nX,nY),CPoint(nX+5*(bmpInfo.bmWidth),nY+5*(bmpInfo.bmHeight)));
    et j'ai pu voir le résultat. Mais en fait, le coefficient 5, je l'ai mis arbitrairement. Ca donne un bon résultat avec mon imprimante mais comment généraliser la mise à l'échelle pour toutes les imprimantes possibles et imaginables ?

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

Discussions similaires

  1. Créer une boîte de dialogue "Parcourir"
    Par magic8392 dans le forum Langage
    Réponses: 1
    Dernier message: 08/09/2005, 10h41
  2. [MFC] afficher une boîte de dialogue
    Par bigboomshakala dans le forum MFC
    Réponses: 13
    Dernier message: 10/05/2004, 14h22
  3. [Kylix] Imprimer le contenu d'une boîte de dialogue
    Par cmp-france dans le forum EDI
    Réponses: 13
    Dernier message: 18/10/2003, 20h31
  4. Réponses: 3
    Dernier message: 29/08/2003, 10h57

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