This update is a hotfix for 5.0.4 that fixes loading images that have multiple frames (GIF or TIFF).
These are the release notes for 5.0.4:
This update includes another revamp of Image->Resize’s resampling modes, gamma correction for key parts of the app, higher quality canvas rendering, and a host of other miscellaneous fixes and improvements. In addition, GPU-based effect plugins now default to rendering in linear gamma space (existing plugins are not affected, however!) and have better access to color management information.
Gamma correction is important for maintaining
luminance (brightness, basically) when an image is being processed or rendered. Sometimes this effect is subtle, but in some cases it can be quite pronounced.
First up, in
Image->Resize the resampling mode has been moved to the bottom into an Options section, along with a new “Use gamma correction” checkbox that defaults to enabled:
The
Move Selected Pixels tool has also been upgraded to support this for all resampling modes (although it’s not applicable to Nearest Neighbor), and there is a new Gamma mode choice in the toolbar if you’d rather not use it for whatever reason:
Speaking of which, there is a good test image for this over at
https://forums.getpaint.net/topic/122409-feature-request-gamma-corrected-image-resizing/ . I’ll be using the “128 / 187” image for the next two screenshots.
Next up, all in-app thumbnails and the canvas itself are now using gamma correction. This ensures that luminance (aka brightness) is correctly maintained when you’re zooming out on the image (and thumbnails are basically little zoom-outs of the image). Previously, the reduced size image would get darker in ways that we’ve all just kind of gotten used to over the years (but which is
wrong ).
Without gamma correction, it looks like this in v5.0.3:
With gamma correction in v5.0.4, it looks correct:
This required a bunch of changes to how the canvas renders itself, so while I was in that code I also bumped up the quality of its rendering. When zooming
in to an image, a type of antialiasing is now applied so that the pixelation effect appears more uniform. And when zooming
out, multisampling is used to make the image looking smoother. There are a lot less aliasing artifacts.
It’s hard to show these effects in your browser because things will likely get resized and distorted, but I’ll try. On the left is the original, a cloud bubble drawn into a 128×128 pixel space. Antialiasing was disabled and the brush size was set to 1. The next two images are zoomed at 267%, in v5.0.3 and then in v5.0.4. Notice how the pixelation effect is much more uniform in 5.0.4, eliminating the distortions you see in 5.0.3.
If you’d like to read more about gamma correction and rendering in linear gamma space, here are some resources:
Get the Update
There are two releases of Paint.NET:
- Microsoft Store release (recommended)
- Classic Desktop release
- Download the installer from the website. This is the recommended download if you don’t have Paint.NET installed. It can also be used to update the app.
- If you already have it installed, you should be offered the update automatically within the next week or so, but you can also get it immediately by going to Settings -> Updates -> Check Now.
- Offline Installers and Portable ZIPs are available over on GitHub.
Change Log
Changes since
v5.0.4:
- Fixed a bug that prevented loading images that have multiple frames (GIF, TIFF) (only the first frame is loaded)
Changes since v
5.0.3:
- Improved: Image->Resize has been updated
- The default resampling mode is now Bicubic, which has been updated to use the Catmull-Rom (“Catrom”) cubic filter. This matches the Bicubic mode of the Move Selected Pixels tool (which uses Direct2D’s “HighQualityCubic” mode).
- Added a new resampling mode, “Bicubic (Smooth)”, which has no sharpening. It produces subjectively blurrier results, but is important for scenarios where you need to completely avoid the (usually) subtle ringing artifacts that other modes (Bicubic, Lanczos, and Adaptive) can introduce due to their added sharpness.
- “Adaptive (Best Quality)” has been renamed to “Adaptive (Sharp)” and is no longer the default resampling mode. It is still a very good choice when resizing photos, but whether you use Adaptive, Bicubic, or Lanczos is up to your own personal preference.
- A new option has been added, “Use gamma correction”, which is enabled by default.
- The text box for typing in a percentage now accepts two digits past the decimal point, e.g. 35.79%
- Improved: Move Selected Pixels (free transform) has been updated
- New: Added a “Multisample Bilinear” sampling mode. This has a sharper look than Anisotropic and avoids the “ringing” artifacts that can be apparent when using Bicubic with high-contrast images (like screenshots). However, it doesn’t usually work as well when reducing a selected area to a much smaller size.
- New: Added a “Gamma mode” button in the toolbar to toggle gamma correction on and off. The default is on, which improves the quality of rendering by preserving luminance (brightness).
- Fixed a bug when using Bicubic sampling that would result in added sharpening when resizing the selected area to 1/8th its original size or smaller
- Improved: The rendering quality of the canvas area has been greatly improved
- Gamma correction is now used for mipmap generation and compositing, ensuring consistent luminance (brightness) and higher quality antialiasing.
- Multisampling is now used for antialiasing, which eliminates pixelation distortions when zooming in, and greatly reduces aliasing artifacts when zooming out.
- Improved: Thumbnails within the app now use gamma correction, which ensures consistent luminance (brightness)
- New: GPU effects and plugins now support gamma correction, with linear gamma being the default rendering mode for new plugins.
- This can be changed by overriding OnInitializeRenderInfo() and setting the renderInfo.GpuEffectColorContext property to GpuEffectColorContext.WorkingSpace (the default is WorkingSpaceLinear)
- GPU effect plugins have better access to color management information via the IGpuEffectImage interface and its ColorContext property. All input images (e.g. Environment.SourceImage) are now provided via this interface.
- In addition to the built-in effects that already render with gamma correction, the following built-in effects now also render with gamma correction:
- Adjustments -> Exposure
- Blurs -> Fragment
- Blurs -> Motion Blur
- Blurs -> Radial Blur
- Blurs -> Zoom Blur
- Distort -> Bulge
- Distort -> Crystalize
- Distort -> Dents
- Distort -> Frosted Glass
- Distort -> Pixelate
- Distort -> Polar Inversion
- Distort -> Tile Reflection
- Distort -> Twist
- Layers -> Rotate/Zoom
- Object -> Drop Shadow
- Photo -> Straighten
- Render -> Julia Fractal
- Render -> Mandelbrot Fractal
- Fixed: Ctrl+G has been reinstated as the shortcut key for Image -> Rotate 90° Counter-Clockwise
- Fixed a rendering glitch in Effects -> Distort -> Dents that would sometimes result in rows or columns of incorrectly colored pixels
- Fixed: Some systems were having problems with Paint.NET not appearing in the “Open With” list in Windows File Explorer. This should now be fixed.
- Fixed: When installing an update, the desktop shortcut is no longer recreated. This means you can delete it without it reappearing after every update. This was a bug accidentally reintroduced back in Paint.NET v4.3.
- Increased the maximum zoom range from 1.5625% (1/64) -> 6,400% to 1% -> 10,000%
- Improved the reliability of the wrapper classes for Windows COM libraries (Direct2D, etc.)
- Improved the /ignoreCorruptPDNChunks command-line parameter to allow an additional type of corrupt PDN image to be partially recovered (thanks @null54!)
- Updated the bundled DDSFileTypePlus plugin to version 1.11.8.0, which adds gamma correction for mipmap generation (thanks @null54!)
- Updated the bundled AvifFileType plugin to version 1.1.25.0, which now uses a checkbox to enable lossless compression (thanks @null54!)
- Updated the bundled WebPFileType plugin to version 1.3.17.0, which reduces some confusion when using lossless compression (thanks @null54!)
?