Kode halaman ini tidak berjalan.

Membuka index.html langsung dari sebuah folder memblokir modul JavaScript, sehingga tidak akan terjadi apa-apa saat Anda memilih sebuah GIF. Sajikan folder tersebut lewat http sebagai gantinya:

powershell -ExecutionPolicy Bypass -File serve.ps1

Lalu buka http://localhost:8080/.

Pemisah GIF — setiap bingkai jadi PNG sendiri

Setiap bingkai keluar sebagai PNG-nya sendiri.

Bahasa: Bahasa Indonesia
Lihat kode sumber
GIF Anda tidak pernah diunggah. Tidak ada server.

GIF-nya dibaca, didekompresi, dan digambar oleh peramban Anda sendiri, dan setiap PNG dikodekan di memori mesin ini. Tidak ada server di ujung lain halaman ini untuk menerima sebuah animasi, bahkan seandainya ada sesuatu di sini yang menginginkannya.

Pemeriksaan langsung: memeriksa…

Luring: memeriksa…

Tidak perlu percaya begitu saja: buka DevTools, perhatikan tab Network, lalu pisahkan sebuah GIF. Tidak satu pun permintaan membawa gambar, bingkai, atau nama file. Atau cabut koneksi internet dan tetap pisahkan satu.

1 Pilih sebuah GIF

2 Bagaimana bingkainya keluar

Simpan setiap Ambil setiap bingkai kedua atau kelima alih-alih semuanya, untuk lembar kontak atau rekaman yang panjang.

Daftar waktu Berapa lama setiap bingkai ditahan, dan di mana letaknya. Satu folder berisi PNG tidak bisa membawa itu sendiri.

bingkai

3 Bingkainya

Lihat sebagai Markdown

Cara memisahkan GIF menjadi bingkai

  1. Pilih GIF-nya. Jatuhkan ke pemilih file, atau pilih sendiri. Peramban membacanya langsung dari disk Anda, dan halaman ini memberi tahu apa yang ditemukannya: ukurannya, jumlah bingkainya, berapa lama ia diputar, dan berapa kali ia berulang.
  2. Putuskan isi setiap PNG. Bingkai seperti tampilannya adalah yang diinginkan hampir semua orang: gambar utuh pada momen itu dalam animasi. Hanya piksel yang disimpan bingkai itu adalah tambalan yang sebenarnya dibawa file, pada ukurannya sendiri dan di tempatnya sendiri, yang merupakan cara GIF tetap kecil dan bukan tampilan animasinya.
  3. Putuskan apa yang terjadi pada transparansinya. PNG menjaganya, dan itu bawaan yang jujur. Isi dengan sebuah warna kalau bingkainya akan pergi ke tempat yang mengabaikan transparansi dan akan mengubahnya menjadi hitam.
  4. Pilih bingkai yang Anda mau. Semuanya secara bawaan. "Simpan setiap bingkai kedua" menipiskan rekaman yang panjang, dan kotak centang di kisinya menimpanya — penomorannya tidak pernah berubah, jadi bingkai 42 tetap disebut bingkai 42 sesedikit apa pun tetangganya yang Anda simpan.
  5. Unduh. Satu bingkai sekali jalan dari kisinya, atau semuanya sebagai satu ZIP sehingga ada satu permintaan simpan alih-alih ratusan. ZIP-nya bisa membawa frames.txt yang mencantumkan berapa lama setiap bingkai ditahan, yang merupakan satu hal yang tidak bisa dikatakan sendiri oleh sebuah folder berisi PNG.

Versi lebih lengkap

Cara memisah GIF menjadi bingkai Dapatkan setiap bingkai sebuah GIF animasi sebagai PNG: kenapa sebagian bingkai hanya berupa tambalan kecil dari gambarnya, apa yang terjadi pada transparansinya, dan bagaimana menyimpan pewaktuannya supaya Anda bisa menyusunnya kembali.

Pertanyaan

Apakah GIF saya diunggah ke suatu tempat?

Tidak. File dibaca, didekompresi, dan digambar oleh peramban Anda sendiri di perangkat keras Anda sendiri, dan setiap PNG dikodekan di sini di memori. Alat ini tidak punya sisi server, dan Content-Security-Policy halaman ini menyebut satu per satu setiap alamat yang boleh dihubunginya — tidak satu pun milik situs ini. Cabut koneksi jaringan dan ia tetap memisahkan GIF.

Kenapa satu bingkai tampak seperti potongan kecil dari gambarnya?

