Taille d'une JPEG [Résolu]

Signaler
Messages postés
2527
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
16 octobre 2019
-
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
-
Bonjour à tous.

Existe-il un moyen de connaître la nouvelle taille mémoire d'une image JPEG après sa compression?
Ce serait juste pour évaluer la taille du fichier final.
J'ai fouillé l'aide en ligne de Delphi et je n'ai rien trouvé à ce sujet...
Si quelqu'un peut me mettre sur une voie? merci :)

6 réponses

Messages postés
374
Date d'inscription
vendredi 20 octobre 2000
Statut
Modérateur
Dernière intervention
15 janvier 2021

Ceci devrais répondre a ta question :

procedure TForm1.BitBtn1Click(Sender: TObject);
Var Bmp : Tbitmap;
Jpeg : TJpegImage;
Strm : TMemoryStream;
begin
if Opendialog1.Execute then
begin
Bmp:=Tbitmap.Create;
Bmp.LoadFromFile(Opendialog1.FileName);
Strm:=TMemoryStream.Create;
Bmp.SaveToStream(Strm);
ShowMessage('Taille en Bmp :'+Inttostr(Strm.Size div 1024)+'Kb');
Strm.Free;
Jpeg := TJpegImage.Create;
Jpeg.Assign(Bmp);
Strm:=TMemoryStream.Create;
Jpeg.SaveToStream(Strm);
ShowMessage('Taille en Jpeg :'+Inttostr(Strm.Size div 1024)+'Kb');
Strm.Free;
Bmp.Free;
Jpeg.Free;
end;
end;

Bon Coding ....

ManChesTer.
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
11
Tu pourrais peut-être enregistrer tes deux images (avant et après compression) dan un dossier temporaire et ainsi connaître leur taille sur le disque...
Il y a surement une meilleure solution, mais je ne l'ai pas encore trouvée... :sad)

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
Messages postés
2527
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
16 octobre 2019
16
Ben, c'est ce que je vais faire si il n'y a pas d'autre solution. lol

Je suis en train d'essayer avec :

GetHeapStatus.FreeSmall ;

Ca a l'air de correspondre à peu prés.
Mais, je ne comprends pas bien les données que renvoie cette fonction.
Je me replonge dedans!

En tout cas, merci pour ta réponse. :)
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
11
L'aide de Delphi nous dit ceci :
FreeSmall : Nombre total d'octets de petits blocs de mémoire non alloués actuellement par votre programme

Je ne pense pas que cela soit la meilleure solution pour trouver la taille de l'image...

@+
Bonne Prog'
Nico

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)
Messages postés
2527
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
16 octobre 2019
16
C'est exactement ce que je cherchais. C'est propre et rapide.
Merci beaucoup ManChesTer!
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
11
Merci ManChesTer :)