【发布时间】:2013-08-14 09:46:04
【问题描述】:
我想拍摄照片并使用 android 相机将其保存到我的 SD 卡。我知道这很容易,但我想以低分辨率存储图像,而不告诉用户去手动设置和设置低分辨率。
【问题讨论】:
标签: android camera android-camera surfaceview android-camera-intent
我想拍摄照片并使用 android 相机将其保存到我的 SD 卡。我知道这很容易,但我想以低分辨率存储图像,而不告诉用户去手动设置和设置低分辨率。
【问题讨论】:
标签: android camera android-camera surfaceview android-camera-intent
我要写的不是编写代码的好习惯,但它可能会满足您的要求
【讨论】:
我知道这已经很晚了,但这是给现在可能阅读此问题的人的,您可以使用以下代码:
Camera.Parameters parameters = mcamera.getParameters();
List<Camera.Size> sizes = parameters.getSupportedPictureSizes();
Camera.Size size = sizes.get(sizes.size()-1);
Log.d("Parth","Size : "+size.height+","+size.width);
Log.d("Parth","Sizes:"+sizes.toString());
parameters.setPictureSize(size.width,size.height);
mcamera.setParameters(parameters);
【讨论】:
自己实现一个相机应用。使用BitmapFactory 解码原始数据。通过BitmapFactory.Options,您可以设置任何您想要的分辨率。
【讨论】:
用它来捕捉图像:
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
cameraIntent.putExtra(MediaStore.ACTION_IMAGE_CAPTURE, preinsertedUri);
不要使用MediaStore.EXTRA_OUTPUT,因为如果使用EXTRA_OUTPUT,图像会很大
【讨论】: