I also noticed this problem, your suggestion is very useful, this is exactly what I want.
I also noticed that the program only uses bilinear reduction canvas, as far as I know there are higher quality algorithms. But they all need gpu hardware support, including rotation at any angle, this is a hardware transformation. Because APh There has been a lack of gpu support, so shrinking the canvas and rotating the canvas provide limited performance, they should be improved in the future, after supporting gpu