如何在android平台的DPI中获取X&Y分辨率?

问题描述:

如何在android平台上获得DPI中位图的X分辨率X &? 我期待像一些API“GetXResInDPI()”象下面这样:如何在android平台的DPI中获取X&Y分辨率?

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

我无法获得Android平台的任何这样的方法,尽管鞭打的通过Java文档。

任何帮助,将不胜感激。

我不确定我是否理解这个问题,但看起来您可能正在寻找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