課程
/移動(dòng)開(kāi)發(fā)
/Android
/Android攝像頭基礎(chǔ)
拍出來(lái)的和圖片不一樣
2016-06-21
源自:Android攝像頭基礎(chǔ) 3-5
正在回答
首先,這個(gè)問(wèn)題和樓上的說(shuō)法沒(méi)有任何關(guān)系。
這個(gè)問(wèn)題歸根結(jié)底是由于不同android rom兼容性導(dǎo)致的問(wèn)題,解決思路也要從兼容性著手。
當(dāng)自己調(diào)用camera實(shí)現(xiàn)拍照的時(shí)候,有一個(gè)picture size的設(shè)置,就是拍照生成圖片的寬和高。如果自己沒(méi)有指定,android系統(tǒng)會(huì)自己默認(rèn)給你一個(gè)picture size,不同android rom的差異性導(dǎo)致了有些默認(rèn)size是很小的(最低的size)。
所以,解決方法就是在拍照的時(shí)候指定自己想要的picture size。通常的做法是先找到系統(tǒng)camera所支持的所有picture size,然后找一個(gè)自己想要的(規(guī)則自己定)。具體如下:
Parameters?params?=?mCamera.getParameters(); List<Camera.Size>?supportedSize?=?parameters.getSupportedPictureSizes(); Camera.Size?optimalPictureSize?=?...;?//?遍歷所有的size從中找一個(gè)自己想要的 parameters.setPictureSize(optimalPictureSize.width,?optimalPictureSize.height);
如果圖片模糊不清晰就可以指定大的size。
看看有沒(méi)有漏掉這幾行代碼
/** * 解決拍照后圖像與實(shí)際情況不同的問(wèn)題 */try { ? ?FileInputStream fis=new FileInputStream(path); ? ?Bitmap bitmap= BitmapFactory.decodeFile(path); ? ?Matrix matrix=new Matrix(); ? ?matrix.setRotate(90); ? ?bitmap=Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),matrix,true); ? ?imageView.setImageBitmap(bitmap);} catch (FileNotFoundException e) { ? ?e.printStackTrace();}
舉報(bào)
帶你走進(jìn)Android攝像頭的秘密花園,探索Camera的奧秘
1 回答為什么圖片不清晰,很模糊
2 回答拍出來(lái)的圖片分辨率怎么這么低?
2 回答拍照獲取不到圖片?
1 回答圖片不清楚
2 回答沒(méi)有SD卡,拍完的圖片找不到
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢(xún)優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2018-02-01
首先,這個(gè)問(wèn)題和樓上的說(shuō)法沒(méi)有任何關(guān)系。
這個(gè)問(wèn)題歸根結(jié)底是由于不同android rom兼容性導(dǎo)致的問(wèn)題,解決思路也要從兼容性著手。
當(dāng)自己調(diào)用camera實(shí)現(xiàn)拍照的時(shí)候,有一個(gè)picture size的設(shè)置,就是拍照生成圖片的寬和高。如果自己沒(méi)有指定,android系統(tǒng)會(huì)自己默認(rèn)給你一個(gè)picture size,不同android rom的差異性導(dǎo)致了有些默認(rèn)size是很小的(最低的size)。
所以,解決方法就是在拍照的時(shí)候指定自己想要的picture size。通常的做法是先找到系統(tǒng)camera所支持的所有picture size,然后找一個(gè)自己想要的(規(guī)則自己定)。具體如下:
如果圖片模糊不清晰就可以指定大的size。
2016-06-21
看看有沒(méi)有漏掉這幾行代碼
/**
* 解決拍照后圖像與實(shí)際情況不同的問(wèn)題
*/
try {
? ?FileInputStream fis=new FileInputStream(path);
? ?Bitmap bitmap= BitmapFactory.decodeFile(path);
? ?Matrix matrix=new Matrix();
? ?matrix.setRotate(90);
? ?bitmap=Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),matrix,true);
? ?imageView.setImageBitmap(bitmap);
} catch (FileNotFoundException e) {
? ?e.printStackTrace();
}