PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Image redimentionnée
Image redimentionnée
Débuté par Jean-Michel, 08 oct. 2016 09:09 - 1 réponse
Membre enregistré
834 messages
Popularité : +13 (13 votes)
Posté le 08 octobre 2016 - 09:09
Bonjour,
Je désire redimensionner mes images dans mon fichier afin que les chargement de celles-ci dans une zone répétée soit plus rapide.

J'ai donc essayer avec la fonction "DRedimentionne".

InfoImage, Format sont des chaînes
Hauteur, Largeur sont des entiers

HLitPremier(Reference_Comm,IDref_com)
TANTQUE PAS HEnDehors (Reference_Comm)

SI Reference_Comm.image_bin <> "" ALORS

// Je passe par un champs image
IMG_redimentionne = Reference_Comm.image_bin


// Récupération des caractéristiques de l'image
InfoImage = InfoBitmap(Reference_Comm.image_bin)
Format = ExtraitChaîne(InfoImage, 1)
Largeur = Val(ExtraitChaîne(InfoImage, 2))
Hauteur = Val(ExtraitChaîne(InfoImage, 3))

// Information avant redimentionnement
Trace(Reference_Comm.Libelle, "L : " + Largeur + " - H : " + Hauteur)

// Redimentionement, je divise par 4
dRedimensionne(IMG_redimentionne, IMG_redimentionne..Largeur / 4, IMG_redimentionne..Hauteur / 4,drHomothétiqueCentré)
Reference_Comm.image_bin = dChargeImage(IMG_redimentionne)

// Information apres redimentionnement
Trace(Reference_Comm.Libelle, "L : " + Largeur + " - H : " + Hauteur)

HModifie(Reference_Comm)

FIN

HLitSuivant(Reference_Comm)
FIN
HFerme(Reference_Comm)


Mon traçage :




Donc, rien a changé et mon fichier est plus gros alors qu'il devrait être réduit !
Avant :




Apres :




Merci pour vos lumières..............
J.Michel

--
Synchronize Systems International LTD
Développement d'outils de gestion

Environnements AS400 – Windows
Langages GAP III – CL – Visual Basic - Visual Adélia - Adélia - Windev
http://www.cashpower.fr/

Bangkok / Pattaya
Membre enregistré
342 messages
Popularité : +30 (32 votes)
Posté le 10 octobre 2016 - 09:24
Bonjour

Pour info, dChargeImage n'accepte pas un champ image en paramètre

Pour faire ce que tu souhaites passe par une variable de type Image
Un exemple :
HLitPremier(monfichier)
SI PAS HEnDehors() ALORS
W_imgTemp est une Image
W_imgTemp = monfichier.img_bin
dRedimensionne(W_imgTemp,150,150,drHomothétiqueCentré)
monfichier.img_bin = W_imgTemp
HModifie(monfichier)
FIN


--
Pascal H. http://phapps.e-monsite.com