2012-04-02 3 views
1

Привет, я хочу преобразовать нормальное изображение в зеркало, т. Е. Эффект флопа в BLACKBERRY app.I пробовал этот код, но не мог конвертировать ... Есть ли кто-нибудь, кто поможет мне это сделать ...Зеркальное изображение в blackberry

Если у вас есть другая логика, чтобы сделать это, пожалуйста, поделитесь ..

public Bitmap changetoFlopEffect(Bitmap bitmap){ 

    int[] argb = new int[bitmap.getWidth() * bitmap.getHeight()]; 
    int[] newargb =new int[bitmap.getWidth() * bitmap.getHeight()]; 
    int length=bitmap.getWidth(); 

    bitmap.getARGB(argb, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight()); 

    for(int i=0;i<=bitmap.getHeight();i++) 
    { 
     for(int j=bitmap.getWidth(),k=0;j>0;j--) 
     { 
       //newargb[k]=argb[j]; 
       int swap=argb[j]; 
       newargb[k]=swap; 
       k++; 
     } 
    } 
     bitmap.setARGB(newargb,0,bitmap.getWidth(),0,0,bitmap.getWidth(),bitmap.getHeight()); 
    return bitmap;  
} 
+0

Что случилось? Я имею в виду, что некоторые пиксели зеркалированы? Опубликуйте несколько изображений о том, что вы получили – tipycalFlow

ответ

0

ваших угловыми условий кажется неправильным и пиксели красть являются только из первой строки. Попробуйте следующее:

public Bitmap changetoFlopEffect(Bitmap bitmap){ 

int[] argb = new int[bitmap.getWidth() * bitmap.getHeight()]; 
int[] newargb =new int[bitmap.getWidth() * bitmap.getHeight()]; 
int length=bitmap.getWidth(); 
int newIndex = 0; 

bitmap.getARGB(argb, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight()); 

for (int i = 0; i < bitmap.getHeight(); i++) 
    for (int j = bitmap.getWidth()-1; j >= 0 ; j--){ 
    newargb[newIndex] = argb[i * bitmap.getWidth() + j]; 
    newIndex++; 
    } 
    bitmap.setARGB(newargb,0,bitmap.getWidth(),0,0,bitmap.getWidth(),bitmap.getHeight()); 
return bitmap;  
} 
+0

Я решил это до вашего ответа .... Но ваш результат ответа лучше меня. поэтому спасибо за это ... Можете ли вы помочь мне в негативном и монохромном изображении ... ответить –

+0

Я использовал интерфейс ImageEffectControll из javax.microedition.amms.control.imageeffect. Я нашел это по этой ссылке http://www.blackberry.com/developers/docs/6.0.0api/javax/microedition/amms/control/imageeffect/ImageEffectControl.html Это для монохромных и негативных эффектов. Если вы есть решение для этого, пожалуйста, поделитесь своей логикой, пожалуйста. –

+0

ответ на эту тему - Как применить монохромное и негативное воздействие на изображение в приложении Blackberry. –