![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Что делать с gif - вообще никаких идей. Подскажите, кто знает.
А с PNG пытаюсь так: Код:
var F:TFileStream;
begin
F:=TFileStream.Create('C:\Users\1\Desktop\йцу\Win32\Debug\1.png', fmCreate);
idHTTP1.Get('http://yandex.st/morda-logo/i/logo.png',f);
image1.Picture.Bitmap.LoadFromStream(F);
f.Free;
end;На одном форуме не помогли, надеюсь, хоть тут откликнется кто-нибудь ![]() |
|
#2
|
|||
|
|||
|
Потому что после загрузки у тебя указатель внутри потока стоит в конце данных. Надо его передвинуть на начало. Кстати, сохранять в файл совсем не обязательно. И удалять объекты надо в try..finally.
Код:
var F:TMemoryStream;
begin
F:=TMemoryStream.Create;
Try
idHTTP1.Get('http://yandex.st/morda-logo/i/logo.png',f);
F.Seek(0,0);
image1.Picture.Bitmap.LoadFromStream(F);
Finally
f.Free;
End;
end; |
|
#3
|
|||
|
|||
|
Код:
uses GifImg;
...
var
f: TMemoryStream;
gif: TGIFImage;
begin
f:=TMemoryStream.Create;
gif:=TGIFImage.Create;
try
idHTTP1.Get('http://...../image.gif',f);
f.Position:=0;
gif.LoadFromStream(f);
image1.Picture.Assign(gif);
finally
f.Free;
gif.Free;
end;
end;Последний раз редактировалось x128, 06.12.2012 в 11:33. |