[I sent this out a few days ago, but replied to the wrong address so I don't believe it went through - sending again...jim]
The Bilinear filtering algorithm is a well known algorithm that has a very specific definition which we follow. If we automatically applied multiple steps based on the scaling factor then we would violate that definition and have to call it something else. On a more practical note, if someone has determined that the caveats of the bilinear algorithm are sufficient for their needs and we did perform multiple steps instead of one step then we would reduce performance which that particular developer might not appreciate. On another practical note, hardware accelerators do not perform multi-step scaling so we wouldn't be able to fire the request off to the video card and get hardware accelerated scaling (nearly free) if we instituted such a policy behind the scenes. If we did provide that mechanism automatically then it would have to be under a different name so that the developer could buy into the specific tradeoffs that it provides (better quality for >2x downscaling at the expense of about 7x performance). In the meantime, we publish blogs like the one you point to in order to educate our programmers about the definitions of the graphical terms and processes that our APIs allow them to access and how to use those well defined industry standard mechanisms to achieve their needs... ...jim [EMAIL PROTECTED] wrote:
There is an article that mentions that one can improve the look of downscaling using BILINEAR by downscaling multiple times (each time by half): http://today.java.net/pub/a/today/2007/04/03/perils-of-image-getscaledinstance.html The paragraph in question reads: "To combat this issue, you can use a multi-step approach when downscaling by more than two times; this helps prevent the information loss issue and produces a much higher quality result that is visually quite close to that produced by Image.SCALE_AREA_AVERAGING" My question is, why doesn't Java do this automatically under the hood? If I request BILINEAR or BICUBIC downscaling for a factor greater than two, why doesn't Java either do multistep scaling on my behalf or why doesn't the Java2D team add a new hint (to maintain backwards compatibility) which will tell Java2D to apply these filters using the multi-step method? I would much rather have this supported by the JDK than having people reinvent the wheel over and over. Thank you, Gili [Message sent by forum member 'cowwoc' (cowwoc)] http://forums.java.net/jive/thread.jspa?messageID=227363 =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA2D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".
=========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA2D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".