我怎么能添加一些文本到这些图片android

时间:2013-05-15 23:29:25

标签: java android

我如何在这张图片中写一些文字,我会添加一些信息。

YuvImage image = new YuvImage(data, ImageFormat.NV21, maxwidth, maxheight, null);
Rect rectangle = new Rect();
rectangle.bottom = maxheight;
rectangle.top = 0;
rectangle.left = 0;
rectangle.right = maxwidth;
ByteArrayOutputStream output = new ByteArrayOutputStream();
image.compressToJpeg(rectangle, 95, output);

1 个答案:

答案 0 :(得分:2)

如果您想在图片中添加添加一些文字,则添加 EXIF 信息,
那么你可以看看这个链接: Write/Geotag JPEGs (EXIF data) in Android

如果你想在图像上绘制一些文字,那么以下内容可能有所帮助:
image.compressToJpeg(rectangle, 95, output);之后添加以下代码 为了在绘图时获得更好的图像质量,建议将此行更改为image.compressToJpeg(rectangle, 100, output);

// Decode the JPEG byte array from 'output' to 'Bitmap' object
Bitmap bmp = BitmapFactory.decodeByteArray(output.toByteArray(), 0, output.size());

// Use 'Canvas' to draw text ont 'Bitmap'
Canvas cv = new Canvas(bmp);

// Prepare 'Paint' for text drawing
Paint mPaint = new Paint();
mPaint.setColor( Color.RED );
mPaint.setStyle( Style.STROKE );
mPaint.setTextSize(20);

// Draw text on the 'Bitmap' image
cv.drawText("TEXT To SHOW", 10, 10, mPaint);

// Reset the stream of 'output' for output writing.
output.reset();

// Compress current 'Bitmap' to 'output' as JPEG format
bmp.compress(CompressFormat.JPEG, 95, output);

然后,您可以使用输出来执行您需要的任何操作。