index.js 491 B

1234567891011121314151617181920212223242526
  1. import GIF from 'omggif';
  2. const MIME_TYPE = 'image/gif';
  3. export default () => ({
  4. mime: { [MIME_TYPE]: ['gif'] },
  5. constants: {
  6. MIME_GIF: MIME_TYPE
  7. },
  8. decoders: {
  9. [MIME_TYPE]: data => {
  10. const gifObj = new GIF.GifReader(data);
  11. const gifData = Buffer.alloc(gifObj.width * gifObj.height * 4);
  12. gifObj.decodeAndBlitFrameRGBA(0, gifData);
  13. return {
  14. data: gifData,
  15. width: gifObj.width,
  16. height: gifObj.height
  17. };
  18. }
  19. }
  20. });