Pb lors de la sauvegarde de grandes images

ericamiens Messages postés 18 Date d'inscription mardi 28 janvier 2003 Statut Membre Dernière intervention 9 septembre 2004 - 15 sept. 2003 à 13:17
yvemoreau Messages postés 308 Date d'inscription mardi 11 juin 2002 Statut Membre Dernière intervention 26 septembre 2008 - 17 sept. 2003 à 06:41
salut à tous, mon problème est le suivant :
lors de la création d'images JPG, j'ai l'erreur JPEG n° 36 lorsque les dimensions sont trop importantes (ex:2048x1536)
j'ai pourtant une carte graphique avec 32 Mo. j'ai aussi 128 Mo en ram et 12 Go de dispos sur le disque.
la séquence de code est la suivante :

JPI := TJPEGImage.Create; // pour sauver en JPG
imImg.Width := nLargImg; // valeurs
imImg.Height := nHautImg; // importantes
imImg.Picture.Bitmap.Width := nLargImg; // necessaire si
imImg.Picture.Bitmap.Height := nHautImg; // dessin

<dessins faits sur imImg: imImg.Canvas.Draw...>

JPI.Assign(imImg.Picture.Graphic);
try
JPI.SaveToFile(cNomFic);
except
on e:exception do // ici : 'erreur JPEG n°36'
showmessage(e.Message);
end;

c'est au niveau de l'affectation de la taille du bitmap que ça coince :
j'ai fait
imImg.Picture.Bitmap.Width := nLargImg div 2;
imImg.Picture.Bitmap.Height := nHautImg div 2;
et c'est ok (image 4 fois moins grosse)

ou bien ça passe et le .jpg a une taille de 0 octet.

quelqu'un a-t-il rencontré ce problème et a-t-il une solution ?
merci d'avance et bonne journée.

Eric

1 réponse

yvemoreau Messages postés 308 Date d'inscription mardi 11 juin 2002 Statut Membre Dernière intervention 26 septembre 2008
17 sept. 2003 à 06:41
j'ai assayer de visualiser tout ça avec le demo de delphi

on ne peux pas appliquer de mask pour superposer les 2 car ça prend 2 bitmap

je cherche dans l'api mais c,est plutôt compliqué !!!

yve
0
Rejoignez-nous