- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to crop an image using crop() function in Node Jimp?
NodeJS – Crop() is an inbuilt function that is used to crop the images. We can use crop to select/crop an image within specified coordinates and dimnesions.
Syntax
crop( x, y, w, h, cb )
Definition of crop() paramters
x – It will hold the value of x co-ordinate of cropping. (Required)
y – It will hold the value of y co-ordinate of cropping. (Required)
w – This parameter is used to store the width of the cropping image. (Required)
h – This parameter is used to store the height of the cropping image. (Required)
cb – This is an optional parameter that can be invoked after the compilation is complete.
Input Image
Using Node JIMP – CROP()
Before proceeding to use crop() functions, please check that the following statements are already executed for setting up the environment.
npm init -y // Initialising the Node environment
npm install jimp --save // Installing the jimp dependency
Create a crop.js file and copy-paste the following code snippet in it.
Use node crop.js to run the code.
Note − The method name should match with the JS file name. Only then it will be able to call the desired method.
Example
const Jimp = require('jimp') ; async function crop() { // Function name is same as of file name // Reading Image const image = await Jimp.read ('/home/jimp/tutorials_point_img.jpg'); image.crop(100, 50, 470, 270) .write('/home/jimp/crop.jpg'); } crop(); // Calling the function here using async console.log("Image is processed successfully");
Output
Using Node JIMP – CROP() with 'cb' optional parameters
Example
const Jimp = require('jimp') ; async function crop() { // Reading Image const image = await Jimp.read ('/home/jimp/tutorials_point_img.jpg'); // Checking if any error occurs while cropping image.crop(150, 0, 1000, 1800, function(err){ if (err) throw err; }) .write('/home/jimp/crop.jpg'); } crop(); console.log("Image is processed successfully");
Output
/home/jimp/ >> node crop.js // On running the above code snippet Image is processed successfully (node:194779) UnhandledPromiseRejectionWarning: RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 1119996. Received 1120040 at boundsError (internal/buffer.js:49:9) at Buffer.readUInt32BE (internal/buffer.js:192:5) at Jimp.<anonymous> (/home/jimp/node_modules/@jimp/plugincrop/dist/index.js:43:37) at scan (/home/jimp/node_modules/@jimp/utils/dist/index.js:53:9) at Jimp.scanQuiet (/home/jimp/node_modules/@jimp/core/dist/index.js:1262:32) at Jimp.cropQuiet (/home/jimp/node_modules/@jimp/plugincrop/dist/index.js:42:12)