paint.net 4.3 alpha (build 7916)

As it turns out, the plugin loading error that @AndrewDavid reported with build 7906 was caused by a much deeper issue in the plugin loading system. I’ve significantly rewritten how plugins are loaded and the result is a much more robust and performant system.

I’ve also greatly optimized the memory usage when custom shapes are installed. Previously, the declarative XAML would result in possibly hundreds of thousands of small boxed objects on the heap (floats, points, etc.) due to how the WPF-based object model. Now the shapes are compiled to a Direct2D-compatible format, reducing the memory used and the number of objects littering the heap (instead of 100’s of thousands, now maybe just a few thousand). I was actually seeing jumps and spikes in paintbrush drawings, presumably due to added GC stress, and this now seems to be eliminated.

Lastly, you can now specify additional directories to load plugins from, which means you can use something like OneDrive to host your plugins which will then be sync’d to all of your systems. For security reasons you must edit some registry entries to enable this feature. See here for more details.

I think we’re finally in the home stretch for 4.3!

Get the update

To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app).

image.png

For direct download links, please visit the forum.

Changes since 4.3 alpha build 7906:

  • New: Additional directories can now be specified for plugin discovery, which enables the use of OneDrive for storing plugins. See here for more info: https://forums.getpaint.net/topic/118583-feature-request-set-custom-app-files-plugins-folder/?do=findComment&comment=586013
    • Note that this does not work with the portable version of the app, but you can install plugins next to the app so it isn’t necessary.
  • Optimized memory use when custom shapes are installed so they don’t litter the heap with hundreds of thousands of boxed value types (e.g. floats and points)
  • Fixed a whole bunch of issues related to plugin loading, such as random OptionBasedLibrary-based plugins not loading (race condition in the loader)
  • Optimized the performance of plugin loading to prioritize "expensive" plugins so they don’t extend the critical path any more than necessary
  • Changed: FileType.IsReflexive() is now deprecated via [Obsolete], and is no longer honored. However, the Save Configuration dialog will no longer try to generate previews for FileTypes that do not specify any file extensions for loading, which is what this method was mostly being used for.

Enjoy!

paint.net 4.3 alpha (build 7906)

This update improves legacy plugin compatibility and fixes an issue with the Effects and Adjustments menus.

Also, the legacy plugin cache has been disabled for now due to a security concern. You can enable it by setting the following registry key to "true": HKEY_LOCAL_MACHINE \ Software \ paint.net \ "Plugins/EnablePatchedAssemblyCache". This is only necessary if you feel like the app starts way too slow, and you have several legacy plugins installed.

Get the update

To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app).

image.png

For direct download links, please visit the forum.

Changes since 4.3 alpha build 7904:

  • Fixed compatibility with Shape3D v1.2.6.3 plugin
  • Fixed compatibility with FileType plugins that use OptionBasedLibrary, such as ImPDF.Open.FileType and ImPS,EPS,AI.Open.FileType
  • Fixed an issue where the Effects or Adjustments menus would be blank, and keyboard shortcuts for adjustments would crash the app

paint.net 4.3 alpha (build 7904)

This update fixes a few crashes and greatly improves compatibility with legacy plugins. This compatibility is being accomplished by hot-patching the code (IL) in the DLLs, and it can be CPU and disk intensive the first time the app is launched after updating. After that, the hot-patched DLLs are cached and will load much faster (until the first launch of the next app update).

There is still ongoing work to make sure as many legacy plugins as possible can be made to work. See this thread for more details: https://forums.getpaint.net/topic/118529-plugins-that-fail-in-the-43-alpha-builds-of-paintnet/

Get the update

To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app).

image.png

For direct download links, please visit the forum.

Changes since 4.3 alpha build 7894.40357:

  • Fixed a crash when using Image sampling mode with the Magic Wand or Paint Bucket tool
  • Fixed a rendering bug in the Gradient Tool when using Transparency Mode
  • Fixed compatibility with many old plugins, including: Shape3D, Planetoid, ClusterClearEffect, Shape Maker, Scribble, LensFlare, GraphPaper, BrushFactory (v2.0.2 and earlier), BrushFilter, CircularText, ColorHarmonies, ColorMatrix, Ed Harvey’s Classic Dents, EditableText, CustomBrushesMini, SimonBrown’s plugin pack, and any effect plugin using OptionBasedLibrary v0.7.9 or earlier.
    • If you have these plugins installed, startup performance after updating the app will be slower as the old plugins are patched and placed into a cache. Subsequent app launches will be faster.

