gifsicle-wasm-browser
v1.5.16
Published
Run Gifsicle in browser,Compress, rotate, crop and other operations on Gif images
Downloads
4,265
Maintainers
Readme
Function
- Fully restore the functionality of Gifsicle 1.92
- Supports input and output of multiple GIFs
- Supports multiple commands
- Small (Gzip≈150KB)
- no dependencies
Demo
Basic usage
For more commands, please refer to the Gifsicle Manual.
Complete example
gifsicleTool.js By combining multiple commands, it can complete more practical functions.
- Merge after modifying size
- Overlay Mode Resize
- Parse Gif information
- play backwards
- Export all frames
- Cut excess transparency
Quick start
npm install
$ npm i gifsicle-wasm-browser --save
import gifsicle from "gifsicle-wasm-browser";
gifsicle.run({
input: [{
file: "./cat.gif",
name: "1.gif",
}],
command: ["--resize 100x_ 1.gif -o /out/out.gif"],
})
.then(async(d) => {
console.log(d);
// [File]
});
cdn
<script type="module">
import gifsicle from 'https://unpkg.com/gifsicle-wasm-browser/dist/gifsical.min.js'
// or
import gifsicle from 'https://cdn.jsdelivr.net/npm/gifsicle-wasm-browser/dist/gifsicle.min.js'
...
})
</script>
Api
gifsicle.run()
input
Array
: input Gif filefile
String
: the web url of the GIFFile
,Blob
,ArrayBuffer
: local files obtained via<input type=load />
name
String
: the filename that will be used incommand
command
Array
: command to execute
folder
Array
: (optional) folder name to be used incommand
isStrict
Boolean
: (optional)command
ends immediately on error- default:
false
Tips
name
ininput
can be customized, but cannot be repeated.- The last line of
command
must contain-o /out/**.gif
, - The default available directories are
/
,/out
,/tem
, whencommand
is executed, all files in/out
will be exported command
will be executed one by one in sequence, please use multiplegifsicle.run()
if you need to process multiple GIFs at the same time. Execute sequentially | Execute simultaneously
Author
gifsicle-wasm-browser is @renzhezhilu at wasm-codecs/gifsicle and Developed on the basis of gifsicle.
To do
- [x] single Gif input and output
- [x] Multiple Gif input and output (full version)
- [x] Npm
- [ ] Multi-core processing (SharedArrayBuffer)