我有两张图片,第一张图片是透明区域 那个第二张图片我必须适合第一张图片的透明区域 图片 。因为我有第一个图像高度,宽度,x,y值.i 通过在画布上绘制位图来组合这两个图像 下方。
Bitmap bm = Bitmap.createBitmap(overLay.getWidth(),
overLay.getHeight(), Bitmap.Config.ARGB_8888);
Canvas combineImg = new Canvas(bm);
combineImg.drawBitmap(overLay, 0, 0, null);
// combineImg.drawbitma
combineImg.drawBitmap(mask, 61, 111, null);
ImageView img = (ImageView) findViewById(R.id.image);
img.setImageBitmap(bm);
但它不适合正确的位置。任何人都有这个想法请在这里解释。 我得到的输出如下。
答案 0 :(得分:0)
你从顶边获得x y位置...
当你合并它们时,就会出现错误......
在图像视图中获取位图x y,减去错误,然后给这些x y位置合并位图。
int ih = backgroundIv.getHeight();//height of imageView
int iw = backgroundIv.getWidth();//width of imageView
int iH = backgroundIv.getDrawable().getIntrinsicHeight();//original height of underlying image
int iW = backgroundIv.getDrawable().getIntrinsicWidth();//original width of underlying image
if (ih/iH<=iw/iW) iw=iW*ih/iH;//rescaled width of image within ImageView
else ih= iH*iw/iW;//rescaled height of image within ImageView
iv_OverlayImage.requestLayout();
iv_OverlayImage.getLayoutParams().height = ih;
iv_OverlayImage.getLayoutParams().width = iw;
pixelsToRight = (backgroundIv.getWidth() - iw)/2;
我希望这会有所帮助...... 干杯:)