Пытаюсь загрузить гиф картинку через TOleGraphic и отрисовать её на битмапе, при этом получается фигня с размером картинки в пикселях — при разном разрешении экрана картинка получается разного размера.
Вот примерный код:
procedure TForm1.Button3Click(Sender: TObject);
var
fs : TFileStream;
w,h : integer;
gif : TOleGraphic;
begin
OpenDialog1.Execute;
fs := TFileStream.Create(OpenDialog1.FileName, fmOpenRead);
gif := TOleGraphic.create;
try
gif.LoadFromStream(fs);
Image1.Picture.Assign(gif);
w := Image1.width;
h := Image1.Height;
showmessage('w = '+intToStr(w)+#13#10+'h = '+intToStr(h));
finally
FreeAndNil(fs);
freeAndNil(gif);
end;
end;
Кто может подсказать в чём фигня? (использовать сторонние компоненты — не выход, винда же ведь в проводнике показывает правильный размер, а пользуют они скорее всего не сторонние компоненты а OLELoadPicture).