begin process at 2012 02 08 23:26:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Multimédia

 > 

Image et Vidéo

 > 

objet Bitmap, adamter automatiquement la taille...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

objet Bitmap, adamter automatiquement la taille...

vendredi 14 septembre 2007 à 10:18:14 | objet Bitmap, adamter automatiquement la taille...

Buzu

Salut

Je crée un objet Bitmap en mémoire (classe qui hérite de Image) et j'ajoute ensuite dedans des rectangles de polygones, des traits, etc... (pour dessiner un logigramme en fait) avec les objets Graphics, Pen et SolidBrush.

Ca marche très bien sauf pour une chose, la taille de l'image quand je fait bmp.Save(...). En fait ça m'enregistre une image avec la taille que j'ai défini au moment du bmp = new Bitmap(640, 480) et si les dessins que j'ai rajouté a l'intérieur font que l'image doit être plus grande, je ne sais pas comment faire pour faire une "auto scale" en quelques sortes, pour que la taille de l'image générée soit la bone par rapport aux pixels à l'intérieur.

Voila donc si qqn peut m'aider pour ça, ça serait sympa merci.

vendredi 14 septembre 2007 à 10:31:43 | Re : objet Bitmap, adamter automatiquement la taille...

Neo020585

Membre Club
Il y a une chose que je ne comprends pas, tu crée un Bitmap 640*480.
Si tu rajoute des dessins dedans (rectangle, polygones...), commet peux-tu dessiner des objets plus grand que leur conteneur et les ajouter sans qu'il y ait de problèmes ?

"Une chose me laisse perplexe : Est-ce moi ou les autres qui sont fous ?" A. Einstein

vendredi 14 septembre 2007 à 10:44:32 | Re : objet Bitmap, adamter automatiquement la taille...

Buzu

En fait le truc, c'est que si je fais une bitmap en 640 * 480, si je dessine sur le pixel 700, 500, ça ne plante pas, pas d'exception non plus, et je ne suis pas sur que le point soit enregistré en mémoire mais tout porte a croire que oui  lOl.

Donc en fait il me faudrait une méthode pour adapter la taille de l'image quoi... et je sais pas comment faire  

vendredi 14 septembre 2007 à 10:54:18 | Re : objet Bitmap, adamter automatiquement la taille...

Neo020585

Membre Club
Je ne crois pas qu'il soit possible de redimenssioner une Bitmap.
La solution pourrait résider dans la création d'un nouveau Bitmap aussi grand que necessaire dans lequel tu copie le "petit" bitmap et tes nouveaux objets.

Bitmap b1 = new Bitmap(640,480);
Pour reprendre ton exemple, tu dessine un pixel 700,500, donc en dehors de la limite de ta Bitmap b1.
Tu va donc créer une nouvelle bitmap qui pourra contenir tout ce que tu as fait dans b1 plus le fameux pixel
Bitmap b2 = new Bitmap(701,501);
Puis tu recopie le contenu (je sais pas comment faire par contre).

Mias dans l'absolue, tu ne devrait pas pouvoir ajouter un pixel en dehors de la limite fixée par la Bitmap lors de l'instanciation.

"Une chose me laisse perplexe : Est-ce moi ou les autres qui sont fous ?" A. Einstein

vendredi 14 septembre 2007 à 11:00:17 | Re : objet Bitmap, adamter automatiquement la taille...

Buzu

Il y a un des constructeur de la classe Bitmap qui crée une image avec le contenu d'une autre et de nouvelles dimensions, mais le souci, c'est que la nouvelle image créée elle aura bien la nouvelle taille, mais ça va juste étirer les dessins qui étaient deja dedans.

Il n'y a pas un moyen de faire ça mais mais san étirer ?

Merci pour tes réponses en tout cas Néo

vendredi 14 septembre 2007 à 11:12:13 | Re : objet Bitmap, adamter automatiquement la taille...

Neo020585

Membre Club
Franchement, je n'en sais rien :p

Cela dit, c'est fort probable qu'il existe un moyen. Peut être des paramètre à spécifier.
Mais j'aimerai savoir pourquoi tu créer une image si petite si tu sais que tu va créer des objets en dehors de cete image ?

"Une chose me laisse perplexe : Est-ce moi ou les autres qui sont fous ?" A. Einstein

vendredi 14 septembre 2007 à 11:26:30 | Re : objet Bitmap, adamter automatiquement la taille...

Buzu

