gizmobench
BrowseDaily

Image Inverter

Choose a picture, drop one onto the panel or paste a screenshot to create a colour negative. Each red, green and blue value becomes 255 minus itself: black turns white, white turns black and red turns cyan. Choose Grayscale first for a monochrome negative. PNG keeps transparency; JPEG fills it with white and applies lossy compression. Your image stays in this browser, with no upload or account.

Originalnothing chosen

no image yet

Invertedwaiting

the negative appears here

· drop one here · or paste a screenshot

Never uploadedTransparency keptNo accountUp to 25 megapixels
Grayscale first
Save as
Size
no image yet
  • Pure black pixel0, 0, 0
    white: 255, 255, 255
  • A transparent pixelalpha 0
    still transparent, alpha 0
  • Inverted, then inverted againthe same bytes twice through
    identical to the original

Those three lines are printed by running the same code your picture goes through, not typed in by hand.

Your image stays on this device. On the same decoded pixels with grayscale off, applying 255 minus each RGB value twice restores those RGB values, with alpha unchanged. Downloaded files may differ because of JPEG encoding and canvas transparency rounding. Grayscale uses the Rec. 709 luminance weights and is not reversible. There is no upload, no account and no watermark, and no image byte is handed to analytics either: the only thing the page records is that the tool was used.

Common questions

How do I invert the colours of an image?
Press Choose image, drop a file anywhere on the dark stage, or paste a screenshot from the clipboard. The picture is decoded in this tab, drawn onto a canvas, read back as pixels and inverted straight away: the negative sits in the Inverted pane, on a checkerboard so you can see any transparency. Download saves it with your own file name and -inverted on the end, as a PNG or a JPEG. There is no upload step, no queue and no Convert button to wait on.
Does inverting keep a transparent background?
Yes, when you save as PNG. The inverter changes the red, green and blue channels while leaving alpha unchanged, including partly transparent edges. Browser canvas rounding can change RGB values in partly transparent pixels. JPEG has no alpha channel, so transparent areas are filled with white before encoding; the page tells you before downloading.
Can I invert only the brightness and not the colours?
Set Grayscale first to Yes. Each pixel is flattened to a single brightness value using the Rec. 709 luminance weights, 0.2126 for red, 0.7152 for green and 0.0722 for blue, and that grey value is the one inverted. A pure red pixel comes out at 201 in all three channels, because red 255 gives a luminance of 54.213, which rounds to 54, and 255 take 54 is 201. The result is a black and white negative, the way a film negative of a monochrome print looks. This is the one setting that throws information away, so a second pass with it on will not bring your colours back.
Will inverting twice give me the original back?
In the arithmetic, exactly. Subtracting a whole number from 255 twice returns the number you started with, with no rounding anywhere in between, so a second pass over the same pixels gives byte for byte what went in. Three practical caveats when you do it through files rather than in one sitting. Grayscale first is not reversible, because the colour is gone after the first pass. A JPEG is re-encoded every time it is saved, so a round trip through JPEG comes back close but not identical: save as PNG if you want to check the claim. And a partly transparent pixel can shift by a value or two, because a browser canvas stores colour multiplied by its alpha and has to divide that back out when the page reads the pixels.
Is my image uploaded?
No. The file is read by the page itself, decoded by your browser, drawn onto a canvas and inverted in memory; there is no server in this and no endpoint for an image to go to. Nothing about the picture is sent to analytics either, and nothing about it is written to your browser's storage: the tool remembers your grayscale and format choices between visits, and that is all it remembers.
How large an image can it handle?
Up to 25 megapixels in one pass, which is about 6,000 by 4,000 pixels, the full frame of a 24 megapixel camera. There is no limit on how many bytes the file is. Past 25 megapixels the tool says the size it read, says the cap and asks you to scale the picture down first, instead of locking up the tab trying. One more thing worth knowing: an animated GIF is inverted as the single frame the browser decodes, not as an animation.
How do I invert a black-and-white image or change black to white?
For an image that is already black and white, leave Grayscale first set to No: black becomes white, white becomes black and shades of grey are reversed. For a colour image, choose Yes to make a monochrome negative. This transforms the whole image; it does not replace only black while preserving every other colour. Save as PNG to keep the decoded opaque pixel values without JPEG compression.
Does this flip or mirror the image?
No. This page inverts colours without moving pixels. Use Image Flipper to mirror left to right, mirror top to bottom or rotate by a right angle. If you need both effects, download a PNG from one tool and open it in the other.
Can I invert several images at once?
This tool processes one image at a time. Download the result and choose the next picture; there is no bulk upload, batch queue or ZIP export. Grayscale and output-format choices are remembered for the next image.

On the same decoded pixels with grayscale off, applying 255 minus each RGB value twice restores those RGB values, with alpha unchanged. Downloaded files may differ because of JPEG encoding and canvas transparency rounding. Grayscale uses the Rec. 709 luminance weights and is not reversible.