paint.net 4.3.3 is now available

In this release, Paint.NET has been migrated to the just-released .NET 6. This comes with additional improvements for both rendering and startup performance, as well as ensuring that myself and plugin authors can develop using the latest version of the platform, including C# 10.

There are also some improvements to Dark Theme support on Windows 10/11, UI fixes for Windows 11, three new translations (Catalan, Corsican, and Thai), and a large number of important bug fixes — including some memory leaks that were found by several members of the forum.

I’ve also done some important infrastructure work. Prior to this release, the self-extracting portion of the installer was handled by Nullsoft Scriptable Installer System ("NSIS"). This worked very well for a long time, but it finally hit a wall with the 4.3 release with how well it could compress the installer due to memory constraints (NSIS is 32-bit only). This is why the ARM64 installer was so much larger than the x64 or x86 installer. In this release I’ve fixed that by moving to a custom self-extractor based on the LZMA SDK (aka 7-zip). The result is better compression and a faster "extracting" stage, although the x64 and x86 installers are actually a little larger because I’m using some features in .NET 6’s "crossgen2" to optimize startup performance, and these have resulted in an increase in the size of the app DLLs.

I’ve also migrated most of Paint.NET’s non-COM interop code over to the TerraFX.Interop.Windows library, developed by Tanner Gooding at Microsoft. I’ll be using this over the next several releases to port Paint.NET’s COM-based interop code, which is used for Direct2D (et. al.), and which should result in more startup performance improvements (the current interop code is written in C++/CLI, which cannot be precompiled with crossgen / ReadyToRun). Over time this will help to maximize Paint.NET’s performance, shed legacy code (e.g. C++/CLI), and increase the speed that I can write new code and release new updates.

NOTE for Windows 7, Windows 8.1, and 32-bit/x86 users: Paint.NET v4.3.x will be the last release(s) that work on Windows 7, Windows 8.1, or on any 32-bit/x86 version of Windows. It has become significantly more difficult and time consuming to support these lately, not very many people are using them, and I can no longer justify the cost and frustration of keeping support for these afloat. Starting with Paint.NET v4.4, only Windows 10 and 11+ will be supported, and only on 64-bit (x64 and ARM64). Once Paint.NET v4.3.3 is released, I will start working on v4.4 and will only release v4.3.x updates on an as-needed basis and only until v4.4 is completed.

Get the update

  • Microsoft Store release
  • Classic Desktop release
    • Download the installer directly (web installer for all CPUs and OSes). 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.

Changes since v4.3.2:

Enjoy!

paint.net 4.3.3 beta build 7991

This build fixes compatibility with CodeLab-generated plugins whose Help functionality was broken by .NET 6, which was due to a change in GZipStream.Read() I also fixed a memory leak in Settings -> Tools, and there are 3 new translations: Catalan, Corsican, and Thai.

NOTE for Windows 7, Windows 8.1, and 32-bit/x86 users: Paint.NET v4.3.x will be the last release(s) that work on Windows 7, Windows 8.1, or on any 32-bit/x86 version of Windows. It has become significantly more difficult and time consuming to support these lately, not very many people are using them, and I can no longer justify the cost and frustration of keeping support for these afloat. Starting with Paint.NET v4.4, only Windows 10 and 11+ will be supported, and only on 64-bit (x64 and ARM64). Once Paint.NET v4.3.3 is released, I will start working on v4.4 and will only release v4.3.x updates on an as-needed basis and only until v4.4 is completed.

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

You can also download the online/web installer at the forum.

Offline installers, portable ZIPs, and MSIs for deployment can be found over at the GitHub releases page.

Changes since 4.3.3 alpha build 7988:

  • New translations: Catalan (ca), Corsican (co), and Thai (th)
  • Fixed compatibility with 38 plugins, built with CodeLab, whose Help functionality was broken by a change in .NET 6’s implementation of GZipStream.Read(). Thanks @toe_head2001 for finding the culprit, and @AndrewDavid for extensively testing the fix!
  • Fixed compatibility with the ArgusPaintNet.Convolution effect plugin
  • Fixed a crash that could happen when opening Settings -> Diagnostics
  • Fixed a memory leak with Settings -> Tools. Thanks @otuncelli for finding this!
  • Updated the bundled AvifFileType plugin to v1.1.17.0, which fixes a crash when reading large EXIF data blocks. Thanks @null54!

paint.net 4.3.3 alpha build 7988

This build has a bunch of bug fixes and small improvements, and the app has been migrated to .NET 6 which has a lot of performance improvements that Paint.NET benefits from.

NOTE for Windows 7, Windows 8.1, and 32-bit/x86 users: Paint.NET v4.3.x will be the last release(s) that work on Windows 7, Windows 8.1, or on any 32-bit/x86 version of Windows. It has become significantly more difficult and time consuming to support these lately, not very many people are using them, and I can no longer justify the cost and frustration of keeping support for these afloat. Starting with Paint.NET v4.4, only Windows 10 and 11+ will be supported, and only on 64-bit (x64 and ARM64). Once Paint.NET v4.3.3 is released, I will start working on v4.4 and will only release v4.3.x updates on an as-needed basis and only until v4.4 is completed.

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

You can download the online/web installer at the forum.

Offline installers, portable ZIPs, and MSIs for deployment can be found over at the GitHub releases page.

Changes since v4.3.2:

  • New: The app has been migrated to .NET 6, which has resulted in improved rendering and startup performance
  • Improved: The download size is now much smaller for ARM64 by about 33%
  • Improved various UI elements for Dark Theme, e.g. scrollbars and drop-down lists (Windows 10 v1809+ only)
  • Fixed the way various UI controls look on Windows 11, e.g. buttons and dropdown lists
  • Fixed the View -> Zoom to Window command when using the keyboard shortcut (Ctrl+B), which was resetting instead of toggling the zoom level
  • Fixed a rendering bug in the Dents and Polar Inversion effects, which was reported over at https://forums.getpaint.net/topic/118746-paintnet-update-changed-the-way-the-dents-distortion-filter-works-causing-unwanted-artifactsglitches-was-this-an-intended-change/
  • Fixed a memory leak with the selection renderer, which would cause gigabytes of GPU memory usage and crashes
  • Fixed some GDI object leaks, which would eventually result in a crash
  • Fixed a crash while drawing a selection, right clicking on the History window without releasing the left mouse button, and then clicking to redo a history entry
  • Fixed an issue that was preventing new plugins from loading their native DLL dependencies as specified in their .deps.json file
  • Fixed the app itself crashing after an effect crash is trapped and when you choose to restart the app
  • Fixed a text rendering bug in some parts of the UI, as reported by @midora over at https://forums.getpaint.net/topic/118866-paintnet-43-footnote-of-indirectui-control-in-filetype-shows-artifacts-after-scrolling/
  • Fixed the "untitled:" file name argument prefix, which was preventing Window Clippings from being able to send screenshots
  • Changed: The /createMsi command for the installer has been removed. Instead, you can now download the MSIs directly from the GitHub releases page.
  • Fixed a few issues when using the MSI directly. The execution context was fixed, and it will no longer delete the desktop shortcut or Start Menu shortcut if executing the MSI for a second time.
  • Fixed some registry keys that were not being deleted during uninstall 
  • Improved performance during the "extracting" stage of the installer by migrating away from NSIS. This has also helped improve compression, although other changes have resulted in a net increase in the download size (but with improved performance for the app).
  • Updated the bundled AvifFileType plugin to v1.1.16.0 (thanks @null54!)

Enjoy!