Как масштабировать наложенное изображение? - PullRequest
2 голосов
/ 05 июня 2011

У меня есть простая функция для создания наложения изображения.

public  String getMyPath(Application app, Context c) {
    String path = Environment.getExternalStorageDirectory() + "image.jpg";

    Bitmap bmap = BitmapFactory.decodeFile(photo);
        Bitmap mutableBitmap = bmap.copy(Bitmap.Config.ARGB_8888, true);


        Canvas canvas = new Canvas(mutableBitmap);
        Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
        canvas.drawPaint(paint);

        paint = new Paint(Paint.ANTI_ALIAS_FLAG | Paint.FILTER_BITMAP_FLAG);


        BitmapFactory.Options opt = new BitmapFactory.Options();
        opt.inDither = true;
        opt.inPreferredConfig = Bitmap.Config.ARGB_8888;

        Bitmap itemBitmapOrg = BitmapFactory.decodeResource(c.getResources(), R.drawable.star, opt);

            Matrix matrix = new Matrix();



            matrix.postTranslate(0, 0);
            canvas.drawBitmap(bmap, 0, 0, null);
            canvas.drawBitmap(itemBitmapOrg,matrix,paint);



        FileOutputStream out=null;
        try {
            out = new FileOutputStream(new File(path));
        } catch (FileNotFoundException e) {
        }

        mutableBitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);
    }

    return path;
}

Размер моего наложения изображения составляет 72x72.

Проблема возникает при попытке наложения очень маленького изображения, например, с разрешением 57x88.Тогда знак наложения отображается неправильно!Как правильно масштабировать знак наложения, чтобы он соответствовал всем разрешениям?

...