Image Tools

Local Image Resizer

Fit a PNG or JPEG into a maximum width and height while retaining aspect ratio and never enlarging it. Choose an output format and download the re-encoded pixels. Files never upload. Input must have a PNG or baseline/progressive JPEG signature, be at most 12 MiB, have each side at most 8,192 pixels, and contain at most 16 million pixels. Header bounds are checked before decoding and decoded dimensions are checked again.

Files stay in this browser tab and are never uploaded. Limits: PNG or JPEG, 12 MiB, 8,192 px per side, 16 MP.

Your result
Ready when you are.

How to use Local Image Resizer

  1. Choose a file for “PNG or JPEG file (maximum 12 MiB)”. Keep a copy of the original and check the supported file limits below the inputs.
  2. Choose the appropriate “Output format” option for your task.
  3. Enter “JPEG/WebP quality (1–100; ignored for PNG)”, using the units and limits shown in its label.
  4. Choose “Background when flattening to JPEG” using the color picker.
  5. Enter “Maximum width (pixels, 1–8,192)”, using the units and limits shown in its label.
  6. Enter “Maximum height (pixels, 1–8,192)”, using the units and limits shown in its label.
  7. Select Calculate or Process. Review the result and any validation message before copying or downloading available output. Reset clears the result and restores the starting inputs.

Method & assumptions

Scale = min(maxWidth/sourceWidth, maxHeight/sourceHeight, 1); round each scaled dimension, then draw to a bounded canvas and encode.

Worked example

A 2,400 × 1,600 image fitted within 1,200 × 1,200 becomes 1,200 × 800.

Results and projections are informational estimates, not financial, medical, legal, tax, or property advice. Check assumptions, units, rounding, and local requirements independently. Investment illustrations do not guarantee returns. Keep original files and check transformed output before use.

Questions, answered

What happens to orientation, transparency, and metadata?

Canvas re-encoding copies pixels, not source EXIF/GPS or source metadata; the browser encoder may add technical metadata. Animated PNG is rejected; color profiles can change, and EXIF orientation follows browser decoding. JPEG flattens transparency onto the selected background. A modern browser DOM/canvas is required; Node cannot perform these operations.

Does this send my input to a server?

No. This engine processes input locally without network requests. The surrounding website may have its own analytics or scripts; avoid entering sensitive material on an untrusted site. Text fields accept at most 1,000,000 UTF-16 units unless a smaller field limit is stated.