我有一个关于Android中位图的问题:我有一个带有白色边距[大小未知]的位图.是否可以创建一个删除了所有白色边距的新位图(矩形)?
Bitmap bmp = Bitmap.createBitmap(width, bmpheigth, Config.ARGB_8888);
Canvas canvas = new Canvas(bmp);
canvas.setBitmap(bmp);
canvas.drawColor(Color.WHITE);
// draw here things!
人们认为不知道绘画的地方.
有什么好办法呢?
谢谢!
解决方法:
谢谢@Maxim Efimov& @StackOverflowException
以防万一有人需要一个代码片段来解决这类问题:
此方法返回一个删除了边距的剪切较小的Bitmap.首先将像素传递给int数组,然后使用数组比Bitmap.getPixel方法快一点
只需调用指示源位图和背景颜色的方法.
Bitmap bmp2 = removeMargins(bmp, Color.WHITE);
private static Bitmap removeMargins2(Bitmap bmp, int color) {
// TODO Auto-generated method stub
long dtMili = System.currentTimeMillis();
int MTop = 0, MBot = 0, MLeft = 0, MRight = 0;
boolean found1 = false, found2 = false