Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CRÉE UNE IMAGE À PARTIR D'UN GRAPHICS


Information sur la source

Catégorie :Graphique Source .NET ( DotNet ) Classé sous : crée, image, bitmap, graphics Niveau : Débutant Date de création : 28/12/2005 Vu : 20 412

Note :
10 / 10 - par 4 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note


Description

Depuis le temps que je cherchais comment crée une image à partir d'un Graphics !
Ben, j'ai enfin trouvé !!!

Je dépose donc ma solution, j'espère qu'elle vous sera utile.
 

Source

  • Option Explicit On
  • Option Strict On
  • Imports System.Drawing
  • Imports System.Drawing.Imaging
  • Public Class Class1
  • Public Shared Sub Main()
  • Dim ImageSize As New System.Drawing.Size(200, 200) '// Taille de l'image
  • Dim Image As System.Drawing.Image = New System.Drawing.Bitmap(ImageSize.Width, ImageSize.Height) '// Crée l'image
  • Dim Graphics As System.Drawing.Graphics = System.Drawing.Graphics.FromImage(Image) '// Extrait le Graphics de l'image
  • Graphics.Clear(System.Drawing.Color.DeepSkyBlue) '// Remplie la couleur de fond de l'image
  • '// On dessine maintenant ce que l'on veut, ce sera enregistrer dans l'image
  • Graphics.FillEllipse(Brushes.LightCyan, New System.Drawing.Rectangle(20, 10, 140, 100))
  • Graphics.FillRectangle(New System.Drawing.SolidBrush(System.Drawing.Color.FromArgb(180, System.Drawing.Color.DarkOrange)), New System.Drawing.Rectangle(40, 60, 130, 80))
  • Graphics.DrawLine(System.Drawing.Pens.Blue, New System.Drawing.Point(30, 170), New System.Drawing.Point(180, 20))
  • '// On enregistre maintenant l'image dans le répertoire de l'application
  • Dim ImgFormant As System.Drawing.Imaging.ImageFormat = System.Drawing.Imaging.ImageFormat.Bmp
  • Image.Save("C:\\45975_Test.bmp", ImgFormant)
  • End Sub
  • End Class
Option Explicit On
Option Strict On

Imports System.Drawing
Imports System.Drawing.Imaging

Public Class Class1

  Public Shared Sub Main()

    Dim ImageSize As New System.Drawing.Size(200, 200) '// Taille de l'image
    Dim Image As System.Drawing.Image = New System.Drawing.Bitmap(ImageSize.Width, ImageSize.Height) '// Crée l'image
    Dim Graphics As System.Drawing.Graphics = System.Drawing.Graphics.FromImage(Image) '// Extrait le Graphics de l'image

    Graphics.Clear(System.Drawing.Color.DeepSkyBlue) '// Remplie la couleur de fond de l'image

    '// On dessine maintenant ce que l'on veut, ce sera enregistrer dans l'image
    Graphics.FillEllipse(Brushes.LightCyan, New System.Drawing.Rectangle(20, 10, 140, 100))
    Graphics.FillRectangle(New System.Drawing.SolidBrush(System.Drawing.Color.FromArgb(180, System.Drawing.Color.DarkOrange)), New System.Drawing.Rectangle(40, 60, 130, 80))
    Graphics.DrawLine(System.Drawing.Pens.Blue, New System.Drawing.Point(30, 170), New System.Drawing.Point(180, 20))

    '// On enregistre maintenant l'image dans le répertoire de l'application
    Dim ImgFormant As System.Drawing.Imaging.ImageFormat = System.Drawing.Imaging.ImageFormat.Bmp
    Image.Save("C:\\45975_Test.bmp", ImgFormant)

  End Sub

End Class

Conclusion

Pour tester le code, crée un nouveau projet vide.
Ajouter une class et coller le code dans celle-ci.
Ne pas oublier d'ajouter la référence 'System.Drawing'

