Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to draw text in default marker of google map v2

I want to draw text in default marker of Google map v2. I have done this by taking my own image from drawable but how can i change it in default marker.

my code is

 marker.icon(BitmapDescriptorFactory
          .fromBitmap(drawTextToBitmap(getApplicationContext(), R.drawable.images,"5")));

and drawTextToBitmapmethods is.

public static Bitmap drawTextToBitmap(Context gContext,int gResId,String gText) {
    Resources resources = gContext.getResources();
    float scale = resources.getDisplayMetrics().density;
    Bitmap bitmap =
            BitmapFactory.decodeResource(resources, gResId);

    android.graphics.Bitmap.Config bitmapConfig =
            bitmap.getConfig();
    if(bitmapConfig == null) {
        bitmapConfig = android.graphics.Bitmap.Config.ARGB_8888;
    }
    bitmap = bitmap.copy(bitmapConfig, true);

    Canvas canvas = new Canvas(bitmap);
    Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
    paint.setColor(Color.BLACK);
    paint.setTextSize((int) (15 * scale));
    paint.setShadowLayer(1f, 0f, 1f, Color.WHITE);

    Rect bounds = new Rect();
    paint.getTextBounds(gText, 0, gText.length(), bounds);
    int x = (bitmap.getWidth() - bounds.width())/2;
    int y = (bitmap.getHeight() + bounds.height())/2;

    canvas.drawText(gText, x * scale, y * scale, paint);

    return bitmap;
}

i want to draw text like that

enter image description here

like image 941
Numan Ahmad Avatar asked Aug 20 '13 12:08

Numan Ahmad


1 Answers

1.Downlaod the library from

github.com/googlemaps/android-maps-utils

2.To use check this link

Using android-maps-utils with ADT

  TextIconGenerator tc = new TextIconGenerator(this);
  Bitmap bmp = tc.makeIcon("hello");

Then set the bitmap to the map object

  .icon(BitmapDescriptorFactory.fromBitmap(bmp))); 

snap shot

enter image description here

like image 146
Raghunandan Avatar answered Sep 30 '22 14:09

Raghunandan