paint.net 4.3 alpha (build 7894.40357)

This is a hotfix for 4.3 alpha build 4894, which was published yesterday.

Get the update

To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app).

image.png

For direct download links, please visit the forum.

Changes since 4.3 alpha build 4894:

  • Fixed the Magic Wand tool producing glitchy results when used with a combine mode
  • Fixed the PluginSupportInfoAttribute’s properties being read-only

paint.net 4.3 alpha (build 7894)

There’s quite a lot to like in this build. Primarily, I’ve spent some time optimizing the snot out of the Magic Wand and Paint Bucket tools. They are now immensely faster, which you’ll especially be able to notice when working with larger image. I’ve written about this in more detail over on Twitter: https://twitter.com/rickbrewPDN/status/1424902298367451137

For this update I’m also switching over to something called self-contained deployment. This means that installing .NET is no longer required, as all the necessary files are bundled with the app. You should not see any change in functionality, this is a "transparent" change. The download size and disk space requirements are much larger, but it simplifies a whole of things that have been problematic over the years. I’m not 100% sure I’m going to stick with this, but it’s something I’d like to keep as long as I don’t get some warning from my hosting provider about my bandwidth usage. Startup performance should be slightly (5%) improved as a result of tighter ahead-of-time compilation.

You’ll note, however, that the download link for the installer is quite small — only about 1.7MB — because I’m testing a new "web" installer. What you’re downloading here is a stub installer that will download the rest of the app and then install it. The reason for doing this now is that I need to make sure it gets some test coverage before I utilize it later for folks who will be updating from pre-4.3 to 4.3+. The web installer is also really important to make sure folks who’ve installed pre-4.3 on ARM64 will get the correct native build. Before, the x86/x64 version would be used on ARM64 and would run emulated, but now this will permit those devices to smoothly transition to the native ARM64 build.

Get the update

To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app).

image.png

For direct download links, please visit the forum.

Changes since 4.3 alpha build 7881:

  • Improved performance of the Magic Wand tool by a substantial amount overall
  • Improved performance of the Paint Bucket tool by a substantial amount overall
  • Improved performance of the Paint Bucket when changing the color or certain other toolbar settings by not recalculating the stencil buffer for the filled area. Changes should now be reflected immediately.
  • Improved: Plugins are now loaded into isolated AssemblyLoadContexts, which improves stability and resiliency to various problems with versioning, loading dependencies, or incorrect installation.
  • Fixed a rendering bug in the Gradient Tool, first reported here: https://forums.getpaint.net/topic/118486-paintnet-43-alpha-build-7881/?do=findComment&comment=585139 (regression from 4.2.16)
  • Fixed a crash when trying to draw a fixed-size rectangle selection that was larger than the image
  • Fixed a crash with the Shapes dropdown, which was due to a bug in WinForms
  • Fixed a bug with the Tolerance slider where both 58% and 59% would be displayed as 58%, due to a rounding issue. The correct value was actually being used, it just wasn’t being displayed correctly.
  • Added a /disablePlugins command-line argument to aid in troubleshooting various issues with app startup and incorrect plugin installation
  • Changed: The requirement to have SSSE3 on x86/x64 has been reverted to just SSE2. However, CPUs without SSSE3 are no longer being optimized for and will run slower as a result.
  • Updated the bundled AvidFileType plugin to v1.1.15.0, courtesy of @null54, which includes support for multi-layer AVIF files. See the project’s GitHub Releases page for more information.

