【发布时间】:2014-01-03 15:54:59
【问题描述】:
在这里,我将拍摄的图像从相机保存在 sdcard 上。在这里,捕获的图像大小大于1 MB。在保存到 sdcard 之前,我想将此大小减小到近 500kb 到 600kb。我怎么能这样做?
try
{
Bitmap mPhoto;
mPhoto = android.provider.MediaStore.Images.Media.getBitmap(cr, CheckInGallery.mUri);
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
mPhoto.compress(Bitmap.CompressFormat.PNG, 100, bytes);
File direct = new File(Environment.getExternalStorageDirectory() + "/RetailRun");
String mydate = java.text.DateFormat.getDateTimeInstance().format(Calendar.getInstance().getTime());
Toast.makeText(getBaseContext(), "Time :" + mydate, 5000).show();
if(!direct.exists())
{
direct.mkdir();
File file = new File(Environment.getExternalStorageDirectory()+File.separator + "/MyImage/image" + mydate +".jpg");
file.createNewFile();
FileOutputStream fo = new FileOutputStream(file);
fo.write(bytes.toByteArray());
fo.close();
}
else
{
File file = new File(Environment.getExternalStorageDirectory()+File.separator + "/MyImage/image" + mydate +".jpg");
file.createNewFile();
FileOutputStream fo = new FileOutputStream(file);
fo.write(bytes.toByteArray());
fo.close();
}
}
catch (Exception e)
{
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
【问题讨论】:
标签: android image android-camera