我不明白android缩放是如何工作的,我使用矩阵和postScaled从尺寸540到960的位图,当我按1.067和1.023缩放时,结果是368。Android奇怪缩放
540 * 1.067 = 576 not 368
960 * 1.023 = 981 not 682
我无法理解缩放的逻辑,也值了它缩放从0.67到0.7,而不是1.067和1.023,我把在那里的变化。
有谁知道这是如何工作,并帮助我?
编辑:
public Bitmap resizeBitmap(Bitmap b){
int width = b.getWidth();
int height = b.getHeight();
Matrix max = new Matrix();
max.postScale(Vars.screenWidthMulti, Vars.screenHeightMulti);
Bitmap resizedBitmap = Bitmap.createBitmap(b, 0, 0, width, height, max, false);
return resizedBitmap;
}
我不知道Bitmap.createScaledBitmap但如果它帮助它给出了相同的结果,所以我想它只是一个比例:继承人的,做缩放代码矩阵如下:/
编辑2:我发现在两个轴上缩放1.5f使得位图成为原始大小,现在通过除长度得到的缩放因子似乎与缩放矩阵使用的缩放因子不匹配我不知道如何将它们“转换”为它rk正确。
你能发表你正在使用的实际代码吗? –
只是一个疯狂的猜测,它可能会考虑“内在”的高度和宽度,而缩放。 –
嗯,我对内在的宽度和高度不是很熟悉,但是从我读的内容来看,我认为它不会是这样。 –