procedureTform1.checkimgtype (fn:string);varMyimage:tmemorystream; Buffer:word; I:integer;beginMyImage:= Tmemorystream.Create; TryMyimage.loadfromfile (FN); Myimage.position:=0; ifMyimage.size =0 Then beginShowMessage ('Error'); Exit; End; Myimage.readbuffer (Buffer,2); ifBuffer = $4d42 Then beginShowMessage ('BMP'); End Else ifBuffer = $D 8FF Then beginShowMessage ('JPEG'); End Else ifBuffer = $4947 Then beginShowMessage ('GIF'); End Else ifBuffer = $050a Then beginShowMessage ('PCX'); End Else ifBuffer = $5089 Then beginShowMessage ('PNG'); End Else ifBuffer = $4238 Then beginShowMessage ('PSD'); End Else ifBuffer = $A 659 Then beginShowMessage ('RAS'); End Else ifBuffer = $DA 01 Then beginShowMessage ('SGI'); End Else ifBuffer = $4949 Then beginShowMessage ('TIFF'); End Else //Direct Error if other types of files are present beginShowMessage ('ERR'); End; finallyMyimage.free; End;End;
Delphi Image Format judgment