|
이영수 님이 쓰신 글 :
: 안녕하세요.. 다름이 아니라..TGif모듈을 설치한 TImage에 서버로 부터 보내는
: TGif를 로딩하려고 하는데 잘 안되네요..
: 현재 TGif 화일은 메모리 버퍼에 저장되어 있는 상태이고요..
: 그걸 TImage에 로딩하려고 합니다.
: 물론 하드에 저장한뒤 그걸 LoadFromFile로 읽어 들이고 싶진 않거든요..
:
: TMemoryStream *DecodeOneFileStore = new TMemoryStream;
: Graphics::TBitmap *pBmp;
: TGIFImage *TempGif;
: DecodeOneFileStore->Position = 0;
: TempGif->LoadFromStream(DecodeOneFileStore);
: pBmp->Canvas->Draw(0,0, TempGif);
: pBmp->Width = TempGif->Width;
: pBmp->Height = TempGif->Height;
: pBmp->Canvas->Draw(0,0, TempGif);
: Banner[nPos]->Canvas->StretchDraw(
: Rect(0, 0, Banner[nPos]->Width ,
: Banner[nPos]->Height),pBmp);
:
: 이렇게 하면 로딩은 되는데..움직이질 않더군요. Gif가 움직이는 Gif이거든요..키키..원래 배너가 여러개의 컷들이 주기적으로 바뀌잖아요.. 하여간 안되네요..어케 해야 될지...음...
: 도움주시면 감사하겠습니다.
:
:
:
안녕하십니까?
한꼬맹이 입니다.
당연히 GIF이미지를 비트맵으로 그리면 움직이지 않습니다.
GIF와 비트맵은 엄연히 형식이 다르니까요
Image에 다음과 같이 해보세요..
TMemoryStream *DecodeOneFileStore = new TMemoryStream;
TGIFImage *TempGif;
DecodeOneFileStore->Position = 0;
TempGif->LoadFromStream(DecodeOneFileStore);
Image1.Picture.Assign(TempGif);
그럼 참고하세요...
|