Эффективное масштабирование изображения в Blackberry

Как масштабировать изображение (Bitmap/EncodedImage) эффективно в Blackberry (используя OpenVG/OpenGL если аппаратное ускорение поддерживается). Может что то типа VGField/GLField быть использованы для достижения этого?

Я уже пробовала Bitmap.scaleInto(...), EncodedImage.scaleImage32(..) и некоторые наивные алгоритмы (обработка необработанных данных). Также я не могу использовать ZoomScreen потому что невозможно (?) изменить изображение ZoomScreen экземпляр динамически.

Нужна некоторая идея о том, как приложение для просмотра изображений по умолчанию в устройстве BlackBerry (например, Torch 9800) выполняет плавное масштабирование пинчем.

1 ответ

Решение

Обычная техника:

  • Шаг 1: масштабируйте текущую миниатюру, чтобы получить довольно блочное изображение, но преимущество в том, что он работает практически мгновенно.

  • Шаг 2: запустить декодер изображений с более высоким разрешением в отдельном потоке. Когда это сделано, он отправляет вновь декодированное изображение обратно в поток пользовательского интерфейса, чтобы заменить приблизительное изображение, которое использовалось на шаге 1.

Другие вопросы по тегам