imghdr
The
imghdr
module determines the type of image contained in a file or octet-streams(object of Buffer), inspired by Python's imghdr module.
Installation
npm install imghdr
Usage
var imghdr = ; var imgPath = __dirname + '/meituan.jpg';var ext = 'jpg'; var exts = imghdr;console;// => ['jpg', 'jpeg'] if exts === -1 console; else console;// => 'OK'
API
The imghdr
module defines the following function:
imghdr.what(imgPath)
Tests the image data contained in the file named by
imgPath
, and returns an array of strings describing the image type.imgPath
can be a object of Buffer.
Value | Image format |
---|---|
"png" | Portable Network Graphics |
"jpeg","jpg" | JPEG data in JFIF or Exif formats |
"gif" | GIF 87a and 89a Files |
"tiff" | Tagged Image File Format |
"bmp" | BMP files |
"webp" | WebP files |
You can extend the list of file types imghdr
can recognize by appending to this variable:
imghdr.tests
A list of functions performing the individual tests. Each function takes a argument: the octet-streams(object of Buffer).The test function should return an array of strings describing the image type if the test succeeded, or
[]
if it failed.
Example:
{ var sigBuf = 0x6c 0x6f 0x76 0x65; var testSigBuf = buf; return sigBuf == testSigBuf ? 'custom' : ;} // add to list of `tests`imghdrtests; var testBuf = 0x49 0x20 0x6c 0x6f 0x76 0x65 0x20 0x79 0x6f 0x75;imghdr;// => ['custom']
Reference
- http://www.filesignatures.net
- http://www.garykessler.net/library/file_sigs.html
- https://docs.python.org/3.4/library/imghdr.html
LICENSE
MIT