我要显示一张图,可是我怎样才能知道它的长度和宽度呢?这对我很重要。请高手赐教!

解决方案 »

  1.   

    GIF,BMP格式的,能说一下吗?
      

  2.   

    procedure TImageClass.GetWidthHeight(var bmpWidth,
      bmpHeight: smallint);
    Var
        tmpStream:TFileStream;
        FileHeader:TBitMapFileHeader;
        FbmHeadInfo: PBITMAPINFOHEADER;
    begin
         TmpStream:=TFileStream.Create(FFilePath,fmOpenReadWrite);
         try
            TmpStream.ReadBuffer(FileHeader,Sizeof(TBITMAPFILEHEADER));
            if FileHeader.bfType<>$4D42 then raise Exception.Create('无效的位图文件');
                GetMem(FbmHeadInfo,Sizeof(TBITMAPINFOHEADER));
            TmpStream.ReadBuffer(FbmHeadInfo^,Sizeof(TBITMAPINFOHEADER)) ;        bmpWidth := FbmHeadInfo.biWidth;
            bmpHeight := FbmHeadInfo.biHeight;
            FreeMem(FbmHeadInfo,Sizeof(TBITMAPINFOHEADER));
         except
            TmpStream.Free ;
            raise ;
         end ;
         TmpStream.Free ;
    end;