Here are the other changes that 4.3 has when compared to 4.2.16:

  • New: The app has been migrated to .NET 5, and performance has been greatly improved as a result.
  • New: ARM64 is now natively supported
  • Installation is much faster now due to no longer needing the "Optimizing performance for your system" stage (NGEN has been replaced with ReadyToRun via crossgen).
  • Portable ZIPs are now officially available, utilizing self-contained deployment, and do not require the installation of .NET 5. You must manually update to newer versions of the app, however.
  • Improved performance of most effects and other compute-intensive tasks by about 20% on average, due to .NET 5’s improved code generation
  • Improved: Many areas of the app have been optimized to use SIMD (SSE2/3/4.1, AVX2) on x86/x64
    • Drawing on an image with a large number of layers is faster
    • Drawing with the Gradient Tool’s alpha mode is faster
    • Drawing with the Recolor tool is faster
    • Drawing with the Erase or Clone Stamp tool is faster when using a color whose alpha value is less than 255
    • Drawing with the Overwrite blend mode is faster
    • Drawing with the Shapes tool is faster, due to improved compositing performance
    • Drawing with a brush tool without antialiasing is faster
    • Tile compression has lower overhead due to being optimized for SSE2 and AVX2
    • Working with complex selections is faster
    • Many other optimizations all throughout the application and rendering engine
  • Improved: Selection antialiasing quality is now better by way of using a 4×4 super sampling filter instead of 3×3. The code has also been optimized to use SSSE3 on x86/x64.
  • Improved: Performance should be significantly better on systems without HyperThreading (by reserving 1 core for the UI), and also a bit better on systems with it (by utilizing more of the logical cores)
  • Improved: Effect and File Type plugins can now be organized into folders — the plugin loader will recursively search for DLLs up to 1 folder deep
  • Fixed a bug in Polar Inversion that was causing hangs
  • Improved performance of Polar Inversion by 3x, due to the aforementioned bug fix (and a little bit is due to .NET 5)
  • Fixed: There were some issues with zooming in/out using the keyboard, where the anchoring (centering) point was not calculated correctly, causing the canvas to drift in the wrong direction.
  • Fixed a bug when saving with "Auto Detect" bit-depth that was causing fidelity loss on some images that already had 256 colors or less. This was reported here: https://forums.getpaint.net/topic/118401-images-already-with-256-or-fewer-colors-being-dithered-when-saved-with-palette/
  • Changed: A processor that supports SSSE3 (yes 3 S’s) is now required for x86/x64 systems (previously only SSE2 was required). All CPUs released since about 2006 (e.g. Core 2 Duo) support this.
  • Known Issue: Due to crashing, GPU accelerated effects (Gaussian Blur, Motion Blur, Radial Blur) on ARM64 will actually use the CPU for rendering.

paint.net 4.3 alpha (build 7881)

This big thing for this update is that I was able to get @Ed Harvey‘s effect plugins to work! And that’s basically it, but that’s a really big win :)

In order to get it working, the DLL is modified to fix up the code that doesn’t work on .NET 5. There were two properties of type ContextMenu that had to be removed (they weren’t being used), and some reflection against some fields in VisualStyleRenderer that were renamed. This was pretty easy with the use of Mono.Cecil.

To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app).

image.png

For direct download links, please visit the forum.

Changes since 4.3 alpha build 7879:

  • Fixed: EdHarvey’s Effects now work as-is without the need to install an updated version (which is not yet available)

The complete list of changes so far for 4.3, as compared to 4.2.16:

  • New: The app has been migrated to .NET 5, and performance has been greatly improved as a result.
  • New: ARM64 is now natively supported
  • Installation is much faster now due to no longer needing the "Optimizing performance for your system" stage (NGEN has been replaced with ReadyToRun via crossgen).
  • Portable ZIPs are now officially available, utilizing self-contained deployment, and do not require the installation of .NET 5. You must manually update to newer versions of the app, however.
  • Improved performance of most effects and other compute-intensive tasks by about 20% on average, due to .NET 5’s improved code generation
  • Improved: Many areas of the app have been optimized to use SIMD (SSE2/3/4.1, AVX2) on x86/x64
    • Drawing on an image with a large number of layers is faster
    • Drawing with the Gradient Tool’s alpha mode is faster
    • Drawing with the Recolor tool is faster
    • Drawing with the Erase or Clone Stamp tool is faster when using a color whose alpha value is less than 255
    • Drawing with the Overwrite blend mode is faster
    • Drawing with the Shapes tool is faster, due to improved compositing performance
    • Drawing with a brush tool without antialiasing is faster
    • Tile compression has lower overhead due to being optimized for SSE2 and AVX2
    • Working with complex selections is faster
    • Many other optimizations all throughout the application and rendering engine
  • Improved: Selection antialiasing quality is now better by way of using a 4×4 super sampling filter instead of 3×3. The code has also been optimized to use SSSE3 on x86/x64.
  • Improved: Performance should be significantly better on systems without HyperThreading (by reserving 1 core for the UI), and also a bit better on systems with it (by utilizing more of the logical cores)
  • Improved: Effect and File Type plugins can now be organized into folders — the plugin loader will recursively search for DLLs up to 1 folder deep
  • Fixed a bug in Polar Inversion that was causing hangs
  • Improved performance of Polar Inversion by 3x, due to the aforementioned bug fix (and a little bit is due to .NET 5)
  • Fixed: There were some issues with zooming in/out using the keyboard, where the anchoring (centering) point was not calculated correctly, causing the canvas to drift in the wrong direction.
  • Fixed a bug when saving with "Auto Detect" bit-depth that was causing fidelity loss on some images that already had 256 colors or less. This was reported here: https://forums.getpaint.net/topic/118401-images-already-with-256-or-fewer-colors-being-dithered-when-saved-with-palette/
  • Changed: A processor that supports SSSE3 (yes 3 S’s) is now required for x86/x64 systems (previously only SSE2 was required). All CPUs released since about 2006 (e.g. Core 2 Duo) support this.
  • Known Issue: Due to crashing, GPU accelerated effects (Gaussian Blur, Motion Blur, Radial Blur) on ARM64 will actually use the CPU for rendering.
  • Updated the built-in AvifFileType plugin to v1.1.13.0 (courtesy of @null54). See the project’s GitHub Releases page for more information.

