我正在寫一個小型的android應用程序,用戶可以在相機的實時預覽中放置一個圖像並拍攝這張照片。該應用程序將適當地合併這兩個圖像 - 所有這些工作正常。Android如何處理預覽大小/比例與實際SufaceView大小之間的差異?
我知道你可以使用Camera.getParameters()獲取/設置PreviewSize,我認爲這與實時「攝像頭饋送」的大小有關。
但是,顯示相機預覽的SurfaceView的大小與報告的(和使用的)PreviewSizes不同。例如,在模擬器中,我可用的SurfaceView碰巧是360x215,而PreviewSize是320x240。儘管如此,整個SurfaceView仍然充滿了預覽。
但是最終生成的圖片是(也?)320x240。 android如何彌補這些尺寸和寬高比的差異?圖像是否被截斷?
或者我只是誤解了PreviewSize是關於什麼 - 這是與生成的圖片的大小有關,還是它與投影在SurfaceView上的「實時預覽」有關?是否有任何非平凡的相機示例處理這個問題?
我需要知道如何進行轉換,最終將圖像正確地複製/縮放到照片中,因此會出現這些問題。
你可能想看看我的答案我自己的一個類似的問題:http://stackoverflow.com/a/18159351/994834 – goto10 2013-08-10 21:39:06