Expand many photos to one shape

Give a whole folder of photos the same shape in one go — every photo whole, none cropped.

or drop a photo here · paste works too

Drop a folder or several photos at once. Nothing leaves this tab.

  • Free
  • No sign-up
  • Photos stay on your device
A tall portrait expanded to 16:9 with blurred edges on both sides and nothing cropped.
The photo before it was expandedBefore
After Tall photo → 16:9 · blurred edges

A folder at mixed ratios, every file out at the shape you need — each with its own margins, none cropped — with a preflight before it starts and a ZIP and manifest at the end.

Drop a folder, several files, or even one: the folder panel opens with a square target and fills decided per picture. Every file is processed one or two at a time and released before the next.

Four photos from one folder, made square for a marketplace

Each file's own margins, computed by this site's own geometry
PhotoSquare canvasGrew
Portrait phone photo, 3,024 × 4,0324,032 × 4,032+1,008 wide
Landscape phone photo, 4,032 × 3,0244,032 × 4,032+1,008 tall
Screenshot, 1,170 × 2,5322,532 × 2,532+1,362 wide
Product shot, 2,000 × 1,6002,000 × 2,000+400 tall

Memory, and why it does not fall over

Each file is decoded, painted, encoded and released before the next begins — two at a time on a device with at least four cores and 8 GB of memory, one at a time everywhere else — so a folder of 12-megapixel photos taken to 21:9 does not hold forty oversized canvases at once. The finished files wait as compressed bytes until you save the ZIP.

The awkward questions

Can I expand a whole folder of photos to one shape?

Yes — drop the folder (or choose it) and name the shape: a marketplace square, Instagram 4:5, a 9:16 story, a 4 × 6 print, or any ratio or exact canvas. Each photo gets its own margins on whichever axis is short, so a portrait and a landscape in the same folder both arrive at the shape and neither is cropped.

What does the preflight tell me?

Before anything runs: how many files and how much came in, the target and fill, a rough range for the output size, and any file whose canvas this browser could not draw — read from each file's header, without decoding anything.

Can one photo get a different fill?

Yes. Every row has its own fill and anchor menus; leave them on “as the set” and the run's choice applies. With the fill set to “decide per picture”, each file's own edges choose: a flat edge takes the stretch, a busy one the blurred cover, a see-through one a sampled colour.

What if one file fails?

It costs a line in the list, not the run. Failed files are listed with the reason, and “Retry failed” runs just those again.

Can I hit a KB band for every file?

Yes — tick “Aim every file at a KB band” and pick a form's band (SSC or bank photo, 20–50 KB, for example). Each file is re-encoded quality first; no junk bytes are ever added, and each row says how its size was reached.

Why is the AI fill not offered for a folder?

A folder would meet the model's limits on some files and not others, and every file that passed would cost seconds per 512-pixel square. It is offered one photo at a time instead.

Related