Einzelnen Beitrag anzeigen

Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.757 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Animated GIF Problem (beim Erstellen)

  Alt 13. Mär 2008, 20:38
Guten Abend,

so ich habe die Methode etwas anpassen müssen, da
ich nicht wußte wie Dein Array BitMapArray definiert ist.
Ich habe das jetzt mit einer ImageList gelöst, aber Dein Weg
sollte auch gehen.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  FrameIndex: Integer;
  Picture: TPicture;
begin
  Screen.Cursor := crHourGlass;
  try
    GifAnimateBegin;
    {Step through each frame in in-memory list}
    for FrameIndex := 0 to BitMapArray.Count -1 do
    begin
      // add frame to animated gif
      BitMapArray.GetBitmap(FrameIndex,Image1.Picture.Bitmap);
      GifAnimateAddImage(Image1.Picture.Graphic,false,1000);
    end;
    // We are using a TPicture but we could have used a TGIFImage instead.
    // By not using TGIFImage directly we do not have to add GIFImage to the uses clause.
    // By using TPicture we only need to add GifAnimate to the uses clause.
    Picture := GifAnimateEndPicture;
    Picture.SaveToFile(ExtractFilePath(ParamStr(0)) + 'sphere.gif'); // save gif
    //ImageMovieFrame.Picture.Assign(Picture); // display gif
    Picture.Free;
  finally
    Screen.Cursor := crDefault;
  end;
end;
Dein Fehlerbild kann ich nicht reproduzieren.

Was ich mir noch vorstellen kann ist,
dass Du gifImage nicht vor FTGifAnimate in den uses geschrieben hast.

Oder stelle mal Deine Deklaration von BitMapArray vor.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat