resize · crop · reformat · pixel grids

Any image in.
Any image out.

Drop a URL or upload a file, crop it however you like, pick a size and a format, and ship it. Need a 32×32 sprite or a 2048-wide WebP? Same tool.

All-in-one image tool

Resize, crop, and convert any image

Pick a tool on the left, or use them all in one go. Same engine, same file. No upload required twice.

Converter

/convert-image
  1. 1Source
  2. 2Crop
  3. 3Size
  4. 4Format
  5. 5Finish
Step 1 · Source

Choose your image

Paste a URL or drop a file from your computer. PNG, JPG, WebP, GIF, and BMP all work.

Try an example

Click any image to load it into the converter.

How it works

Four steps from raw image to ready-to-ship asset.

01

Pick a source

Drop a URL or upload from disk. Anything Pillow can open works — PNG, JPG, WebP, GIF, BMP.

02

Crop it

Drag the crop box, lock the aspect to your output ratio, or hit Full to use the whole image.

03

Set dimensions

Any size up to 4096. Lock the aspect to scale proportionally. Presets for common sprite sizes.

04

Ship the format

Download as PNG, JPEG, WebP, BMP, or GIF — or grab the raw pixel grid as JSON / Lua / hex.

API

One endpoint, backward compatible. Omit everything and you still get a 32×32 JSON pixel grid.

GET / POST /convert-image
url=<image url>          required when no file uploaded
file=<multipart upload>   POST alternative to url
width=1..4096            default 32
height=1..4096           default 32
format=png|jpeg|webp|bmp|gif|json   default json
mode=crop|stretch|fit    default crop
simple=true|false        nearest-neighbour pixel mode
crop_x,crop_y,crop_w,crop_h     pre-crop in source pixels
200 image/<format> · or application/json
{
  "pixels": [{ "R":0, "G":0, "B":0 }, ...],
  "final_size": [w, h],
  "original_size": [w, h],
  "resize_method": "crop",
  "processing_time": 0.04
}