AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Wie kann ich ein animiertes Gif entpacken (extract) ?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie kann ich ein animiertes Gif entpacken (extract) ?

Ein Thema von thomas2009 · begonnen am 15. Mär 2011 · letzter Beitrag vom 17. Mär 2011
Antwort Antwort
Seite 1 von 2  1 2      
thomas2009
(Gast)

n/a Beiträge
 
#1

Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 15. Mär 2011, 18:48
Hi
wie kann alle Images von einem animiertes gif extrahieren ?
Miniaturansicht angehängter Grafiken
gif_extractor.png  

Geändert von thomas2009 (15. Mär 2011 um 18:54 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 15. Mär 2011, 19:02
Du hast doch da offensichtlich schon ein Programm dafür?
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
thomas2009
(Gast)

n/a Beiträge
 
#3

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 15. Mär 2011, 19:05
Ich wollte das Programm nicht kaufen sondern eigenes Tool mit Delphi erstellen
  Mit Zitat antworten Zitat
IceBube

Registriert seit: 9. Jul 2008
177 Beiträge
 
#4

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 15. Mär 2011, 20:00
Hallo!

Das ist ganz einfach. Schau mal ob du "GifImage.pas" hast, wenn nicht lade diese herunter und binde Sie bei dir in der Unit ein.
Und so greifst du auf die Bilder zu...


Delphi-Quellcode:
var
 Bild : TGifImage;
begin
//
Bild := TGifImage.Create;
Bild.LoadFromFile(FileName);
Image1.Picture.Bitmap := Bild.Images.SubImages[Position].Bitmap
end;
lg
  Mit Zitat antworten Zitat
thomas2009
(Gast)

n/a Beiträge
 
#5

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 15. Mär 2011, 23:52
Gut
aber ich muss vorher viele images zuerst erstellen
Nummer :=Bild.Images.count;
und dann alle Bilder drin laden

Ich weiß nicht genau wie ich am besten tun kann?
Delphi-Quellcode:
var
 Bild : TGifImage;
 zahl : Integer;
begin
//
Bild := TGifImage.Create;
Bild.LoadFromFile(FileName);
zahl:=Bild.Images.count;
with.TImage.Create(Self) do begin
width:=Bild.picture.Bitmap.width;
Height:=Bild.picture.Bitmap.Height;
Top:=10;
Left:= ... // hier muss man überlegen
parent:=ScrollBox1;
...
//Image1.Picture.Bitmap := Bild.Images.SubImages[0].Bitmap;

bild.free;
end;
wie mache ich weiter?

Geändert von thomas2009 (16. Mär 2011 um 00:07 Uhr)
  Mit Zitat antworten Zitat
IceBube

Registriert seit: 9. Jul 2008
177 Beiträge
 
#6

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 16. Mär 2011, 09:10
Hm, versteh ich nicht so ganz. Meinst du, du willst alle Bilder in einer Scrollbox angezeigt haben=?
So vielleicht?

Delphi-Quellcode:
var
  gif : TgifImage;
  I, Count : Integer;
begin
  //
  gif := TGifImage.Create;
  gif.LoadFromFile();

  //Count
  Count := gif.Images.Count;

  for I := 0 to Count - 1 do
  begin
    //
    with TImage.Create(ScrollBox1) do
    begin
      //
      Parent := ScrollBox1;
      Show();

      //
      Left := 2 + (I*55);
      Top := 2;

      //
      Width := 50;
      Height := 50;
      Proportional := True;
      Center := True;

      Picture.Bitmap := gif.Images.SubImages[I].Bitmap;
    end;
  end;

  //
  gif.Free;
  Mit Zitat antworten Zitat
thomas2009
(Gast)

n/a Beiträge
 
#7

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 16. Mär 2011, 16:10
Es funktioniert wie gewünscht
Aber was wäre wenn schon eine Image bereit in Srcollbox1 existiert?
d.h. wenn Count von gif =4 ist, dann muss ich nur 3 images erstellen, da eine schon in scrollbox haben.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 16. Mär 2011, 16:58
Es funktioniert wie gewünscht
Aber was wäre wenn schon eine Image bereit in Srcollbox1 existiert?
d.h. wenn Count von gif =4 ist, dann muss ich nur 3 images erstellen, da eine schon in scrollbox haben.
hmmm, ja oder es fällt ein klavier vom himmel ... was dann ... oder ein elefant ...

dann lösch alle image-Instanzen der ScrollBox
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
thomas2009
(Gast)

n/a Beiträge
 
#9

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 16. Mär 2011, 17:16
Images in Scrollbox zu löschen ist zwar eine Lösung aber nicht alternativ. Ich versuche zuerst den Code weiter zu bearbeiten. Vielleicht geht es doch ohne die Images löschen zu müssen
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Wie kann ich ein animiertes Gif entpacken (extract) ?

  Alt 16. Mär 2011, 17:28
Dazu ist nur ein bisschen Tipparbeit und Hirnschmalz erforderlich. Die Images, die schon da sind, können aktualisiert werden, die anderen werden dann halt erzeugt. Überzählige müssen dann aber doch wieder gelöscht werden.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz