cs_inessa
Messages postés5Date d'inscriptionsamedi 28 octobre 2006StatutMembreDernière intervention28 février 2007 28 févr. 2007 à 12:23
Bonjour
En fait j'ai essayé cet exemple et je suis encore débutante dans vb.net
mais rien ne ce passe à l'execution
voilà le code
*****
Dim MonRepertoirePhysique As String = "I:\Cuisines"
Dim MonFichierImage As String = "a.jpg"
Dim MonFichierMiniature As String = "a2.jpg"
Dim LargeurMiniature As Integer = 100 'On fixe la hauteur de l'image
Dim HauteurMiniature As Integer = 0 'la Hauteur sera calculée
Dim bmp As New System.Drawing.Bitmap(MonRepertoirePhysique & MonFichierImage)
Dim MonCallBackDeCalvaire = New System.Drawing.Image.GetThumbnailImageAbort(AddressOf ThumbnailCallback)
Function ThumbnailCallback() As Boolean
Return False
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
titanserver
Messages postés8Date d'inscriptionlundi 3 mars 2003StatutMembreDernière intervention31 janvier 2011 28 sept. 2004 à 00:43
Merci Jean Luc pour ton astuce sa fonction nikel maintenant, encore merci ;-)
cs_jl75
Messages postés15Date d'inscriptionlundi 15 septembre 2003StatutMembreDernière intervention24 mars 2006 27 sept. 2004 à 17:36
Salut,
J'ai mis le temps mais j'ai trouvé un tour de passe-passe pour contourner le problème (c'est pas tres propre mais ça marche!)
' ajouter la fonction tour de passe-passe:
Function ThumbnailCallback() As Boolean
Return False
End Function
'declaration du call back
MonCallBackDeCalvaire = New _
System.Drawing.Image.GetThumbnailImageAbort(AddressOf ThumbnailCallback)
' et remplacer "AddressOf CallBackAbort" par "MonCallBackDeCalvaire" dans le code original comme ci-dessous:
titanserver
Messages postés8Date d'inscriptionlundi 3 mars 2003StatutMembreDernière intervention31 janvier 2011 27 sept. 2004 à 15:40
Bonjour,
J'ai également un soucis avec 'CallBackAbort' il me demande de le déclarer mais comment ?
Merci
cs_jl75
Messages postés15Date d'inscriptionlundi 15 septembre 2003StatutMembreDernière intervention24 mars 2006 23 août 2004 à 14:38
salut
j'ai remplacé 'callback abort" par "null" comme susdit
mais rebelotte: "null" is not declared."
(dot net: quel calvaire !)
j'ai essayé plein d'autres trucs expliqué sur msdn mais rien ne marche
qui peut me dire ce qui ne va pas?
Merci
cs_fabrice69
Messages postés1765Date d'inscriptionjeudi 12 octobre 2000StatutMembreDernière intervention11 décembre 20135 4 mai 2004 à 20:02
tu n'aura donc qu'a aller chercher ta miniature sans rien regenerer
dedzep
Messages postés54Date d'inscriptionvendredi 1 février 2002StatutMembreDernière intervention 8 février 2007 15 avril 2004 à 14:32
desolé mais une question de reactivité
est-ce bien resonable pour un site de ecommerce par exemple.
j'explique. un client peu me demander tous les accessoires pour une voiture donnée.
Actuellement je gere les images ET les vignettes.
avec ta proposition n'ai-je pas un risque de fort ralentissement si j'ai par exemple 100 "vignettes" a générer à la volée ?
cs_fabrice69
Messages postés1765Date d'inscriptionjeudi 12 octobre 2000StatutMembreDernière intervention11 décembre 20135 4 sept. 2003 à 19:30
Je sais que la qualité est limitée avec GetThumbnailImage mais dans mon cas, je voulais des miniature de 100 px de large.
Donc la qualité moyenne me suffit largerment, d plus je veux surtout un poids plus léger pour les fichiers.
D'ou l'utilisation de cette technique qui est vraiment plus simple.
Il est quand meme intéressant pour ceux qui ont la qualité qui prime de voir le code de C2I.
F___
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 4 sept. 2003 à 19:03
Ta source est bien est très simple :)
Mais la methode GetThumbnailImage d'apres c2i.fr fait des images de moyenne qualité
Il est donc preferable d'utiliser la methode decrite dans cette page : http://www.c2i.fr/code.aspx?IDCode=503 qui en plus permet de controler la compression du jpeg
mais le code devient beaucoup plus complexe, et je n'ai pas fait de test poussé sur les differentes methodes pour comparer la qualité et le poid, j'ai juste constaté que dans mon cas, la qualité etait meilleur avec la methode c2i.fr maintenant a vu de juger
:)
28 févr. 2007 à 12:23
En fait j'ai essayé cet exemple et je suis encore débutante dans vb.net
mais rien ne ce passe à l'execution
voilà le code
*****
Dim MonRepertoirePhysique As String = "I:\Cuisines"
Dim MonFichierImage As String = "a.jpg"
Dim MonFichierMiniature As String = "a2.jpg"
Dim LargeurMiniature As Integer = 100 'On fixe la hauteur de l'image
Dim HauteurMiniature As Integer = 0 'la Hauteur sera calculée
Dim bmp As New System.Drawing.Bitmap(MonRepertoirePhysique & MonFichierImage)
Dim MonCallBackDeCalvaire = New System.Drawing.Image.GetThumbnailImageAbort(AddressOf ThumbnailCallback)
Function ThumbnailCallback() As Boolean
Return False
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
HauteurMiniature = (bmp.Size.Height * LargeurMiniature / bmp.Size.Width)
bmp = bmp.GetThumbnailImage(LargeurMiniature, HauteurMiniature, MonCallBackDeCalvaire, IntPtr.Zero)
bmp.Save(MonRepertoirePhysique & MonFichierMiniature, System.Drawing.Imaging.ImageFormat.Jpeg)
bmp.Dispose()
End Sub
*****
Merci d'avance
10 déc. 2004 à 21:47
pour regler le problème par le pointeur null, ce serais pas plutôt le mot clé Nothing à utiliser dans VB.NET ?
bmp = bmp.GetThumbnailImage(LargeurMiniature, HauteurMiniature, Nothing, IntPtr.Zero)
MG
28 sept. 2004 à 00:43
27 sept. 2004 à 17:36
J'ai mis le temps mais j'ai trouvé un tour de passe-passe pour contourner le problème (c'est pas tres propre mais ça marche!)
' ajouter la fonction tour de passe-passe:
Function ThumbnailCallback() As Boolean
Return False
End Function
'declaration du call back
MonCallBackDeCalvaire = New _
System.Drawing.Image.GetThumbnailImageAbort(AddressOf ThumbnailCallback)
' et remplacer "AddressOf CallBackAbort" par "MonCallBackDeCalvaire" dans le code original comme ci-dessous:
bmp = bmp.GetThumbnailImage(LargeurMiniature, HauteurMiniature, MonCallBackDeCalvaire, IntPtr.Zero)
Et le tour est joué !
Bon courage
Jean-Luc
27 sept. 2004 à 15:40
J'ai également un soucis avec 'CallBackAbort' il me demande de le déclarer mais comment ?
Merci
23 août 2004 à 14:38
j'ai remplacé 'callback abort" par "null" comme susdit
mais rebelotte: "null" is not declared."
(dot net: quel calvaire !)
j'ai essayé plein d'autres trucs expliqué sur msdn mais rien ne marche
qui peut me dire ce qui ne va pas?
Merci
4 mai 2004 à 20:02
- http://www.aspfr.com/code.aspx?ID=22522
F___
30 avril 2004 à 16:54
bmp = bmp.GetThumbnailImage(LargeurMiniature, HauteurMiniature, null , IntPtr.Zero)
F___
30 avril 2004 à 13:54
un ptit pb avc le code: qd je l'execute j'ai:"Name 'CallBackAbort' is not declared."
j'ai chercher sur le net des explications sur le type de variable 'callback abort" pr la version asp de "GetThumbnailImage" mais rien trouver...
any help pliz?
merci!
15 avril 2004 à 18:50
bmp.Save(MonRepertoirePhysique & MonFichierMiniature, System.Drawing.Imaging.ImageFormat.Jpeg)
tu n'aura donc qu'a aller chercher ta miniature sans rien regenerer
15 avril 2004 à 14:32
est-ce bien resonable pour un site de ecommerce par exemple.
j'explique. un client peu me demander tous les accessoires pour une voiture donnée.
Actuellement je gere les images ET les vignettes.
avec ta proposition n'ai-je pas un risque de fort ralentissement si j'ai par exemple 100 "vignettes" a générer à la volée ?
4 sept. 2003 à 19:30
Donc la qualité moyenne me suffit largerment, d plus je veux surtout un poids plus léger pour les fichiers.
D'ou l'utilisation de cette technique qui est vraiment plus simple.
Il est quand meme intéressant pour ceux qui ont la qualité qui prime de voir le code de C2I.
F___
4 sept. 2003 à 19:03
Mais la methode GetThumbnailImage d'apres c2i.fr fait des images de moyenne qualité
Il est donc preferable d'utiliser la methode decrite dans cette page : http://www.c2i.fr/code.aspx?IDCode=503 qui en plus permet de controler la compression du jpeg
mais le code devient beaucoup plus complexe, et je n'ai pas fait de test poussé sur les differentes methodes pour comparer la qualité et le poid, j'ai juste constaté que dans mon cas, la qualité etait meilleur avec la methode c2i.fr maintenant a vu de juger
:)