paint.net 4.3 alpha (build 7879)

This build isn’t too exciting, fresh off the heels of yesterday’s 4.3 alpha build 7878, but it’s important: it fixes a crash when running an effect with a selection active! (unless the selection was just simple rectangles)

To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app).

image.png

For direct download links, please visit the forum.

Changes since 4.3 alpha build 7878:

  • Fixed a crash when running an effect while a non-pixelated selection (not just simple rectangles) was active

The complete list of changes so far for 4.3, as compared to 4.2.16:

  • New: The app has been migrated to .NET 5, and performance has been greatly improved as a result.
  • New: ARM64 is now natively supported
  • Installation is much faster now due to no longer needing the "Optimizing performance for your system" stage (NGEN has been replaced with ReadyToRun via crossgen).
  • Portable ZIPs are now officially available, utilizing self-contained deployment, and do not require the installation of .NET 5. You must manually update to newer versions of the app, however.
  • Improved performance of most effects and other compute-intensive tasks by about 20% on average, due to .NET 5’s improved code generation
  • Improved: Many areas of the app have been optimized to use SIMD (SSE2/3/4.1, AVX2) on x86/x64
    • Drawing on an image with a large number of layers is faster
    • Drawing with the Gradient Tool’s alpha mode is faster
    • Drawing with the Recolor tool is faster
    • Drawing with the Erase or Clone Stamp tool is faster when using a color whose alpha value is less than 255
    • Drawing with the Overwrite blend mode is faster
    • Drawing with the Shapes tool is faster, due to improved compositing performance
    • Drawing with a brush tool without antialiasing is faster
    • Tile compression has lower overhead due to being optimized for SSE2 and AVX2
    • Working with complex selections is faster
    • Many other optimizations all throughout the application and rendering engine
  • Improved: Selection antialiasing quality is now better by way of using a 4×4 super sampling filter instead of 3×3. The code has also been optimized to use SSSE3 on x86/x64.
  • Improved: Performance should be significantly better on systems without HyperThreading (by reserving 1 core for the UI), and also a bit better on systems with it (by utilizing more of the logical cores)
  • Improved: Effect and File Type plugins can now be organized into folders — the plugin loader will recursively search for DLLs up to 1 folder deep
  • Fixed a bug in Polar Inversion that was causing hangs
  • Improved performance of Polar Inversion by 3x, due to the aforementioned bug fix (and a little bit is due to .NET 5)
  • Fixed: There were some issues with zooming in/out using the keyboard, where the anchoring (centering) point was not calculated correctly, causing the canvas to drift in the wrong direction.
  • Fixed a bug when saving with "Auto Detect" bit-depth that was causing fidelity loss on some images that already had 256 colors or less. This was reported here: https://forums.getpaint.net/topic/118401-images-already-with-256-or-fewer-colors-being-dithered-when-saved-with-palette/
  • Changed: A processor that supports SSSE3 (yes 3 S’s) is now required for x86/x64 systems (previously only SSE2 was required). All CPUs released since about 2006 (e.g. Core 2 Duo) support this.
  • Known Issue: Due to crashing, GPU accelerated effects (Gaussian Blur, Motion Blur, Radial Blur) on ARM64 will actually use the CPU for rendering.
  • Updated the built-in AvifFileType plugin to v1.1.13.0 (courtesy of @null54). See the project’s GitHub Releases page for more information.

paint.net 4.3 alpha (build 7878)

