Сохранить растровое изображение в файл - PullRequest
0 голосов
/ 09 декабря 2011

Я хочу открыть одно изображение из папки ресурсов, изменить его размер и сохранить изображение.Я использую этот код:

private void resizeImage(float ratio) {
    AssetManager assetManager = getAssets();
    InputStream stream = null;
    try {
        stream = assetManager.open("bear.png");
    } catch (IOException e) {
        return;
    }
    Bitmap bitmapOrg = BitmapFactory.decodeStream(stream);

    int width = bitmapOrg.getWidth();
    int height = bitmapOrg.getHeight();

    float scaleWidth = ((float) width) / ratio;
    float scaleHeight = ((float) height) / ratio;

    Matrix aMatrix = new Matrix();
    aMatrix.setSkew(scaleWidth, scaleHeight);

    bitmapOrg = Bitmap.createBitmap(bitmapOrg, 0, 0, bitmapOrg.getWidth(),
            bitmapOrg.getHeight(), aMatrix, false);

}

Но при запуске приложения происходит сбой.Это трассировка стека:

12-09 02:36:33.750: ERROR/AndroidRuntime(1939):     at android.graphics.Bitmap.nativeCreate(Native Method)
12-09 02:36:33.750: ERROR/AndroidRuntime(1939):     at android.graphics.Bitmap.createBitmap(Bitmap.java:477)
12-09 02:36:33.750: ERROR/AndroidRuntime(1939):     at android.graphics.Bitmap.createBitmap(Bitmap.java:444)

Кто-нибудь знает, почему происходит сбой?

1 Ответ

2 голосов
/ 09 декабря 2011

Папка активов находится внутри APK и поэтому не является настоящей папкой в ​​файловой системе.Я не думаю, что вы можете что-то там сохранить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...