Skip to content

Automatic Image Resizing Filter Selection

Emmet O'Neill requested to merge (removed):autoscale into master

This patch adds a new image scaling filter option, called 'Auto'.

Unlike the rest of the KisFilterStrategy sub-classes, instead of representing a specific image scaling algorithm, the 'Auto' option is used as a marker which shows that the users wants Krita to attempt to select an appropriate filter strategy based on their scaling parameters.

autoscale

The motivation behind this patch is improving average user workflow.

While not always the case, I'd argue that the average Krita user is not, nor should they need to be, well-versed in the details of image scaling algorithms or in which situations one should be used over another. In the best case, users might delve into the topic, but in the worst case, a user might negatively affect the quality of their work by applying the wrong filter for the job. The typical use case is probably somewhere in the middle.

As such, the "Auto" options allows us to try to guess what KisFilterStrategy to user based on the user's parameters and a set of basic rules. Users who know exactly what filtering they need can still select a specific strategy, of course, but users who don't know or care about the different filtering types can allow Krita to make its best guess.

As this patch stands right now, there is a branch for detecting pixel art scaling, enlargement and reduction, but the framework is simple and more specific rules could be added.

Edited by Emmet O'Neill

Merge request reports