Rick Brewster Posted April 6, 2021 Share Posted April 6, 2021 Now that I'm getting back into the swing of things after having moved across the country (Bay Area -> back to Seattle area, finally!), it's time for a new update This release is mostly focused on fixing, improving, and optimizing the quantization code. This is used when you save an image at 8-bit or lower color depth. There have been a number of bugs that have plagued this over the years, including 1) the generated palette is way too small (e.g. for a black->red gradient, it'd be 64 colors instead of 256), 2) the generated palette is slightly too small (e.g. 252 colors instead of 256), 3) the precision of the colors would be biased in favor of those that are at the top of the image, 4) the palette has colors removed from it that shouldn't have been (this plagues Auto-detect), and more recently 5) the generated palette, especially for a low color depth, is complete trash. #1 was a result of a bug in the Octree code that goes all the way back to the MSDN article it was pulled from, https://docs.microsoft.com/en-us/previous-versions/dotnet/articles/aa479306(v=msdn.10)?redirectedfrom=MSDN . As it turns out, shifting right (via >>) by a negative amount results in 0 instead of a shift left. Maybe C works that way, but C# does not. #2 was a result of the way that reduction/merging works in the Octree data structure. It can only merge an entire node's children, meaning it can reduce 8 colors into 1, but never 8 colors into 2 through 7. This means it would undershoot the desired palette size as much as 6/7th of the time. I fixed that with a trick I learned at https://www.codeproject.com/Articles/109133/Octree-Color-Palette (search for the word "vomit" 😂). #3 happens because the Octree code would reduce nodes in an order defined by how they were added to the octree. Since the image is processed top-to-bottom, this would thus favor colors that first appear at the top. I've fixed this by more evenly spreading out which leaf nodes are merged -- those with lower frequencies are merged first, and if two colors have the same frequency then the ordering is deterministically pseudo-randomized by using the color's hash code. #4 was kind of a mix between 1, 2, and 5. There have been several reports of images that should be correctly auto-saving at 4-bit color depth (because of using <=16 colors), but colors are still trimmed. Auto-detect is strictly required to be lossless, and it has been failing at that. My new code for the Octree algorithm should fix this, but I've also added code to skip palette generation entirely if the desired color count is greater than the # of unique colors in the image (an obvious shortcut/fix, but the code was a bit snaky in terms of permitting this). This also means Median Cut will behave properly, because WIC's code does not necessarily do this correctly either. #5 was a result of switching from my Octree code to WIC's Median Cut. As it turns out, Median Cut isn't a good choice for a lot of images even when it's correctly implemented. In addition to having some really bad bugs with large images that I've had to work around, WIC's implementation also falls completely flat on its face when the palette size is small. Imagine a black->white gradient that gets bits of cyan and magenta sprinkled throughout. Ugh. I have retained the ability to use Median Cut, although Octree is the default. I've also optimized these things to be a lot faster and use a lot less memory. You can see all of this in effect if you save an image as a PNG, GIF, TIFF, or BMP at 8-bit, 4-bit, 2-bit, or 1-bit color depth. You can also use the new Effect -> Color -> Quantize effect to play around with it. It lets you specify an exact palette size instead of the bit-depth. 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). Or you can use this direct download link: https://www.getpaint.net/files/zip/preview/paint.net.4.216.7765.43041.install.zip Change log: 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 EdHarvey'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 for more info. 1 2 The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
HopperElec Posted April 7, 2021 Share Posted April 7, 2021 (edited) I accidentally added a colour (of which I already grabbed from the default palette) elsewhere on the palette (so I now had that colour on the palette twice) and so I reset to the default palette. Now, even after restarting my computer, I am completely unable to save specifically one image that I previously saved fine from paint.net. Even if I copy the image from elsewhere back into paint.net and then Ctrl+A Backspace to have a completely transparent image and then even try saving it to a completely separate location, it seems that just having that image in the history results in this error if I save. If I load any other image, though, or just save a blank image from clicking File -> New, it works fine. Any ideas why? I've also attached the image that is resulting in the error There was an error while saving the file Exception: System.ArgumentException: palette colors must be opaque (A=255), although 1 transparent color as the last entry is permitted at PaintDotNet.Imaging.PaletteMap..ctor(IEnumerable`1 colors) in D:\src\pdn\src\Framework\Imaging\PaletteMap.cs:line 27 at PaintDotNet.Imaging.ProximityPaletteMap..ctor(IEnumerable`1 palette) in D:\src\pdn\src\Framework\Imaging\ProximityPaletteMap.cs:line 46 at PaintDotNet.Data.WicFileTypeHelpers.Save(IBitmapSource`1 sourceBgra32, Vector2Double dpi, Metadata metadata, Stream output, ContainerFormat containerFormat, Nullable`1 preferredVendor, IMetadataTranscoder metadataTranscoder, IEnumerable`1 encoderOptions, SavableBitDepths bitDepth, IReadOnlyList`1 paletteForIndexed, Int32 ditherLevelForIndexed, ProgressEventHandler progressCallback, Object progressCallbackSender) in D:\src\pdn\src\PaintDotNet\Data\WicFileTypeHelpers.cs:line 290 at PaintDotNet.Data.PngFileType.OnFinalSave(Document input, Stream output, Surface flattenedImage, SavableBitDepths bitDepth, IReadOnlyList`1 paletteColors, Int32 ditherLevel, PropertyBasedSaveConfigToken token, ProgressEventHandler progressCallback) in D:\src\pdn\src\PaintDotNet\Data\PngFileType.cs:line 263 at PaintDotNet.Data.InternalFileType.FinalSave(Document input, Stream output, Surface scratchSurface, SavableBitDepths bitDepth, QuantizationAlgorithm quantizationAlgorithm, Int32 alphaThreshold, Int32 ditherLevel, ImageColorsAnalysis analysis, PropertyBasedSaveConfigToken token, ProgressEventHandler progressCallback, Double progressStart, Double progressEnd) in D:\src\pdn\src\PaintDotNet\Data\InternalFileType.cs:line 510 at PaintDotNet.Data.InternalFileType.OnSaveT(Document input, Stream output, PropertyBasedSaveConfigToken token, Surface scratchSurface, ProgressEventHandler progressCallback) in D:\src\pdn\src\PaintDotNet\Data\InternalFileType.cs:line 183 at PaintDotNet.FileType.Save(Document input, Stream output, SaveConfigToken token, Surface scratchSurface, ProgressEventHandler callback, Boolean rememberToken) in D:\src\pdn\src\Data\FileType.cs:line 261 at PaintDotNet.Dialogs.SaveConfigDialog.<>c__DisplayClass49_0.<UpdatePreviewAsync>b__0() in D:\src\pdn\src\PaintDotNet\Dialogs\SaveConfigDialog.cs:line 613 at System.Threading.Tasks.Task.Execute() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at PaintDotNet.Dialogs.SaveConfigDialog.<UpdatePreviewAsync>d__49.MoveNext() in D:\src\pdn\src\PaintDotNet\Dialogs\SaveConfigDialog.cs:line 632 Diagnostics: Application paint.net 4.2.16 (β 4.216.7765.43041) Build Date 05 April 2021 Expiration Date 28 June 2021 Install type Classic Hardware accelerated rendering (GPU) True Animations True DPI 96 (1.00x scale) Language en-GB OS Windows 10 Home x64 (10.0.19042.0) (0x65) .NET Runtime 4.0.30319.42000 Physical Memory 12,246 MB CPU Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz Speed ~2712 MHz Cores / Threads 4 / 4 Features SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2 Video Card NVIDIA GeForce GTX 750 Ti Dedicated Video RAM 2,007 MB Dedicated System RAM 0 MB Shared System RAM 6,123 MB Vendor ID 0x10DE Device ID 0x1380 Subsystem ID 0x84BE1043 Revision 162 LUID 0x000098DE Flags AcgCompatible, SupportMonitoredFences, KeyedMutexConformance Graphics Preemption DmaBufferBoundary Compute Preemption DmaBufferBoundary Outputs 1 Feature Level Direct3D_11_0 DXGI Formats A8_UNorm, B8G8R8A8_UNorm, R16G16B16A16_UNorm, R16G16B16A16_Float, R32G32B32A32_Float Buffer Precision UNorm8bpc, UNorm8bpcSrgb, UNorm16bpc, Float16bpc, Float32bpc Video Card Microsoft Basic Render Driver Dedicated Video RAM 0 MB Dedicated System RAM 0 MB Shared System RAM 6,123 MB Vendor ID 0x1414 Device ID 0x008C Subsystem ID 0x00000000 Revision 0 LUID 0x0000A481 Flags Software, AcgCompatible, SupportMonitoredFences, KeyedMutexConformance Graphics Preemption InstructionBoundary Compute Preemption InstructionBoundary Outputs 0 Feature Level Direct3D_12_1 DXGI Formats A8_UNorm, B8G8R8A8_UNorm, R16G16B16A16_UNorm, R16G16B16A16_Float, R32G32B32A32_Float Buffer Precision UNorm8bpc, UNorm8bpcSrgb, UNorm16bpc, Float16bpc, Float32bpc Managed assemblies 31 mscorlib mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 PaintDotNet PaintDotNet, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null PaintDotNet.Core PaintDotNet.Core, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null PaintDotNet.Base PaintDotNet.Base, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null WindowsBase WindowsBase, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 System.Core System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Drawing System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a PresentationFramework PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 PresentationCore PresentationCore, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35 System.Windows.Forms System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 PaintDotNet.SystemLayer PaintDotNet.SystemLayer, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null PaintDotNet.Framework PaintDotNet.Framework, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null PaintDotNet.Resources PaintDotNet.Resources, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null PaintDotNet.Effects PaintDotNet.Effects, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null PaintDotNet.Data PaintDotNet.Data, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null PaintDotNet.SystemLayer.Native.x64 PaintDotNet.SystemLayer.Native.x64, Version=4.216.7765.43041, Culture=neutral, PublicKeyToken=null System.Configuration System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Xml System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Xaml System.Xaml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Runtime.CompilerServices.Unsafe System.Runtime.CompilerServices.Unsafe, Version=4.0.6.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a AvifFileType AvifFileType, Version=1.1.11.0, Culture=neutral, PublicKeyToken=null DdsFileTypePlus DdsFileTypePlus, Version=1.10.7.0, Culture=neutral, PublicKeyToken=null WebPFileType WebPFileType, Version=1.3.4.0, Culture=neutral, PublicKeyToken=null System.Collections.Immutable System.Collections.Immutable, Version=1.2.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a System.Buffers System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51 System.Memory System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51 AlignPlugin AlignPlugin, Version=1.5.1.0, Culture=neutral, PublicKeyToken=null K4os.Compression.LZ4 K4os.Compression.LZ4, Version=1.1.11.0, Culture=neutral, PublicKeyToken=2186fa9121ef231d System.Xml.Linq System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 PresentationFramework-SystemXmlLinq PresentationFramework-SystemXmlLinq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Native modules 130 PaintDotNet.exe D:\Programs\paintdotnet\PaintDotNet.exe, version=4.216.7765.43041 ntdll.dll C:\WINDOWS\SYSTEM32\ntdll.dll, version=10.0.19041.804 (WinBuild.160101.0800) MSCOREE.DLL C:\WINDOWS\SYSTEM32\MSCOREE.DLL, version=10.0.19041.1 (WinBuild.160101.0800) KERNEL32.dll C:\WINDOWS\System32\KERNEL32.dll, version=10.0.19041.804 (WinBuild.160101.0800) KERNELBASE.dll C:\WINDOWS\System32\KERNELBASE.dll, version=10.0.19041.804 (WinBuild.160101.0800) ADVAPI32.dll C:\WINDOWS\System32\ADVAPI32.dll, version=10.0.19041.1 (WinBuild.160101.0800) msvcrt.dll C:\WINDOWS\System32\msvcrt.dll, version=7.0.19041.546 (WinBuild.160101.0800) sechost.dll C:\WINDOWS\System32\sechost.dll, version=10.0.19041.1 (WinBuild.160101.0800) RPCRT4.dll C:\WINDOWS\System32\RPCRT4.dll, version=10.0.19041.1 (WinBuild.160101.0800) mscoreei.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscoreei.dll, version=4.8.4180.0 built by: NET48REL1LAST_B SHLWAPI.dll C:\WINDOWS\System32\SHLWAPI.dll, version=10.0.19041.867 (WinBuild.160101.0800) kernel.appcore.dll C:\WINDOWS\SYSTEM32\kernel.appcore.dll, version=10.0.19041.546 (WinBuild.160101.0800) VERSION.dll C:\WINDOWS\SYSTEM32\VERSION.dll, version=10.0.19041.546 (WinBuild.160101.0800) clr.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll, version=4.8.4300.0 built by: NET48REL1LAST_C USER32.dll C:\WINDOWS\System32\USER32.dll, version=10.0.19041.867 (WinBuild.160101.0800) win32u.dll C:\WINDOWS\System32\win32u.dll, version=10.0.19041.867 (WinBuild.160101.0800) GDI32.dll C:\WINDOWS\System32\GDI32.dll, version=10.0.19041.746 (WinBuild.160101.0800) gdi32full.dll C:\WINDOWS\System32\gdi32full.dll, version=10.0.19041.746 (WinBuild.160101.0800) msvcp_win.dll C:\WINDOWS\System32\msvcp_win.dll, version=10.0.19041.789 (WinBuild.160101.0800) ucrtbase.dll C:\WINDOWS\System32\ucrtbase.dll, version=10.0.19041.789 (WinBuild.160101.0800) VCRUNTIME140_CLR0400.dll C:\WINDOWS\SYSTEM32\VCRUNTIME140_CLR0400.dll, version=14.10.25028.0 built by: VCTOOLSD15RTM ucrtbase_clr0400.dll C:\WINDOWS\SYSTEM32\ucrtbase_clr0400.dll, version=14.10.25028.0 built by: VCTOOLSD15RTM IMM32.DLL C:\WINDOWS\System32\IMM32.DLL, version=10.0.19041.546 (WinBuild.160101.0800) psapi.dll C:\WINDOWS\System32\psapi.dll, version=10.0.19041.546 (WinBuild.160101.0800) mscorlib.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\mscorlib\ed4777cae83e1fc9087ac3dc82cf23ab\mscorlib.ni.dll, version=4.8.4300.0 built by: NET48REL1LAST_C ole32.dll C:\WINDOWS\System32\ole32.dll, version=10.0.19041.1 (WinBuild.160101.0800) combase.dll C:\WINDOWS\System32\combase.dll, version=10.0.19041.1 (WinBuild.160101.0800) bcryptPrimitives.dll C:\WINDOWS\System32\bcryptPrimitives.dll, version=10.0.19041.662 (WinBuild.160101.0800) uxtheme.dll C:\WINDOWS\system32\uxtheme.dll, version=10.0.19041.867 (WinBuild.160101.0800) k_fps64.dll C:\Program Files (x86)\Razer\Razer Cortex\x64\k_fps64.dll, version=3.0.15.1 d3dx10_43.dll C:\Program Files (x86)\Razer\Razer Cortex\x64\d3dx10_43.dll, version=9.29.952.3111 dbghelp.dll C:\WINDOWS\SYSTEM32\dbghelp.dll, version=10.0.19041.867 (WinBuild.160101.0800) D3DCOMPILER_43.dll C:\Program Files (x86)\Razer\Razer Cortex\x64\D3DCOMPILER_43.dll, version=9.29.952.3111 EasyHook64.dll C:\Program Files (x86)\Razer\Razer Cortex\x64\EasyHook64.dll, version=2.7.6270.0 OPENGL32.dll C:\WINDOWS\SYSTEM32\OPENGL32.dll, version=10.0.19041.844 (WinBuild.160101.0800) d3dx9_43.dll C:\Program Files (x86)\Razer\Razer Cortex\x64\d3dx9_43.dll, version=9.29.952.3111 GLU32.dll C:\WINDOWS\SYSTEM32\GLU32.dll, version=10.0.19041.1 (WinBuild.160101.0800) CRYPTSP.dll C:\WINDOWS\SYSTEM32\CRYPTSP.dll, version=10.0.19041.546 (WinBuild.160101.0800) rsaenh.dll C:\WINDOWS\system32\rsaenh.dll, version=10.0.19041.1 (WinBuild.160101.0800) bcrypt.dll C:\WINDOWS\System32\bcrypt.dll, version=10.0.19041.1 (WinBuild.160101.0800) CRYPTBASE.dll C:\WINDOWS\SYSTEM32\CRYPTBASE.dll, version=10.0.19041.546 (WinBuild.160101.0800) System.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System\5dd302cc18514670950e7f3fbebddb06\System.ni.dll, version=4.8.4300.0 built by: NET48REL1LAST_C System.Core.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Core\5b420a81d9bf78ed0945d8ac1ca932b4\System.Core.ni.dll, version=4.8.4320.0 built by: NET48REL1LAST_C WindowsBase.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\WindowsBase\1bb16f159c40eab354f8f3afdb634c07\WindowsBase.ni.dll, version=4.8.4320.0 built by: NET48REL1LAST_C System.Drawing.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Drawing\f4b470d059025978bbe597afc6e60f7d\System.Drawing.ni.dll, version=4.8.4084.0 built by: NET48REL1 PresentationCore.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PresentationCore\4f1be3c2c6b9de192d4f2ec23f0644c6\PresentationCore.ni.dll, version=4.8.4320.0 built by: NET48REL1LAST_C PresentationFramework.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\Presentatio5ae0f00f#\3cbdd925ecd09c5934ba2c073c236975\PresentationFramework.ni.dll, version=4.8.4320.0 PaintDotNet.Base.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet.Base\62ee9e7a728e507fa40b5f5982d5b9fb\PaintDotNet.Base.ni.dll, version=4.216.7765.43041 System.Windows.Forms.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Windows.Forms\4c9a810cd0c747bf8c7905df177ae92e\System.Windows.Forms.ni.dll, version=4.8.4270.0 built by: NET48REL1LAST_C PaintDotNet.SystemLayer.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet500b2e4f#\6292a58db65cb7f777cf3384991cb621\PaintDotNet.SystemLayer.ni.dll, version=4.216.7765.43041 PaintDotNet.Core.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet.Core\c6a15528a3b57292d9154a2f53195ccf\PaintDotNet.Core.ni.dll, version=4.216.7765.43041 PaintDotNet.Resources.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet26779e70#\9f40be1eeb91ffcb0431e34fe4295c90\PaintDotNet.Resources.ni.dll, version=4.216.7765.43041 PaintDotNet.Framework.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet7afaaa15#\1246983dff423321a75303fec9429dda\PaintDotNet.Framework.ni.dll, version=4.216.7765.43041 PaintDotNet.Data.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet.Data\5e96cb68bdb9ccc1228a2008eb288f3f\PaintDotNet.Data.ni.dll, version=4.216.7765.43041 PaintDotNet.Effects.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet.Effects\a7ec8518625753f37fe5bd920260ccaf\PaintDotNet.Effects.ni.dll, version=4.216.7765.43041 PaintDotNet.ni.exe C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNet\ab432a015995c619b924ef5074bca1e9\PaintDotNet.ni.exe, version=4.216.7765.43041 dwrite.dll C:\WINDOWS\SYSTEM32\dwrite.dll, version=10.0.19041.1 (WinBuild.160101.0800) wpfgfx_v0400.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\wpfgfx_v0400.dll, version=4.8.4320.0 built by: NET48REL1LAST_C OLEAUT32.dll C:\WINDOWS\System32\OLEAUT32.dll, version=10.0.19041.804 (WinBuild.160101.0800) MSVCP140_CLR0400.dll C:\WINDOWS\SYSTEM32\MSVCP140_CLR0400.dll, version=14.10.25028.0 built by: VCTOOLSD15RTM PresentationNative_v0400.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\WPF\PresentationNative_v0400.dll, version=4.8.4320.0 built by: NET48REL1LAST_C shell32.dll C:\WINDOWS\System32\shell32.dll, version=10.0.19041.867 (WinBuild.160101.0800) windows.storage.dll C:\WINDOWS\SYSTEM32\windows.storage.dll, version=10.0.19041.867 (WinBuild.160101.0800) Wldp.dll C:\WINDOWS\SYSTEM32\Wldp.dll, version=10.0.19041.1 (WinBuild.160101.0800) SHCORE.dll C:\WINDOWS\System32\SHCORE.dll, version=10.0.19041.867 (WinBuild.160101.0800) vcruntime140.dll D:\Programs\paintdotnet\Native\X64\vcruntime140.dll, version=14.28.29913.0 built by: vcwrkspc vcruntime140_1.dll D:\Programs\paintdotnet\Native\X64\vcruntime140_1.dll, version=14.28.29913.0 built by: vcwrkspc msvcp140.dll D:\Programs\paintdotnet\Native\X64\msvcp140.dll, version=14.28.29913.0 built by: vcwrkspc msvcp140_1.dll D:\Programs\paintdotnet\Native\X64\msvcp140_1.dll, version=14.28.29913.0 built by: vcwrkspc msvcp140_2.dll D:\Programs\paintdotnet\Native\X64\msvcp140_2.dll, version=14.28.29913.0 built by: vcwrkspc msvcp140_codecvt_ids.dll D:\Programs\paintdotnet\Native\X64\msvcp140_codecvt_ids.dll, version=14.28.29913.0 built by: vcwrkspc vcomp140.dll D:\Programs\paintdotnet\Native\X64\vcomp140.dll, version=14.28.29913.0 built by: vcwrkspc PaintDotNet.SystemLayer.Native.x64.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\PaintDotNetc8826574#\e8ffa84f9343c3dba117baafefaae736\PaintDotNet.SystemLayer.Native.x64.ni.dll, version=4.216.7765.43041 PaintDotNet.SystemLayer.Native.x64.dll D:\Programs\paintdotnet\PaintDotNet.SystemLayer.Native.x64.dll, version=4.216.7765.43041 gdiplus.dll C:\WINDOWS\WinSxS\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.19041.789_none_faf0a7e97612e7bb\gdiplus.dll, version=10.0.19041.789 (WinBuild.160101.0800) WindowsCodecs.dll C:\WINDOWS\SYSTEM32\WindowsCodecs.dll, version=10.0.19041.867 (WinBuild.160101.0800) PROPSYS.dll C:\WINDOWS\SYSTEM32\PROPSYS.dll, version=7.0.19041.867 (WinBuild.160101.0800) clbcatq.dll C:\WINDOWS\System32\clbcatq.dll, version=2001.12.10941.16384 (WinBuild.160101.0800) System.Configuration.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Configuration\43245d36d271e5e3abf3742885086b10\System.Configuration.ni.dll, version=4.8.4190.0 built by: NET48REL1LAST_B msasn1.dll C:\WINDOWS\SYSTEM32\msasn1.dll, version=10.0.19041.546 (WinBuild.160101.0800) cryptnet.dll C:\WINDOWS\SYSTEM32\cryptnet.dll, version=10.0.19041.546 (WinBuild.160101.0800) CRYPT32.dll C:\WINDOWS\System32\CRYPT32.dll, version=10.0.19041.867 (WinBuild.160101.0800) System.Xml.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Xml\131a023309990432765d7a97ec31d6a7\System.Xml.ni.dll, version=4.8.4084.0 built by: NET48REL1 profapi.dll C:\WINDOWS\SYSTEM32\profapi.dll, version=10.0.19041.844 (WinBuild.160101.0800) clrjit.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clrjit.dll, version=4.8.4300.0 built by: NET48REL1LAST_C System.Xaml.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Xaml\b073e7911284b1d33baee633f22e5f62\System.Xaml.ni.dll, version=4.8.4320.0 built by: NET48REL1LAST_C MSCTF.dll C:\WINDOWS\System32\MSCTF.dll, version=10.0.19041.867 (WinBuild.160101.0800) System.Runtime.CompilerServices.Unsafe.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Runtea61dfd5#\be3e121258d7e87a2074ef5bdac61ac8\System.Runtime.CompilerServices.Unsafe.ni.dll, version=4.700.20.12001 dxgi.dll C:\WINDOWS\SYSTEM32\dxgi.dll, version=10.0.19041.746 (WinBuild.160101.0800) UIAnimation.dll C:\WINDOWS\System32\UIAnimation.dll, version=10.0.19041.746 (WinBuild.160101.0800) comctl32.dll C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.844_none_ca00b6081b84eb1d\comctl32.dll, version=6.10 (WinBuild.160101.0800) mfplat.dll C:\WINDOWS\SYSTEM32\mfplat.dll, version=10.0.19041.867 (WinBuild.160101.0800) cfgmgr32.dll C:\WINDOWS\System32\cfgmgr32.dll, version=10.0.19041.546 (WinBuild.160101.0800) RTWorkQ.DLL C:\WINDOWS\SYSTEM32\RTWorkQ.DLL, version=10.0.19041.1 (WinBuild.160101.0800) CompPkgSup.DLL C:\WINDOWS\SYSTEM32\CompPkgSup.DLL, version=10.0.19041.746 (WinBuild.160101.0800) Windows.StateRepositoryPS.dll C:\Windows\System32\Windows.StateRepositoryPS.dll, version=10.0.19041.844 (WinBuild.160101.0800) TextShaping.dll C:\WINDOWS\System32\TextShaping.dll, version= WinTypes.dll C:\Windows\System32\WinTypes.dll, version=10.0.19041.1 (WinBuild.160101.0800) d2d1.dll C:\WINDOWS\SYSTEM32\d2d1.dll, version=10.0.19041.1 (WinBuild.160101.0800) wtsapi32.dll C:\WINDOWS\SYSTEM32\wtsapi32.dll, version=10.0.19041.546 (WinBuild.160101.0800) WINSTA.dll C:\WINDOWS\SYSTEM32\WINSTA.dll, version=10.0.19041.546 (WinBuild.160101.0800) d3d11.dll C:\WINDOWS\SYSTEM32\d3d11.dll, version=10.0.19041.746 (WinBuild.160101.0800) D3D10Warp.dll C:\WINDOWS\SYSTEM32\D3D10Warp.dll, version=10.0.19041.546 (WinBuild.160101.0800) dxcore.dll C:\WINDOWS\SYSTEM32\dxcore.dll, version=10.0.19041.546 (WinBuild.160101.0800) System.Collections.Immutable.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Coll4a4f96a7#\c1af0adf271739618056e7619dc345f5\System.Collections.Immutable.ni.dll, version=4.700.20.21406 dwmapi.dll C:\WINDOWS\SYSTEM32\dwmapi.dll, version=10.0.19041.867 (WinBuild.160101.0800) dataexchange.dll C:\WINDOWS\system32\dataexchange.dll, version=10.0.19041.746 (WinBuild.160101.0800) dcomp.dll C:\WINDOWS\system32\dcomp.dll, version=10.0.19041.746 (WinBuild.160101.0800) twinapi.appcore.dll C:\WINDOWS\system32\twinapi.appcore.dll, version=10.0.19041.1 (WinBuild.160101.0800) textinputframework.dll C:\WINDOWS\SYSTEM32\textinputframework.dll, version=10.0.19041.844 (WinBuild.160101.0800) CoreUIComponents.dll C:\WINDOWS\System32\CoreUIComponents.dll, version=10.0.19041.546 CoreMessaging.dll C:\WINDOWS\System32\CoreMessaging.dll, version=10.0.19041.746 WS2_32.dll C:\WINDOWS\System32\WS2_32.dll, version=10.0.19041.1 (WinBuild.160101.0800) ntmarta.dll C:\WINDOWS\SYSTEM32\ntmarta.dll, version=10.0.19041.1 (WinBuild.160101.0800) powrprof.dll C:\WINDOWS\SYSTEM32\powrprof.dll, version=10.0.19041.867 (WinBuild.160101.0800) UMPDC.dll C:\WINDOWS\SYSTEM32\UMPDC.dll, version= System.Buffers.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Buffers\d861d77f413fed84924c0db1977ced0f\System.Buffers.ni.dll, version=4.6.28619.01 winmm.dll C:\WINDOWS\SYSTEM32\winmm.dll, version=10.0.19041.1 (WinBuild.160101.0800) System.Memory.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Memory\6e9a8622af0dffa0e9f9737798ecefea\System.Memory.ni.dll, version=4.6.28619.01 explorerframe.dll C:\WINDOWS\system32\explorerframe.dll, version=10.0.19041.867 (WinBuild.160101.0800) diasymreader.dll C:\Windows\Microsoft.NET\Framework64\v4.0.30319\diasymreader.dll, version=14.8.4084.0 built by: NET48REL1 nvldumdx.dll C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_cc5a8fceed9bb371\nvldumdx.dll, version=27.21.14.6589 WINTRUST.DLL C:\WINDOWS\System32\WINTRUST.DLL, version=10.0.19041.804 (WinBuild.160101.0800) imagehlp.dll C:\WINDOWS\System32\imagehlp.dll, version=10.0.19041.546 (WinBuild.160101.0800) nvwgf2umx.dll C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_cc5a8fceed9bb371\nvwgf2umx.dll, version=27.21.14.6589 nvspcap64.dll C:\WINDOWS\system32\nvspcap64.dll, version=3.21.0.36 K4os.Compression.LZ4.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\K4os.Compression.LZ4\0a43166728ad63c02b98ef535d81fcdf\K4os.Compression.LZ4.ni.dll, version=1.1.11 System.Xml.Linq.ni.dll C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Xml.Linq\7d5777c130d020ebe3c89b79f238ccd5\System.Xml.Linq.ni.dll, version=4.8.4084.0 built by: NET48REL1 SetupApi.dll C:\WINDOWS\System32\SetupApi.dll, version=10.0.19041.867 (WinBuild.160101.0800) DEVOBJ.dll C:\WINDOWS\SYSTEM32\DEVOBJ.dll, version=10.0.19041.546 (WinBuild.160101.0800) Edited April 7, 2021 by HopperElec Link to comment Share on other sites More sharing options...
HopperElec Posted April 7, 2021 Share Posted April 7, 2021 After looking at the release notes, I'm assuming maybe this bug has nothing to do with me accidentally adding a colour to the palette and is instead a bug with the update since the update involved the palette (or it's a mix of both) Link to comment Share on other sites More sharing options...
Rick Brewster Posted April 7, 2021 Author Share Posted April 7, 2021 @HopperElec, that's definitely a new bug. What settings in Save Configuration are you using when saving as PNG? The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
HopperElec Posted April 8, 2021 Share Posted April 8, 2021 The error occurs before the save configuration screen appears (but the save configuration screen appears behind it. Link to comment Share on other sites More sharing options...
Rick Brewster Posted April 12, 2021 Author Share Posted April 12, 2021 New build landing soon so I'm locking this thread The Paint.NET Blog: https://blog.getpaint.net/ Donations are always appreciated! https://www.getpaint.net/donate.html Link to comment Share on other sites More sharing options...
Recommended Posts