function GetImageFormat(AFileName: string): TImageFormat;
var
aStream: TMemoryStream;
formatFlag: Word;
begin
aStream := TMemoryStream.Create;
try
aStream.LoadFromFile(AFileName);
aStream.Position := 0;
Result := ifUnKnown;
if aStream.Size = 0 then Exit;
aStream.ReadBuffer(formatFlag, 2);
case formatFlag of
$4D42: Result := ifBmp;
$D8FF: Result := ifJpg;
$4947: Result := ifGif;
$050A: Result := ifPcx;
$5089: Result := ifPng;
$4238: Result := ifPsd;
end;
finally
aStream.Free;
end;
end;
转载于:https://www.cnblogs.com/delphi323/archive/2011/12/31/2309208.html