我有一些位图图像我想降低图像的分辨率,以便更容易处理(计算所有像素)。
如何降低分辨率并创建新的位图?
kxkpmulp1#
使用@blackapps评论和使用@ariefbayu从这篇文章https://stackoverflow.com/a/8268593/的答案解决了问题
Bitmap scaledBitmap = scaleDown(realImage, MAX_IMAGE_SIZE, true); public static Bitmap scaleDown(Bitmap realImage, float maxImageSize, boolean filter) { float ratio = Math.min( (float) maxImageSize / realImage.getWidth(), (float) maxImageSize / realImage.getHeight()); int width = Math.round((float) ratio * realImage.getWidth()); int height = Math.round((float) ratio * realImage.getHeight()); Bitmap newBitmap = Bitmap.createScaledBitmap(realImage, width, height, filter); return newBitmap; }
现在起作用了!
1条答案
按热度按时间kxkpmulp1#
使用@blackapps评论和使用@ariefbayu从这篇文章https://stackoverflow.com/a/8268593/的答案解决了问题
现在起作用了!