开发者

How should scale overlay image?

I have a simple function for creating image overlay.

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;
}

My overlay image size is 72x72.

Problem comes when try to overlay very small image for example resolution 57x88. Then the overlay sign is not proper displayed! How to proper scale the overlay sign to be adequate for all resolutions ?

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