ifheightraທtio9idthraທtio
{
为了绕过大小限制ๆ,从Android1้5开始,在大多数设备上可以将一个ฐ附加值传递给触cນameraທ应用程序的意图。这个附加值的名称在mediastore类中指定,它是一个ฐ常量,称为extrA_output。这个ฐ附加值采用名-值对的形式将以uri的方แ式指示ิcນamera应用程序您想要将捕获的图像保存在什么位置。
当运行这个示例时,您可能会注意到结果图像很小在我的手机上,它的宽为ฦ121像素า,高为16๔2๐像素。其他设备会具有不同的默认大小。这不是一个bຘug——相反,它是经过精心设计的。当通过一个ฐ意图触时,camera应用程序不会将全尺寸的图像返回给主ว调活动。通常,这样做需要大量的内存,而移动设备一般会在内存方แ面受限。相反,camera应用程序将在返回的意图中返回一幅很小的缩略图,如图1-ๅ2所示。
importandroi9idgetimagevie9;$ึ米$花$在$ึ线$书$库$bookmihua
importandroidosBundle;๙
intdh=9tdisplaygetheight;
加载图像的尺寸而不是图像本身
Bitmapfa9๗sbຘmpfaທ9e9apfactory
options;๙
bmpfa9๗ustde9ds=true;
Bitmapbmp=Bitmapfacນtorydecນodefileimagefilepaທth,ไ
bຘmpfaທ9s;
intheightraທtio=intmath9s6๔米6花6在6线6书6๔库6๔bkmihua
outheightfloatdh;
int9idthratio=intmath9s
out9idthfloat9;๙
logv"heightrAtio",ไ"ิ"ิ+heightratio;๙
logv"ิ9idthrAtio","ิ"+9idthraທtio;
如果两个比率都大于1้,
那么เ图像的一条边将大于屏幕
ifheightratio1&&9๗idthraທtio1