最佳答案
如果“图像文件”指的是 VCL 图形系统识别的那些光栅图像文件,而“打开之前”指的是“在用户可能注意到文件被打开之前”,那么您可以这样做非常容易:
var
pict: TPicture;
begin
with TOpenDialog.Create(nil) do
try
if Execute then
begin
pict := TPicture.Create;
try
pict.LoadFromFile(FileName);
Caption := Format('%d×%d', [pict.Width, pict.Height])
finally
pict.Free;
end;
end;
finally
Free;
end;
当然,文件已打开,如果图像很大,则需要大量内存。但是,如果您需要在不加载文件的情况下获取元数据(例如尺寸),我相信您需要更“复杂”的解决方案。
关于image - Delphi中如何获取图像文件的尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15209076/