Utilia

GIF-i kaadrite eraldaja

Jaga animeeritud GIF üksikuteks PNG-kaadriteks, vaata iga kaadri viivitust ja kõrvaldust ning laadi alla kaader või kõik ZIP-ina. Tasuta, üleslaadimist pole.

Kuidas GIF-i kaadreid eraldada

  1. Lohista GIF tõmbealale või klõpsa sellel faili valimiseks. Töötavad nii animeeritud kui ka liikumatud GIF-id.
  2. Tööriist loeb faili ja näitab Algne animatsioon kõrval selle Mõõtmed, Kaadreid, Kogukestus ja Kordus seadet.
  3. Iga kaader ilmub ruudustikku koos numbri, viivituse ja kõrvalduse meetodiga. Läbipaistvad alad kuvatakse malelaua peal.
  4. Vali, mida valik Kaadrid eraldab: Täiskaadrid (nagu kuvatakse) annab iga kaadri täpselt sellisena, nagu brauser seda sel hetkel näitab; Toorkaadrite tükid (ainult muutunud ala) annab väikesed ristkülikud, mis on failis salvestatud.
  5. Klõpsa kaadri all PNG, et salvestada see kaader eraldi, või Laadi kõik alla (ZIP), et saada kõik kaadrid ühes arhiivis, nummerdatud failinimedega, näiteks cat-frame-007.png.

Miks täiskaadrid olulised on

GIF-animatsioon salvestab harva iga kaadri jaoks täieliku pildi. Failide väiksena hoidmiseks salvestab enamik kodeerijaid esimese kaadri täielikult ja seejärel ainult muutunud ristküliku, sageli läbipaistvate pikslitega kohtades, kus midagi ei liikunud. Naiivne eraldaja, mis salvestab need ristkülikud, annab sulle rebitud ja pooltühjad pildid.

See tööriist taastab iga kaadri nii, nagu vaataja seda teeb. See hoiab loogilise ekraani suurust lõuendit, joonistab iga kaadri ristküliku selle asukohta ja rakendab seejärel kaadri kõrvalduse meetodit enne järgmise joonistamist:

  • puudub või säilita (meetodid 0 ja 1): pilt jääb samaks ja järgmine kaader joonistatakse peale.
  • tühjenda (meetod 2, „taasta taustale“): kaadri ristkülik tühjendatakse. Nagu praegused brauserid, tühjendab tööriist selle läbipaistvaks, mitte failis salvestatud taustavärviks.
  • taasta eelmine (meetod 3): lõuend läheb tagasi sellisele, nagu see oli enne kaadri joonistamist.

Tulemuseks on komplekt PNG-pilte, mis vastavad sellele, mida näed GIF-i esitamisel. PNG säilitab läbipaistvuse ega kaota kunagi kvaliteeti, seega on värvid täpselt need, mis on GIF-i paletis salvestatud.

Toortükid on kasulikud muudel juhtudel: et uurida, kuidas kodeerija faili optimeeris, taastada spraidi täpsed tükid või siluda vilkuvat animatsiooni.

Kaadri viivitused ja kestus

Iga kaader salvestab oma viivituse sajandiksekundites, siin kuvatud millisekundites. Paljud GIF-id kasutavad viivitust 0 või 10 ms; brauserid ei esita kaadreid nii kiiresti ja näitavad neid hoopis 100 ms. Ruudustik märgib sellised kaadrid kui „esitatakse 100 ms-ga“ ning Kogukestus liidab viivitused nii, nagu brauserid neid tegelikult esitavad.

Väärtus Kordus pärineb NETSCAPE’i laiendusest: Lõputult lõputu korduse jaoks, korduste arv või Esitatakse üks kord, kui failil pole korduse plokki.

Piirangud ja privaatsus

GIF dekodeeritakse täielikult sinu brauseris; midagi ei laadita üles. Väga suured animatsioonid (sadu kaadreid kõrge eraldusvõimega) vajavad palju mälu: kui kokku on üle 400 miljoni piksli, palub tööriist kasutada väiksemat faili. Kaadrid salvestatakse PNG-na ilma metaandmeteta.

Korduma kippuvad küsimused

Miks mõned eraldatud kaadrid on ainult osaliselt joonistatud?

Nii juhtub valikuga Toorkaadrite tükid (ainult muutunud ala): GIF-i kodeerijad salvestavad sageli ainult muutunud osa. Täielike piltide saamiseks lülitu valikule Täiskaadrid (nagu kuvatakse).

Kas kaadreid saab JPG-na?

Tööriist salvestab PNG, et säilitada läbipaistvus ja täpsed värvid. Kui vajad JPG-d, teisenda PNG-failid hiljem pildivormingu muunduriga.

Miks erineb kogukestus teiste programmide omast?

Kestus kasutab brauseri ajastust, kus viivitusi 0 ja 10 ms esitatakse 100 ms-ga. Mõned redaktorid näitavad hoopis salvestatud toorväärtusi, mis annab lühema kogukestuse.

Kas see töötab liikumatute GIF-idega?

Jah. Liikumatul GIF-il on üks kaader, mille saad PNG-na salvestada.

Kuidas kaadrid tagasi animatsiooniks muuta?

Redigeeri kaadreid vajadusel, seejärel laadi need õiges järjekorras GIF-i loojasse ja sea iga kaadri viivitus.