Blackberry 黑莓图像处理

Blackberry 黑莓图像处理,blackberry,Blackberry,我对黑莓的开发非常陌生。 我正在从事一个黑莓项目。 在这个项目中,我想改变图像效果和控制。! 图像效果有深褐色、素描、灰度、负片、翻转等 控件包括亮度、对比度、色调等 我尝试过翻转图像效果。下面是我尝试过的代码。。 我得到了输出,但它与原始图像重叠 [图像效果翻转输出] 任何人都可以解决这个问题 位图翻转(位图){ int[]argb=newint[bitmap.getWidth()*bitmap.getHeight()]; getARGB(argb,0,bitmap.getWidth(),0,

我对黑莓的开发非常陌生。 我正在从事一个黑莓项目。 在这个项目中,我想改变图像效果和控制。! 图像效果有深褐色、素描、灰度、负片、翻转等 控件包括亮度、对比度、色调等

我尝试过翻转图像效果。下面是我尝试过的代码。。 我得到了输出,但它与原始图像重叠

[图像效果翻转输出]

任何人都可以解决这个问题

位图翻转(位图){

int[]argb=newint[bitmap.getWidth()*bitmap.getHeight()];
getARGB(argb,0,bitmap.getWidth(),0,0,bitmap.getWidth(),bitmap.getHeight());
对于(int i=0;i

任何人都可以解决此问题???

您需要打开一个新的argb(称为argb_flip),如下所示:

公共位图翻转(位图){
int[]argb=new int[bitmap.getWidth()*bitmap.getHeight()];
int[]argb_flip=new int[bitmap.getWidth()*bitmap.getHeight()];
getARGB(argb,0,bitmap.getWidth(),0,0,bitmap.getWidth(),bitmap.getHeight());
对于(int i=0;i
k.如果我想倒转(镜像)图像,我应该怎么做?
    int[] argb = new int[bitmap.getWidth() * bitmap.getHeight()];
    bitmap.getARGB(argb, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight());
    for (int i = 0; i < bitmap.getHeight(); i++) {
        for (int j = 0; j < bitmap.getWidth(); j++) {
            int swap = argb[i * bitmap.getWidth() + j];
            argb[(bitmap.getHeight() - 1 - i) * bitmap.getWidth() + j] = swap;
        }
    }


    //bitmap.setARGB(data, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight());
    Graphics gr=new Graphics(bitmap);
    gr.clear(0, 0, bitmap.getWidth(), bitmap.getHeight());

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


    return bitmap;
}
public Bitmap flip(Bitmap bitmap) {

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

        int[] argb_flip = new int[bitmap.getWidth() * bitmap.getHeight()];

        bitmap.getARGB(argb, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight());
        for (int i = 0; i < bitmap.getHeight(); i++) {
            for (int j = 0; j < bitmap.getWidth(); j++) {
                int swap   = argb[i * bitmap.getWidth() + j];

                argb_flip[(bitmap.getHeight() - 1 - i) * bitmap.getWidth() + j] = swap;
            }
        }

        bitmap.setARGB(argb_flip, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight());

        return bitmap;
    }