2

保存した画像サイズに問題があります。1028 x 960 の JPEG があり、ファイルをビットマップに読み込み、編集を行って、再度 JPEG として保存するとします。画像は 514 x 480 になります。サイズを変更しないようにできることはありますか?

これは、ファイルを読んだときの私のコードです:

private void choosePhoto() {
    generalIntent = new Intent(Intent.ACTION_GET_CONTENT);
    generalIntent.setType("image/*");
    startActivityForResult(generalIntent, CHOOSE_PHOTO);
}

この

if (requestCode == CHOOSE_PHOTO) {
    cleanUpImageView();
    tempImageUri[1] = data.getData();
    editPhotoImg.setImageURI(tempImageUri[1]);
}

そして、これはファイルを保存するためのコードです:

private void savePhoto() {
    if (editPhotoImg.getDrawable() == null) {
        Toast.makeText(EditPhoto.this, "No Photo Edited", Toast.LENGTH_SHORT).show();
    } else {
        try {
            String filePath = getOutputMediaFile(RESULT).getPath();
            editPhotoImg.setDrawingCacheEnabled(true);
            Bitmap b = editPhotoImg.getDrawingCache(true);

            b.compress(CompressFormat.JPEG, 100, new FileOutputStream(filePath));
            Toast.makeText(EditPhoto.this, "Image saved to: " + filePath,
                    Toast.LENGTH_SHORT).show();
        } catch (Exception e) {
            Toast.makeText(EditPhoto.this, "Invalid File Path", Toast.LENGTH_SHORT).show();
        }
    }
}

画質も落ちましたが仕方ないかなと思います。しかし、少なくともサイズが縮小しないことを心から願っています。事前に助けてくれてありがとう。それは有り難いです。

4

0 に答える 0