image - Delphi中如何获取图像文件的尺寸?

标签 image delphi dimensions image-size

我想在打开图像文件之前知道该文件的宽度和高度。

那么,我该怎么做呢?

指的是JPEG , BMP , PNGGIF图像文件类型。

最佳答案

如果“图像文件”指的是 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/

相关文章:

image - 计算图像 "Visual"校验和的最快方法

image - iText 图像和透明度

javascript - 改变不同实例(不是所有实例)的 ckeditor 维度

php - 在使用 PHP 上传图像之前检查图像尺寸(高度和宽度)

java - 不会显示或查找图像

html - 全宽图像上的相对定位

delphi - 使用 Delphi 从网络摄像头获取快照

c - _TP_POOL 结构的定义在哪里?

delphi - 扩展 ASCII 字符显示为 ? (问号)

c++ - vector vector 的问题是什么?