我有一个矩形的位图,我需要顺时针或逆时针旋转90度。
我可以使用以下代码进行旋转:
Matrix matrix = new Matrix();
matrix.setRotate(90, originalBitmap.getWidth()/2, originalBitmap.getHeight()/2);
return Bitmap.createBitmap(originalBitmap, 0, 0, originalBitmap.getWidth(), originalBitmap.getHeight(), matrix, true);
但是,此代码使用旧值高度/宽度“就地”旋转图像。由此产生的图像看起来拉伸和丑陋。
有没有什么好方法可以将图像旋转90度到新的高度/宽度?可能一种可能的解决方案是先修改原始位图的尺寸吗?
由于
答案 0 :(得分:0)
创建新位图时不要使用旧值吗?只需在最后一行替换它们:
return Bitmap.createBitmap(originalBitmap, 0, 0, originalBitmap.getWidth()/2, originalBitmap.getHeight()/2, matrix, true);