A native image editor with the Paint.NET 5.1 workflow, for Linux, Windows and macOS. Layers with the 14 classic blend modes, selections and the magic wand, brushes with pen pressure, adjustments and effects with live preview, branching undo, plugins, and PNG, JPEG, BMP, GIF, TGA, TIFF, WebP, DDS, OpenRaster and .pdn files.
paint.c is an independent clean-room project. It is not affiliated with or endorsed by dotPDN LLC; Paint.NET is their trademark. See NOTICE for the MIT attribution of the Paint.NET 3.36 blend math.
-
Linux, Flatpak: install paint.c (open the file with GNOME Software or KDE Discover; updates arrive with your other apps), or in a terminal:
flatpak install --user https://vancevoj.github.io/paintc-flatpak/io.github.vancevoj.paintc.flatpakref
-
Linux, AppImage, Windows (installer or portable zip) and the source code: the latest release.
-
macOS: build from source (docs/BUILDING.md).
paint.c runs native effect plugins. The official ones below are separate
downloads from the
plugins-v1.0.0 release:
unzip one into your plugins folder (Linux ~/.local/share/paintc/plugins,
Windows %APPDATA%\paintc\plugins, macOS
~/Library/Application Support/paint.c/plugins) and restart paint.c. Each
one re-creates a popular Paint.NET plugin natively; the designs are the
work of the original authors credited in the table and in each plugin's
README.
| Plugin | What it does | Original design (credit) | Linux x86_64 | Windows x64 |
|---|---|---|---|---|
| AA's Assistant | Smooths the jagged edge of a cut-out object so it blends into any background, and doubles as a simple alpha curve. | AA's Assistant by dpy, after an idea by Boude (original) | zip | zip |
| Align Object | Moves the object on a transparent layer to an edge, a corner or the center of the canvas or the selection. | Align Object by xod, helped by MJW (original) | zip | zip |
| Bevel Object | Gives an object on a transparent layer, or a selection, a raised and lit bevelled edge with an optional drop shadow. | Bevel Object and Bevel Selection by BoltBait (Bevel Selection with Ed Harvey) (original) | zip | zip |
| Content Aware Fill | Removes an object or a blemish by filling the selection with texture synthesized from its surroundings. | Content Aware Fill by null54, after Resynthesizer by Lloyd Konneker and the research of Paul Harrison (original) | zip | zip |
| Gradient Mapping | Recolors an image by looking up each pixel's luminosity, color channel, hue, saturation or alpha in a multi-color gradient. | Gradient Mapping by pyrochild (Zach Walker) (original) | zip | zip |
| Grid / Checkerboard | Draws a grid of lines, a checkerboard or a grid of dots with any cell size, line width and two colors with alpha. | Grid Maker by BoltBait and Illnab1024, and Grid & Checker Maker by MadJik (original) | zip | zip |
| Grim Color Reaper | Removes a background color and recovers what was blended with it, so soft edges, glows and shadows become partly transparent without a halo. | Grim Color Reaper by Jotaf, continued as Kill Color Keeper by Pratyush (original) | zip | zip |
| Perspective | Keystone and perspective transforms set by three ratios, vertical or horizontal, as a true perspective or a plain trapezoid. | Perspective by dpy (original) | zip | zip |
| Shape3D | Wraps the image around a 3D sphere, cylinder or box and renders it with a perspective camera, lighting and a highlight. | Shape3D by MKT, with later fixes by MJW and toe_head2001 (original) | zip | zip |
| Water Reflection | Turns the lower part of the selection into a rippled mirror image of what is above a waterline, like a lake reflecting a skyline. | Water Reflection by MadJik, after a reflection script by Tom Jackson (original) | zip | zip |
| All of them | Every plugin above in one zip | zip | zip |
Paint.NET's own plugins are .NET assemblies and cannot be loaded by
paint.c; only native plugins written for paint.c's C interface work.
Checksums are in SHA256SUMS on the release page. Installing, how plugins
work and writing your own: docs/PLUGINS.md.
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release && cmake --build build && ctest --test-dir build
./build/pc_tests # full reference suite