【发布时间】:2016-12-06 08:45:26
【问题描述】:
我正在尝试将文本放在地图标记上,但它总是出现在其下方。 首先我将drawable转换为位图,然后在其上绘制文本。可绘制位图转换工作正常,我只有文本覆盖的问题。
我已经尝试过这些:
- Adding text to a bitmap in memory in Android
- https://stackoverflow.com/a/7328777/3423468
- https://stackoverflow.com/a/8831182/3423468
还有更多没有运气的人。
这是我目前的方法:
Bitmap drawableToBitmap(Drawable drawable)
{
var bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
var canvas = new Canvas(bitmap);
if (shouldDrawText)
{
Paint paint = new Paint();
paint.setColor(Color.WHITE);
paint.setStrokeWidth(40);
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OVER)); // Text Overlapping Pattern
//canvas.drawBitmap(bitmap, 0, 0, paint);
canvas.drawText("Testing...", 10, 10, paint);
}
drawable.SetBounds(0, 0, canvas.Width, canvas.Height);
drawable.Draw(canvas);
return bitmap;
}
任何想法我做错了什么?
【问题讨论】:
-
您是否考虑过将可绘制对象用作
compound drawableinside TextView? -
是的,但只要我需要它作为地图标记,我就跳过它。
-
请问您如何解决此问题的任何更新?
标签: android bitmap android-drawable