国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

android獲取照片的快照 思路及實現方法

2020-04-11 12:06:46
字體:
來源:轉載
供稿:網友

當我們在做相冊、上傳相關的應用的時候需要獲取圖片的快照,這時候就需要獲取圖片的快照。

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

實現的步驟如下:

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

復制代碼 代碼如下:

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

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

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

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


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

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

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

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

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临漳县| 合阳县| 辽宁省| 静海县| 奉化市| 开鲁县| 罗定市| 抚顺市| 武穴市| 房产| 长葛市| 旅游| 简阳市| 额敏县| 海晏县| 肥乡县| 年辖:市辖区| 北辰区| 黑水县| 临城县| 麟游县| 寿宁县| 秦皇岛市| 康马县| 东港市| 同心县| 尤溪县| 驻马店市| 育儿| 东乡族自治县| 垦利县| 临沭县| 龙江县| 科技| 当阳市| 麻栗坡县| 舞钢市| 镇康县| 呼和浩特市| 香港 | 灵武市|