生活随笔
收集整理的這篇文章主要介紹了
关于图片缩放的两种方式
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
2019獨角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
縮放圖片有兩種手段
Bitmap originalBitmap = Bitmap.decodeResouce(getResource(), R.drawable.demo_bitmap);float bitmapWidth = originalBitmap.getWidth();float bitmapHeight = originlBitmap.getHeight();float bitmapRatio = bitmapWidth / bitmapHeight;ImageView imgView = findViewById(R.id.img);ViewGroup.LayoutParams params= imgView.getLayoutParams();// 默認(rèn)我們就設(shè)置ImageView和屏幕一樣寬params.width = Utils.getScreenSize();params.height = params.width / bitmapRatio;imgView.setLayoutParams(params);// 算出圖片的縮放比,以長度為基準(zhǔn)float scale = params.width / bitmap.width;Matrix matrix = new Matrix();matrix.postScale(scale, scale);imgView.setScaleType(ScaleType.MATRIX);imgView.setMatrix(matrix);
Bitmap originalBitmap = Bitmap originalBitmap = Bitmap.decodeResouce(getResource(), R.drawable.demo_bitmap);float bitmapRatio = bitmapWidth / bitmapHeight;ImageView imgView = findViewById(R.id.img);ViewGroup.LayoutParams params= imgView.getLayoutParams();// 同樣要確定ImageView的寬高params.width = Utils.getScreenSize();params.height = params.width / bitmapRatio;imgView.setLayoutParams(params);// 計算Bitmap的縮放比例float bitmapScale = params.width / bitmapWidth;Matrix matrix = new Matrix();matrix.postScale(bitmapScale, bitmapScale);// 設(shè)置縮放后的BitmapBitmap scaleBitmap = Bitmap.create(originalBitmap,0,0,originalBitmap.getWidth(), originalBitmap.getHeight(),matrix, true);imgView.setBitmap(scaleBitmap);
總結(jié)
兩種縮放方式的共同套路
1.確定Bitmap的寬高,進(jìn)而求得寬高比例.
2.確定ImageView的寬高.
3.以Bitmap的長與ImageView的長求得縮放比例.
轉(zhuǎn)載于:https://my.oschina.net/lengwei/blog/3044507
總結(jié)
以上是生活随笔為你收集整理的关于图片缩放的两种方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。