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 ?
精彩评论