2010-10-25 93 views
0

如何在android平臺上獲得DPI中位圖的X分辨率X &? 我期待像一些API「GetXResInDPI()」象下面這樣:如何在android平臺的DPI中獲取X&Y分辨率?

double getXResolution(Bitmap bmp) { double lXRes = Bmp.GetXResInDPI(); return lXRes; }

我無法獲得Android平臺的任何這樣的方法,儘管鞭打的通過Java文檔。

任何幫助,將不勝感激。

回答

0

我不確定我是否理解這個問題,但看起來您可能正在尋找getScaledHeight()/ getScaledWidth()。

int xdpi, ydpi; 
DisplayMetrics metrics = new DisplayMetrics(); 
getWindowManager().getDefaultDisplay().getMetrics(metrics); 
Bitmap bmp = BitmapFactory.decodeResources(getResources(), R.drawable.my_bitmap); 
xdpi = bmp.getScaledWidth(metrics); 
ydpi = bmp.getScaledHeight(metrics); 

同樣,我可能會誤解你的問題,但這聽起來像你在找什麼。

+0

嘿,謝謝你!但是,getWindowManager()。getDefaultDisplay()。getMetrics(metrics);不起作用,因爲它取決於當前的活動。我希望返回傳遞給該函數的位圖的x和y分辨率。 – 2010-10-29 08:25:17

+0

有沒有理由不能使用Bitmap.getWidth()和Bitmap.getHeight()? – kcoppock 2010-10-29 11:54:25

+0

Bitmap.getWidth()和Bitmap.getHeight()會工作...但只適用於小圖像。位圖位圖= BitmapFactory.decodeFile(_absoluteImagePath);大圖像會失敗。但是,要僅獲取寬度和高度,請按如下所示使用:選項optionsBmpInfo = new Options(); \t \t \t \t optionsBmpInfo.inJustDecodeBounds = true; \t \t \t \t位圖BITMAPINFO = BitmapFactory.decodeFile(_absoluteImagePath, \t \t \t \t \t \t optionsBmpInfo); – 2011-01-05 06:38:31