私は現在、最初の Android アプリを開発しており、画像のレンダリングに問題があります。画像自体は最初は素晴らしい品質ですが、レンダリングすると品質が大幅に低下します。エッジがぎざぎざになり、見た目が悪くなります。これまでに私がそれを見せた人は誰でも、何のプロンプトも出さずに、ほとんどすぐにそれに気づきました. [左から開始、右で終了:]
私が知っているすべてのことと、オンラインで調べて見つけたすべてのヒントを試していますが、何も解決していないようです.
現在、画像をビットマップとして取得し、スケーリングします。
Bitmap holeImage = BitmapFactory.decodeResource(res, R.drawable.hole_image);
Bitmap holeImageBMP = Bitmap.createScaledBitmap(holeImage, width, height, true);
画像を取得したら、ペイントを作成し、いくつかのスムージング アトリビュートを true に設定してから、キャンバスに描画します。
Paint smoothingPaint = new Paint();
smoothingPaint.setAntiAlias(true);
smoothingPaint.setFilterBitmap(true);
smoothingPaint.setDither(true);
canvas.drawBitmap(holeImageBMP, 0, 0, smoothingPaint);
それでも、上で明らかにわかるように、画質は大幅に低下します。たくさんの画像が美しくレンダリングされているのを見てきましたが、正直なところ、何が起こっているのかわからないので、どんなアドバイスも素晴らしいです!
その他の注意事項: SDK で提供されている LunarLander の例と本質的に似た、SurfaceView メソッドを使用して描画を処理しています。
再度、感謝します!