This update took quite a bit longer than I anticipated (3 weeks instead of 1), but the good news it that there’s a lot to like here!

I’ve bumped the version to 4.3 (was 4.2.17), added native ARM64 support, and optimized a whole bunch of important rendering code paths. In addition, the quality of selection antialiasing has been improved by using a 4×4 super sampling filter, whereas before it was 3×3. There should be no performance loss because this is now optimized to use vectorized SSSE3 instructions (“SIMD”) on x86/x64 systems.

To get this update, make sure you have "Also check for pre-release (beta) versions" enabled in Settings, and then click on the Check Now button. (Unfortunately alpha/beta releases are not currently available for the Microsoft Store version of the app).

image.png

For direct download links, please visit the forum.

Changes since 4.2.17 alpha build 7858:

  • New: ARM64 is now natively supported, which includes devices such as the Surface Pro X
  • Improved: Many areas of the app have been optimized to use SIMD (SSE2/3/4.1, AVX2) on x86/x64
    • Drawing on an image with a large number of layers is faster
    • Drawing with the Gradient Tool’s alpha mode is faster
    • Drawing with the Recolor tool is faster
    • Drawing with the Erase or Clone Stamp tool is faster when using a color whose alpha value is less than 255
    • Drawing with the Overwrite blend mode is faster
    • Drawing with the Shapes tool is faster, due to improved compositing performance
    • Drawing with a brush tool without antialiasing is faster
    • Tile compression has lower overhead due to being optimized for SSE2 and AVX2
    • Working with complex selections is faster
    • Many other optimizations all throughout the application and rendering engine
  • Improved: Selection antialiasing quality is now better by way of using a 4×4 super sampling filter instead of 3×3. The code has also been optimized to use SSSE3 on x86/x64.
  • Improved: Performance should be significantly better on systems without HyperThreading (by reserving 1 core for the UI), and also a bit better on systems with it (by utilizing more of the logical cores)
  • Improved: Effect and File Type plugins can now be organized into folders — the plugin loader will recursively search for DLLs up to 1 folder deep
  • Fixed: There were some issues with zooming in/out using the keyboard, where the anchoring (centering) point was not calculated correctly, causing the canvas to drift in the wrong direction.
  • Fixed: If a download fails in the Prerequisites Installer, it will retry and resume up to 10 times, thus greatly improving its reliability for downloading things like .NET 5 and the Visual C++ Runtime
  • Changed: A processor that supports SSSE3 (yes 3 S’s) is now required for x86/x64 systems (previously only SSE2 was required). All CPUs released since about 2006 (e.g. Core 2 Duo) support this.
  • Known Issue: Due to crashing, GPU accelerated effects (Gaussian Blur, Motion Blur, Radial Blur) on ARM64 will actually use the CPU for rendering.

Enjoy!

paint.net 4.2.17 alpha build 7858–now using .NET 5!

Paint.NET has finally been migrated to .NET 5! If you’re not familiar, .NET 5 (also known as .NET “Core” 5.0) is the new version of .NET that replaces .NET “Framework” (of which no more new versions will be made). More info here: https://devblogs.microsoft.com/dotnet/introducing-net-5/

It was a very large effort to move Paint.NET over to .NET 5 over the last 2 months! Most of that effort went towards rebuilding from scratch how Paint.NET is built and packaged (installer, MSI, APPX, portable ZIPs), because the old solutions were showing their age and were no longer serviceable. The app itself required only minor changes to work on .NET 5.

You should not really see any difference in the app’s features or the way it behaves, although performance has improved. Sometimes substantially! Sadly there are some plugins that will no longer work, although I may be able to find fixes for some of them.

I will be releasing this via the built-in updater sometime later this week. For now, I want to start with a smaller audience, so you must download and install it manually. Just close the app, run the installer EXE inside the ZIP, and it will do everything for you (as usual):

The download link for the installer is available at the forum page about this release.

You may also download a portable version of the app, which is useful if you just want to try things out or are not yet ready to fully commit to the new version. .NET 5 is built-in, so there is no need to install it (the app is “self-contained”). The portable version of the app will save settings in a local JSON file instead of using the registry.

The downloads links for the portable ZIPs are available at the forum page about this release.

If you have an ARM64 device such as the Surface Pro X, you may also install the app. For the portable ZIPs, use the architecture appropriate for your operating system: x86 for Win10, or x64 for Win11. This is untested, so please report back with how well it works.

