Android 根据手机的屏幕的大小设置图片的等比例缩放

最近用到把一个图片绘制到画布上,然后用画笔做标记,但是获取的是图片的宽和高,这样绘制出来的无法完全匹配成全屏,下面记录一个方法等比例了缩放:

 /**
     * 
     * @param bm        传入的bitmap
     * @param newWidth  指定的图片宽
     * @param newHeight 指定的图片高
     * @return  newbm   返回 bitmap类型     
     */
    public Bitmap setImgSize(Bitmap bm, int newWidth ,int newHeight){
        // 获得图片的宽高.
        int width = bm.getWidth();
        int height = bm.getHeight();
        // 计算缩放比例.
        float scaleWidth = ((float) newWidth) / width;
        float scaleHeight = ((float) newHeight) / height;
        // 取得想要缩放的matrix参数.
        Matrix matrix = new Matrix();
        matrix.postScale(scaleWidth, scaleHeight);
        // 得到新的图片.
        Bitmap newbm = Bitmap.createBitmap(bm, 0, 0, width, height, matrix, true);
        return newbm;
    }

上面已经写得很明白了,需要用的直接复制用吧.

你可能感兴趣的:(Bitmap)