縮尺を変更すると、何らかのタイリングが表示されます(下の画像を参照)。同じ色を持つはずの隣接するタイルより明るい画像の四角形の部分があります。それはほとんど気づいていないが、それは私のアプリのために十分ではないです。四角形のサイズは倍率に依存します。したがって、タイルは75%のサイズで小さくなります。スケーリングされた画像は、私のアプリで画像を動的に元のサイズの50%にスケーリングする何らかの種類のタイリングを示します。
例:
私の描画コード(私のカスタムビューのonDrawで呼ばれている):
private void drawImage(Bitmap bitmap, float scaling,
Canvas canvas, float offset)
{
Matrix p = new Matrix();
Matrix m = new Matrix();
Matrix y = new Matrix();
Matrix o = new Matrix();
p.setTranslate(-bitmap.getWidth()/2, -bitmap.getHeight()/2);
// translation to views center (minus half height of image
// so that the bottom of the picture is in the views center.
y.setTranslate(getWidth()/2, getHeight()/2);
// offset translation.
o.setTranslate(offset, 0);
m.setScale(scaling, scaling);
m.preConcat(p);
m.postConcat(y);
m.postConcat(o);
// draw image
canvas.drawBitmap(bitmap, m, null);
}
は、このタイリングを防止するために、どのように誰もが知っていますか?
Bitmap.createScaledBitmap()を使用してビットマップを移動してスケーリングするのではなく、それが役立つかどうかを調べることができます。 – Jave
ここで見たように 'canvas.drawBitmap(ビットマップ、m、新しいペイント(Paint.FILTER_BITMAP_FLAG))'を試したことがありますか?(http://stackoverflow.com/a/7468636/662732) – fab
@Jave:画像は元のサイズのプリスケールの100%から50%の間で動的にスケーリングされたものは私には役に立たない。 –