Do you need to convert a SVG file to the Portable Network Graphic (PNG) format? This article will walk you through how to do that.
We'll use Node.js as our coding language of choice and the Sharp npm package to do most of the heavy lifting for us.
First, you need to install the npm package. You can install it with either the npm or yarn command below:
Npm
$ npm install sharp --save
Yarn
$ yarn add sharp
If everything went as planned, you should now have the Sharp npm package installed.
Now we're ready to start writing some code and converting an image! Make sure you have a SVG file in the root of your project directory that we can play around with.
Using the Sharp npm package, here is the full code:
Node.js const sharp = require("sharp") sharp("file.svg") .png() .toFile("new-file.png") .then(function(info) { console.log(info) }) .catch(function(err) { console.log(err) })
Let's break down each part of the code:
file.svg
file, convert it to a PNG and write the new PNG file to your directory with the .toFile()
function.info
for the file once it has been written to our directory..catch()
method to catch and console.log()
any errors.When you run the code, you should get a similar output to this:
Output { format: 'png', width: 2500, height: 527, channels: 4, premultiplied: false, size: 47194 }
You should also see the new PNG file in your project directory.
There are also additional options you can pass to the .png()
method to alter the output image. These include the compression level, quality, colors, and more. You can check them out in their documentation.
Hopefully, this article helped you in your coding endeavors!
Thanks for reading ❤
If you liked this post, share it with all of your programming buddies!
Follow us on Facebook | Twitter
☞ The Complete Node.js Developer Course (3rd Edition)
☞ Angular & NodeJS - The MEAN Stack Guide
☞ NodeJS - The Complete Guide (incl. MVC, REST APIs, GraphQL)
☞ Best 50 Nodejs interview questions from Beginners to Advanced in 2019
☞ Node.js 12: The future of server-side JavaScript
☞ An Introduction to Node.js Design Patterns
#node-js #image