ImageEn, unit imageenio

TImageEnIO.ParamsFromFile

TImageEnIO.ParamsFromFile


Declaration


function ParamsFromFile(const FileName: WideString; bUseExtension: Boolean = False): Boolean; overload;
function ParamsFromFile(const FileName: WideString; Format: TIOFileType): Boolean; overload;


Description


Reads the image properties without loading the image (and without changing the current image). Result is false if a loading error is encountered due to a corrupt or unknown image format.

In other words, ParamsFromFile is the same as calling LoadFromFile but without retrieving the image.

FileName is the file name with full path.
Format is the file format that the stream or file contains. If ioUnknown is specified then the file content is analyzed to determine the format.
bUseExtension determines that the file format is based on the extension of the file, e.g. image.jpeg will be processed as ioJPEG format.


Examples


// Load the parameters of an image (which may be a BMP file, but we will examine the content to be sure)
ImageEnView1.IO.ParamsFromFile( 'C:\alfa.bmp' );
Label1.Caption := 'alfa.bmp has ' + inttostr(ImageEnView1.IO.Params.BitsPerSample) + ' bits per sample';

// Load the parameters of a BMP
ImageEnView1.IO.ParamsFromFile( 'C:\alfa.bmp', ioBMP );
Label1.Caption := 'alfa.bmp has ' + inttostr(ImageEnView1.IO.Params.BitsPerSample) + ' bits per sample';

// Load the parameters of a file. It will be assumed to a BMP because of the file extension
ImageEnView1.IO.ParamsFromFile( 'C:\alfa.bmp', True );
Label1.Caption := 'alfa.bmp has ' + inttostr(ImageEnView1.IO.Params.BitsPerSample) + ' bits per sample';

// Show the EXIF date of an image
IO := TImageEnIO.Create( nil );
try
  IO.ParamsFromFile( sFilename );
  ShowMessage( DateTimeToStr(( IO.IOParams.EXIF_DateTimeOriginal2 ));
finally
  IO.Free;
end;