Il y a quelques jours, j'ai posé cette question et a obtenu la réponse: How to add a picture frame and insert the text in the image?Comment réduire la taille de fichier JPG?
Maintenant, quand je sauve le contenu de TPanel (1x forme, 1x TImage, 2x TLabel) sous forme de fichier JPG,
taille de ce fichier JPG est augmenté de 20kb, qui est la taille de l'image dans TImage, à 620kb.
Les dimensions sont presque identiques. Fichier JPG original 320x320, nouvelle image JPG 361x440.
Alors, comment réduire cette taille?
C'est la réponse pour la première question, de @iPath, de sorte comment nouveau fichier JPG est créé:
procedure TForm1.SavePanelAsImage;
var
img: TBitmap;
begin
img := TBitmap.Create;
try
img.Width := fpPanel.Width;
img.Height := fpPanel.Height;
fpPanel.PaintTo(img.Canvas, 0, 0);
img.SaveToFile(fpFileName);
finally
img.Free;
end;
end;
Un fichier Bitmap est en cours de création! Dans la section Notes de ma réponse, j'ai mentionné que vous devez utiliser TJPEGImage pour convertir le bitmap en Jpeg. Mon exemple enregistre un bitmap, comme @ David-Heffernan a clarifié;) –
Soyez prudent avec ceci, BTW. JPEG est un algorithme de compression avec perte, ce qui signifie que si vous enregistrez une image et la chargez à nouveau, vous ne récupérez pas exactement la même image. Ainsi, si vous l'éditez plusieurs fois, en enregistrant au format JPEG à chaque fois, votre image subira plusieurs pertes générationnelles. –