UNPKG

594 BJavaScriptView Raw
1'use strict';
2
3/* eslint-disable consistent-return */
4
5var str2arr = require('../common').str2arr;
6var sliceEq = require('../common').sliceEq;
7var readUInt16LE = require('../common').readUInt16LE;
8
9
10var SIG_GIF87a = str2arr('GIF87a');
11var SIG_GIF89a = str2arr('GIF89a');
12
13
14module.exports = function (data) {
15 if (data.length < 10) return;
16
17 if (!sliceEq(data, 0, SIG_GIF87a) && !sliceEq(data, 0, SIG_GIF89a)) return;
18
19 return {
20 width: readUInt16LE(data, 6),
21 height: readUInt16LE(data, 8),
22 type: 'gif',
23 mime: 'image/gif',
24 wUnits: 'px',
25 hUnits: 'px'
26 };
27};