Resize images to exact pixel dimensions
Set an image to an exact pixel width and height — handy for upload limits, thumbnails, avatars, banners and platform-specific size requirements. Lock the aspect ratio to scale proportionally, or unlock it to stretch to precise dimensions. It runs entirely in your browser.
How it works
When you load an image its native dimensions are read and pre-filled. With
Keep aspect ratio on, editing one dimension recomputes the other from the
original ratio, so nothing distorts. On Resize, the tool creates a <canvas>
at your target size, sets imageSmoothingQuality = "high", and draws the source
scaled to fit with ctx.drawImage(img, 0, 0, width, height). It exports with
canvas.toDataURL — PNG is lossless, while JPG and WebP use your quality slider
(JPG is filled white first since it has no alpha).
Example
A 4032×3024 phone photo that a form requires at 800px wide: load it, type
800 into Width with aspect ratio locked — Height auto-fills to 600 — pick
JPG at 90%, and download photo-800x600.jpg. The downscale is sharp thanks
to high-quality smoothing.
| Target | Typical size |
|---|---|
| Avatar / profile | 256×256 or 512×512 |
| Web thumbnail | 400×300 |
| Full-width banner | 1920×600 |
The resize is done with a <canvas> entirely on your device, so it is fast and
your images are never uploaded.