我目前正在开发我的第一个 Android 应用程序,但在渲染图像时遇到了一些问题。图像本身一开始质量很好,但在渲染后质量会急剧下降。边缘变得锯齿状,看起来做得很糟糕。到目前为止,我向其展示过的每个人几乎都立即注意到了它,没有任何提示。[从左边开始,从右边结束:]
我正在尝试我所知道的所有内容以及通过在线查看可以找到的所有提示,但似乎没有任何解决方法。
目前,我将图像作为位图进行缩放:
Bitmap holeImage = BitmapFactory.decodeResource(res, R.drawable.hole_image);
Bitmap holeImageBMP = Bitmap.createScaledBitmap(holeImage, width, height, true);
获得图像后,我创建一个 Paint,将一些平滑属性设置为 true,然后在画布上绘制它:
Paint smoothingPaint = new Paint();
smoothingPaint.setAntiAlias(true);
smoothingPaint.setFilterBitmap(true);
smoothingPaint.setDither(true);
canvas.drawBitmap(holeImageBMP, 0, 0, smoothingPaint);
然而,正如您在上面明显看到的那样,图像质量急剧下降。我已经看到很多图像被渲染得很漂亮,老实说,我只是不确定发生了什么,所以任何建议都会很棒!
其他注意事项:我使用 SurfaceView 方法来处理绘图,本质上类似于 SDK 中给出的 LunarLander 示例。
再次感谢!