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 :

Impression bmp à l'aide !


Sujet :

MFC

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 220
    Par défaut Impression bmp à l'aide !
    peut on me debloquer cela SVP?
    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
     
        CBitmap bmp;
        CDC MemDC;
    	CClientDC	pDC(this);
    	BITMAP InfosBmp;
     
    	bmp.LoadBitmap(IDB_BMPESSAI);
     
    	bmp.GetBitmap(&InfosBmp);
     
    	MemDC.CreateCompatibleDC(&pDC);
     
    	MemDC.SelectObject(&bmp);
     
    	pDC.SetMapMode(MM_TEXT);
    	pDC.BitBlt( 10,100,InfosBmp.bmWidth, InfosBmp.bmHeight,&MemDC,0,0,SRCCOPY);
    ici je cherche a afficher un DIB pour un essai sur boitez de dialog avant de l'imprimer!

    Ca marche avec un BMP mais ca plante avec un .dib !

    Quelqu'un pour m'aider SVP!
    [a l'avenir pense a mettre la balise de code et active le bbcode dans ton profil,Merci Farscape]

  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
    Par défaut
    salut,
    sans preciser l'erreur (l'assertion) etc un peu dure de repondre.
    néanmoins dans la faq il y a un post qui traite de l'impression d'un boite de dialogue ,celle ci se faisant a partir d'un bitmap.
    http://c.developpez.com/faq/vc/?page...PrintDialgoBox

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 220
    Par défaut
    Plus simplement! J'ai changé l'extension d'un fichier .BMP en . DIB !Est ce cela la source de mon probleme ?

    Comment creait-on une fichier.DIB ?

    Le fait de charger mon fichier.DIB( ou .BMP) dynamiquement plutôt que de le definir en recource fixe, peut il resoudre mon probleme, ou bien cela n'est pas du tout lier ?

    D'avancve Merci .

  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
    Par défaut
    Citation Envoyé par flyingman
    Plus simplement! J'ai changé l'extension d'un fichier .BMP en . DIB !Est ce cela la source de mon probleme ?

    Comment creait-on une fichier.DIB ?

    Le fait de charger mon fichier.DIB( ou .BMP) dynamiquement plutôt que de le definir en recource fixe, peut il resoudre mon probleme, ou bien cela n'est pas du tout lier ?

    D'avancve Merci .
    changer l'extension d'un fichier bmp en dib ne suffit pas pour passer d'un format a l'autre !
    MS paint sait faire ça ...

  5. #5
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 393
    Par défaut
    Euh... .dib et .bmp, c'est pas supposé être exactement là même chose pour Windows ?

    Je me souviens dans le choix de format de paint, il y avait "Bitmap Windows (*.bmp, *.dib)"

    Et sachant que DIB signifie "Device-Independent Bitmap" (Bitmap indépendant du matériel) et que les seuls bitmaps qu'on enregistre sont ainsi, je crois bien que ce n'est qu'un seul et même format...

    Donc, le problème doit venir d'ailleurs...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  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
    Par défaut
    c'est vrai qu'un dib utilise indifferement les deux formats .bmp et .dib
    mais un vrai ddb ne sera pas transformé en dib en changeant l'extension du fichier.
    ceci dis tant que tu n'indiqueras pas l'erreur précise rencontrée ça n'avancera pas...

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 220
    Par défaut
    Ok ! Je vais je reformuler ma question differement !

    J'avais utiliser le code (proposer sur le FAQ) de ce site pour afficher un

    fichier.BMP ( Enregistrait comme resource IMAGE ).

    A la fin de ce code, qui fonctionne parfaitement pour afficher un .BMP dans une boite de dialoge, il est ecrit que pour IMPRIMER une IMAGE, le fichier doit etre fichier.DIB !

    Voici ma question : Comment IMPRIMER une resource IMAGE ?

    D'avance Merci.

  8. #8
    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
    Par défaut
    et bien tu as la reponse dans ce meme post !
    Citation Envoyé par faq
    Un problème se pose:
    Le bitmap généré représente un DDB :device-dependent bitmap . Et ce type de bitmap n'est pas imprimable directement ,il faudra le transformer en DIB device-independent bitmap.
    d'où l'utilisation dans mon exemple de la classe CPictureHolder .
    Le même problème sera rencontré avec l'utilisation de la fonction CBitmap::LoadBitmap, pour contourner le problème il faudra faire comme suit:

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    220
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 220
    Par défaut
    Bonjour Farscape

    Parlons nous du meme example? car je ne vois pas de CPictureHolder dans l'example !!!

    Voici l'example auquel je faisais allusion :

    L’exemple ci-dessous montre les étapes nécessaires pour lire et afficher un bitmap provenant des ressources (IDB_BMPESSAI) .
    CMyView::OnDraw(CDC *pDC)
    {
    CBitmap Bitmap;
    CDC MemDC;

    Bitmap.LoadBitmap(IDB_BMPESSAI); // lecture bitmap dans les ressources
    BITMAP InfosBmp; // structure d'informations.
    Bitmap.GetBitmap(&InfosBmp);
    MemDC.CreateCompatibleDC(pDC);// creation d'un DC en memoire
    MemDC.SelectObject(&Bitmap); // selection du bitmap dans le DC en memoire
    // transfert final du bitmap dans le dc de la view.
    pDC->BitBlt( 0,0,InfosBmp.bmWidth, InfosBmp.bmHeight,
    &MemDC,
    0,0,
    SRCCOPY);
    }


    Note: l'exemple ci-dessus fonctionne très bien à l'écran.
    dans le cas d'une édition sur imprimante ce bitmap ne sera pas compatible, il faudra disposer d'un bitmap DIB: device-independent bitmap au lieu d'un DDB: device-dependent bitmap .


    D'avance Merci.

  10. #10
    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
    Par défaut
    voir ce post (le meme que j'ai posté plus haut) !
    http://c.developpez.com/faq/vc/?page...PrintDialgoBox

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/12/2006, 09h04
  2. impression d'un .bmp
    Par calimero91 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 09/10/2006, 13h17
  3. Réponses: 3
    Dernier message: 03/03/2005, 17h27
  4. [BPW] Impression d'une image BMP
    Par Alcatîz dans le forum Turbo Pascal
    Réponses: 13
    Dernier message: 21/08/2003, 14h34
  5. Impression d'image bmp
    Par Invité dans le forum Langage
    Réponses: 6
    Dernier message: 18/07/2002, 09h38

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