Afficher un graphique dans un webcontrol Image [Résolu]

Signaler
Messages postés
239
Date d'inscription
mercredi 19 février 2003
Statut
Membre
Dernière intervention
17 janvier 2013
-
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
-
Bonjour à tous,

Je suis désolé, mais je vais jouer au boulet parce que là je sèche.
Je viens de créer un code qui m'affiche un histogramme assez cool. Cet histogramme s'affiche en tant qu'image sur ma page default4.aspx. L'image est crée avec:

...
Dim bitmap As New Bitmap(BMP_WIDTH, BMP_HEIGHT)
Dim chart As Graphics = Graphics.FromImage(bitmap)
...

Je voudrai placer cette image dans un webcontrol image pour pouvoir le placer ou je veux dans ma page, et la je séche lamentablement. J'ai beau utiliser:
...
[mailto:pascal.aknouche@free.fr email: PascalCmoa]

7 réponses

Messages postés
239
Date d'inscription
mercredi 19 février 2003
Statut
Membre
Dernière intervention
17 janvier 2013
5
Ok merci pour la réponse

PascalCmoa
[mailto:pascal.aknouche@free.fr email: PascalCmoa]
Messages postés
239
Date d'inscription
mercredi 19 février 2003
Statut
Membre
Dernière intervention
17 janvier 2013
5
La solution adoptée a été de nommer l'image et de la sauvegarder sur le serveur (de test). Ensuite d'utiliser urlimage="monimage.jpg".

PascalCmoa
[mailto:pascal.aknouche@free.fr email: PascalCmoa]
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
27
???

faut directement envoyer l'image dans la flux de la page

Response.Clear();
Response.ContentType = "image/jpeg";
bitmap.save(Response.OutputStream, jpeg)

faut pas envoyer du HTML dans ton image

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
Messages postés
239
Date d'inscription
mercredi 19 février 2003
Statut
Membre
Dernière intervention
17 janvier 2013
5
J'oubliais de mentionner que mon image était écrite avec les instructions suivantes:

...
Response.ContentType = "image/jpeg"
bitmap.Save(Response.OutputStream, Imaging.ImageFormat.Jpeg)
...

PascalCmoa
[mailto:pascal.aknouche@free.fr email: PascalCmoa]
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
27
Bonjour,

vérifie dans la source de la page si l'url de l'image pointe vers le bon endroit, regarde avec fiddler/httpwatch si le navigateur va chercher la bonne addresse.

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
27
???

si tu vas directement sur image.aspx, tu vois bien ton image, tu as directement le flux de l'image pas de HTML ou autre. Sauvegarder une image n'est pas du tout une bonne solution, surtout si tu as plusieurs utilisateurs en simultannées et que ton image est regeneré à chaque fois.

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
Messages postés
239
Date d'inscription
mercredi 19 février 2003
Statut
Membre
Dernière intervention
17 janvier 2013
5
Merci pour tes conseils,

Je suis d'accord avec toi sur le fait de sauvegarder une image comme celle-ci n'est pas la meilleur solution.
En code behind, je nomme mon image avec:

Response.ContentType = "image/jpeg"
lblNomPage.Text = System.IO.Path.GetFileName(System.Web.HttpContext.Current.Request.Url.AbsolutePath())
bitmap.Save(lblNomPage.Text, Imaging.ImageFormat.Jpeg)
imgChart.ImageUrl = lblNomPage.Text

Ainsi j'obtiens bien le nom de ma page que j'utilise pour nommer l'image, mais j'ai à chaque fois une image vide.

PascalCmoa
[mailto:pascal.aknouche@free.fr email: PascalCmoa]