Une fois exécuté, une image se crée dans 'C:\45975_Test.bmp'.

 

Commentaires et avis

signaler à un administrateur
Commentaire de TOTOCHITO le 18/01/2006 10:59:27

c'est bien pratique le moteur graphique du .net offre plein de possibilités
merci pour la source je ne l'avais pas vu en décembre

signaler à un administrateur
Commentaire de yvesyves le 19/06/2006 17:08:16

Excellente source.

signaler à un administrateur
Commentaire de OneHacker le 16/06/2007 21:35:00

Parfait !

signaler à un administrateur
Commentaire de patmorier le 09/07/2007 14:55:08

Bonjour,

Merci pour cette source. Juste une petite question: Savez-vous comment créer une image à partir d'un graphics (ici vous créez une image puis un graphics). Je désirerais partir d'un control, duquel j'obtiens le graphics par control.ctreateGraphics, le transformer en image puis le mettre dans le clipboard par My.Computer.Clipboard.SetImage(Image)?

Merci d'avance

signaler à un administrateur
Commentaire de Charles Racaud le 09/07/2007 16:55:53

Non désolé, ce n'est apparemment pas possible.
Il faut obligatoirement extraire le graphique d'une image.
De toute façon, extraire le graphique de l'image reviendra au même que le CreateGraphics.
__
Kenji

signaler à un administrateur
Commentaire de patmorier le 09/07/2007 18:09:19

Merci,
J'ai donc utilisé la fonction BitBlt pour construire une bitmap selon la source: http://www.codeproject.com/vb/net/BitBlt.asp
Cela fonctionne parfaitement.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Inserer une image dans un bitmap [ par malhivertman1 ] Bonjour, J'aimerai pouvoir récupérer une image de mon disque et la mettre dans une variable de type bitmap pour ensuite pouvoir dessiner dessus en uti [VB.NET] Comparaison d'image de webcam (directx) [ par simtom ] Bonjour &#224; tous,Je souhaite comparer une image provenant d'une webcam avec une bitmap que j'ai en m&#233;moire.Je r&#233;alise l'acquisition de la compresser une bitmap en jpeg VB.NET [ par xcolect ] Je voudrais savoir comment faire pour compresser un bitmap en jpeg en lui spécifiant la qualitéEn gros voici ce dont je fais.J'ai une image original a Format8bppIndexed [ par loozer130467 ] bonjour,Une charmante personne pourait-elle m expliquer comment changer les pixelformat d un bmp ,svp ?sa fait maintenant 3 jour que je suis coincer s comparaison de 2 images, image actuel Xor Image prcédente [ par kalionehot ] La SaladeBonjour à tous!Actuellement je travail sur un projet et j'ai besoin d'un peu d'aide.Ce projet contient :     - un programme capture ecran réa convertir une variable Bitmap en Object [ par angelanddelus100 ] picCur.Image = pBitMap picCur.SizeMode = PictureBoxSizeMode.StretchImage picCur.Image.Save( <font color="#a31515" size= .NET 2.0 : fichier image verrouillé [ par TigerFab ] Bonjour,J'ai un problème lorsque j'utilise system.drawing.bitmap(fichier)par ex :Dim bmp As<font c PB d'image avec Response.OutputStream [ par jbn1965 ] Bonjour, je voudrais faire apparaitre mon Bitmap (representant un graph) en dessous de mon DataGrid dans une image. Mais sans enregistrer le bitmap su C# Erreurs sur image bitmap, exception levé! [ par vins83 ] Bonjour, je charge une image bitmap dans un objet bitmap. je voudrais travailler cette image. Je lui fais donc un SetResolution. Puis je l'enregistre C# Erreurs sur image bitmap, exception levé! [ par vins83 ] Bonjour, je charge une image bitmap dans un objet bitmap. je voudrais travailler cette image. Je lui fais donc un SetResolution. Puis je l'enregistre


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,484 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.