1
以下代碼在TakePicture被調用後執行爲jpeg圖片回調。如果我將數據保存到磁盤,則它是1280x960 jpeg。我試圖改變圖片尺寸,但這是不可能的,因爲不支持更小的尺寸。 JPEG是唯一可用的圖片格式。保存爲SD之前縮放攝像頭圖片尺寸的最佳方法
PictureCallback jpegCallback = new PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
FileOutputStream out = null;
Bitmap bm = BitmapFactory.decodeByteArray(data, 0, data.length);
Bitmap sbm = Bitmap.createScaledBitmap(bm, 640, 480, false);
data.Length與預期的一樣是500k。在執行BitmapFactory.decodeByteArray()之後,bm的高度和寬度都是-1,所以看起來操作失敗。
- 目前還不清楚,如果位圖可以處理jpeg數據。我想不會,但我似乎有一些代碼示例似乎表明它是。
- 在解碼和縮放之前數據是否需要位圖格式?
- 如果是這樣,該怎麼做?
謝謝!