2

I want to add a text on the picture taken from device camera. So I am launching my activity once Camera intent action is fired. My question is how to show a text on the picture and once user clicks on save button the picture will be saved in device's gallery with the text.Please give some idea.

Thanks

4

2 回答 2

1

关注Snippet会给你一些指点

你的逻辑来了。

在这里,我正在从可绘制资源加载 png 文件。您需要从目录中获取它。

如果您想让它更具吸引力,请通过将自定义字体保存在 Assets/fonts 中来使用

不要直接对要放置的文本进行硬编码,而是从某个地方加载它。

使用一些不同的颜色。

我已经手动设置了文本大小。你应该放一些逻辑(不要硬编码)

在drawText中,我将文本高度设置为30。您应该应用一些逻辑来获取文本高度。

最后你有背景位图保存它。

ImageView imageView = (ImageView) findViewById(R.id.image);
Bitmap background = BitmapFactory.decodeResource(getResources(), R.drawable.sample).copy(Bitmap.Config.ARGB_8888, true);
Canvas canvas = new Canvas(background);
Paint paint = new Paint();
paint.setAntiAlias(true);
paint.setColor(Color.WHITE);
paint.setStyle(Style.FILL);
paint.setTextSize(50);
paint.setShadowLayer(2.0f, 1.0f, 1.0f, Color.BLACK);

canvas.drawText("Hello Image", (background.getWidth() - paint.measureText("Hello Image")) / 2, background.getHeight() - 30, paint);

imageView.setImageBitmap(background);
于 2012-06-22T05:30:52.403 回答
0

我认为这篇文章真的对你有帮助Link is here ...

你应该使用 FrameLayout 然后在这篇文章中添加你的 imageView 给定示例如何设置图像只需在它之后添加背景透明的 textview ,FrameLayout 将它显示在图像上,你也可以定位它(只需在 RelativeLayout 中写你的 textview )

希望这个解释对你有用......

于 2012-06-22T05:15:32.000 回答