2015-10-17 73 views
2

如果已经回答了此问题,请将其标记为重复项,但我无法找到它。如何仅通过高度或宽度缩放位图

所以我知道如何通过高度宽度缩放位图,但不或/或

Bitmap scaledBitmap = Bitmap.createScaledBitmap(
    unscaledBitmap, wantedWidth, wantedHeight, true 
); 

我怎么能只用身高,只是宽度使得长宽比亿韩元规模不会改变

+0

你有什么需要缩放'Bitmap'呢? – pskink

+0

那么告诉我,如果这是一个愚蠢的想法。我想让我的音乐播放器的背景从左到右滑动正在播放的歌曲的专辑封面。所有专辑封面都是方形的,所有手机都是矩形的。如果我不想扭曲宽高比,但我希望图像大到足以滑动,那么我应该像在我的问题中调整图像大小。这听起来很疯狂,但我认为这很有道理。 –

+0

使用'ImageView',然后 – pskink

回答

0

您可以使用位图的新高度来计算宽度以保持宽高比。

用于缩放的高度:

int newWidth = unscaledBitmap.getWidth() * (1 + wantedHeight /unscaledBitmap.getHeight()); 

Bitmap scaledBitmap = Bitmap.createScaledBitmap(
    unscaledBitmap, newWidth, wantedHeight, true 
); 
+1

对不起,我没有具体说明我想让一个维度与另一个维度成比例。我想现在我认为它有一个参数可能是新的高度,另一个可能是旧宽度*(1 +新高度/旧高度),如果你想让你的答案我会检查标记你。您可以将其添加到您当前的答案中,并说这是第二种解释。 –

相关问题