Android のカスタム ウィジェットのキャンバスで Bitmap.createScaledBitmap を使用すると問題が発生します。ウィジェットは、指定されたリソースのスケーリングされた非アンチエイリアス バージョンを表示することになっています。
widgets クラスに次のコードがあります。
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Bitmap bmp = BitmapFactory.decodeResource(this.getResources(), R.drawable.btn);
bmp = Bitmap.createScaledBitmap(bmp, bmp.getWidth()*3, bmp.getHeight()*3, false);
canvas.drawBitmap(bmp, 0, 0, null);
}
createScaledBitmap の「false」パラメータは、アンチエイリアス フィルタリングをオフにすることになっています。結果はスケーリングされますが、滑らかです。値を「true」に変更しても違いはありません。
私が望む結果を達成する別の方法はありますか?