私はAndroidでピクセルベースのゲームを作っています。100x100の領域に収まるようにサイズを変更する必要がある8x8のスプライトがいくつかあります。それが機能するかどうかを確認するためのテストとして、画像をキャンバス全体に塗りつぶそうとしました。ある程度は機能しましたが、8x8のスプライトが12x12のスプライトに変わり、ピクセルが非常に奇妙で歪んで見えるようになりました。これが私がこれまでに持っているものです:
Bitmap grass = BitmapFactory.decodeResource(getResources(), R.drawable.small);
Paint configuration = new Paint();
configuration.setDither(false);
configuration.setAntiAlias(false);
Matrix myMatrix = new Matrix();
myMatrix.postScale(canvas.getWidth() / grass.getWidth(), canvas.getWidth() / grass.getHeight());
Bitmap resizedBitmap = Bitmap.createBitmap(grass, 0, 0, grass.getWidth(), grass.getHeight(), myMatrix, false);
canvas.drawBitmap(resizedBitmap, 0, 0, null);