Как изменить размер изображения в Black Berry в соответствии с шириной и высотой экрана дисплея?

Как я могу изменить размер изображения, хранящегося в папке ресурсов, используя код в соответствии с шириной и высотой экрана Blackberry?

2 ответа

Решение

Сначала создайте закодированное изображение как это

 EncodedImage ei = EncodedImage.getEncodedImageResource("res/helpscreen.png");   

затем передайте это закодированное изображение в функцию ниже

EncodedImage ei1= scaleImage(ei,reqWidth,requiredHeight);


 public EncodedImage scaleImage(EncodedImage source, int requiredWidth, int requiredHeight) 
    {  
        int currentWidthFixed32 = Fixed32.toFP(source.getWidth());  
        int requiredWidthFixed32 = Fixed32.toFP(requiredWidth);  
        int scaleXFixed32 = Fixed32.div(currentWidthFixed32, requiredWidthFixed32);  
        int currentHeightFixed32 = Fixed32.toFP(source.getHeight());  
        int requiredHeightFixed32 = Fixed32.toFP(requiredHeight);  
        int scaleYFixed32 = Fixed32.div(currentHeightFixed32, requiredHeightFixed32);  
        return source.scaleImage32(scaleXFixed32, scaleYFixed32);  
    } 

это даст вам закодированное изображение. затем преобразовать его в растровое изображение, используя

        BitmapField logoBitmap = new BitmapField(ei1.getBitmap());   

Чтобы масштабировать Bitmap образ попробовать Bitmap.scaleInto(...), API Link.

Bitmap targetBm = new Bitmap(Display.getWidth(), Display.getHeight());
srcBitmap.scaleInto(targetBm, Bitmap.FILTER_BILINEAR, Bitmap.SCALE_STRETCH);
Другие вопросы по тегам