I'm a long time user and massive fan of Paint.NET. I've been using it for nearly 10 years now, and must say that it is definitely my favorite image editor out there.
However, as we all know, PDN is by far not the most powerful one out there. In fact, it's nothing when compared to, say, Adobe Photoshop. But I believe comparing them is unfair. PDN was never supposed to compete against Photoshop; they are designed to do different things. One is a very powerful and professional image editor while the other is simple but gets the job done easy and quick.
Despite all of that, from my long experience using this software almost daily, I do think we could make it much better without resorting to add massive, complicated features (although, sometimes I think it would be good to have some; more about that later). This is a list of suggestions I've been making for a while now, of small tweaks and additions that would increase quality-of-life significantly...
1. Brush Width Shortcut
Whenever I'm drawing something with a brush, using the eraser, or clone stamping something, very frequently I have to change the brush size as I'm working. Of course, I can always just manually change the value by scrolling on that text box or typing the value in. But that breaks the workflow a lot. Specially when I want to keep my mouse in the same position. It would be really, really nice to have a way to change the brush without having to move the mouse. I suggest Alt+Mouse Scroll. [EDIT] This actually already exists. It's [ and ].
2. Move selection by amount of pixels
This is something that haunts me a lot when I'm doing more precise stuff, such as UI designing, making diagrams, or doing pixel art. Sometimes I have to move my selection exactly 4 pixels to the right, or exactly 20 pixels upwards. For small distances it's fine to just use the arrow keys and good old counting on your head; but sometimes it's really annoying to tap the down arrow key exactly 11 times. Using ctrl+arrow keys does help, but not enough. It would be amazing to have an easier way to move selections. What I suggest is something similar to what Blender does: just start typing the number in and press the arrow key corresponding to the direction. So, if I just type "320" on my keyboard and press "left arrow key", my selection is moved 320 pixels to the left.
3. Sampling Mode should be by tool
Many, many times I have had to pick a color and use the fill tool somewhere else. What often happens is that I usually want the sampling mode of the color picker to be "Image" and the sampling mode of the fill tool to be "Layer". To me, it doesn't make sense that the sampling mode is universal. Each tool should have its sampling mode selection independent of the others.
4. There should be a way to disable Infinite Undo to save RAM
The title describes it well. Despite Paint.NET being pretty lightweight, it's always good to have ways to make things run as smooth as possible for weaker machines. Infinite Undo is a great feature, which also has the potential to use infinite RAM.
5. Flip selection
This is one of those features that would increase quality of life immensely. It's such a fundamental thing that sometimes we forget it doesn't exist. We have a really rudimentary flip tool that only flips the whole image. If I want to flip just a part of an image, I have to 1) select that part, 2) copy it, 3) open a new image, 4) paste my selection, 5) flip the image, 6) copy it, 7) paste it back on the original image. This is... a lot of steps for such a small thing. It would be awesome to have a button that just flips the selection. In fact, this could even replace the current flip feature.
6. Inputting text should not move the screen
In all of those years of using PDN, there has never been anything more infuriating than using the text tool and having the view jump around like crazy when text goes beyond the canvas. The control of the view should be entirely in the hands of the user. Sorry Rick, but how did you think this was a good idea? At least make this "feature" toggleable, please!
7. Merging transparent layers should have expected behaviour
If I merge two layers, I don't expect the image to change. I just expect both layers to be a single one. However, if the bottom layer is transparent, then we observe strange, unexpected behaviour that can be better explained with this image:
8. Resize canvas and fill empty space with transparency
When you increase the size of the canvas, surely some empty space appears in the image. What's bizarre is that on all layers, this empty space is just transparency (rgba(0,0,0,0)) except on the layer named "Background". On that one, instead of transparency, the empty space is filled with the secondary color. This is a really weird and unexpected behaviour. I think that either all layers should just be transparency, or the bottomest layer should receive the secondary color, or some combination of the both: add a way to toggle this.
9. Continuous clone stamp
The clone stamp is a very useful tool. However it has an interesting behaviour that could potentially improve: it literally just shifts the image to a direction. It would be nice to have an option to make it sample from the current image, not from the original image before the first click. In other words, a continuous clone stamp.
10. Size dropdowns should go to the nearest number when scrolling from one not on the list
This is a bit tricky to explain. You know the size dropdowns? Such as the Brush Width or the Text Size dropdowns, that both allow you to type in a value or choose one from the list? When you mouse scroll over them (or hit up/down keyboard arrows) the selected value cycles through the list. For instance, if I have a text size of 72 and I mouse scroll down or hit the down keyboard arrow, the text size is changed to 84. However, if I instead type in some value that is not on the list (such as 83) and try scrolling, instead of the value snapping the the closest downwards (in this case, 84), it actually snaps to the first value in the list (in this case, 8). Capiche?
Well, that's all, I think. I know that development is not easy, specially when you just have a single person working on it. I would like to reiterate that this is in no way trying to demand anything from Rick (I mean, PDN is completely free, how could I?), and that all of these points should be just considered suggestions
I would just like to add a few secondary suggestions that as I said in the very beginning, are quite big and complex to implement, so these are just some personal wishes. These are three plugins that I feel like should be actually added into the core app. Kudos to the developers!
Align Object. https://forums.getpaint.net/topic/112095-align-object