Non en fait je crée un logigramme a partir d'un code source.
Et en fait le logigramme est simplifié, càd que je ne prend en compte que quelques instructions.
Et je peu avoir aussi bien une image toute petite genre 100 * 150, que très grande 1024 * 4096
Donc vu que la génération de ces image prend beaucoup de temps surtout pour les grandes tailles, c'est itéressant pour moi d'avoir une taille dynamique.
Voila koi...

(pour info, le dessin du logigramme fonctionne super bien, sans croisements, avec tous les décalages géré comme il faut en cas d'imbrication de conditions et tout ;) lol c ma ptite fierté ^^ )

Bon continuons de chercher ... lol

merci en tout cas

vendredi 14 septembre 2007 à 13:17:43 | Re : objet Bitmap, adamter automatiquement la taille...

Lutinore

Administrateur CodeS-SourceS

Salut,

"En fait le truc, c'est que si je fais une bitmap en 640 * 480, si je dessine sur le pixel 700, 500, ça ne plante pas, pas d'exception non plus, et je ne suis pas sur que le point soit enregistré en mémoire mais tout porte a croire que oui  lOl."

Non, sinon tes dessins écraseraient ce qui se trouve juste après ton bitmap en mémoire.

"Il n'y a pas un moyen de faire ça mais mais san étirer ?"

Bitmap bmp01 = new Bitmap( 640, 480 );

// dessine un cercle dans le bitmap 1.
using ( Graphics g = Graphics.FromImage( bmp01 ) )
{
    g.Clear( Color.Black );
    g.DrawEllipse( Pens.White, 10, 10, 110, 110 );
}

Bitmap bmp02 = new Bitmap( 800, 600 );

// Dessine le bitmap 1 dans le bitmap 2.
using ( Graphics g = Graphics.FromImage( bmp02 ) )
{
    g.Clear( Color.Black );
    g.DrawImage( bmp01, 0, 0, bmp01.Width, bmp01.Height );
}

vendredi 14 septembre 2007 à 13:20:38 | Re : objet Bitmap, adamter automatiquement la taille...

Neo020585

Membre Club
Ok ben ça ressemble à ce que je pensait.

Par contre, peux-tu rapidement m'expliquer à quoi sert le mot clef using et ce qu'il représente Lutinore ?

"Une chose me laisse perplexe : Est-ce moi ou les autres qui sont fous ?" A. Einstein

vendredi 14 septembre 2007 à 13:23:27 | Re : objet Bitmap, adamter automatiquement la taille...

Lutinore

Administrateur CodeS-SourceS
La méthode Dispose de l'objet Graphics sera appellée implicitement à la sortie du bloc using.. même en cas d'exception.

1 2

Cette discussion est classée dans : taille, objet, image, bitmap, adamter


Répondre à ce message

Sujets en rapport avec ce message

Pb avec picturebox et objet Bitmap [ par Shogo6 ] Bonjour je suis au bord de la crise de neeeeerfs!!!!Voila je fais une visionneuse d'image donc on selectionne l'image desirée ds une listbox et elle s Taille maximale Bitmap [ par deadhand ] Salut ! Je voudrais savoir quelle est la taille maximale (en pixel*pixel) d'une image stocké dans une instance de la classe Bitmap ? La raison : Qua appeler un fichier image en WinForm [ par sghchafaa ] Bonjour;j'essaye d'afficher une image dans un "richTextBox",mais je n'arrive pas à le faireje ne sais pas où est exactement ma faute dans ce code:     Handle d'un objet Image [ par ellandebasque ] Bonjour, je vous remercie de prendre le temps lire mon message. Je vous expose mon problème. Je dispose de 2 caméras. Je cherche à faire un petit l Trouver tous les pixels noire dans une image binaire trés grande [ par issam414 ] Bonjour à tous, je débute dans la programmation en c# et je suis déjà perdu, pourtant ça me parait simple comme question [^^peur] . alors, j'ai une i Bitmap et LockBits [ par fprado ] Bonjour,J'ai un souci d'affichage d'une image bitmap dans une pictureBox. Je récupère les données d'un byte[] que je convertis en bitmap. Ma pictureBo save d'une copie d'image : erreur générique GDI+ [ par SpongeBobSquarePants ] Bonjour, Je rencontre actuellement une erreur d'exécution dont je n'arrive pas à trouver la cause. Petit résumé : J'ai écrit un bout de code permet pointeur rawdata bitmap [ par gearmat ] Bonjour Bonjour j'aurais besoin de votre aide pour la classe bitmap :) j'ai une dll coder en c++ de traitement d'image qui me demande en paramètre u Tourner une image [ par JohnBug ] Bonjour à tous, je suis nouveau à C# et completement ignorant en ce qui a trait aux images. je besoin de charger un dessin en format .wmf de le tourn


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,092 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales