![]() |
|
|
#1
|
||||
|
||||
![]() Как загрузить gif в TImage? Без дополнительных модулей и компонент.
|
#2
|
||||
|
||||
![]() Рисунки простые, поэтому очень хочется хранить их в gif, в bmp весят десятки МБ
![]() |
#3
|
||||
|
||||
![]() Можно вот так
Код:
procedure TForm1.Button1Click(Sender: TObject); var og: TOleGraphic; fs: TFileStream; begin if OpenDialog1.Execute then begin og:= TOleGraphic.Create; fs:= TFileStream.Create(OpenDialog1.FileName, fmOpenRead or fmSharedenyNone); og.LoadFromStream(fs); Image1.Picture.Assign(og); fs.Free; og.Free; end; end; Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
Этот пользователь сказал Спасибо Alegun за это полезное сообщение: | ||
Kpyc (03.07.2013)
|
#4
|
||||
|
||||
![]() Вроде то что надо, только Transparent перестал работать. Гружу так:
Код:
MyLoadImage('images\MyGif.gif', source); Source.Height := SCREEN_Y div 10; Source.Width := Source.Height; Transparent := TRUE; Stretch := TRUE; MyLoadImage - Выше описанная функция с параметрами путь и TImage Source - TImage Код:
procedure MyLoadImage(fName: String; img: TImage); var og: TOleGraphic; fs: TFileStream; begin og:= TOleGraphic.Create; fs:= TFileStream.Create(fName, fmOpenRead or fmSharedenyNone); og.LoadFromStream(fs); img.Picture.Assign(og); fs.Free; og.Free; end; Последний раз редактировалось Kpyc, 03.07.2013 в 21:16. |
#5
|
||||
|
||||
![]() Наверное надо Source.Transparent и Source.Stretch
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
Этот пользователь сказал Спасибо Alegun за это полезное сообщение: | ||
Kpyc (03.07.2013)
|
#6
|
||||
|
||||
![]() Не помогает. Попробовал так:
Код:
with Source do begin MyLoadImage('images\MyGif.gif', source); Height := SCREEN_Y div 10; Width := Source.Height; picture.Bitmap.transparentmode := tmAuto; picture.bitmap.TransparentColor := clWhite; picture.Bitmap.transparent := true; Stretch := TRUE; end; Изображение исчезает совсем. Причем если поставить transparent = FALSE исчезает тоже. Появляется только если удалить все строчки связанные с прозрачностью (6-8). |