kanvas-gif
npm i canvas-gif
Apa itu kanvas-gif?
canvas-gif adalah perpustakaan NPM yang memungkinkan Anda memanipulasi bingkai GIF menggunakan node-canvas.
Canvas-gif sudah tidak digunakan lagi. Saya jarang menggunakan Node.js, apalagi saya menggunakan paket seperti ini. Jika Anda tertarik untuk mengambil alih pengembangan, silakan membaginya dan mempublikasikannya sendiri. Namun, waktuku bersama perpustakaan ini terhenti.
Bagaimana cara kerjanya?
Ia bekerja dengan mengikuti petunjuk berikut:
- Baca input GIF sebagai Buffer (opsional: gabungkan GIF jika opsi telah diaktifkan dan grafismagick tersedia)
- Dekode GIF menjadi UInt8Array
- Untuk setiap frame di GIF, buat instance kanvas
- Ubah UInt8Array menjadi data gambar kanvas dan masukkan ke dalam konteksnya
- Meneruskan konteks dan informasi relevan lainnya ke fungsi editFrame yang ditentukan pengguna yang akan terus memanipulasi konteks.
- Tambahkan konteks bingkai yang baru diedit ke pembuat enkode
- Keluarkan data pembuat enkode sebagai Buffer dan kembalikan
Bagaimana saya bisa memanfaatkannya?
Anda dapat mendownloadnya menggunakan npm dengan menjalankan
Dan Anda kemudian dapat melanjutkan untuk menggunakannya dalam kode Anda. Untuk contoh cara melakukannya, silakan lihat folder contoh.
Pilihan
Semua opsi ini bersifat opsional! Wow
- coalesce - Apakah GIF harus digabungkan oleh GraphicsMagick sebelum diproses oleh mesin. Membutuhkan GraphicsMagick untuk diinstal - jika tidak dan opsinya benar dan kesalahan akan muncul dan kode akan dilanjutkan dengan buffer file asli. Defaultnya salah
- penundaan - Jumlah penundaan antara setiap frame dalam ms. Defaultnya adalah 0
- ulangi - Berapa kali GIF harus diulang. Jika nilainya 0 maka akan berulang selamanya. Defaultnya adalah 0
- algoritma - Algoritme yang harus digunakan pembuat enkode. Dapat berupa salah satu neuquant dan octree . Defaultnya adalah neuquant
- pengoptimal - Apakah pembuat enkode harus menggunakan pengoptimal bawaannya. Defaultnya salah
- fps - Jumlah frame yang dirender per detik. Defaultnya adalah 60
- kualitas - Kualitas GIF. Nilai antara 1-100. Semakin tinggi angkanya, semakin baik kualitas GIF-nya. Defaultnya adalah 100
Kesalahan Umum
Terjadi kesalahan saat penggabungan: Aliran menghasilkan buffer kosong. Mengembalikan buffer ke buffer file!
Kesalahan ini terjadi jika opsi penggabungan diaktifkan tetapi Anda kehilangan GraphicsMagick. Silakan instal dari sini dan jika kesalahan terus berlanjut, silakan laporkan sebagai masalah dan saya akan mencoba yang terbaik untuk membantu!
proyek ini menggunakan lisensi queer v1.1 - tl;dr lihat di sini :]
Agenda
- Kembalikan emitor untuk penanganan acara yang mudah