【问题标题】:android custom markers with a transparent Bus image带有透明总线图像的android自定义标记
【发布时间】:2016-08-15 18:15:37
【问题描述】:

我正在尝试在我的 Google MAP 中添加一个透明的巴士标记,但它没有添加我想要的方式,如图所示,GoodOne

我用作标记的图像

但这就是我得到的thisiswhatiget

此外,它不采用总线确切的形状,但它以矩形格式绘制

这是我的主要活动代码

Bitmap image = BitmapFactory.decodeResource(getResources(), R.drawable.bus);
               Bitmap circle = getCircleBitmap(image, 80);
               Marker mMarker = googleMap.addMarker(new MarkerOptions()
                    .icon(BitmapDescriptorFactory.fromBitmap(circle))
                    .flat(true).anchor(0.25f, 0.25f)
                    .visible(true)
                    .position(position));

 public static Bitmap getCircleBitmap(Bitmap bmp, int size){
      Bitmap thumbnail = ThumbnailUtils.extractThumbnail(bmp, 50, 50);
      Bitmap output = Bitmap.createBitmap(size, size,     Bitmap.Config.ARGB_8888);
     Canvas canvas = new Canvas(output);

    int color = Color.RED;
    Paint paint = new Paint();
    Rect rect = new Rect(0, 0, size, size);
    RectF rectF = new RectF(rect);

    paint.setAntiAlias(true);
    canvas.drawARGB(0, 0, 0, 0);
    paint.setColor(color);
    canvas.drawOval(rectF, paint);

    paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
    canvas.drawBitmap(thumbnail, 15,15, paint);

    //thumbnail.recycle();
    return output;
  }

请帮忙解决一下,是不是BITMAP让图片变得不透明?

【问题讨论】:

  • 为什么不使用白色位图?我不确定这里是否可以透明
  • 我需要摆脱首先显示巴士图像的矩形形状......但我没有找到方法

标签: android google-maps google-maps-api-3 android-bitmap bitmapfactory


【解决方案1】:

如果您的可绘制对象(例如bus.png)具有透明背景(这非常重要,根据您的结果我认为它具有白色背景),您只需将PorterDuff 模式更改为@ 987654325@在你的getCircleBitmap

paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OVER));

【讨论】:

  • 我试过改变 setXfermode 但没用,我的图像仍然不透明 paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OVER));
  • 你的 png 有透明背景吗?
  • 是的,这是链接。是不是我的 RectF rectF = new RectF(rect);造成问题?? filebin.ca/2rmXYpo9ECDe/bus.png
  • 对不起,图像的问题,我试过filebin.ca/2rmbgEG4SXJZ/busicon.png,效果很好..谢谢你的帮助:)
猜你喜欢
  • 1970-01-01
  • 2016-09-21
  • 2015-01-28
  • 1970-01-01
  • 1970-01-01
  • 2020-12-29
  • 1970-01-01
  • 2011-01-06
  • 1970-01-01
相关资源
最近更新 更多