Karena memang itu isi file-nya. Sebuah GIF adalah gambar pertama diikuti tambalan-tambalan: setiap bingkai berikutnya hanya menyimpan persegi panjang yang berubah, dan segala yang lain di layar adalah apa yang ditinggalkan bingkai sebelumnya di sana. Kepala orang yang berbicara di depan dinding diam karena itu menyimpan satu wajah per bingkai, bukan satu gambar per bingkai, dan itulah seluruh alasan format ini tidak raksasa.

Anda melihatnya karena "Hanya piksel yang disimpan bingkai itu" sedang dipilih. Beralihlah ke "Bingkai seperti tampilannya" dan setiap PNG menjadi gambar utuh sebagaimana animasinya tampak pada momen itu.

Apakah transparansinya terjaga?

Ya. Transparansi GIF hanya satu bit — sebuah piksel entah dicat entah tidak terlihat, tanpa apa pun di antaranya — dan PNG menyimpan persis itu, jadi bingkainya keluar dengan area transparannya utuh. Kalau Anda lebih suka latar padat, atur "Area transparan" untuk diisi dengan sebuah warna; itu ditulis ke dalam PNG dan tidak bisa dibatalkan sesudahnya.

Kenapa jeda bingkainya bukan angka yang saya harapkan?

Sebuah GIF menyimpan setiap jeda dalam perseratus detik, dan peramban sudah membatasi apa pun di bawah dua perseratus menjadi sepersepuluh detik sejak 1990-an — aturan yang ditulis untuk bola dunia berputar pada zaman itu dan tidak pernah dicabut. Jadi bingkai yang file-nya berkata 0,01 dtk diputar pada 0,10 dtk di mana-mana. Alat ini menampilkan jeda sebagaimana ia benar-benar diputar, dan menyebutkan apa yang disimpan file di sebelahnya kalau keduanya berbeda.

Bisakah saya menyusun bingkainya kembali?

Bisa, dengan Pembuat GIF di situs ini atau dengan apa pun lain yang menerima satu folder gambar. Untuk itulah frames.txt di dalam ZIP: memisahkan sebuah animasi membuang waktunya, karena sebuah PNG tidak punya tempat untuk mencatat berapa lama ia ditahan, jadi daftar itu membawa keluar jeda dan posisi setiap bingkai.

Bingkainya bisa disimpan dalam format apa saja?

PNG, dan sengaja hanya PNG. Satu bingkai GIF paling banyak 256 warna dengan satu bit transparansi; PNG menyimpannya persis dan tanpa kehilangan, sedangkan JPEG akan membuang transparansinya, mengarang warna yang tidak pernah dimiliki bingkai itu, dan biasanya menghasilkan file yang lebih besar dari gambar datar. Kalau Anda butuh JPEG, ubah PNG-nya sesudahnya dengan Pengubah Ukuran Gambar.

Adakah batas berapa banyak bingkai yang akan dibacanya?

Tidak ada batas tetap. Batas praktisnya adalah memori mesin Anda sendiri: sebuah GIF mengembang menjadi kira-kira satu byte per piksel per bingkai saat dibaca, jadi file kecil bisa berarti memori yang sangat besar, dan halaman ini berhenti membaca alih-alih membiarkan tab-nya mati. Kalau itu terjadi ia mengatakannya dan menyerahkan bingkai yang sempat didapatnya.

Apakah ia akan membuka GIF yang rusak?

Biasanya. Unduhan yang terpotong, penanda akhir yang hilang, dan bingkai terakhir yang berhenti di tengah aliran semuanya lazim, dan pembaca yang menolaknya tidak berguna justru untuk file yang paling ingin dibongkar orang. Bingkai mana pun yang lengkap akan kembali, dengan catatan tentang apa yang salah. Hanya file yang sama sekali bukan GIF yang ditolak mentah-mentah.

Apakah gratis, dan apakah saya perlu akun?

Gratis, dan tidak ada akun, tidak ada masuk, dan tidak ada masa uji coba. Tidak ada tanda air pada bingkainya juga. Situs ini memasang iklan, dan itulah yang membiayainya; iklan tidak diberi apa pun tentang file Anda.

Apakah jalan tanpa internet?

Ya. Muat halamannya sekali, lalu putuskan koneksi internet dan ia tetap bekerja. Itu juga cara paling sederhana untuk membuktikan tidak ada yang diunggah: alat yang mengirim animasi Anda ke tempat lain untuk diproses akan berhenti begitu Anda mencabut koneksi.