欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

android獲取照片的快照 思路及實(shí)現(xiàn)方法

 更新時(shí)間:2013年06月20日 10:54:11   作者:  
android獲取照片的快照 思路及實(shí)現(xiàn)方法,需要的朋友可以參考一下

當(dāng)我們?cè)谧鱿鄡?cè)、上傳相關(guān)的應(yīng)用的時(shí)候需要獲取圖片的快照,這時(shí)候就需要獲取圖片的快照。

android中專門有一個(gè)BitmapFactory類可以來處理這類需求。

實(shí)現(xiàn)的步驟如下:

1.首先解析出圖片文件(注意在這里為了節(jié)約內(nèi)存將inJustDecodeBounds設(shè)為true,這樣的話解析的圖片的話只有圖片的尺寸大小信息)

復(fù)制代碼 代碼如下:

BitmapFactory.Options bmpFactoryOptions = new BitmapFactory.Options();
bmpFactoryOptions.inJustDecodeBounds = true;
Bitmap bmp = BitmapFactory.decodeFile(imageFilePath, bmpFactoryOptions);

2.獲取圖片的實(shí)際尺寸,并且算出實(shí)際大小和要顯示的大小的比例
復(fù)制代碼 代碼如下:

int heightRatio = (int) Math.ceil(bmpFactoryOptions.outHeight/ (float) DISPLAYHEIGHT);

int widthRatio = (int) Math.ceil(bmpFactoryOptions.outWidth/ (float) DISPLAYWIDTH);


3.這兒是關(guān)鍵,為了只獲取這個(gè)圖片的快照需要將inSampleSize屬性設(shè)置為上一步算出的比例,這樣的話顯示的圖片寬高為 1/比例,大小為 1/比例的平方
復(fù)制代碼 代碼如下:

if (heightRatio > 1 && widthRatio > 1) {
            if (heightRatio > widthRatio) {
                bmpFactoryOptions.inSampleSize = heightRatio;
            } else {
                bmpFactoryOptions.inSampleSize = widthRatio;
            }
        }

4.最后在重新解析一遍圖片
復(fù)制代碼 代碼如下:

bmpFactoryOptions.inJustDecodeBounds = false;
bmp = BitmapFactory.decodeFile(imageFilePath, bmpFactoryOptions);

5.這樣的話就獲取到了圖片的一個(gè)快照

相關(guān)文章

最新評(píng)論