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.
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- 1Source
- 2Crop
- 3Size
- 4Format
- 5Finish
Choose your image
Paste a URL or drop a file from your computer. PNG, JPG, WebP, GIF, and BMP all work.
Set your dimensions
Type a custom size, or pick a sprite preset. Lock the ratio to scale proportionally.
Pick an output format
Each format is best for a different job. Click a card to choose.
How should we resize?
Tell PIXL what to do when the input shape doesn't match your output ratio.
Pixel art & advanced›
Best for sprites and low-res art. Keeps crisp edges instead of smoothing them.
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.
Pick a source
Drop a URL or upload from disk. Anything Pillow can open works — PNG, JPG, WebP, GIF, BMP.
Crop it
Drag the crop box, lock the aspect to your output ratio, or hit Full to use the whole image.
Set dimensions
Any size up to 4096. Lock the aspect to scale proportionally. Presets for common sprite sizes.
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.
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
{
"pixels": [{ "R":0, "G":0, "B":0 }, ...],
"final_size": [w, h],
"original_size": [w, h],
"resize_method": "crop",
"processing_time": 0.04
}