Image redimentionnement

Signaler
Messages postés
1
Date d'inscription
vendredi 19 août 2005
Statut
Membre
Dernière intervention
23 mars 2009
-
Messages postés
834
Date d'inscription
samedi 15 novembre 2008
Statut
Membre
Dernière intervention
14 janvier 2017
-
Bonsoir a tous,
je posséde une image qui fait 1cm² que je voudrai bien redimmentionner au moins a 5 ou 8cm
comment faire svp.

merci d'avance

1 réponse

Messages postés
834
Date d'inscription
samedi 15 novembre 2008
Statut
Membre
Dernière intervention
14 janvier 2017
32
Bonjour,

Tout dépend ou tu veux dessiner ton image, par exemple les controles acceptant des background images ont également une prompriété pour la redimentionner (BackgroundImageLayout=Strech), donc si tu utilise un Panel de 5cm et que tu y pose l'image comme image de fond elle sera automatiquement redimentionée.

si tu veux la dessiner par toi même, il faut utiliser les objects graphiques:
ex

Image baseImage; // c'est l'image de départ
Rectangle rect = new Rectangle (0,0, largeur, hauteur); // definition du rectangle récuperant l'image finale
Bitmap bmpNew = new Bitmap(rect.Width , rect.Height , PixelFormat.Format32bppPArgb);  // définition d'un bitmap vide
Graphics grph = Graphics.FromImage(bmpNew);  //récuperation de l'objet graphique

//dessin de l'image d'origine avec les nouvelles dimentions
grph.DrawImage(baseImage, 
   new Rectangle(rect.Left, rect.Top, rect.Width, rect.Height ), //Destination
   new Rectangle(0, 0, baseImage.Width, baseImage.height),  //Source
   GraphicsUnit.Pixel);

// le  bitmap bmpNew est maintenant disponible pour être utilisé.

note que tu peux dessiner cette image directement sur la form, ou un panel.
utilise la method Paint de la form, ou du Panel, et dessine directement sur son handle graphic
ex

private void panel1_Paint(object sender, PaintEventArgs e)
{
Graphics grph = e.Graphics;
//dans ce cas pas besoin de creer le Bitmap , si non le code est le même qu'au dessus
...
}

C# is amazing, enjoy it!