Changes:

  • The app has been migrated to .NET 5, and performance has been greatly improved as a result.
  • Installation is much faster now due to no longer needing the “Optimizing performance for your system” stage (NGEN has been replaced with ReadyToRun via crossgen).
  • Portable ZIPs are now officially available, utilizing self-contained deployment, and do not require the installation of .NET 5. You must manually update to newer versions of the app, however.
  • Improved performance of most effects and other compute-intensive tasks by about 20% on average, due to .NET 5’s improved code generation
  • Fixed a bug when saving with “Auto Detect” bit-depth that was causing fidelity loss on some images that already had 256 colors or less. This was reported here: https://forums.getpaint.net/topic/118401-images-already-with-256-or-fewer-colors-being-dithered-when-saved-with-palette/
  • Fixed a bug in Polar Inversion that was causing hangs
  • Improved performance of Polar Inversion by 3x, due to the aforementioned bug fix (and a little bit is due to .NET 5)
  • Updated the built-in AvifFileType plugin to v1.1.13.0 (courtesy of @null54). See the project’s GitHub Releases page for more information.

Known Issues:

  • If you have a lot of plugins installed, such that the Effects menu is too large for the screen and must be scrolled, the scroll indicator buttons (the up/down arrows) are a lot larger than they should be. This seems to be a bug in .NET 5.
  • Several of Ed Harvey’s popular plugins are blocked because they are not compatible with .NET 5. I may find a solution for this, but it may also require a new version of the plugin to be released.
    • Color Flip/Rotate
    • Threshold
    • Glass Blocks
    • Color Filter
    • Filtered Black and White
    • Single Hue
    • Color Tint
    • Vitrious
    • White Balance

paint.net 4.2.16 is now available

This updates fixes and optimizes palette generation when saving at 8-bit depth or less, and also fixes any remaining issues with using "Auto-detect" for bit-depth. A new effect, Quantize (in the Effects -> Color menu), has been added, some bugs have been fixed, and bundled file type plugins have been updated.

Here’s a simple example of using Quantize to reduce the # of colors in an image. You can also apply dithering, just like you can when saving an image at 8-bit or lower bit-depth. You can also choose between the Octree (default) and Median Cut palette generator algorithms. Octree is generally the right choice, but Median Cut can occasionally be quite useful.

image.png

If you’re using the Windows Store release, you should get the update automatically within the next 24 hours. You can also force an update check by following these instructions.

For the Classic release, you should be offered the update automatically within the next week or so. You can get the update sooner by going to ⚙ Settings → Updates → Check Now. You can also download and install it directly from the website.

List of changes since 4.2.15:

  • New: Effect -> Color -> Quantize, which applies palette reduction to 256 colors or less, along with dithering. This is the same algorithm used when saving images at 8-bit color depth or lower.
  • Fixed and improved palette generation when saving at 8-bit color depth or less
  • Greatly optimized performance of palette generation and image quantization
  • Added option to choose between Octree (default) and Median Cut algorithms for palette quantization when saving at 8-bit color depth or less
  • Fixed a crash in Move tools when the selection was 0-width and/or 0-height
  • Added tooltips w/ shortcut keys to the Tools dropdown in the toolbar
  • Fixed IndirectUI ColorWheel rendering (thanks @toe_head2001!)
  • Fixed a crash in the Text tool when using Ctrl+(Left,Right,Backspace,Delete) (thanks @Bruce Bowyer-Smyth!)
  • Changed: New layers are now filled with #00000000 instead of #00FFFFFF
  • Fixed a crash when working with selections (OutOfMemoryException)
  • New: Effects can now access the Document’s DPI via EffectEnvironmentParameters.DocumentResolution
  • Fixed drawing of the color palette in the Colors window when using some non-standard DPI scaling settings (e.g. 1.15x)
  • Fixed a crash when using @Ed Harvey‘s Threshold plugin
  • Fixed the return value from PdnRegion.GetBoundsInt() so it’s not anchored at (0,0) unless it should be
  • Fixed premultiplied-to-straight color conversion on some code paths (thanks @null54!)
  • Updated bundled AvifFileType plugin to v1.1.11.0, which includes performance optimizations and bug fixes. See its GitHub releases page (https://github.com/0xC0000054/pdn-avif/releases) for more info. (thanks @null54!)
  • Updated bundled DDSFileTypePlus plugin to v1.10.9.0, which uses an updated version of DirectXTex (2021-04-06). (thanks @null54!)

Enjoy!