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

VB.NET Discussion :

type d'image en vb.net


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 48
    Par défaut type d'image en vb.net
    Salut tout le monde.
    Je voudrais créer un bouton d'impression, donc j'ai créé un private sub 'captureEcran' pour enregistrer l'image de la capture d'écran du formulaire courant, son type est bitmap.
    Mais quand l'image j'ouvre l'image enregistrée je la trouve de taille moins que le formulaire capté.
    Est-ce-qu'il y a un autre type d'image que bitmap?
    Cordialement

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    C'est pas très clair ton histoire... essaie d'expliquer plus précisément ton problème, et montre le code concerné

  3. #3
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 202
    Par défaut
    il y a 2 classes qui gèrent les images en windows forms, image et bitmap
    l'une hérite de l'autre
    les 2 gèrent différents formats
    quand tu fais .save, tu peux choisir le format (et à toi de mettre l'extension qui va avec)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Pol63 Voir le message
    les 2 gèrent différents formats
    Je rajoute une petite précision, parce que j'ai peur que cette phrase crée une certaine confusion... La classe Bitmap ne correspond pas spécifiquement au format BMP. Elle représente n'importe quelle image "en mode point" (par opposition aux images vectorielles), donc les images PNG, JPG, GIF, BMP, TIFF, etc sont toutes représentées par la classe Bitmap.

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 48
    Par défaut
    Voila le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    'CaptureEcran capture l'image du formulaire en cours et la met dans memoryImage. puis memoryImage est passé dans l'objet graphique e qui est imprimé.
        Private Sub CaptureEcran()
            Dim mygraphics As Graphics = Me.CreateGraphics()
            Dim s As Size = Me.Size
            memoryImage = New Bitmap(s.Width, s.Height, mygraphics)
            Dim memoryGraphics As Graphics = Graphics.FromImage(memoryImage)
            Dim dc1 As IntPtr = mygraphics.GetHdc
            Dim dc2 As IntPtr = memoryGraphics.GetHdc
            BitBlt(dc2, 0, 0,Me.ClientRectangle.Width, Me.ClientRectangle.Height, dc1, 0, 0, 13369376)
            mygraphics.ReleaseHdc(dc1)
            memoryGraphics.ReleaseHdc(dc2)
     
        End Sub
    Pour mieux expliquer mon problème, je vais donner un exemple:
    le formulaire à imprimer a le size:1700;800
    mais l'image enregistrée a le size:200;700
    Auriez vous une solution à me proposer pour remplacer le type bitmap par le type image SVP ?
    Je vous remercies énormément.

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par ahmed_kh Voir le message
    Auriez vous une solution à me proposer pour remplacer le type bitmap par le type image SVP ?
    Ca n'a rien à voir avec le problème... un Bitmap est une Image (puisque Bitmap hérite de Image), et de toutes façons Image est une classe abstraite, donc tu ne peux pas l'utiliser directement.

    Je ne sais pas exactement d'où vient le problème, mais il y a un moyen plus simple de faire une capture d'un formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub CaptureEcran()
    	Dim bmp As New Bitmap(Me.Width, Me.Height)
    	Me.DrawToBitmap(bmp, New Rectangle(Point.Empty, bmp.Size))
    End Sub
    Sinon tu peux utiliser la méthode d'extension CaptureImage qui est dans la bibliothèque Dvp.NET :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim img As Image = Me.CaptureImage()

  7. #7
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 48
    Par défaut
    merciii bien Monsieur mais mon problème est le meme.
    voila le formulaire et ce que me donne la capture ( la grande image est celle du formulaire et la petite est celle de la capture):
    Images attachées Images attachées   

Discussions similaires

  1. Types d'images utilisables
    Par kankrelune dans le forum GTK+ avec PHP
    Réponses: 1
    Dernier message: 26/09/2006, 14h03
  2. Quelle type d'image utiliser?
    Par kalash_jako dans le forum Autres langages pour le Web
    Réponses: 6
    Dernier message: 23/04/2006, 09h53
  3. Afficher tout type d'image (gif ,png, jpg...)
    Par jfb53 dans le forum C++Builder
    Réponses: 22
    Dernier message: 20/07/2005, 14h52
  4. Detection de types d'image
    Par sanna dans le forum Algorithmes et structures de données
    Réponses: 16
    Dernier message: 16/03/2005, 22h21
  5. Interbase 6 et le type des images?
    Par AnestheziE dans le forum InterBase
    Réponses: 6
    Dernier message: 30/10/2003, 10h48

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