PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV Mobile (earlier versions) → réduction d'image
réduction d'image
Started by Michel, May, 29 2018 9:43 AM - 1 reply
Posted on May, 29 2018 - 9:43 AM
Bonjour,

Je suis en WD20
J'ai une application qui prend des photos à partir d'un téléphone mobile et les remonte sur un site internet.
Entre ces deux étapes je voudrais 'retailler' l'image pour limiter le volume du fichier.

La prise de photo ne pose pas de souci :
VidéoCapture(ca_Photo, LC_Chemin, viCaptureImage)

Je charge ensuite le fichier obtenu dans un objet Image, j'effectue un DCopie et j'enregistre le résultat
LO_Image = dChargeImage(LC_Image)
SI ErreurDétectée ALORS
Info(ErreurInfo(errMessage))
FIN
x = dCopie(LO_Image, LO_Copie, 0, 0,LN_LargeurInitiale, LN_HauteurInitiale,0, 0, LN_HauteurSite, LN_LargeurSite)
SI ErreurDétectée ALORS
Info(ErreurInfo(errMessage))
FIN
x = dSauveImageJPEG(LO_Copie, LC_Image2, 60)
SI ErreurDétectée ALORS
Info(ErreurInfo(errMessage))
FIN

Le boolean x est faux dès le dCopie. Par contre jamais je n'entre dans le test Si ErreurDetectee.
Si quelqu'un a une idée je suis preneur
Une seconde question : peut-on forcer le format de l'image à JPEG ? A lire la documentation je comprends que c'est le système d'exploitation qui le définit.
Merci d'avance
Posted on May, 29 2018 - 12:05 PM
J'ai trouvé cette solution :

LO_Image = dChargeImage(LC_Image, imgConvertir)
dRedimensionne(LO_Image, LN_LargeurSite, LN_HauteurSite, drHomothétiqueCentré)
dSauveImageJPEG(LO_Image, LC_Image, 60)


Ce n'est pas toujours évident de trouver LA fonction. L'approche objet de beaucoup de langages permet en saisissant le point juste après l'instance de voir toutes les propriétés et toutes les méthodes qui lui sont attachées. Par hasard j'ai trouvé dRedimensionne.

De là à comprendre pourquoi une fonction renvoie faux et que ErreurDetectée ne se déclenche pas cela fait toujours partie de mes rêves.