Efficient image scaling in Blackberry
How to scale image (Bitmap
/EncodedImage
) efficiently in Blackberry (using OpenVG
/OpenGL
if hardware acceleration supported). Can something like VGField
/GLField
be used to achieve that?
I have already tried Bitmap.scaleInto(...)
, EncodedImage.scaleImage32(..)
and some naive algorithms (raw data manipulation). Also I can't use ZoomScreen
because it is not possible (?) to change the image of an ZoomScreen
instance dynamically.
Need some idea about how the de开发者_如何学JAVAfault image viewer application in BlackBerry device (e.g. Torch 9800) performs smooth pinch zooming.
The usual technique is:
Step 1: scale the current thumbnail, so you get a rather blocky looking image, but has the advantage of working nearly instantaneously.
Step 2: kick off the higher resolution image decoder on a separate thread. When it is done, it sends the newly decoded image back to the UI thread to replace the approximate image that was used from step 1.
精彩评论