как сохранить большое изображение через J2ME - PullRequest
0 голосов
/ 09 марта 2011

Я написал код, который выглядит следующим образом ...

package hello;

import javax.microedition.midlet.*;

import javax.microedition.lcdui.*;

import java.io.*;


public class Immutable extends MIDlet implements CommandListener {

private Display display;

private Form form;

private Command exit;

private Image image;

private ImageItem imageItem;

public Immutable() throws IOException

{

display = Display.getDisplay(this);

exit = new Command("Exit", Command.EXIT, 1);

form = new Form("Immutable Image Example");

form.addCommand(exit);

form.setCommandListener(this);

try

{

image = Image.createImage("/hello/minion.png");

imageItem = new ImageItem("This is the IMAGE_ITEM Application", 

image,ImageItem.LAYOUT_NEWLINE_BEFORE |ImageItem.LAYOUT_LEFT |

ImageItem.LAYOUT_NEWLINE_AFTER, "My Image");

form.append(imageItem);

}


catch (java.io.IOException error)

{

Alert alert = new Alert("Error", "Cannot load minion.png.",null, null);

alert.setTimeout(Alert.FOREVER);

alert.setType(AlertType.ERROR);

display.setCurrent(alert);

}

}

    public void startApp() 
{

        display.setCurrent(form);
    }

    public void pauseApp() {
    }

    public void destroyApp(boolean unconditional) {
    }
    public void commandAction(Command command, Displayable Displayable)
{

if (command == exit)

{

destroyApp(false);

notifyDestroyed();

}
}
}

Теперь это изображение с именем minion.png имеет размер 32 КБ и размер пикселя 803x825.в этом случае изображение не загружается идеально.Я пробовал его на эмуляторе, а также на Nokia 3110. Он выдает ошибку, говоря «недостаточно памяти».

То же самое работает хорошо с другим изображением размером 6 КБ и пикселей 96x96.

Пожалуйста, предложите какую-нибудь идею для хранения большого изображения.спасибо заранее ...

Ответы [ 2 ]

1 голос
/ 09 марта 2011

Сначала вы не сохраняете ни одного изображения под этим кодом, просто отображаете.

Теперь все мобильные устройства имеют ограничение памяти. Вы не можете загрузить это большое изображение, если на вашем устройстве не хватает памяти в любом случае.

Вам нужно уменьшить его и загрузить уменьшенную версию изображения.

0 голосов
/ 18 августа 2011

более эффективный способ изменить размер изображения: http://www.developer.nokia.com/Community/Wiki/Scale_/_Resize_images_in_Java_ME

...