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
- You can purchase it here. This helps fund development and is an alternative or supplement to sending in a donation.
- If you already have it installed, the update should happen automatically once Microsoft certifies the update, usually within the next day or two. To get the update immediately (once it’s certified), you can follow the instructions listed here.
- 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:
- New: The app has been migrated to .NET 6, which has improved both rendering and startup performance
- New translation: Catalan (ca)
- New translation: Corsican (co)
- New translation: Thai (th)
- Changed: The /createMsi command for the installer has been removed. Instead, you can now download MSIs directly from the GitHub releases page.
- Improved various UI controls for Dark Theme, e.g. scrollbars (Win10 v1809+ only)
- Fixed the way various UI controls look on Windows 11, e.g. buttons and drop-down lists
- Fixed the View -> Zoom to Window command when using the keyboard shortcut (Ctrl+B), which was resetting instead of toggling the zoom level
- Improved performance during the "extracting" stage of the installer by migrating away from Nullsoft Scriptable Installer System (NSIS)
- Reduced the download size on ARM64 by about 33%
- Fixed a rendering bug in the Dents and Polar Inversion effects, as reported here: 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 in the selection renderer that was consuming gigabytes of GPU memory, resulting in crashes. Thanks to @Zagna for finding this and testing the fix! https://forums.getpaint.net/topic/118806-paint-crashes-if-you-do-a-selection-glitch-and-then-history-jump-forward/?do=findComment&comment=587772
- Fixed some GDI object leaks, particularly with the Save Configuration dialog, which would eventually result in a crash. Thanks @rechlin for finding and reporting this! https://forums.getpaint.net/topic/118785-crash-due-to-running-out-of-gdi-objects/
- Fixed a memory leak in Settings -> Tools. Thanks @otuncelli for finding this! https://forums.getpaint.net/topic/118785-crash-due-to-running-out-of-gdi-objects/#comment-588468
- Fixed an issue that was preventing new plugins from loading their native DLL dependencies as specified in their .deps.json file
- Fixed the app crashing after an effect plugin crashes when you choose to restart the app
- Fixed a crash while drawing a selection, right-clicking on the History window before releasing the left mouse button, and then clicking to redo a history entry, as reported here: https://forums.getpaint.net/topic/118806-paint-crashes-if-you-do-a-selection-glitch-and-then-history-jump-forward/
- Fixed a text rendering bug in some parts of the UI, mostly in Effects, 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 screenshot
- Fixed some registry keys that were not being deleted during uninstall
- Fixed the PdnRepair utility on Windows 7
- Fixed some inconsistencies with the MSI as compared to v4.2.16 which were causing problems for some deployments
- Updated the bundled AvifFileType to v1.1.17.0, courtesy of @null54, which updates the AOM version and fixes a crash when reading large EXIF blocks. See its GitHub releases page for more info.
Enjoy!
I didn’t realize that previous versions are removed once a new release comes out.
Maybe keep the previous 1-2 old versions available in case of bugs / plugin issues.
Only the newest version is ever supported. That includes not leaving the old version(s) up. If it’s available then it’s supported.
Windows 8.1 bug (no icons under the effects menu, only under sub menu’s under effects.
The submenu containers (Blurs, Distort, Render, etc.) aren’t supposed to have icons. Only the actual effects have icons.
Ok, my bad. It looks like the background behind the icons is a lot brighter now and really stands out compared to the text column in the menu. That’s what changed compared to the previous version. This is using the light theme, which looks nothing like the “effects” menu screenshots on your site.
Have you consider release it without bundled with .net?
Yes I spent a good amount of time analyzing the merits of FDD versus SCD, and SCD won out in the end. Earlier builds of 4.3 alpha were actually FDD. The only real benefit to FDD is a smaller package, but even then you still want to keep installing the latest .NET runtime and you don’t actually save much in terms of download bandwidth or disk space. In fact, with SCD, you probably save disk space because installing newer .NET runtimes does not uninstall/replace the old one, so you end up with many of them installed. It also doesn’t get updated by Windows Update unless you’ve enabled the optional “also install updates for Microsoft products”, which most people don’t. SCD also enables higher performance because crossgen can compile the ReadyToRun images more holistically (–inputbubble), which will be very advantageous once I can use “composite” mode (I can’t use it right now due to https://github.com/dotnet/runtime/issues/61544 , so either once that’s fixed or when 4.4 releases, which will not run on Win7 so the issue could be moot).
Also, FDD is very fragile. If any of the .NET runtime files are damaged, corrupt, removed — which happens often enough in my experience judging from crash logs sent by users — it’s difficult for a user to troubleshoot that and it really ruins the experience.
thank you for your effort 🙂 too bad the pen/tablet support didn’t make it in before Win7 support got dropped – i’ve grown quite comfy using your paint .NET and was hoping i won’t need to have separate drawing and editing apps soon enough. oh well, no big deal, i’ll have to update everything one day anyway. and thank you again!
Thank you for upgrading Paint.NET, this editing software is really a huge time saver and efficient software thanks to all your work ; )
Have a great day !