Bonjour tout le monde,
voici mon problème:
J'ai une image vectorielle (.emf) de grande taille. J'aimerais extraire de cette image vectorielle une portion de 720x420px (Bitmap) pour pouvoir ensuite faire un traitement d'image dessus.
J'ai essayé avec quelque chose comme ca:
Avec ce code ça affiche bien ce que je souhaites, le problème est que je ne vois pas comment exploiter l'image que j'affiche. Est-ce qu'il y a une méthode pour sauver ce qui est affiché?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 fullMire = new Metafile("circleV3.emf"); Rectangle destRect = new Rectangle(0, 0, 720, 480); Rectangle srcRect = new Rectangle(dx, dy, 360, 240); // valeurs differentes pour faire un zoom. GraphicsUnit units = GraphicsUnit.Pixel; e.Graphics.DrawImage(fullMire, destRect, srcRect, units);
Sinon j'ai fait un deuxième essai comme ça:
Avec ce code j'ai accès à mon image Bitmap, le problème est que l'image affichée est correcte, mais l'image sauvée n'est pas la même... il s'agit de l'image négative.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 fullMire = new Metafile("circleV3.emf"); Image.GetThumbnailImageAbort myCallback = new Image.GetThumbnailImageAbort(ThumbnailCallback); fullMireBmp = (Bitmap)fullMire.GetThumbnailImage(3500, 3500, myCallback, IntPtr.Zero); // Clone a portion of the Bitmap object Rectangle cloneRect = new Rectangle(dx, dy, 720, 480); mire720_480 = fullMireBmp.Clone(cloneRect, fullMireBmp.PixelFormat); // Draw the cloned portion of the Bitmap object. e.Graphics.DrawImage(mire720_480, 0, 0); mire720_480.Save("mire720.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
Je suis donc à l'ouest pour le moment, alors si quelqu'un à une idée pour m'aider...
Merci d'avance !
Partager