evanw / skew-nanojpeg

A port of the NanoJPEG library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

JavaScript JPEG Parser

This is a port of Martin Fiedler's NanoJPEG library from C to Skew. It supports both grayscale and RGB JPEGs but doesn't support progressive or CMYK JPEGs. I've also added automatic EXIF orientation correction. For development, first install the compiler using npm install, then invoke the compiler using npm run build.

Usage:

var encoded; // Input: a JPEG file as a Uint8Array
var decoded = decodeJPEG(encoded); // Or "require('nanojpeg').decodeJPEG(encoded);" for node
if (decoded !== null) {
  console.log('width', decoded.width);
  console.log('height', decoded.height);
  console.log('rgb', decoded.rgb);
}

About

A port of the NanoJPEG library


Languages

Language:HTML 100.0%