Bonjour à toutes et à tous,
J'aimerai pouvoir charger une image en Png, mon code permet de charger un Jpg et Bmp mais par contre pour un Png, l'image reste vide.
J'utilise la librairie et la sauvegarde se fait bien pour les 3 formats.
Voici mon code :
procedure TMainForm.BchargerClick(Sender: TObject);
var
JPG : TJPegImage;
BMP : TBitmap;
Ext : string;
BMPLoaded : boolean;
NewH, NewW, OldSBM : integer;
begin
{ initialisation }
BMPLoaded := false;
{ ouverture d'une image }
if Opd1.Execute
then
begin
{ recuperation de l'extention }
Ext := LowerCase(ExtractFileExt(Opd1.FileName));
{ creation du bitmap temporaire }
BMP := TBitmap.Create;
try
{ si c'est un jpeg }
if (ext = '.jpg') or (ext ='.jpeg')
then
begin
{ creation d'une image jpeg }
JPG := TJPegImage.Create;
try
{ charge a partir du fichier }
JPG.LoadFromFile(OpD1.FileName);
{ convertion JPG > BMP }
JPEGToBMP(JPG,BMP);
{ BMP est prét }
BMPLoaded := true;
finally
{ liberation de JPG }
JPG.Free;
end;
end
else
{ si c'est un bitmap }
if ext = '.bmp' then
begin
{ charge a partir du fichier }
BMP.LoadFromFile(OpD1.FileName);
{ BMP est prét }
BMPLoaded := true;
end;
Reste du code....
D'après mes notes, je pensais que le Timage acceptait le format Png sans code.
Merci,
Cincap
mailto: