
Security News
New CVE Forecasting Tool Predicts 47,000 Disclosures in 2025
CVEForecast.org uses machine learning to project a record-breaking surge in vulnerability disclosures in 2025.
victor-image-resize
Advanced tools
victor Image Resize is a JavaScript library for image resizing. It allows you to resize images to given size by using the HTML5 Canvas API.
You can install victor Image Resize by using npm
.
npm install --save-dev victor-image-resize
You can simply import victor class and call static resize
method to resize an image.
import victor from 'victor-image-resize';
victor.resize('image.jpg', {
scale: 50
})
.then(canvas => victor.toImage(canvas))
.then(image => {
document.body.appendChild(image);
});
You can also add the script file into your HTML.
<!DOCTYPE html>
<html lang="en">
<head></head>
<body>
<script src="/node_modules/victor-image-resize/dist/victor.min.js"></script>
<script>
victor.resize('image.jpg', {
scale: 50
})
.then(canvas => victor.toImage(canvas))
.then(image => {
document.body.appendChild(image);
});
</script>
</body>
</html>
This repository contains a simple demo project that allows you to give it a try and see the results.
If you want to run the demo, clone the repository and go to the project directory.
$ git clone https://github.com/cevadtokatli/victor-image-resize.git
$ cd victor-image-resize/demo/dist
Open the demo file in your browser.
$ open index.html
All methods of victor are static and return a Promise
to be chained.
static Promise resize(Image, Options)
Resizes given image and returns a Promise that resolves a canvas element which can be converted to a file, image, blob or base64 code by using victor' convert methods (toImage
, toFile
, toBlob
, toBase64
).
Image {HTMLImageElement|HTMLCanvasElement|File|String}
Image to be resized. It can be given in five different ways.
An Image Element:
var img = new Image();
img.addEventListener('load', function() {
victor.resize(img);
});
img.src = "image.jpg";
victor.resize(document.querySelector('img'));
A Canvas Element:
var canvas = document.querySelector('canvas');
canvas.getContext('2d').drawImage(img, 0, 0, img.width, img.height);
victor.resize(canvas);
A File:
var file = document.querySelector('input[type="file"]').files[0];
victor.resize(file)
An Image Source (String):
victor.resize('path/image.jpg');
A Base64 Code (String):
victor.resize('data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQAB...');
Options {Object}
New size or scale.
Options Properties:
Width {Number}
It must be a px value. If value is null, resizes width according to height.
Height {Number}
It must be a px value. If value is null, resizes height according to width.
Scale {Number}
It scales images in both dimensions at given ratio.
static Promise toImage(HTMLCanvasElement canvas)
Converts the given canvas element to an image element. Returns a Promise
that resolves an image element.
static Promise toFile(HTMLCanvasElement canvas, String fileName)
Converts the given canvas element to a file. Returns a Promise
that resolves a file.
static Promise toBlob(HTMLCanvasElement canvas)
Converts the given canvas element to a blob. Returns a Promise
that resolves a blob.
static Promise toBase64(HTMLCanvasElement canvas)
Converts the given canvas element to base64. Returns a Promise
that resolves base64.
IE 10 is not supported and patches to fix problems will not be accepted.
victor Image Resize is provided under the MIT License.
FAQs
Canvas image resize for browser
The npm package victor-image-resize receives a total of 4 weekly downloads. As such, victor-image-resize popularity was classified as not popular.
We found that victor-image-resize demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CVEForecast.org uses machine learning to project a record-breaking surge in vulnerability disclosures in 2025.
Security News
Browserslist-rs now uses static data to reduce binary size by over 1MB, improving memory use and performance for Rust-based frontend tools.
Research
Security News
Eight new malicious Firefox extensions impersonate games, steal OAuth tokens, hijack sessions, and exploit browser permissions to spy on users.