Get unlimited public & private packages + package-based permissions with npm Pro.Get started »

image-thumbnail

1.0.8 • Public • Published

About

Generate an image thumbnail.

NPM

Purpose?

This module will generate an image thumbnail.

By default the thumbnail's file format will be the same than the source file. You can use the jpegOptions option to force output to jpeg.

Usage

imageThumbnail(source, options)

Async/Await (Typescript & ES7)

const imageThumbnail = require('image-thumbnail');
 
try {
    const thumbnail = await imageThumbnail('resources/images/dog.jpg');
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}

Using promises (node 8.x)

const imageThumbnail = require('image-thumbnail');
 
imageThumbnail('resources/images/dog.jpg')
    .then(thumbnail => { console.log(thumbnail) })
    .catch(err => console.error(err));

Examples

From Uri

const imageThumbnail = require('image-thumbnail');
 
try {
    const thumbnail = await imageThumbnail({ uri: 'https://images/dogs.jpg' });
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}

From Base64

const imageThumbnail = require('image-thumbnail');
 
try {
    const thumbnail = await imageThumbnail('/9j/4AAQSkZJRgABAQEBLAEsAAD/4QEERXhpZgAA==');
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}

From Path

const imageThumbnail = require('image-thumbnail');
 
try {
    const thumbnail = await imageThumbnail('resources/images/dog.jpg');
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}

From Buffer

const imageThumbnail = require('image-thumbnail');
 
try {
    const imageBuffer = fs.readFileSync('resources/images/dog.jpg');
 
    const thumbnail = await imageThumbnail(imageBuffer);
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}

From Stream

const imageThumbnail = require('image-thumbnail');
const fs = require('fs');
 
try {
    const stream = fs.createReadStream('resources/images/dog.jpg')
 
    const thumbnail = await imageThumbnail(stream);
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}

Options

  • options:
    • percentage [0-100] - image thumbnail percentage. Default = 10
    • width [number] - image thumbnail width.
    • height [number] - image thumbnail height.
    • responseType ['buffer' || 'base64'] - response output type. Default = 'buffer'
    • jpegOptions [0-100] - Example: { force:true, quality:100 }

Examples

const imageThumbnail = require('image-thumbnail');
 
let options = { percentage: 25, responseType: 'base64' }
 
try {
    const thumbnail = await imageThumbnail('resources/images/dog.jpg', options);
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}
const imageThumbnail = require('image-thumbnail');
 
let options = { width: 100, height: 100, responseType: 'base64' }
 
try {
    const thumbnail = await imageThumbnail('resources/images/dog.jpg', options);
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}
const imageThumbnail = require('image-thumbnail');
 
let options = { width: 100, height: 100, responseType: 'base64', jpegOptions: { force:true, quality:90 } }
 
try {
    const thumbnail = await imageThumbnail('resources/images/dog.jpg', options);
    console.log(thumbnail);
} catch (err) {
    console.error(err);
}

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Install

npm i image-thumbnail

DownloadsWeekly Downloads

3,597

Version

1.0.8

License

MIT

Unpacked Size

203 kB

Total Files

19

Last publish

Collaborators

  • avatar