Loading...
Loading...
Rotate any photo by exact degrees, flip horizontally or vertically, and export the result at full source resolution — no upload required.
JPG, PNG, WebP, GIF, BMP, or AVIF up to 25 MB.
Supported: JPG, PNG, WebP, GIF, BMP, AVIF.
An image rotator lets you spin a photo to a precise angle and mirror it along its horizontal or vertical axis. Use it to fix sideways photos that imported in the wrong orientation, level a tilted horizon to within a single degree, mirror selfies that were captured back-to-front, or generate flipped variants for design layouts and side-by-side comparisons. This tool runs entirely inside your browser using the HTML Canvas API, so the original file never leaves your device, and exports are saved at the original pixel dimensions with no quality loss for PNG and configurable JPG/WebP compression.
Drag a JPG, PNG, WebP, GIF, BMP, or AVIF file onto the drop zone, or click Choose image to open the file picker.
Use the Rotate left or Rotate right buttons for quick 90° turns, or drag the slider for any angle between -180° and +180°.
Toggle Flip horizontal to mirror left-to-right, or Flip vertical to mirror top-to-bottom. Combine with rotation as needed.
Choose PNG to keep transparency at the rotated corners, or JPG/WebP for smaller file sizes (with a quality slider).
Click Download rotated image to save the file at full source resolution to your device.
For a rotation of θ degrees, the bounding box of the rotated image grows to: newWidth = |w · cos θ| + |h · sin θ| newHeight = |w · sin θ| + |h · cos θ| The canvas is resized to that bounding box, the origin is moved to its center, the context is rotated by θ, optionally scaled by (-1, 1) or (1, -1) to flip, and the image is drawn centered at (-w/2, -h/2). This guarantees no corner clipping at arbitrary angles while keeping rotations of 90° and 180° pixel-exact.
Multiples of 90° produce a perfect pixel-for-pixel copy with no resampling. At any other angle, bilinear filtering smooths the rotated edges; PNG output preserves transparent corners while JPG/WebP fill them with the chosen background color.
Reference: MDN — CanvasRenderingContext2D.rotate()
| Source | After rotation |
|---|---|
4000×3000 photo, rotate 90° | 3000×4000 photo (portrait) Pixel-exact rotation, no resampling. |
1920×1080 banner, rotate 7° | 2037×1262 (auto-fit canvas) Tilted corners filled with chosen background. |
Selfie, flip horizontal | Mirror-image selfie Same dimensions, no rotation applied. |
Cut out the subject from any photo with on-device AI — no upload required.
Shrink JPG, PNG, or WebP files in your browser with an interactive quality slider.
Adjust, filter, rotate and crop photos in the browser — no uploads, no watermark.
Compose memes and screenshot collages with real layers — paste, drag, crop, caption, export.
Last updated