本人在研究camera的时候,发现保存到本地的图片大小就只有100k左右,很是费解。首先摄像头都是800W的,用自带的相机拍出来的图片质量都是4M多的。所以肯定是程序本身问题。
首先,看了下书籍,知道myParameters.set("jpeg-quality", 100)可以设置图片质量。可是还是100K左右,所以就测试后面那个数字,结果发现,(可能针对我自己的手机)这个值的范围为0-100.所以为了保证高质量,我设为了100.
但是这句话还是没有解决我的问题。后来查看了自带相机拍出来的照片信息,发现自带的拍出来的尺寸明显比我的大,而且大得多。后来就想到我要设置下picturesize的大小。
List<Size> photoSizes = myParameters.getSupportedPictureSizes();//获取系统可支持的图片尺寸
for (Size size : photoSizes) {//查询所有的图片尺寸
Log.d("PictureSizes", "width:" + size.width + " height " + size.height);
}
for (Size size : photoSizes) {//因为我需要的是4:3的图片,所以设置为4:3图片尺寸。
if (size.width / 4 == size.height / 3) {
myParameters.setPictureSize(size.width, size.height);
Log.d("setPictureSize", "SET width:" + size.width + " height " + size.height);
break;
}
}
这样,拍出来的照片大小就和自带相机拍出来的效果一样了。