【发布时间】:2011-12-22 23:13:41
【问题描述】:
我需要以编程方式在我的应用程序中创建简单的图像。简单图像将具有黑色背景,其中的文本是通过编程创建的。有可能吗?
【问题讨论】:
-
你能详细说明这个问题吗?你要这张图干什么?为什么不能/不能使用内置的 android ViewWidgets 来做到这一点?
我需要以编程方式在我的应用程序中创建简单的图像。简单图像将具有黑色背景,其中的文本是通过编程创建的。有可能吗?
【问题讨论】:
这在很大程度上取决于您的实现细节(Java SE?Android?限制导入?等等)
我建议您查看 this StackOverflow question 并查看链接的任何库是否适合您的情况。
【讨论】:
int width = 200;
int height = 100;
Bitmap bitmap = Bitmap.createBitmap(width, height, Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
Paint paint = new Paint();
paint.setColor(Color.BLACK);
paint.setStyle(Paint.Style.FILL);
canvas.drawPaint(paint);
paint.setColor(Color.WHITE);
paint.setAntiAlias(true);
paint.setTextSize(14.f);
paint.setTextAlign(Paint.Align.CENTER);
canvas.drawText("Hello Android!", (width / 2.f) , (height / 2.f), paint);
然后对位图做任何你想做的事情。例如:
ImageView image = new ImageView();
image.setImageBitmap(bitmap);
【讨论】:
Config.ARGB_8888 可以是 Bitmap.Config.ARGB_8888 如果它抛出一个错误。