私のアプリケーションでは、カメラ アプリケーションを呼び出して写真を撮り、特定のディレクトリ (例: /sdcard など) に保存しています。
写真はJPEG画像として保存されます。画像のサイズを小さくするにはどうすればよいですか? 利用可能な画像エンコーダまたは圧縮はありますか?
別の投稿に出くわしました: Android カメラ画像のサイズを縮小
しかし、これは画像をスケーリングしています。圧縮またはエンコードできるものを探しています。出来ますか?
前もって感謝します、ペルマル
私のアプリケーションでは、カメラ アプリケーションを呼び出して写真を撮り、特定のディレクトリ (例: /sdcard など) に保存しています。
写真はJPEG画像として保存されます。画像のサイズを小さくするにはどうすればよいですか? 利用可能な画像エンコーダまたは圧縮はありますか?
別の投稿に出くわしました: Android カメラ画像のサイズを縮小
しかし、これは画像をスケーリングしています。圧縮またはエンコードできるものを探しています。出来ますか?
前もって感謝します、ペルマル
とにかくこれを試すことができるかどうかはわかりません.画像のサイズを最初に縮小するには、画像を特定のディレクトリに保存する前にビットマップに変換し、ビットマップを圧縮して画像の品質を設定し、正しいファイルに書き込む必要がありますパス。画像の品質は変更できます。これが画像のサイズを縮小するのに役立つことを願っています。
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);`
API :
compress (Bitmap.CompressFormat format, int quality, OutputStream stream)
以下のコードが役に立つかもしれません
opt = new BitmapFactory.Options();
opt.inTempStorage = new byte[16 * 1024];
opt.inSampleSize = 4;
opt.outWidth = 640;
opt.outHeight = 480;
Bitmap imageBitmap = BitmapFactory
.decodeStream(in, new Rect(), opt);
Bitmap map = Bitmap.createScaledBitmap(imageBitmap, 100, 100, true);
BitmapDrawable bmd = new BitmapDrawable(map);
ByteArrayOutputStream bao = new ByteArrayOutputStream();
map.compress(Bitmap.CompressFormat.PNG, 90, bao);
ba = bao.toByteArray();
imagedata=Base64.encodeBytes(ba);