Je crois effectivemenbt que la solution de François est la plus simple
ce que tu veux faire.
Sache qu'il n'y a qu'un pb avec loadpicture (c'est pour cela que je me
mis aux API) c'est que la taille du bitmap est limitée si tu tentes de
charger une tros grosse image echec de la fonction. Ceci sous 98, sous XP
pense (non testé) qu'ils ont repoussés la limite la GDI étant dans ce cas
32 bits.
Christophe Vergon
"le_troll" a écrit dans le message de news:
upIM#
> Merci, je crois que François a donné un bon exemple avec paint picture,
> vais voir ce que j'arrive à faire, j'avais déjà ça mais en réduction
> que je ne calculais pas la taille avant), je n'ai pas l'habitude de
> avec les images, merci encore :o)
>
> --
> Merci, @+, bye, Joe
> troll75 AROBASE iFrance POINT com
> ------------------------------------------
> Ce message est plein de virus "certifiés"
> Le_Troll, éleveur de Trolls depuis César, qui disait:
> Avec une hache, celui qui tient le manche a toujours raison !
> ------------------------------------------
>
>
> "Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
news:
> cc8mvm$q7d$
> > Bonjour,
> >
> > Concernant GDI+ utilisable avec XP, il y a les pour et les contres
(c'est
> > assez lent), l'investissemnt necessaire pour apprendre les fonctions
GDI+
> > est assez important et je pense (ça n'engage que moi) qu'il vaut mieux
le
> > faire avec Donet.
> > Concernant le jpg, load ou paint picture le gerent mais uniquement
> XP.
> >
> > Pour le pb plus spécifique de Mr le Troll, il te faut convertir le
fichier
> > image disque (jpg) en DIB device independant bitmap et utiliser
> > strechtDIBits par exemple.
> >
> > Le problème et que même si ce que tu veux faire parait très simple,
> > notions que cela impliquent pour une utilisation avec les API font
> plusieurs
> > chapitre de livre traitant le sujet (celui de Dan Appelman par
> > C'est donc assez difficile de l'expliquer en quelques lignes.
> >
> > Si la manipulation des DC et de leurs systèmes de coordonnées t'es
> familière
> > ça reduit déjà beaucoup.
> >
> > dis nous si c'est le cas .
> >
> > Christophe Vergon
> >
> > "le_troll" a écrit dans le message de news:
> > Os4q$
> > > Bonjour, merci, non, je veux pas le code et les API... Parce que,
quand
> on
> > > s'adresse à un logiciel externe, y a toujours le risque qu'il ne
> pas
> > > monté, ou qu'il faille le distribuer avec...
> > >
> > > --
> > > Merci, @+, bye, Joe
> > > troll75 AROBASE iFrance POINT com
> > > ------------------------------------------
> > > Ce message est plein de virus "certifiés"
> > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > Avec une hache, celui qui tient le manche a toujours raison !
> > > ------------------------------------------
> > >
> > >
> > > "Denis" a écrit dans le message de news:
> > > O1F#
> > > >
> > > > ----- Original Message -----
> > > > From: "le_troll"
> > > > Newsgroups: microsoft.public.fr.vb
> > > > Sent: Saturday, July 03, 2004 9:17 PM
> > > > Subject: Comment redimensionner 1 photo issue d'1 fichier ???
> > > >
> > > >
> > > > > Bonjour,
> > > > >
> > > > > Comment redimensionner une photo pour qu'elle fasse
> x*y
> > > > > pixels (sachant qu'elle peut être plus petit comme plus grande)?
> > > > >
> > > > > Je récupère la photo par le choix dans un fichier photo
> > > > > CommonDialog...???
> > > > >
> > > > bonjour :)
> > > >
> > > > tu peux utiliser un utilitaire en ligne de commande qui s'appelle
> > > > "imagemagick". il te prend une photo à n'importe quel format
> > > > et la conertit, la déforme, la tranforme à souhait.
> > > > il ne reste donc plus qu'à appeler la ligne de commande dans ton
> > > > code. C'est pas très élégant mais c'est efficace.
> > > >
> > > > @++
> > > >
> > > > > --
> > > > > Merci, @+, bye, Joe
> > > > > troll75 AROBASE iFrance POINT com
> > > > > ------------------------------------------
> > > > > Ce message est plein de virus "certifiés"
> > > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > > ------------------------------------------
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>
Je crois effectivemenbt que la solution de François est la plus simple
ce que tu veux faire.
Sache qu'il n'y a qu'un pb avec loadpicture (c'est pour cela que je me
mis aux API) c'est que la taille du bitmap est limitée si tu tentes de
charger une tros grosse image echec de la fonction. Ceci sous 98, sous XP
pense (non testé) qu'ils ont repoussés la limite la GDI étant dans ce cas
32 bits.
Christophe Vergon
"le_troll" <le_trol@paris.fr> a écrit dans le message de news:
upIM#YbYEHA.2500@TK2MSFTNGP09.phx.gbl...
> Merci, je crois que François a donné un bon exemple avec paint picture,
> vais voir ce que j'arrive à faire, j'avais déjà ça mais en réduction
> que je ne calculais pas la taille avant), je n'ai pas l'habitude de
> avec les images, merci encore :o)
>
> --
> Merci, @+, bye, Joe
> troll75 AROBASE iFrance POINT com
> ------------------------------------------
> Ce message est plein de virus "certifiés"
> Le_Troll, éleveur de Trolls depuis César, qui disait:
> Avec une hache, celui qui tient le manche a toujours raison !
> ------------------------------------------
>
>
> "Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
news:
> cc8mvm$q7d$1@news.tiscali.fr...
> > Bonjour,
> >
> > Concernant GDI+ utilisable avec XP, il y a les pour et les contres
(c'est
> > assez lent), l'investissemnt necessaire pour apprendre les fonctions
GDI+
> > est assez important et je pense (ça n'engage que moi) qu'il vaut mieux
le
> > faire avec Donet.
> > Concernant le jpg, load ou paint picture le gerent mais uniquement
> XP.
> >
> > Pour le pb plus spécifique de Mr le Troll, il te faut convertir le
fichier
> > image disque (jpg) en DIB device independant bitmap et utiliser
> > strechtDIBits par exemple.
> >
> > Le problème et que même si ce que tu veux faire parait très simple,
> > notions que cela impliquent pour une utilisation avec les API font
> plusieurs
> > chapitre de livre traitant le sujet (celui de Dan Appelman par
> > C'est donc assez difficile de l'expliquer en quelques lignes.
> >
> > Si la manipulation des DC et de leurs systèmes de coordonnées t'es
> familière
> > ça reduit déjà beaucoup.
> >
> > dis nous si c'est le cas .
> >
> > Christophe Vergon
> >
> > "le_troll" <le_trol@paris.fr> a écrit dans le message de news:
> > Os4q$DbYEHA.3016@tk2msftngp13.phx.gbl...
> > > Bonjour, merci, non, je veux pas le code et les API... Parce que,
quand
> on
> > > s'adresse à un logiciel externe, y a toujours le risque qu'il ne
> pas
> > > monté, ou qu'il faille le distribuer avec...
> > >
> > > --
> > > Merci, @+, bye, Joe
> > > troll75 AROBASE iFrance POINT com
> > > ------------------------------------------
> > > Ce message est plein de virus "certifiés"
> > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > Avec une hache, celui qui tient le manche a toujours raison !
> > > ------------------------------------------
> > >
> > >
> > > "Denis" <jelf.nospam@lewanadoo.fr> a écrit dans le message de news:
> > > O1F#EWZYEHA.384@TK2MSFTNGP10.phx.gbl...
> > > >
> > > > ----- Original Message -----
> > > > From: "le_troll" <le_trol@paris.fr>
> > > > Newsgroups: microsoft.public.fr.vb
> > > > Sent: Saturday, July 03, 2004 9:17 PM
> > > > Subject: Comment redimensionner 1 photo issue d'1 fichier ???
> > > >
> > > >
> > > > > Bonjour,
> > > > >
> > > > > Comment redimensionner une photo pour qu'elle fasse
> x*y
> > > > > pixels (sachant qu'elle peut être plus petit comme plus grande)?
> > > > >
> > > > > Je récupère la photo par le choix dans un fichier photo
> > > > > CommonDialog...???
> > > > >
> > > > bonjour :)
> > > >
> > > > tu peux utiliser un utilitaire en ligne de commande qui s'appelle
> > > > "imagemagick". il te prend une photo à n'importe quel format
> > > > et la conertit, la déforme, la tranforme à souhait.
> > > > il ne reste donc plus qu'à appeler la ligne de commande dans ton
> > > > code. C'est pas très élégant mais c'est efficace.
> > > >
> > > > @++
> > > >
> > > > > --
> > > > > Merci, @+, bye, Joe
> > > > > troll75 AROBASE iFrance POINT com
> > > > > ------------------------------------------
> > > > > Ce message est plein de virus "certifiés"
> > > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > > ------------------------------------------
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>
Je crois effectivemenbt que la solution de François est la plus simple
ce que tu veux faire.
Sache qu'il n'y a qu'un pb avec loadpicture (c'est pour cela que je me
mis aux API) c'est que la taille du bitmap est limitée si tu tentes de
charger une tros grosse image echec de la fonction. Ceci sous 98, sous XP
pense (non testé) qu'ils ont repoussés la limite la GDI étant dans ce cas
32 bits.
Christophe Vergon
"le_troll" a écrit dans le message de news:
upIM#
> Merci, je crois que François a donné un bon exemple avec paint picture,
> vais voir ce que j'arrive à faire, j'avais déjà ça mais en réduction
> que je ne calculais pas la taille avant), je n'ai pas l'habitude de
> avec les images, merci encore :o)
>
> --
> Merci, @+, bye, Joe
> troll75 AROBASE iFrance POINT com
> ------------------------------------------
> Ce message est plein de virus "certifiés"
> Le_Troll, éleveur de Trolls depuis César, qui disait:
> Avec une hache, celui qui tient le manche a toujours raison !
> ------------------------------------------
>
>
> "Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
news:
> cc8mvm$q7d$
> > Bonjour,
> >
> > Concernant GDI+ utilisable avec XP, il y a les pour et les contres
(c'est
> > assez lent), l'investissemnt necessaire pour apprendre les fonctions
GDI+
> > est assez important et je pense (ça n'engage que moi) qu'il vaut mieux
le
> > faire avec Donet.
> > Concernant le jpg, load ou paint picture le gerent mais uniquement
> XP.
> >
> > Pour le pb plus spécifique de Mr le Troll, il te faut convertir le
fichier
> > image disque (jpg) en DIB device independant bitmap et utiliser
> > strechtDIBits par exemple.
> >
> > Le problème et que même si ce que tu veux faire parait très simple,
> > notions que cela impliquent pour une utilisation avec les API font
> plusieurs
> > chapitre de livre traitant le sujet (celui de Dan Appelman par
> > C'est donc assez difficile de l'expliquer en quelques lignes.
> >
> > Si la manipulation des DC et de leurs systèmes de coordonnées t'es
> familière
> > ça reduit déjà beaucoup.
> >
> > dis nous si c'est le cas .
> >
> > Christophe Vergon
> >
> > "le_troll" a écrit dans le message de news:
> > Os4q$
> > > Bonjour, merci, non, je veux pas le code et les API... Parce que,
quand
> on
> > > s'adresse à un logiciel externe, y a toujours le risque qu'il ne
> pas
> > > monté, ou qu'il faille le distribuer avec...
> > >
> > > --
> > > Merci, @+, bye, Joe
> > > troll75 AROBASE iFrance POINT com
> > > ------------------------------------------
> > > Ce message est plein de virus "certifiés"
> > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > Avec une hache, celui qui tient le manche a toujours raison !
> > > ------------------------------------------
> > >
> > >
> > > "Denis" a écrit dans le message de news:
> > > O1F#
> > > >
> > > > ----- Original Message -----
> > > > From: "le_troll"
> > > > Newsgroups: microsoft.public.fr.vb
> > > > Sent: Saturday, July 03, 2004 9:17 PM
> > > > Subject: Comment redimensionner 1 photo issue d'1 fichier ???
> > > >
> > > >
> > > > > Bonjour,
> > > > >
> > > > > Comment redimensionner une photo pour qu'elle fasse
> x*y
> > > > > pixels (sachant qu'elle peut être plus petit comme plus grande)?
> > > > >
> > > > > Je récupère la photo par le choix dans un fichier photo
> > > > > CommonDialog...???
> > > > >
> > > > bonjour :)
> > > >
> > > > tu peux utiliser un utilitaire en ligne de commande qui s'appelle
> > > > "imagemagick". il te prend une photo à n'importe quel format
> > > > et la conertit, la déforme, la tranforme à souhait.
> > > > il ne reste donc plus qu'à appeler la ligne de commande dans ton
> > > > code. C'est pas très élégant mais c'est efficace.
> > > >
> > > > @++
> > > >
> > > > > --
> > > > > Merci, @+, bye, Joe
> > > > > troll75 AROBASE iFrance POINT com
> > > > > ------------------------------------------
> > > > > Ce message est plein de virus "certifiés"
> > > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > > ------------------------------------------
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>
Hello,
Cette fois ci, c'est clair :-)
Comme je le disais, il y a moyen avec paintpicture:
'On charge l'image
Dim tPicture As Picture
Set tPicture = LoadPicture("D:Documents and SettingsFrançois
PicalausaMes documentsMes imagesf14.jpg")
'Détermine le rapport largeur / hauteur
Dim sngScale As Single
sngScale = tPicture.Width / tPicture.Height
'Si ce rapport est trop grand ou trop élevé, on peut éviter le
chargement
If sngScale < 0.01 Or sngScale > 100 Then
MsgBox "Erreur taille"
Exit Sub
End If
Dim PicXScale As Single
Dim PicYScale As Single
'On calcule les rapports images/container
PicXScale = Picture1.ScaleX(tPicture.Width, vbHimetric, vbTwips) /
Picture1.ScaleWidth
PicYScale = Picture1.ScaleY(tPicture.Height, vbHimetric, vbTwips) /
Picture1.ScaleHeight
'En fonction du rapport le plus petit
If PicXScale < PicYScale Then
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleWidth,
Picture1.ScaleWidth / sngScale
Else
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleHeight *
sngScale, Picture1.ScaleHeight
End If
c'est une des possibilités... y a certainement plus simple...
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"le_troll" a écrit dans le message de
news:%
> A l'aide d'1 CommonDialog je sélectionne une image (jpg ou bmp)
> que je mets dans une pictureBox de 430*600 pixels, donc je voudrais
> que ma photo sélectionné fasse toujours au moins et dans ses 2
> dimensions la taille de la pictureBoxe (pour faire un puzzle
> ensuite), le surplus s'il y a, étant tronqué à droite et en bas de
> facto, mais parfois la taille de l'image copiée est inférieure dans 1
> ou 2 de ses dimension au minimum requis sus-citées, et c'est là ou il
> faudrait agrandir (à la rigueur pour le rétrécissement je m'en moque,
> je tronque), mais agrandir proportionnellement pour ne pas déformer
> l'image, puis ensuite s'il y a lieu les excédants seront tronqués
> quand je la mettrais dans la pirctureBox...
>
> Form1.Picture4.Picture = Picture1.Image
>
> Donc si l'image est inférieures à au moins une des dimensions
> requises, il faut l'agrandir proportionnellement jusqu'à ce que ses
> deux dimension fassent au moins la taille requise, étant donnée que
> l'on conserve la proportion, ça peut amener à une image d'une taille
> très grande.
> Par exemple l'image fait 10*1000 pixels (rapport 1/10), si je veux
> qu'elle remplisse ma pictureBox de 430*800 pixels, je vais devoir
> agrandir de 43 fois la largeur (10*43C0), ce qui va
> proportionnellement agrandir aussi la hauteur qui était déjà
> supérieure à la taille requise (1000 pour 600), la hauteur va faire
> ensuite (même multiplicateur = 43*1000C.000 pixels), j'airais donc
> une image de 430*43000 pixels, que je vais ensuite tronquer au
> dimension requises, soit ici, seulement la hauteur à 600 pixels...
>
> Le problème est que je risque de bouffer toute la mémoire, il
> faudrait peut être imposer une taille minimum de l'image dans sa plus
> petite dimension...
>
> Ci-joint un dessin jpg en exemple à charger, comme suit:
> gris = pcitureBox vierge
> jaune = image copiée
> rouge = excédant tronqué
> Dans cette exemple, les images 3, 4 et 6 doivent être redimensionnées,
> respectivement, (sur la hauteur; sur la largeur; sur les 2
> dimensions)... Il ne doit pas y avoir de zone grise et tout doit
> rester proportionnel...
>
> Heu, j'aimerais le faire en programmation à l'aide du code, des
> fonctions d'image et des API, pas à l'aied de logiciels extérieurs...
>
> Donc, en théorie il faudrait:
> -0- Tester si taille plus petite < à X, rejeter msgbox...; sinon:
> -1- Calculer la taille l/h
> -2- Si une des dimensions est inférieure à sa taille requise,
> calculer le pourcentage d'agrandissement: 100/dimension_requise *
> côté_le_plus_petit_limage
> -3- Agrandir selon le coefficient trouvé
> -4- Balancer dans la pictureBox qui va remettre à la taille voulu et
> tronquer ce qui dépasse.
Hello,
Cette fois ci, c'est clair :-)
Comme je le disais, il y a moyen avec paintpicture:
'On charge l'image
Dim tPicture As Picture
Set tPicture = LoadPicture("D:Documents and SettingsFrançois
PicalausaMes documentsMes imagesf14.jpg")
'Détermine le rapport largeur / hauteur
Dim sngScale As Single
sngScale = tPicture.Width / tPicture.Height
'Si ce rapport est trop grand ou trop élevé, on peut éviter le
chargement
If sngScale < 0.01 Or sngScale > 100 Then
MsgBox "Erreur taille"
Exit Sub
End If
Dim PicXScale As Single
Dim PicYScale As Single
'On calcule les rapports images/container
PicXScale = Picture1.ScaleX(tPicture.Width, vbHimetric, vbTwips) /
Picture1.ScaleWidth
PicYScale = Picture1.ScaleY(tPicture.Height, vbHimetric, vbTwips) /
Picture1.ScaleHeight
'En fonction du rapport le plus petit
If PicXScale < PicYScale Then
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleWidth,
Picture1.ScaleWidth / sngScale
Else
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleHeight *
sngScale, Picture1.ScaleHeight
End If
c'est une des possibilités... y a certainement plus simple...
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"le_troll" <le_trol@paris.fr> a écrit dans le message de
news:%23WOJl5aYEHA.3972@TK2MSFTNGP12.phx.gbl
> A l'aide d'1 CommonDialog je sélectionne une image (jpg ou bmp)
> que je mets dans une pictureBox de 430*600 pixels, donc je voudrais
> que ma photo sélectionné fasse toujours au moins et dans ses 2
> dimensions la taille de la pictureBoxe (pour faire un puzzle
> ensuite), le surplus s'il y a, étant tronqué à droite et en bas de
> facto, mais parfois la taille de l'image copiée est inférieure dans 1
> ou 2 de ses dimension au minimum requis sus-citées, et c'est là ou il
> faudrait agrandir (à la rigueur pour le rétrécissement je m'en moque,
> je tronque), mais agrandir proportionnellement pour ne pas déformer
> l'image, puis ensuite s'il y a lieu les excédants seront tronqués
> quand je la mettrais dans la pirctureBox...
>
> Form1.Picture4.Picture = Picture1.Image
>
> Donc si l'image est inférieures à au moins une des dimensions
> requises, il faut l'agrandir proportionnellement jusqu'à ce que ses
> deux dimension fassent au moins la taille requise, étant donnée que
> l'on conserve la proportion, ça peut amener à une image d'une taille
> très grande.
> Par exemple l'image fait 10*1000 pixels (rapport 1/10), si je veux
> qu'elle remplisse ma pictureBox de 430*800 pixels, je vais devoir
> agrandir de 43 fois la largeur (10*43C0), ce qui va
> proportionnellement agrandir aussi la hauteur qui était déjà
> supérieure à la taille requise (1000 pour 600), la hauteur va faire
> ensuite (même multiplicateur = 43*1000C.000 pixels), j'airais donc
> une image de 430*43000 pixels, que je vais ensuite tronquer au
> dimension requises, soit ici, seulement la hauteur à 600 pixels...
>
> Le problème est que je risque de bouffer toute la mémoire, il
> faudrait peut être imposer une taille minimum de l'image dans sa plus
> petite dimension...
>
> Ci-joint un dessin jpg en exemple à charger, comme suit:
> gris = pcitureBox vierge
> jaune = image copiée
> rouge = excédant tronqué
> Dans cette exemple, les images 3, 4 et 6 doivent être redimensionnées,
> respectivement, (sur la hauteur; sur la largeur; sur les 2
> dimensions)... Il ne doit pas y avoir de zone grise et tout doit
> rester proportionnel...
>
> Heu, j'aimerais le faire en programmation à l'aide du code, des
> fonctions d'image et des API, pas à l'aied de logiciels extérieurs...
>
> Donc, en théorie il faudrait:
> -0- Tester si taille plus petite < à X, rejeter msgbox...; sinon:
> -1- Calculer la taille l/h
> -2- Si une des dimensions est inférieure à sa taille requise,
> calculer le pourcentage d'agrandissement: 100/dimension_requise *
> côté_le_plus_petit_limage
> -3- Agrandir selon le coefficient trouvé
> -4- Balancer dans la pictureBox qui va remettre à la taille voulu et
> tronquer ce qui dépasse.
Hello,
Cette fois ci, c'est clair :-)
Comme je le disais, il y a moyen avec paintpicture:
'On charge l'image
Dim tPicture As Picture
Set tPicture = LoadPicture("D:Documents and SettingsFrançois
PicalausaMes documentsMes imagesf14.jpg")
'Détermine le rapport largeur / hauteur
Dim sngScale As Single
sngScale = tPicture.Width / tPicture.Height
'Si ce rapport est trop grand ou trop élevé, on peut éviter le
chargement
If sngScale < 0.01 Or sngScale > 100 Then
MsgBox "Erreur taille"
Exit Sub
End If
Dim PicXScale As Single
Dim PicYScale As Single
'On calcule les rapports images/container
PicXScale = Picture1.ScaleX(tPicture.Width, vbHimetric, vbTwips) /
Picture1.ScaleWidth
PicYScale = Picture1.ScaleY(tPicture.Height, vbHimetric, vbTwips) /
Picture1.ScaleHeight
'En fonction du rapport le plus petit
If PicXScale < PicYScale Then
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleWidth,
Picture1.ScaleWidth / sngScale
Else
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleHeight *
sngScale, Picture1.ScaleHeight
End If
c'est une des possibilités... y a certainement plus simple...
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"le_troll" a écrit dans le message de
news:%
> A l'aide d'1 CommonDialog je sélectionne une image (jpg ou bmp)
> que je mets dans une pictureBox de 430*600 pixels, donc je voudrais
> que ma photo sélectionné fasse toujours au moins et dans ses 2
> dimensions la taille de la pictureBoxe (pour faire un puzzle
> ensuite), le surplus s'il y a, étant tronqué à droite et en bas de
> facto, mais parfois la taille de l'image copiée est inférieure dans 1
> ou 2 de ses dimension au minimum requis sus-citées, et c'est là ou il
> faudrait agrandir (à la rigueur pour le rétrécissement je m'en moque,
> je tronque), mais agrandir proportionnellement pour ne pas déformer
> l'image, puis ensuite s'il y a lieu les excédants seront tronqués
> quand je la mettrais dans la pirctureBox...
>
> Form1.Picture4.Picture = Picture1.Image
>
> Donc si l'image est inférieures à au moins une des dimensions
> requises, il faut l'agrandir proportionnellement jusqu'à ce que ses
> deux dimension fassent au moins la taille requise, étant donnée que
> l'on conserve la proportion, ça peut amener à une image d'une taille
> très grande.
> Par exemple l'image fait 10*1000 pixels (rapport 1/10), si je veux
> qu'elle remplisse ma pictureBox de 430*800 pixels, je vais devoir
> agrandir de 43 fois la largeur (10*43C0), ce qui va
> proportionnellement agrandir aussi la hauteur qui était déjà
> supérieure à la taille requise (1000 pour 600), la hauteur va faire
> ensuite (même multiplicateur = 43*1000C.000 pixels), j'airais donc
> une image de 430*43000 pixels, que je vais ensuite tronquer au
> dimension requises, soit ici, seulement la hauteur à 600 pixels...
>
> Le problème est que je risque de bouffer toute la mémoire, il
> faudrait peut être imposer une taille minimum de l'image dans sa plus
> petite dimension...
>
> Ci-joint un dessin jpg en exemple à charger, comme suit:
> gris = pcitureBox vierge
> jaune = image copiée
> rouge = excédant tronqué
> Dans cette exemple, les images 3, 4 et 6 doivent être redimensionnées,
> respectivement, (sur la hauteur; sur la largeur; sur les 2
> dimensions)... Il ne doit pas y avoir de zone grise et tout doit
> rester proportionnel...
>
> Heu, j'aimerais le faire en programmation à l'aide du code, des
> fonctions d'image et des API, pas à l'aied de logiciels extérieurs...
>
> Donc, en théorie il faudrait:
> -0- Tester si taille plus petite < à X, rejeter msgbox...; sinon:
> -1- Calculer la taille l/h
> -2- Si une des dimensions est inférieure à sa taille requise,
> calculer le pourcentage d'agrandissement: 100/dimension_requise *
> côté_le_plus_petit_limage
> -3- Agrandir selon le coefficient trouvé
> -4- Balancer dans la pictureBox qui va remettre à la taille voulu et
> tronquer ce qui dépasse.
Hello,
Cette fois ci, c'est clair :-)
Comme je le disais, il y a moyen avec paintpicture:
'On charge l'image
Dim tPicture As Picture
Set tPicture = LoadPicture("D:Documents and SettingsFrançois
PicalausaMes documentsMes imagesf14.jpg")
'Détermine le rapport largeur / hauteur
Dim sngScale As Single
sngScale = tPicture.Width / tPicture.Height
'Si ce rapport est trop grand ou trop élevé, on peut éviter le
chargement
If sngScale < 0.01 Or sngScale > 100 Then
MsgBox "Erreur taille"
Exit Sub
End If
Dim PicXScale As Single
Dim PicYScale As Single
'On calcule les rapports images/container
PicXScale = Picture1.ScaleX(tPicture.Width, vbHimetric, vbTwips) /
Picture1.ScaleWidth
PicYScale = Picture1.ScaleY(tPicture.Height, vbHimetric, vbTwips) /
Picture1.ScaleHeight
'En fonction du rapport le plus petit
If PicXScale < PicYScale Then
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleWidth,
Picture1.ScaleWidth / sngScale
Else
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleHeight *
sngScale, Picture1.ScaleHeight
End If
c'est une des possibilités... y a certainement plus simple...
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"le_troll" a écrit dans le message de
news:%
> A l'aide d'1 CommonDialog je sélectionne une image (jpg ou bmp)
> que je mets dans une pictureBox de 430*600 pixels, donc je voudrais
> que ma photo sélectionné fasse toujours au moins et dans ses 2
> dimensions la taille de la pictureBoxe (pour faire un puzzle
> ensuite), le surplus s'il y a, étant tronqué à droite et en bas de
> facto, mais parfois la taille de l'image copiée est inférieure dans 1
> ou 2 de ses dimension au minimum requis sus-citées, et c'est là ou il
> faudrait agrandir (à la rigueur pour le rétrécissement je m'en moque,
> je tronque), mais agrandir proportionnellement pour ne pas déformer
> l'image, puis ensuite s'il y a lieu les excédants seront tronqués
> quand je la mettrais dans la pirctureBox...
>
> Form1.Picture4.Picture = Picture1.Image
>
> Donc si l'image est inférieures à au moins une des dimensions
> requises, il faut l'agrandir proportionnellement jusqu'à ce que ses
> deux dimension fassent au moins la taille requise, étant donnée que
> l'on conserve la proportion, ça peut amener à une image d'une taille
> très grande.
> Par exemple l'image fait 10*1000 pixels (rapport 1/10), si je veux
> qu'elle remplisse ma pictureBox de 430*800 pixels, je vais devoir
> agrandir de 43 fois la largeur (10*43C0), ce qui va
> proportionnellement agrandir aussi la hauteur qui était déjà
> supérieure à la taille requise (1000 pour 600), la hauteur va faire
> ensuite (même multiplicateur = 43*1000C.000 pixels), j'airais donc
> une image de 430*43000 pixels, que je vais ensuite tronquer au
> dimension requises, soit ici, seulement la hauteur à 600 pixels...
>
> Le problème est que je risque de bouffer toute la mémoire, il
> faudrait peut être imposer une taille minimum de l'image dans sa plus
> petite dimension...
>
> Ci-joint un dessin jpg en exemple à charger, comme suit:
> gris = pcitureBox vierge
> jaune = image copiée
> rouge = excédant tronqué
> Dans cette exemple, les images 3, 4 et 6 doivent être redimensionnées,
> respectivement, (sur la hauteur; sur la largeur; sur les 2
> dimensions)... Il ne doit pas y avoir de zone grise et tout doit
> rester proportionnel...
>
> Heu, j'aimerais le faire en programmation à l'aide du code, des
> fonctions d'image et des API, pas à l'aied de logiciels extérieurs...
>
> Donc, en théorie il faudrait:
> -0- Tester si taille plus petite < à X, rejeter msgbox...; sinon:
> -1- Calculer la taille l/h
> -2- Si une des dimensions est inférieure à sa taille requise,
> calculer le pourcentage d'agrandissement: 100/dimension_requise *
> côté_le_plus_petit_limage
> -3- Agrandir selon le coefficient trouvé
> -4- Balancer dans la pictureBox qui va remettre à la taille voulu et
> tronquer ce qui dépasse.
Hello,
Cette fois ci, c'est clair :-)
Comme je le disais, il y a moyen avec paintpicture:
'On charge l'image
Dim tPicture As Picture
Set tPicture = LoadPicture("D:Documents and SettingsFrançois
PicalausaMes documentsMes imagesf14.jpg")
'Détermine le rapport largeur / hauteur
Dim sngScale As Single
sngScale = tPicture.Width / tPicture.Height
'Si ce rapport est trop grand ou trop élevé, on peut éviter le
chargement
If sngScale < 0.01 Or sngScale > 100 Then
MsgBox "Erreur taille"
Exit Sub
End If
Dim PicXScale As Single
Dim PicYScale As Single
'On calcule les rapports images/container
PicXScale = Picture1.ScaleX(tPicture.Width, vbHimetric, vbTwips) /
Picture1.ScaleWidth
PicYScale = Picture1.ScaleY(tPicture.Height, vbHimetric, vbTwips) /
Picture1.ScaleHeight
'En fonction du rapport le plus petit
If PicXScale < PicYScale Then
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleWidth,
Picture1.ScaleWidth / sngScale
Else
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleHeight *
sngScale, Picture1.ScaleHeight
End If
c'est une des possibilités... y a certainement plus simple...
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"le_troll" <le_trol@paris.fr> a écrit dans le message de
news:%23WOJl5aYEHA.3972@TK2MSFTNGP12.phx.gbl
> A l'aide d'1 CommonDialog je sélectionne une image (jpg ou bmp)
> que je mets dans une pictureBox de 430*600 pixels, donc je voudrais
> que ma photo sélectionné fasse toujours au moins et dans ses 2
> dimensions la taille de la pictureBoxe (pour faire un puzzle
> ensuite), le surplus s'il y a, étant tronqué à droite et en bas de
> facto, mais parfois la taille de l'image copiée est inférieure dans 1
> ou 2 de ses dimension au minimum requis sus-citées, et c'est là ou il
> faudrait agrandir (à la rigueur pour le rétrécissement je m'en moque,
> je tronque), mais agrandir proportionnellement pour ne pas déformer
> l'image, puis ensuite s'il y a lieu les excédants seront tronqués
> quand je la mettrais dans la pirctureBox...
>
> Form1.Picture4.Picture = Picture1.Image
>
> Donc si l'image est inférieures à au moins une des dimensions
> requises, il faut l'agrandir proportionnellement jusqu'à ce que ses
> deux dimension fassent au moins la taille requise, étant donnée que
> l'on conserve la proportion, ça peut amener à une image d'une taille
> très grande.
> Par exemple l'image fait 10*1000 pixels (rapport 1/10), si je veux
> qu'elle remplisse ma pictureBox de 430*800 pixels, je vais devoir
> agrandir de 43 fois la largeur (10*43C0), ce qui va
> proportionnellement agrandir aussi la hauteur qui était déjà
> supérieure à la taille requise (1000 pour 600), la hauteur va faire
> ensuite (même multiplicateur = 43*1000C.000 pixels), j'airais donc
> une image de 430*43000 pixels, que je vais ensuite tronquer au
> dimension requises, soit ici, seulement la hauteur à 600 pixels...
>
> Le problème est que je risque de bouffer toute la mémoire, il
> faudrait peut être imposer une taille minimum de l'image dans sa plus
> petite dimension...
>
> Ci-joint un dessin jpg en exemple à charger, comme suit:
> gris = pcitureBox vierge
> jaune = image copiée
> rouge = excédant tronqué
> Dans cette exemple, les images 3, 4 et 6 doivent être redimensionnées,
> respectivement, (sur la hauteur; sur la largeur; sur les 2
> dimensions)... Il ne doit pas y avoir de zone grise et tout doit
> rester proportionnel...
>
> Heu, j'aimerais le faire en programmation à l'aide du code, des
> fonctions d'image et des API, pas à l'aied de logiciels extérieurs...
>
> Donc, en théorie il faudrait:
> -0- Tester si taille plus petite < à X, rejeter msgbox...; sinon:
> -1- Calculer la taille l/h
> -2- Si une des dimensions est inférieure à sa taille requise,
> calculer le pourcentage d'agrandissement: 100/dimension_requise *
> côté_le_plus_petit_limage
> -3- Agrandir selon le coefficient trouvé
> -4- Balancer dans la pictureBox qui va remettre à la taille voulu et
> tronquer ce qui dépasse.
Hello,
Cette fois ci, c'est clair :-)
Comme je le disais, il y a moyen avec paintpicture:
'On charge l'image
Dim tPicture As Picture
Set tPicture = LoadPicture("D:Documents and SettingsFrançois
PicalausaMes documentsMes imagesf14.jpg")
'Détermine le rapport largeur / hauteur
Dim sngScale As Single
sngScale = tPicture.Width / tPicture.Height
'Si ce rapport est trop grand ou trop élevé, on peut éviter le
chargement
If sngScale < 0.01 Or sngScale > 100 Then
MsgBox "Erreur taille"
Exit Sub
End If
Dim PicXScale As Single
Dim PicYScale As Single
'On calcule les rapports images/container
PicXScale = Picture1.ScaleX(tPicture.Width, vbHimetric, vbTwips) /
Picture1.ScaleWidth
PicYScale = Picture1.ScaleY(tPicture.Height, vbHimetric, vbTwips) /
Picture1.ScaleHeight
'En fonction du rapport le plus petit
If PicXScale < PicYScale Then
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleWidth,
Picture1.ScaleWidth / sngScale
Else
'on trace l'image proportionellement
Picture1.PaintPicture tPicture, 0, 0, Picture1.ScaleHeight *
sngScale, Picture1.ScaleHeight
End If
c'est une des possibilités... y a certainement plus simple...
--
François Picalausa (MVP VB)
http://faq.vb.free.fr --- http://msdn.microsoft.com
http://apisvb.europe.webmatrixhosting.net
"le_troll" a écrit dans le message de
news:%
> A l'aide d'1 CommonDialog je sélectionne une image (jpg ou bmp)
> que je mets dans une pictureBox de 430*600 pixels, donc je voudrais
> que ma photo sélectionné fasse toujours au moins et dans ses 2
> dimensions la taille de la pictureBoxe (pour faire un puzzle
> ensuite), le surplus s'il y a, étant tronqué à droite et en bas de
> facto, mais parfois la taille de l'image copiée est inférieure dans 1
> ou 2 de ses dimension au minimum requis sus-citées, et c'est là ou il
> faudrait agrandir (à la rigueur pour le rétrécissement je m'en moque,
> je tronque), mais agrandir proportionnellement pour ne pas déformer
> l'image, puis ensuite s'il y a lieu les excédants seront tronqués
> quand je la mettrais dans la pirctureBox...
>
> Form1.Picture4.Picture = Picture1.Image
>
> Donc si l'image est inférieures à au moins une des dimensions
> requises, il faut l'agrandir proportionnellement jusqu'à ce que ses
> deux dimension fassent au moins la taille requise, étant donnée que
> l'on conserve la proportion, ça peut amener à une image d'une taille
> très grande.
> Par exemple l'image fait 10*1000 pixels (rapport 1/10), si je veux
> qu'elle remplisse ma pictureBox de 430*800 pixels, je vais devoir
> agrandir de 43 fois la largeur (10*43C0), ce qui va
> proportionnellement agrandir aussi la hauteur qui était déjà
> supérieure à la taille requise (1000 pour 600), la hauteur va faire
> ensuite (même multiplicateur = 43*1000C.000 pixels), j'airais donc
> une image de 430*43000 pixels, que je vais ensuite tronquer au
> dimension requises, soit ici, seulement la hauteur à 600 pixels...
>
> Le problème est que je risque de bouffer toute la mémoire, il
> faudrait peut être imposer une taille minimum de l'image dans sa plus
> petite dimension...
>
> Ci-joint un dessin jpg en exemple à charger, comme suit:
> gris = pcitureBox vierge
> jaune = image copiée
> rouge = excédant tronqué
> Dans cette exemple, les images 3, 4 et 6 doivent être redimensionnées,
> respectivement, (sur la hauteur; sur la largeur; sur les 2
> dimensions)... Il ne doit pas y avoir de zone grise et tout doit
> rester proportionnel...
>
> Heu, j'aimerais le faire en programmation à l'aide du code, des
> fonctions d'image et des API, pas à l'aied de logiciels extérieurs...
>
> Donc, en théorie il faudrait:
> -0- Tester si taille plus petite < à X, rejeter msgbox...; sinon:
> -1- Calculer la taille l/h
> -2- Si une des dimensions est inférieure à sa taille requise,
> calculer le pourcentage d'agrandissement: 100/dimension_requise *
> côté_le_plus_petit_limage
> -3- Agrandir selon le coefficient trouvé
> -4- Balancer dans la pictureBox qui va remettre à la taille voulu et
> tronquer ce qui dépasse.
François, y a de l'idée, lol, mais ça marche pas, le dimensionnement
c'est pas tout à fait ça, je t'ai envoyé la source par courrier...
François, y a de l'idée, lol, mais ça marche pas, le dimensionnement
c'est pas tout à fait ça, je t'ai envoyé la source par courrier...
François, y a de l'idée, lol, mais ça marche pas, le dimensionnement
c'est pas tout à fait ça, je t'ai envoyé la source par courrier...
Dis-moi Christophe, ça va me serve, la taille maxi en W98, c'est en pixels
L*H ??? pu en taille octets ???
Merci :o)
--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Ce message est plein de virus "certifiés"
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !
------------------------------------------
"Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
cc8qfc$gfo$
> Je crois effectivemenbt que la solution de François est la plus simple
pour
> ce que tu veux faire.
>
> Sache qu'il n'y a qu'un pb avec loadpicture (c'est pour cela que je me
suis
> mis aux API) c'est que la taille du bitmap est limitée si tu tentes de
> charger une tros grosse image echec de la fonction. Ceci sous 98, sous
je
> pense (non testé) qu'ils ont repoussés la limite la GDI étant dans ce
en
> 32 bits.
>
> Christophe Vergon
>
> "le_troll" a écrit dans le message de news:
> upIM#
> > Merci, je crois que François a donné un bon exemple avec paint
je
> > vais voir ce que j'arrive à faire, j'avais déjà ça mais en réduction
(sauf
> > que je ne calculais pas la taille avant), je n'ai pas l'habitude de
jouer
> > avec les images, merci encore :o)
> >
> > --
> > Merci, @+, bye, Joe
> > troll75 AROBASE iFrance POINT com
> > ------------------------------------------
> > Ce message est plein de virus "certifiés"
> > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > Avec une hache, celui qui tient le manche a toujours raison !
> > ------------------------------------------
> >
> >
> > "Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
> news:
> > cc8mvm$q7d$
> > > Bonjour,
> > >
> > > Concernant GDI+ utilisable avec XP, il y a les pour et les contres
> (c'est
> > > assez lent), l'investissemnt necessaire pour apprendre les fonctions
> GDI+
> > > est assez important et je pense (ça n'engage que moi) qu'il vaut
> le
> > > faire avec Donet.
> > > Concernant le jpg, load ou paint picture le gerent mais uniquement
sous
> > XP.
> > >
> > > Pour le pb plus spécifique de Mr le Troll, il te faut convertir le
> fichier
> > > image disque (jpg) en DIB device independant bitmap et utiliser
> > > strechtDIBits par exemple.
> > >
> > > Le problème et que même si ce que tu veux faire parait très simple,
les
> > > notions que cela impliquent pour une utilisation avec les API font
> > plusieurs
> > > chapitre de livre traitant le sujet (celui de Dan Appelman par
exemple).
> > > C'est donc assez difficile de l'expliquer en quelques lignes.
> > >
> > > Si la manipulation des DC et de leurs systèmes de coordonnées t'es
> > familière
> > > ça reduit déjà beaucoup.
> > >
> > > dis nous si c'est le cas .
> > >
> > > Christophe Vergon
> > >
> > > "le_troll" a écrit dans le message de news:
> > > Os4q$
> > > > Bonjour, merci, non, je veux pas le code et les API... Parce que,
> quand
> > on
> > > > s'adresse à un logiciel externe, y a toujours le risque qu'il ne
soit
> > pas
> > > > monté, ou qu'il faille le distribuer avec...
> > > >
> > > > --
> > > > Merci, @+, bye, Joe
> > > > troll75 AROBASE iFrance POINT com
> > > > ------------------------------------------
> > > > Ce message est plein de virus "certifiés"
> > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > ------------------------------------------
> > > >
> > > >
> > > > "Denis" a écrit dans le message de
> > > > O1F#
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "le_troll"
> > > > > Newsgroups: microsoft.public.fr.vb
> > > > > Sent: Saturday, July 03, 2004 9:17 PM
> > > > > Subject: Comment redimensionner 1 photo issue d'1 fichier ???
> > > > >
> > > > >
> > > > > > Bonjour,
> > > > > >
> > > > > > Comment redimensionner une photo pour qu'elle fasse
exactement
> > x*y
> > > > > > pixels (sachant qu'elle peut être plus petit comme plus
> > > > > >
> > > > > > Je récupère la photo par le choix dans un fichier photo
d'une
> > > > > > CommonDialog...???
> > > > > >
> > > > > bonjour :)
> > > > >
> > > > > tu peux utiliser un utilitaire en ligne de commande qui
> > > > > "imagemagick". il te prend une photo à n'importe quel format
> > > > > et la conertit, la déforme, la tranforme à souhait.
> > > > > il ne reste donc plus qu'à appeler la ligne de commande dans ton
> > > > > code. C'est pas très élégant mais c'est efficace.
> > > > >
> > > > > @++
> > > > >
> > > > > > --
> > > > > > Merci, @+, bye, Joe
> > > > > > troll75 AROBASE iFrance POINT com
> > > > > > ------------------------------------------
> > > > > > Ce message est plein de virus "certifiés"
> > > > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > > > ------------------------------------------
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>
Dis-moi Christophe, ça va me serve, la taille maxi en W98, c'est en pixels
L*H ??? pu en taille octets ???
Merci :o)
--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Ce message est plein de virus "certifiés"
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !
------------------------------------------
"Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
cc8qfc$gfo$1@news.tiscali.fr...
> Je crois effectivemenbt que la solution de François est la plus simple
pour
> ce que tu veux faire.
>
> Sache qu'il n'y a qu'un pb avec loadpicture (c'est pour cela que je me
suis
> mis aux API) c'est que la taille du bitmap est limitée si tu tentes de
> charger une tros grosse image echec de la fonction. Ceci sous 98, sous
je
> pense (non testé) qu'ils ont repoussés la limite la GDI étant dans ce
en
> 32 bits.
>
> Christophe Vergon
>
> "le_troll" <le_trol@paris.fr> a écrit dans le message de news:
> upIM#YbYEHA.2500@TK2MSFTNGP09.phx.gbl...
> > Merci, je crois que François a donné un bon exemple avec paint
je
> > vais voir ce que j'arrive à faire, j'avais déjà ça mais en réduction
(sauf
> > que je ne calculais pas la taille avant), je n'ai pas l'habitude de
jouer
> > avec les images, merci encore :o)
> >
> > --
> > Merci, @+, bye, Joe
> > troll75 AROBASE iFrance POINT com
> > ------------------------------------------
> > Ce message est plein de virus "certifiés"
> > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > Avec une hache, celui qui tient le manche a toujours raison !
> > ------------------------------------------
> >
> >
> > "Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
> news:
> > cc8mvm$q7d$1@news.tiscali.fr...
> > > Bonjour,
> > >
> > > Concernant GDI+ utilisable avec XP, il y a les pour et les contres
> (c'est
> > > assez lent), l'investissemnt necessaire pour apprendre les fonctions
> GDI+
> > > est assez important et je pense (ça n'engage que moi) qu'il vaut
> le
> > > faire avec Donet.
> > > Concernant le jpg, load ou paint picture le gerent mais uniquement
sous
> > XP.
> > >
> > > Pour le pb plus spécifique de Mr le Troll, il te faut convertir le
> fichier
> > > image disque (jpg) en DIB device independant bitmap et utiliser
> > > strechtDIBits par exemple.
> > >
> > > Le problème et que même si ce que tu veux faire parait très simple,
les
> > > notions que cela impliquent pour une utilisation avec les API font
> > plusieurs
> > > chapitre de livre traitant le sujet (celui de Dan Appelman par
exemple).
> > > C'est donc assez difficile de l'expliquer en quelques lignes.
> > >
> > > Si la manipulation des DC et de leurs systèmes de coordonnées t'es
> > familière
> > > ça reduit déjà beaucoup.
> > >
> > > dis nous si c'est le cas .
> > >
> > > Christophe Vergon
> > >
> > > "le_troll" <le_trol@paris.fr> a écrit dans le message de news:
> > > Os4q$DbYEHA.3016@tk2msftngp13.phx.gbl...
> > > > Bonjour, merci, non, je veux pas le code et les API... Parce que,
> quand
> > on
> > > > s'adresse à un logiciel externe, y a toujours le risque qu'il ne
soit
> > pas
> > > > monté, ou qu'il faille le distribuer avec...
> > > >
> > > > --
> > > > Merci, @+, bye, Joe
> > > > troll75 AROBASE iFrance POINT com
> > > > ------------------------------------------
> > > > Ce message est plein de virus "certifiés"
> > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > ------------------------------------------
> > > >
> > > >
> > > > "Denis" <jelf.nospam@lewanadoo.fr> a écrit dans le message de
> > > > O1F#EWZYEHA.384@TK2MSFTNGP10.phx.gbl...
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "le_troll" <le_trol@paris.fr>
> > > > > Newsgroups: microsoft.public.fr.vb
> > > > > Sent: Saturday, July 03, 2004 9:17 PM
> > > > > Subject: Comment redimensionner 1 photo issue d'1 fichier ???
> > > > >
> > > > >
> > > > > > Bonjour,
> > > > > >
> > > > > > Comment redimensionner une photo pour qu'elle fasse
exactement
> > x*y
> > > > > > pixels (sachant qu'elle peut être plus petit comme plus
> > > > > >
> > > > > > Je récupère la photo par le choix dans un fichier photo
d'une
> > > > > > CommonDialog...???
> > > > > >
> > > > > bonjour :)
> > > > >
> > > > > tu peux utiliser un utilitaire en ligne de commande qui
> > > > > "imagemagick". il te prend une photo à n'importe quel format
> > > > > et la conertit, la déforme, la tranforme à souhait.
> > > > > il ne reste donc plus qu'à appeler la ligne de commande dans ton
> > > > > code. C'est pas très élégant mais c'est efficace.
> > > > >
> > > > > @++
> > > > >
> > > > > > --
> > > > > > Merci, @+, bye, Joe
> > > > > > troll75 AROBASE iFrance POINT com
> > > > > > ------------------------------------------
> > > > > > Ce message est plein de virus "certifiés"
> > > > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > > > ------------------------------------------
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>
Dis-moi Christophe, ça va me serve, la taille maxi en W98, c'est en pixels
L*H ??? pu en taille octets ???
Merci :o)
--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Ce message est plein de virus "certifiés"
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !
------------------------------------------
"Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
cc8qfc$gfo$
> Je crois effectivemenbt que la solution de François est la plus simple
pour
> ce que tu veux faire.
>
> Sache qu'il n'y a qu'un pb avec loadpicture (c'est pour cela que je me
suis
> mis aux API) c'est que la taille du bitmap est limitée si tu tentes de
> charger une tros grosse image echec de la fonction. Ceci sous 98, sous
je
> pense (non testé) qu'ils ont repoussés la limite la GDI étant dans ce
en
> 32 bits.
>
> Christophe Vergon
>
> "le_troll" a écrit dans le message de news:
> upIM#
> > Merci, je crois que François a donné un bon exemple avec paint
je
> > vais voir ce que j'arrive à faire, j'avais déjà ça mais en réduction
(sauf
> > que je ne calculais pas la taille avant), je n'ai pas l'habitude de
jouer
> > avec les images, merci encore :o)
> >
> > --
> > Merci, @+, bye, Joe
> > troll75 AROBASE iFrance POINT com
> > ------------------------------------------
> > Ce message est plein de virus "certifiés"
> > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > Avec une hache, celui qui tient le manche a toujours raison !
> > ------------------------------------------
> >
> >
> > "Christophe" <geo.ch@(wormfuck)tiscali.fr> a écrit dans le message de
> news:
> > cc8mvm$q7d$
> > > Bonjour,
> > >
> > > Concernant GDI+ utilisable avec XP, il y a les pour et les contres
> (c'est
> > > assez lent), l'investissemnt necessaire pour apprendre les fonctions
> GDI+
> > > est assez important et je pense (ça n'engage que moi) qu'il vaut
> le
> > > faire avec Donet.
> > > Concernant le jpg, load ou paint picture le gerent mais uniquement
sous
> > XP.
> > >
> > > Pour le pb plus spécifique de Mr le Troll, il te faut convertir le
> fichier
> > > image disque (jpg) en DIB device independant bitmap et utiliser
> > > strechtDIBits par exemple.
> > >
> > > Le problème et que même si ce que tu veux faire parait très simple,
les
> > > notions que cela impliquent pour une utilisation avec les API font
> > plusieurs
> > > chapitre de livre traitant le sujet (celui de Dan Appelman par
exemple).
> > > C'est donc assez difficile de l'expliquer en quelques lignes.
> > >
> > > Si la manipulation des DC et de leurs systèmes de coordonnées t'es
> > familière
> > > ça reduit déjà beaucoup.
> > >
> > > dis nous si c'est le cas .
> > >
> > > Christophe Vergon
> > >
> > > "le_troll" a écrit dans le message de news:
> > > Os4q$
> > > > Bonjour, merci, non, je veux pas le code et les API... Parce que,
> quand
> > on
> > > > s'adresse à un logiciel externe, y a toujours le risque qu'il ne
soit
> > pas
> > > > monté, ou qu'il faille le distribuer avec...
> > > >
> > > > --
> > > > Merci, @+, bye, Joe
> > > > troll75 AROBASE iFrance POINT com
> > > > ------------------------------------------
> > > > Ce message est plein de virus "certifiés"
> > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > ------------------------------------------
> > > >
> > > >
> > > > "Denis" a écrit dans le message de
> > > > O1F#
> > > > >
> > > > > ----- Original Message -----
> > > > > From: "le_troll"
> > > > > Newsgroups: microsoft.public.fr.vb
> > > > > Sent: Saturday, July 03, 2004 9:17 PM
> > > > > Subject: Comment redimensionner 1 photo issue d'1 fichier ???
> > > > >
> > > > >
> > > > > > Bonjour,
> > > > > >
> > > > > > Comment redimensionner une photo pour qu'elle fasse
exactement
> > x*y
> > > > > > pixels (sachant qu'elle peut être plus petit comme plus
> > > > > >
> > > > > > Je récupère la photo par le choix dans un fichier photo
d'une
> > > > > > CommonDialog...???
> > > > > >
> > > > > bonjour :)
> > > > >
> > > > > tu peux utiliser un utilitaire en ligne de commande qui
> > > > > "imagemagick". il te prend une photo à n'importe quel format
> > > > > et la conertit, la déforme, la tranforme à souhait.
> > > > > il ne reste donc plus qu'à appeler la ligne de commande dans ton
> > > > > code. C'est pas très élégant mais c'est efficace.
> > > > >
> > > > > @++
> > > > >
> > > > > > --
> > > > > > Merci, @+, bye, Joe
> > > > > > troll75 AROBASE iFrance POINT com
> > > > > > ------------------------------------------
> > > > > > Ce message est plein de virus "certifiés"
> > > > > > Le_Troll, éleveur de Trolls depuis César, qui disait:
> > > > > > Avec une hache, celui qui tient le manche a toujours raison !
> > > > > > ------------------------------------------
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>