在我的Android应用中,我有一个按钮可以像这样拍照:
button_photo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
imageUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(), "fname_" +
String.valueOf(System.currentTimeMillis()) + ".jpg"));
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
}
});
在我的ActivityResult中:
Intent intent = new Intent(this, UploadPicture.class);
intent.putExtra("URI", imageUri.toString());
startActivity(intent);
在开始上传活动之前,我想降低图片质量(我希望服务器使用更亮的图片)。
我怎样才能做到这一点 ?
谢谢
最佳答案
上传前先将图像转换为Bitmap
并压缩位图以设置图像的质量并将其写入正确的路径。可以更改图像的质量,希望这将有助于您减小图像的尺寸。bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);
compress
方法定义为public boolean compress (Bitmap.CompressFormat format, int quality, OutputStream stream)
您也可以从Bitmap.compress那里获得帮助
关于android - 拍照并降低画质,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36720793/